internal fragmentation

a personal journal of hacking, science, and technology

The 1.7 Mercurial Sprint

Thu, 4 Nov 2010 17:47 by mpm in Uncategorized (link)


1.7 sprint participants from left to right: Steve Borho, Brodie Rao, Benoit Boissinot, Mads Kiilerich, Nicolas Dumazet, Augie Fackler (front), Martin Geisler (Back), Matt Mackall, Dan Christiansen, Jesper Noehr, Justen Stepka (front), Patrick Mezard, and Benjamin Pollack.

A bunch of the Mercurial team got together in October for our 1.7 sprint. We had a total of 13 attendees, with 6 from the US, 6 from Europe, and one from Australia. A big thanks to Google and Atlassian for funding, and to Google for giving us pretty much an entire floor of their Chicago office for the weekend!

Over three days, we had a huge amount of discussion, feature development, and bug stomping. Here are some highlights:

  • Online help – given our extensive built-in help engine, it makes sense to have help browsable in hgweb. So we went ahead and implemented this for 1.7, see here for an example. More work to be done here, including generating nice HTML output.
  • Merging new features – we discussed the process for rolling large new features into the core. The consensus is that it’s ok to put development features into the core and cover them with config flags so that they’re not accidentally used. The not-yet-complete parentdelta support in 1.7 is a good example. Other large features like subrepos are being developed more incrementally with a steady evolution towards complete support (see the addition of numerous new subrepo pieces in 1.7).
  • Development cycle – we discussed our release plan and support for old versions. As we generally aim to make upgrading completely painless, we’re not going to do continued support releases of old versions. If users are going to upgrade, there’s very little risk in upgrading to the latest available release.
  • Advanced resolve – another new feature which extends resolve to handle more types of merge conflicts, including things we can’t currently handle well like case collisions. Steve Borho has a prototype implementation of this ready for testing.
  • “LiquidHG” – a newly proposed feature for tracking which changesets can be safely changed or discarded. This feature would make MQ and rebase and the like much less problematic. In our discussion, we unified this approach with the related “DeadHeads” approach for handling discarded lines of development. We’ll probably begin working on this in the 1.8 cycle.
  • Revitalizing the wiki – the wiki hasn’t gotten much attention lately and isn’t particularly well-organized. I proposed implementing a style guide and a cleanup plan to improve matters. Since the sprint, there’s been a huge amount of editing to implement these.
  • Revitalizing the book – we also discussed updating the Mercurial book to be more current. This probably means turning it into an active community-based project. We kicked around ideas a wishlist of ideas for improving the book, and have just begun discussing this again on the mailing list.
  • Replacing our bug tracker – we’re not terribly happy with the features and maintenance overhead of our current bug tracker, so we did an experiment with converting our database to Trac. We haven’t come to any decisions though.
  • Google Summer of Code – we had a debrief with all the people involved in our GSoC efforts and decided we need to have a more stringent selection process and more feedback to students about their performance to avoid surprises.
  • Our bug stomping session was also extremely productive and we resolved a huge number of outstanding issues and fine-tuned some of our bug-handling practices.

Once every two releases seems to be a good interval for sprints, so we’ve made tentative plans to have the next sprint before 1.9. However, just about everyone agreed that having more time between the sprint and the code freeze would be best, so we’ll probably aim for meeting in Europe some time in early spring 2011.


  1. […] This post was mentioned on Twitter by Burak Gürsoy, bboissin, Steve Losh, Augie Fackler, Matt Mackall and others. Matt Mackall said: Finally did a write-up of the #Mercurial 1.7 sprint (with group photo): […]

    Pingback by Tweets that mention The 1.7 Mercurial Sprint « internal fragmentation -- — Thu, 4 Nov 2010 @ 18:33

  2. […] seems just like yesterday that we were in Chicago for the sprint to get Mercurial 1.7 out the door, which happened on Nov […]

    Pingback by Iteration 1045 – Mercurial 1.7 – Bitbucket — Wed, 17 Nov 2010 @ 15:39

RSS feed for comments on this post.

Sorry, the comment form is closed at this time.