#9256 closed defect (duplicate)
Make the retrieval of plugin metadata more resistant against errors
Reported by: | Owned by: | ||
---|---|---|---|
Priority: | normal | Milestone: | |
Component: | general | Version: | 0.11.5 |
Severity: | normal | Keywords: | |
Cc: | Thijs Triemstra | Branch: | |
Release Notes: | |||
API Changes: | |||
Internal Changes: |
Description (last modified by )
How to Reproduce
While doing a GET operation on /admin/general/plugin
, Trac issued an internal error.
Hi, i built the Latex trac plugin myself with "setup.py bdist_egg", because i had to add a \usepackage declaration and it was working fine. Now i had to update it and loading the plugin suddenly fails. It is installed locally in the trac-environment under plugins, but even if i remove it, the trac webadmin claims it is still there, but the file cannot be found (grepping for Latex gave me a hint that it is still in the trac.db). As soon as i add the new egg to the plugins directory, webadmin gives me the error in the summary. I also restarted tracd between all steps. The egg also seems to be a valid zip-File. I'm not sure what to make of the above mentioned /admin/general/plugin path, maybe it's somehow related to that?
Request parameters:
{'cat_id': u'general', 'panel_id': u'plugin', 'path_info': None}
User Agent was: Mozilla/5.0 (X11; U; SunOS sun4v; en-US; rv:1.9.0.11) Gecko/2009060310 Firefox/3.0.11
System Information
Trac | 0.11.5
|
Python | 2.5.2 (r252:60911, Jan 20 2010, 21:48:48) [GCC 4.2.4 (Ubuntu 4.2.4-1ubuntu3)]
|
setuptools | 0.6c8
|
SQLite | 3.4.2
|
pysqlite | 2.3.2
|
Genshi | 0.5.1
|
Subversion | 1.4.6 (r28521)
|
jQuery: | 1.2.6
|
Python Traceback
Traceback (most recent call last): File "/usr/lib/python2.5/site-packages/Trac-0.11.5-py2.5.egg/trac/web/main.py", line 444, in _dispatch_request dispatcher.dispatch(req) File "/usr/lib/python2.5/site-packages/Trac-0.11.5-py2.5.egg/trac/web/main.py", line 205, in dispatch resp = chosen_handler.process_request(req) File "/usr/lib/python2.5/site-packages/Trac-0.11.5-py2.5.egg/trac/admin/web_ui.py", line 114, in process_request path_info) File "/usr/lib/python2.5/site-packages/Trac-0.11.5-py2.5.egg/trac/admin/web_ui.py", line 421, in render_admin_panel return self._render_view(req) File "/usr/lib/python2.5/site-packages/Trac-0.11.5-py2.5.egg/trac/admin/web_ui.py", line 525, in _render_view info = get_pkginfo(dist) File "/usr/lib/python2.5/site-packages/Trac-0.11.5-py2.5.egg/trac/util/__init__.py", line 253, in get_pkginfo pkginfo = email.message_from_string(dist.get_metadata('PKG-INFO')) File "/usr/lib/python2.5/site-packages/pkg_resources.py", line 1137, in get_metadata return self._get(self._fn(self.egg_info,name)) File "/usr/lib/python2.5/site-packages/pkg_resources.py", line 1195, in _get return self.loader.get_data(path) ZipImportError: bad local file header in /trac/htw/plugins/Latex-0.1_r5294-py2.5.egg
Attachments (0)
Change History (5)
comment:1 by , 15 years ago
Milestone: | → next-minor-0.12.x |
---|
comment:2 by , 14 years ago
Cc: | added |
---|---|
Description: | modified (diff) |
comment:3 by , 14 years ago
Summary: | ZipImportError: bad local file header in /trac/htw/plugins/Latex-0.1_r5294-py2.5.egg → Make the retrieval of plugin metadata more resistant against errors |
---|
updating ticket title.
comment:4 by , 14 years ago
Milestone: | next-minor-0.12.x |
---|---|
Resolution: | → duplicate |
Status: | new → closed |
Actually a duplicate of #7014.
comment:5 by , 14 years ago
On the goal of "(making) the retrieval of plugin metadata more resistant against errors", see also #9978, but dealing with ExtractionError instead of ZipImportError.
Trac doesn't keep references to plugins in the database, so if you still get the error when removing the plugin and restarting all server instances, then the plugin or its metadata must still be present somewhere.
We could make the retrieval of plugin metadata more resistant against errors, though.