RhythmDB disjunctions patch
I was particularly pleased with the patch I wrote yesterday; it added support for rhythmdb disjunctions to the python bindings, and needed some thinking through. After the requisite planning, during which I did in fact sketch diagrams on the back of an envelope, I went to the pub to numb the pain of the actual implementation. Two pints later, it worked.
What it means in practical terms is that you can now do all the really complicated Rhythmbox database queries from Python plugins; so, I now have search-as-you-type on podcast posts and feeds in my reimplementation. This is my seventh patch to make it into Rhythmbox.
Incidentally, git and git-svn have improved my productivity dramatically since I started using them – it’s great actually having revision control of all my local changes, and being able to easily merge the latest svn commits. Also handy is being able to create separate local branches within which to develop radical new features.
Bzr could probably do this as well, but I have grand dreams of one revision control system to rule them all; I’m worried that bzr won’t scale well to handle projects the size of Linux and X.org. It would be interesting to see a Launchpad equivalent that was based upon git. (Yes, I realise this is probably a crazy reason for choosing git over bzr, but that’s what’s in the back of my mind. It means I shouldn’t have to learn two revision control systems.)