Opened 10 years ago
Closed 5 years ago
#11823 closed defect (fixed)
Stalls and crashes on Trac 1.0.1
Reported by: | anonymous | Owned by: | Martin Scharrer |
---|---|---|---|
Priority: | normal | Component: | MindMapMacro |
Severity: | normal | Keywords: | jqueryui |
Cc: | Trac Release: | 1.0 |
Description (last modified by )
This plugin will not work for me using Trac 1.0.1
I am running it on an Ubuntu 14.04 Server which is running Python 2.7.6 with Graphviz 2.36 installed.
I installed it as an .egg in my environment's plugins folder using the latest ZIP download (changeset 13847).
When I load the page in the admin panel it loads the "Actions" buttons, "Columns" checkboxes, and the save/cancel/restore/text buttons, but nothing loads for the actual workflow table, and the workflow diagram just says "Updating..." but never loads either.
If I try clicking either of the "Save changes", "Cancel", "Restore initial state", or "Text mode" buttons it also causes an internal error in Trac with the following Traceback:
File "/usr/local/lib/python2.7/dist-packages/trac/web/main.py", line 497, in _dispatch_request dispatcher.dispatch(req) File "/usr/local/lib/python2.7/dist-packages/trac/web/main.py", line 214, in dispatch resp = chosen_handler.process_request(req) File "/usr/local/lib/python2.7/dist-packages/trac/admin/web_ui.py", line 125, in process_request path_info) File "build/bdist.linux-x86_64/egg/tracworkflowadmin/web_ui.py", line 136, in render_admin_panel self._parse_request(req) File "build/bdist.linux-x86_64/egg/tracworkflowadmin/web_ui.py", line 672, in _parse_request params = json.loads(req.args.get('params')) File "/usr/lib/python2.7/json/__init__.py", line 338, in loads return _default_decoder.decode(s) File "/usr/lib/python2.7/json/decoder.py", line 366, in decode obj, end = self.raw_decode(s, idx=_w(s, 0).end())
Inspecting the req.args.get('params')
value shows that it is None which is what's causing that specific error.
I have quite a few plugins installed, but the only ones that effect workflow, tables, or use Graphviz are:
AdvancedTicketWorkflowPlugin | 0.11dev |
---|---|
Table-Sorter-Plugin | 1.0 |
trac-WorkflowActionButtons | 0.2 |
TracMindMapMacro | 0.4 |
I do also have a fairly large workflow I am using:
[ticket-workflow] accept = new,assigned,accepted,reopened,needs_info,reviewing,in_progress -> accepted accept.operations = set_owner_to_self accept.permissions = TICKET_MODIFY failed = testing -> in_progress failed.name = failed testing failed.permissions = TICKET_MODIFY in_progress = new,assigned,accepted,reopened,needs_info,reviewing -> in_progress in_progress.name = in progress in_progress.permissions = TICKET_MODIFY leave = * -> * leave.default = 1 leave.operations = leave_status needs_info = new,assigned,accepted,reopened,reviewing,in_progress -> needs_info needs_info.name = needs additional information needs_info.permissions = TICKET_MODIFY passed = testing -> closed passed.name = passes testing passed.operations = set_resolution passed.permissions = TICKET_MODIFY passed.set_resolution = fixed reassign = new,assigned,accepted,reopened -> assigned reassign.operations = set_owner reassign.permissions = TICKET_MODIFY reassign_in_progress = in_progress -> * reassign_in_progress.name = reassign to reassign_in_progress.operations = set_owner reassign_in_progress.permissions = TICKET_MODIFY reassign_needs_info = needs_info -> * reassign_needs_info.name = reassign to reassign_needs_info.operations = set_owner reassign_needs_info.permissions = TICKET_MODIFY reassign_review = review -> * reassign_review.name = reassign to reassign_review.operations = set_owner reassign_review.permissions = TICKET_MODIFY reassign_testing = testing -> * reassign_testing.name = reassign to reassign_testing.operations = set_owner reassign_testing.permissions = TICKET_MODIFY reopen = closed -> reopened reopen.operations = del_resolution reopen.permissions = TICKET_CREATE resolve = new,assigned,accepted,reopened,needs_info,reviewing,in_progress -> closed resolve.operations = set_resolution resolve.permissions = TICKET_MODIFY review = new,assigned,accepted,reopened,needs_info,in_progress,testing -> reviewing review.name = needs review review.permissions = TICKET_MODIFY testing = new,assigned,accepted,reopened,needs_info,reviewing,in_progress -> testing testing.name = needs testing testing.permissions = TICKET_MODIFY
There is nothing in the logs at all when the page fails to load, and there is only the traceback when the internal error occurs.
Attachments (0)
Change History (10)
comment:1 Changed 10 years ago by
Description: | modified (diff) |
---|
comment:2 Changed 10 years ago by
Keywords: | needinfo added |
---|
comment:4 Changed 10 years ago by
I'm also using Firefox 30 on Windows. It works for me.
Please check using Console and Network tabs on Web developer in your Firefox.
comment:5 Changed 10 years ago by
I was able to track down the issue. It was actually a jQuery-UI conflict between a few of the other plugins. It only caused a noticeable error on the Workflow Admin page for some reason though.
For now I have disabled the main offending plugin and everything is working fine with this plugin now.
comment:7 Changed 10 years ago by
Component: | TracWorkflowAdminPlugin → MindMapMacro |
---|---|
Keywords: | jqueryui added; needinfo removed |
Owner: | changed from Jun Omae to Martin Scharrer |
Thanks for the feedback. I reproduce now. The jquery-ui conflicts between 1.8.6 in TracWorkflowAdminPlugin and 1.7.2 in MindMapMacro.
Workaround is to add the following to your trac.ini.
[mindmap] resizable = disabled
Otherwise, it would be fixed to apply the following patch to use bundled jqueryui in Trac core, except it's still broken on Trac 0.12.x.
-
mindmapmacro/0.11/tracmindmap/macro.py
15 15 from trac.mimeview.api import IHTMLPreviewRenderer 16 16 from trac.util import md5, to_unicode 17 17 from trac.web.api import IRequestFilter, IRequestHandler, RequestDone 18 from trac.web.chrome import ITemplateProvider, add_script, add_stylesheet18 from trac.web.chrome import Chrome, ITemplateProvider, add_script, add_stylesheet 19 19 from trac.web.href import Href 20 20 from trac.wiki.api import IWikiMacroProvider, parse_args 21 21 from tracextracturl import extract_url … … 136 136 add_script( req, 'mindmap/tools.flashembed-1.0.4.min.js', mimetype='text/javascript' ) 137 137 add_script( req, 'mindmap/mindmap.js', mimetype='text/javascript' ) 138 138 if self.resizable: 139 add_stylesheet( req, 'mindmap/ui.theme.css', mimetype='text/css' ) 140 add_stylesheet( req, 'mindmap/ui.resizable.css', mimetype='text/css' ) 141 add_script( req, 'mindmap/ui.core.js', mimetype='text/javascript' ) 142 add_script( req, 'mindmap/ui.resizable.js', mimetype='text/javascript' ) 139 if hasattr(Chrome, 'add_jquery_ui'): 140 Chrome(self.env).add_jquery_ui(req) 141 else: 142 add_stylesheet( req, 'mindmap/ui.theme.css', mimetype='text/css' ) 143 add_stylesheet( req, 'mindmap/ui.resizable.css', mimetype='text/css' ) 144 add_script( req, 'mindmap/ui.core.js', mimetype='text/javascript' ) 145 add_script( req, 'mindmap/ui.resizable.js', mimetype='text/javascript' ) 143 146 return (template, data, content_type) 144 147
comment:9 Changed 8 years ago by
It looks like some of the image files needed by jQuery UI are missing, as reported in gmessage:trac-users:EqqLfeGcw5c/cF84UBZKBgAJ. After r15575 that shouldn't be an issue for Trac 1.0 and later.
Resizing still raises an error though:
jquery-ui.js:5 Uncaught TypeError: Cannot read property 'width' of undefined
comment:10 Changed 5 years ago by
Resolution: | → fixed |
---|---|
Status: | new → closed |
Cannot reproduce it. What of browser are you using?