Trac 0.11 and Mylyn.

I keep hearing various people espousing the joys of task management with Mylyn in Eclipse, so last week I thought I would take a look.Mylyn is easy to install. Just go into Eclipse's Help > Software Updates > Find and Install > Search for new features and add the Mylyn update server. You can find the details of the update server from the Eclipse Wiki When you're given a list of items to install make sure you include the option for the Trac Connector. A quick restart of Eclipse and you're ready to use Mylyn locally and in theory you should be able to add a task respository. If you're on a released version of Trac eg. 0.10.4 you should be able to simply create a repository that points at your Trac installation URL and away you go... With 0.11 Mylyn can't see trac as a valid repository. At this point I kept finding notes saying that you can't use Mylyn with Trac 0.11. I'd also noted from the Mylyn User Guide (link above) that I should be able to use an XML-RPC plugin, but look at this also seemed to suggest that there were problems and the examples look scary. Its actually very simple to set up, the examples are for the API if you want to build your own XML-RPC interfaces and it definately does work! If you've installed Trac 0.11, you should have installed the Python setuptools, so installing the XML-RPC plugin is really easy!

easy_install http://trac-hacks.org/svn/xmlrpcplugin/trunk/

One thing to note - I used the trunk version of the plugin. The tagged version 0.10 doesn't work with Trac 0.11 Restart apache and thats it... What you'll need to do now is go into the plugin admin in trac web admin for the project you want to use as a task repository. You'll need to enable the following components in the tracxmlrpc plugin:

  • XMLRPCSystem
  • All the component with ".ticket" in the module name
  • XMLRPCWeb

Give Apache a quick restart. Now when you setup a task repository in Mylyn in Eclipse, make sure you chose "XML-RPC Plugin (rev. 1950)" as the Access Type under Additional Settings. With a valid user name to access your repo, you're now ready to start building queries in the task list. I really like the interface that Mylyn gives you in eclipse. Now I need to play with all the extra options you get for planning and adding context. Only two bothers I've noticed so far:

  1. I tried to add my queries into folders, but no matter how much I try they all just end up in the top level.
  2. As I wrote this I noticed that actions in our custom workflow aren't showing up

UPDATE : As Don has noted below - to enable the components in the XMLRPC plug-in I recommend using the web admin. This is one of the other superb features of Trac 0.11 - webadmin built in already. No need to have to learn about plug-in when you're first starting with Trac. ;)

TweetBacks
Comments
Great tutorial - thanks very much :)
# Posted By Nick Tong | 3/13/08 9:39 PM
thanks works great (so far).

finally an integration between ide and ticket-tool.
# Posted By manuel | 3/13/08 9:39 PM
One quick note.

I found your instructions to be quite useful in getting eclipse talking to my trac. I was slightly confused by your activation instructions for the plugin. You may want to highlight that you used the web admin tool. (I started at the command line / trac.ini file originally)

The other problem I ran into was that the permissions needed to be tweaked for my python eggs directory.
# Posted By Don Albrecht | 3/13/08 9:39 PM
Thanks for these super simple steps to get Mylyn to work with Trac 0.11. This likely saved me hours. It's also nice to see the help coming from a fellow CF dev. Cheers.
# Posted By Jeremy Prevost | 3/13/08 9:39 PM
Thanks, it's working for me, and it was pretty easy =)
# Posted By Anderson | 3/13/08 9:39 PM
This will actually work with multi-project trac and digest HTTP authentication. For the multi-project trac just point at the full url of the project. The digest just has a bug with the HTTP request, which currently has a patch and is being worked on, basic rule is that you just have to keep your request sizes small (more filters). More details at
https://bugs.eclipse.org/bugs/show_bug.cgi?id=2143...
# Posted By Roy Martin | 3/13/08 9:39 PM
Cheers! Great simple instructions.
# Posted By stryderjzw | 7/1/08 10:03 PM
Thank you, for this hack.
I was installed Eclipse 3.4 and added last Mylyn updates that works only with Trac 0.9 and 0.10, but I had 0.11 already.
Btw, for I proper work, I was need to enable all components under TracXMLRPC 1.0.0.
# Posted By Alexey Bass | 9/3/08 9:45 AM
TNX, was strugglin' to get mylyn work with trac 0.11 and your quick guide saved my life.
# Posted By VB | 9/26/08 1:45 PM
THANK YOU!!!!

It works for me, and was the piece I was looking for to integrate eclipse and trac.

I also had to enable all components under TracXMLRPC, but this is not an issue for me (I'm working on an intranet)
# Posted By Manel | 9/29/08 5:20 PM
Just thank-you!
# Posted By Jean-Yves Jourdain | 11/13/08 1:32 PM
The biggest thing missing is you need to grant
XML_RPC to the users that need access to login from eclipse.

With 0.11 the webadmin is installed as a core feature, but it too needs to be permissioned.

For both of these, trac-admin /path/to/trac/repository permission add rbuckland TRAC_ADMIN XML_RPC

Then from there it is just a matter of logging in.

My trac.ini already had

[components]
tracrpc.* = enabled
# Posted By Ramon Buckland | 11/20/08 9:26 PM
Thanks... I owe you one ;)
# Posted By kail | 11/24/08 11:23 PM
Has anyone had problems connecting with the Mylyn connector to a trac installation with SSL? It's a self signed cert, but the connection keeps timing out and the apache logs don't even show a connection attempt.
# Posted By Matt Stoner | 3/5/09 3:43 PM
Can you post utf-8 comment use mylyn.
I get 500 error
the utf-8 char encoded with unicode.
# Posted By Yao | 3/20/09 9:16 AM
Thanks!! Another fellow CF developer that is looking to integrate Trac and Eclipse. I'll try your instructions tomorrow.
# Posted By Joshua Curtiss | 3/26/09 5:59 AM
This was very useful, thanks for making it clear. Also thanks to Ramon for giving me a way to get access for everybody on the team.
# Posted By Kel | 5/21/09 3:32 AM