Wednesday, March 29, 2006

Python Bug Day and Alpha Release

There will be a Python Bug Day on Friday. I hope to fix several AST-related bugs. When we merged the ast-branch to the trunk, we commented out a few tests for edge cases we weren't handling yet. Well we still aren't handling those edges cases, and they'll cause crashes when we push a release. Thomas Wouters also found a small bug in the AST arena implementation.

I'm looking forward to this bug day, because it's on a week day. I can make time for Python development during the week, but weekends are mostly reserved for family time. I hope weekday bugdays are convenient for enough people that we can do them regularly.

The Python 2.5a1 release is imminent, too. Anthony Baxter had originally planned a code freeze for Thursday (tomorrow), but pushed in back a week because of the bug day. The exact schedule hasn't been worked out, but I'd expect the alpha in the second week of April. The final release is currently schedule for late summer, but I'd expect that to slip into early fall.

There are lots of new things in Python 2.5. The new bytecode compiler is sure to destabilize things a bit, but provide several long-term benefits. I'm ambivalent about the language changes: The conditional expression syntax is awful, as is the relative import syntax with dots between from and import. I don't feel much need for a with statement, but won't be surprised if I'm wrong about that. I certainly appreciate RAII in C++ and with supports the same kind of pattern. The new generator expression seems useful in the abstract, but the actual realization of it is weird. The yield statement is now an expression and may return a value? Huh?