id,summary,reporter,owner,description,type,status,priority,component,severity,resolution,keywords,cc,release 10918,Version and Roadmap views shows error when version has at least one defined milestone associated,Dawuid,Ryan J Ollos,"Environment: * '''Trac''': 1.0.1 * '''!ExtendedVersion''': revision 12688 * Milestone associated with a version Steps to reproduce: * If there is no milestone associated with a version: 1. Assure !ExtendedVersion has property `roadmap_navigation` in `false` (this is only to assure to get a binding relationship between milestone and version due to Admin View not having capability to do that binding). 1. In Roadmap View select a Milestone 1. Select edit and in Milestone Edit View, associate the milestone with a available version 1. Go to Versions view -> crash with pile: {{{ XXXX-XX-XX XX:XX:XX,XXX Trac[main] ERROR: Internal Server Error: Traceback (most recent call last): File ""XXX\Trac-1.0.1-py2.7-win32.egg.tmp\trac\web\main.py"", line 497, in _dispatch_request dispatcher.dispatch(req) File ""XXX\Trac-1.0.1-py2.7-win32.egg.tmp\trac\web\main.py"", line 214, in dispatch resp = chosen_handler.process_request(req) File ""XXX\site-packages\extendedversiontracplugin-0.1dev-py2.7.egg\extendedversion\version.py"", line 147, in process_request return self._render_view(req, db, version) File ""XXX\site-packages\extendedversiontracplugin-0.1dev-py2.7.egg\extendedversion\version.py"", line 315, in _render_view milestone._from_database(row) AttributeError: 'Milestone' object has no attribute '_from_database' }}} I think the problem comes for last changes in 1.0.1 version of Trac ([http://trac.edgewall.org/ticket/10879 ticket 10879]). Revisions related with that ticket (especially [http://trac.edgewall.org/changeset/11523/ changeset 11523]) changes Milestone class (from 1.1.x branch). !ExtendedVersion plugin uses Milestone in the old way (<= 1.0), with `_from_database` method. With this changes of 1.1.x in 1.0.x, !MilestoneCache must be used (`fecth` or `factory`) to make !ExtendedVersion plugin work. Also due and complete fields of milestone has to be converted with `from_utimestamp` method if they are recovered directly from database. The patch attached to ticket is a simple solution, not the best approach, but it's working. ",defect,closed,normal,ExtendedVersionPlugin,normal,fixed,,,1.0