Running trac 0.12 with the latest version of the TracJsGanttPlugin (installed using easy_install this morning). Regardless of whether any other coordinating plugins are installed or not (such as mastertickets, subtickets, timingandestimation), I cannot make a gantt chart display from a very simple existing milestone in Trac (10 tickets, 2 closed, backend repository is Mercurial).
Currently, only tracjsgantt.* is enabled in my trac.ini file, and no [trac-jsgantt] section is defined (all commented out) - see Debug output below. If I try adding back certain fields (as outlined on the TracJSGanttPlugin wiki page), I get different, but similar, errors - issues like:
TypeError: strptime() argument 1 must be string, not int.
and
KeyError: u'userstart'
I'm just trying to display a Gantt chart, nothing fancy (yet). Looking through the other active tickets there appears to be some question whether this plugin works with Trac 0.12. Is that accurate?
From the trac.log file in DEBUG Mode:
03,713 Trac[query] DEBUG: Query SQL: SELECT t.id AS id,t.description AS description,t.owner AS owner,t.type AS type,t.status AS status,t.summary
AS summary,t.milestone AS milestone,t.priority AS priority,t.time AS time,t.changetime AS changetime,priority.value AS priority_value
FROM ticket AS t
LEFT OUTER JOIN enum AS priority ON (priority.type='priority' AND priority.name=priority)
WHERE ((COALESCE(t.milestone,'')=u'FME Cart Completion'))
ORDER BY COALESCE(priority.value,'')='',CAST(priority.value AS integer),t.id
2011-05-31 15:06:03,715 Trac[formatter] ERROR: Macro TracJSGanttChart(milestone=FME Cart Completion) failed:
Traceback (most recent call last):
File "/usr/local/lib/python2.6/dist-packages/Trac-0.12-py2.6.egg/trac/wiki/formatter.py", line 710, in _macro_formatter
return macro.process(args, in_paragraph=True)
File "/usr/local/lib/python2.6/dist-packages/Trac-0.12-py2.6.egg/trac/wiki/formatter.py", line 304, in process
text = self.processor(text)
File "/usr/local/lib/python2.6/dist-packages/Trac-0.12-py2.6.egg/trac/wiki/formatter.py", line 291, in _macro_processor
text)
File "/usr/local/lib/python2.6/dist-packages/Trac_jsGantt-0.5-py2.6.egg/tracjsgantt/tracjsgantt.py", line 733, in expand_macro
tasks = self._add_tasks(options)
File "/usr/local/lib/python2.6/dist-packages/Trac_jsGantt-0.5-py2.6.egg/tracjsgantt/tracjsgantt.py", line 706, in _add_tasks
self._schedule_tasks()
File "/usr/local/lib/python2.6/dist-packages/Trac_jsGantt-0.5-py2.6.egg/tracjsgantt/tracjsgantt.py", line 421, in _schedule_tasks
t['calc_start'] = _start(t)
File "/usr/local/lib/python2.6/dist-packages/Trac_jsGantt-0.5-py2.6.egg/tracjsgantt/tracjsgantt.py", line 381, in _start
finish = datetime.strptime(_finish(ticket), self.pyDateFormat)
File "/usr/local/lib/python2.6/dist-packages/Trac_jsGantt-0.5-py2.6.egg/tracjsgantt/tracjsgantt.py", line 401, in _finish
elif ticket[self.fields['succ']] != []: