Monday, May 19, 2008

Module renaming hell

A few days ago, MAL pointed out a problem with the 2.6 module renaming. If you pickle something in 2.6 using the renamed modules, it will not be backwards compatible with > 2.6 because the renamed modules are not present.

What this means is that we have to keep all the code in the old names for 2.6 and do start imports in the new names. This is going to create quite a mess for merging because Subversion is too stupid to handle renames correctly (of course Bazaar can). So changes will either have to be manually forward-ported or back-ported. I'm (and I know Brett isn't at all) not happy about this predicament. Perhaps, pickle could be changed to handle the module renames, but that doesn't seem to be the path we're taking.

This makes me worry a bit about the flexibility of pickle if it's going to make us endure painful moving for the next 5 years or so.

Wednesday, May 7, 2008

Guido's code review tool

Over the weekend, GvR invited the Python devs try out Rietveld (named after a Dutch furniture designer and architect), his new good review tool. It's derived from the other code review tool that Guido wrote at Google, Mondrian.

Anyway, it lets you upload patches from file URL or file. For the lazy, there is also the convenient upload.py script. Then you can see a side by side diff of the changes the patch makes. Reviewers (and this is where the real power comes in) can make line by line comments. It's really an improvement over looking between the review and the line numbers on your editor which may have changed since the review if you ask me! I hope eventually this can be integrated with the Python tracker.

Of mine, the range patch is there.