Wiki Tools

  • Find Page
  • Recent Changes
  • Page History
  • Attachments

List of goals for bzr release 0.12

See BzrHistory of ReleaseRoadmap for other releases, and BzrWishlist for some uncategorized future features.

bzr 0.12

Release details

Release Manager: JohnArbashMeinel

Non-trivial change freeze date: Monday October 16th After this commits that destabilise mainline are considered removable.

Release candidate date: Monday October 23th

Release Date: Monday October 30th

These dates allow 3 weeks for major features to land and 2 weeks stabilisation.


These features are goals for 0.12. If they are not delivered in the pre-freeze timeframe they will just be rolled over to the next release.

Note that after the 0.12 release the milestone status page will become inaccurate if any bugs slipped - so only the release-process' specs list will remain accurate for reference purposes.


Things that have landed

cleanup progress bar - A nice cleanup by Aaron, to properly finalize

  • progress bars when interrupted during fetch.

reverting files removes them - More handling of cases when files that

  • have not been modified can be removed. Which allows a simple api for removing working trees.

lock write will wait - when acquiring a write lock, the user is prompted

  • and the default is to wait for 5 minutes before giving up. Should help reduce user pain when committing to a shared location.

test case with memory transport - A nice base class that can speed up

  • simple test cases considerably (by not requiring any disk i/o).

Things that have been submitted and should be landed soon

  • unique tree roots - We stalled for a while on whether a 'Tree' can be rootless. But Robert has finally agreed that it should be possible to have no root. I've reviewed Aaron's changes, and IIRC with a little bit of cleanup, it is ready to be merged.
  • help topics - There has been a couple patches which seem to have stalled. Goffredo submitted some updates that did not seem to get reviewed. I'm hoping he can re-submit them to the mailing list, and we can get this landed
  • registry - Also something that I've submitted a couple times, and just needs final approval
  • lazy imports - I've started a series of refactoring, to get the bzr startup time down. A few patches have been submitted, though this is an ongoing change. If this is going to be merged, I'd like to see it happen early this week, since it is something that can cause hidden import order dependencies.
  • urllib keep alive - Vincent Ladeuil's work to bring webdav support has also provided us with a keep alive implementation. This should let us make urllib the default http provider, and avoid some of the negatives of pycurl (downloading a large file cannot be interrupted is the only big one I know of)
  • cascading support for config files- This one seems to be stalled. I'll try to talk to Martin and Robert to see if we can get it unstuck.
  • update --revision - This also seems to be stalled. With difficulty deciding whether --revision should be evaluated locally or remotely.
  • cleanup use message for ssh errors - Richard Wilbur thought this was good, but I haven't heard from anyone else.
  • Transport.get() is defined that it can raise a lazy exception on read()- This was done by Robert because sftp has that property, and it is important that the rest of the codebase be aware of this fact. While I was originally unsure, I know think it is a good thing. And though I thought I gave it a +1, I'll give it one now, just in case.
  • Show full name of plugin- I think this is a good direction, but probably needs a little bit more work. Frequently plugins will have dots in their name, which aren't version numbers (bzr.webdav comes to mind). Robert has made it clear that he feels plugins should have a canonical name, which must be a valid python variable name. It does have a lot of benefits, so I would like to see us work towards this.
  • bzr+http:// and served over fastcgi - Andrew Bennetts has done good work in making the smart server work over http. While it needs a little bit of cleanup, I don't see any reason why it shouldn't land for 0.12.

Things that are in progress

  • Martin-
    • Updated benchmark display, to make it easier to see what is going on. Tags- We've been discussing this a lot, and unfortunately, a clear
      • path has still not emerged. The current proposal has some merit and may also introduce some other benefits to make it work well.
  • Robert-
    • 'dirstate' changes. He and I have been working on it while I'm in AU, and we have been sending a few refactoring patches. With some luck, we'll be able to see a new working tree format in 0.12.
  • Aaron-
    • support path-kind changing - This claims to be 'blocked', though I'm
      • not sure what it is blocked on. Aaron, can you clarify? I know you sent in a patch a while ago which would at least allow 'commit' to function, which was a pre-requisite for converting some branches from Arch.
      nested tree support - I think this is blocked on unique roots, which
      • should be cleared for landing.
  • John-
    • commit performance - This is an ongoing thing. I still have my patch
      • which removes the hash prefixes for knit storage. Which does seem to improve performance under certain circumstances. I cleaned it up a bit for, though it still needs upgrade logic to be added.
      bug triaging - One of my big goals is to have several stabs at the bug
      • tracker, and try to get fixed bugs marked as such, and get trivial bugs squashed. Some of this can happen after the feature freeze, though I'd like to have at least one bug-day this week, in case there are bugs that involve less trivial changes.