I’ve recently started using bzr as my go-to version control system, and as a newbie I’ve run into a couple of small things I’ld like changed. Fortunately, bzr is written in Python, and comes with an extensive set of unit tests, so it was easy for me to jump right in and add the feature I wanted. To be honest, I started off by writing it up as a bug report, with a trivial patch (by which I mean one without any tests). The comments on the bug led me to write up an actual mergable set of changes (which seems to be called a bundle by the bzr folks), and submit it for review. What followed was a few back-and-forths where various people pointed out things I hadn’t done correctly, or hadn’t really understood, and I fixed them. As a result, I think the code in the most recent bundle is pretty good, and is certainly far better than anything I would have produced on my own.