Trac 1.2 will be released soon. Portions of the deprecated API have been removed (1), and many plugins will not yet work with Trac 1.2. If you are running any plugins that are not yet tagged as being compatible with Trac 1.2, now would be a good time to test them in order to smooth your upgrade experience.
Here what you can do:
1. Check whether the plugin is compatible with Trac 1.2. If it is compatible, the plugin's wiki page should be tagged with "1.2" (2). Even if the plugin is tagged with 1.2, you may still want to test it. Several plugins were tagged with "1.1", which is very ambiguous, and I changed many of those to have tag "1.2" after briefly inspecting the code.
2. Test the plugin in a clean installation environment. The procedure is described below. If the plugin works with the latest Trac trunk, please tag the page with 1.2. If the plugin does not work, please open a ticket and include the information suggested below. Many of the changes are fairly easy to fix. I'll be fixing as many of the unmaintained plugins as I can find time for.
Testing plugins on Linux (if there is need, I'll write up procedures for Windows and OSX):
1. Install required packages using package manager. For a Debian-like OS: "apt-get install python python-setuptools python-virtualenv"
2. Create a virtual environment and install Trac
$ mkdir plugin-test
$ cd plugin-test
$ virtualenv pve
$ source pve/bin/activate
$ easy_install genshi babel pytz docutils pygments
$ svn co http://svn.edgewall.org/repos/trac/trunk/ trac-trunk
$ cd trac-trunk
$ python setup.py install
$ cd ..
$ trac-admin trac initenv "trac" "sqlite:db/trac.db"
$ trac-admin trac permission add anonymous TRAC_ADMIN
$ trac-admin trac config set logging log_level DEBUG
$ trac-admin trac config set logging log_type stderr
3. Install plugins (example here is for the popular TagsPlugin).
$ svn co https://trac-hacks.org/svn/tagsplugin/trunk tagsplugin-trunk
$ cd tagsplugin-trunk
$ python setup.py install
4. Run the plugin test suite, if it has one,
$ python setup.py test
5. Enable the plugin, start Trac and test the plugin,
$ cd ..
$ trac-admin trac config set components tractags.* enabled
$ trac-admin trac upgrade
$ tracd -p 8000 -s trac
In the case of TagsPlugin, you'll see that many tests fail, and the plugin fails at "trac-admin trac upgrade" with output (3).
Check whether a ticket has already been opened for the issue. In the case of TagsPlugin, there is already a ticket (4).
If a ticket needs to be opened, please include the following information:
1. Version of Trac that you tested against.
2. Errors from the logs.
3. Version of plugin that you tested with.
Much more could be done of course. Testing could be done with PostgreSQL and MySQL. Many plugins have optional dependencies - TagsPlugin has XmlRpcPlugin as an optional dependency. Testing with a real webserver rather than TracStandalone may uncover some issues as well. I may writeup more steps later if this proves to be useful in stimulating effort towards testing plugins.
- Ryan
(1) http://trac.edgewall.org/wiki/TracDev/ApiChanges/1.1
(2) https://trac-hacks.org/tags/1.2
(3)
The upgrade failed. Please fix the issue and try again.
AttributeError: 'Environment' object has no attribute 'get_db_cnx'
16:19:19 Trac[console] ERROR: Exception in trac-admin command:
Traceback (most recent call last):
File "build/bdist.macosx-10.10-x86_64/egg/trac/admin/console.py", line 108, in onecmd
rv = cmd.Cmd.onecmd(self, line) or 0
File "/usr/local/Cellar/python/2.7.10_1/Frameworks/Python.framework/Versions/2.7/lib/python2.7/cmd.py", line 220, in onecmd
return self.default(line)
File "build/bdist.macosx-10.10-x86_64/egg/trac/admin/console.py", line 286, in default
return self.cmd_mgr.execute_command(*args)
File "build/bdist.macosx-10.10-x86_64/egg/trac/admin/api.py", line 127, in execute_command
return f(*fargs)
File "build/bdist.macosx-10.10-x86_64/egg/trac/env.py", line 976, in _do_upgrade
self.env.upgrade(backup=no_backup is None)
File "build/bdist.macosx-10.10-x86_64/egg/trac/env.py", line 738, in upgrade
participant.upgrade_environment(*args)
File "build/bdist.macosx-10.10-x86_64/egg/tractags/db.py", line 79, in upgrade_environment
TicketTagProvider(self.env)._fetch_tkt_tags(db)
File "build/bdist.macosx-10.10-x86_64/egg/trac/core.py", line 144, in __call__
self.__init__()
File "build/bdist.macosx-10.10-x86_64/egg/tractags/ticket.py", line 53, in __init__
db = self.env.get_db_cnx()
AttributeError: 'Environment' object has no attribute 'get_db_cnx'
(4) https://trac-hacks.org/ticket/12137
You received this message because you are subscribed to the Google Groups "Trac Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to
.
.
.
.