HgTimeline plugin

This plugin was designed for those Trac instances that need to interface with multiple Mercurial repositories, so that TracMercurial is not a good fit. This plugin integrates the changelog from a set of specified repositories into the Trac timeline and allows for linking to specific revisions at an external Mercurial web UI using a simple wiki syntax. The eccentricities of using the Trac source browser for Mercurial repositories or using it to browse several repositories which stem from the same project are thus avoided.


Most of this plugin is considered deprecated by its author; the newer multiple-repository support in Trac combined with TracMercurial works fine. However, a small plugin is still provided to handle repo:<rev-identifier> links (which are not natively supported by TracMercurial). This plugin can be found in hgtl/

How to install


$ python install

to install the plugin globally or

$ python develop

if you want to be able to change the source code.

Then, edit your project's trac.ini. In the components section, add this line:

hgtl.* = enabled

Finally, add a [hg-timeline] section like this:

[hg-timeline] web.href = proj1 = /home/joe/src/proj1 proj2 = /home/bob/src/proj2

The web.href option should point to an instance of hgwebdir (provided with Mercurial). Which has all the projects under it using the same identifier that is used in the [hg-timeline] section (so the web interface for the repository designated as proj1 should be at

What's new

Version 0.5 (2008-05-08):

  • Fix timeline RSS and make sure wiki formatting works.
  • Accomodate Context handling changes in Trac.
  • Try to ignore changesets under MQ control.

Version 0.4 (2007-11-22):

  • Don't show the same change from different repositories twice
  • Correctly handle permissions

Version 0.2 (2007-10-03):

  • Wikify the changeset descriptions
  • Show changes from after module initialization

Version 0.1 (2007-09-24):

  • Initial version of HgTimeline

Further information

The latest version can be found at and is available under the Modified BSD license. Thanks go to Christian Boos, who developed the more comprehensive TracMercurial plugin (see, Noah Kantrowitz, who helped me out in IRC with some problems I had, and all the Trac developers who've worked at making it such a great piece of software.