Opened 17 years ago
Closed 17 years ago
#1 closed bogue (fixed)
Erreur interne Trac avec le navigateur de source
Reported by: | guillaume | Owned by: | guillaume |
---|---|---|---|
Priority: | majeur | Milestone: | TracEnFrancais-0.10.4 |
Component: | TracEnFrancais | Version: | 0.10.4 |
Keywords: | Cc: |
Description
Voir exemple: http://source.pkg.fr/browser/A2P/a2p/a2p.pl
Pile d'appel Python affichée:
Pile d'appel Python Traceback (most recent call last): File "/usr/lib/python2.5/site-packages/trac/web/main.py", line 415, in dispatch_request dispatcher.dispatch(req) File "/usr/lib/python2.5/site-packages/trac/web/main.py", line 245, in dispatch resp = chosen_handler.process_request(req) File "/usr/lib/python2.5/site-packages/trac/versioncontrol/web_ui/browser.py", line 145, in process_request self._render_file(req, repos, node, rev) File "/usr/lib/python2.5/site-packages/trac/versioncontrol/web_ui/browser.py", line 282, in _render_file node.created_path, raw_href, annotations=['lineno']) File "/usr/lib/python2.5/site-packages/trac/mimeview/api.py", line 596, in preview_to_hdf url, annotations), File "/usr/lib/python2.5/site-packages/trac/mimeview/api.py", line 467, in render % (renderer, e), exc_info=True) UnicodeEncodeError: 'ascii' codec can't encode character u'\xe9' in position 4: ordinal not in range(128)
Résultat: impossibilité de voir les sources
Change History (3)
comment:1 Changed 17 years ago by guillaume
- Status changed from new to assigned
comment:2 Changed 17 years ago by guillaume
Remarque :
- en principe seules les sources contenant des caractères ascii comme les caractères accentués sont concernées
comment:3 Changed 17 years ago by guillaume
- Resolution set to fixed
- Status changed from assigned to closed
Le problème survient dans /trac/mimeview/enscript.py quand la commande enscript n'est pas trouvée. Le texte de l'exception retourné est dans un mauvais encodage et c'est le log de l'exception qui génère l'erreur.
- Installer le package enscript permet d'éviter l'exception et l'affichage correct du fichier mis en couleur par la commande enscript
- Utiliser la fonction to_unicode() sur le texte de l'exception dans /trac/mimeview/api.py corrige le problème au cas où la commande enscript n'est pas disponible
- Le patch va être mis à jour, je vais prendre le temps de contrôler que le problème ne survienne potentiellement pas ailleurs
Note: See
TracTickets for help on using
tickets.
Les sources sont en UTF-8.
Il faut que l'API fautive en tienne compte.