Python 3.0 release candidate arrives
The first release candidate of Python 3.0, also known as Python 3000, has been released. The release announcement predicts a final release of 3.0 in October and are encouraging Python developers to download and test the release candidate, with only highly critical bugs being fixed in this final phase.
Python 3.0 is a major reworking of Python and breaks backward compatibility with Python 2.x. Among the major changes, Python 3.0 moves to an near-all Unicode implementation, removing its old assumption that strings were a collection of 8-bit bytes and removal of the print keyword, replacing it with a print function. Guido van Rossum has previously presented changes in Python 3.0 in What's New in Python 3.0 and has presented talks on the changes. At PyCon UK 2008, Raymond Hettinger presented a well attended session on the changes to the UK developer community.
Python 2.x will still be developed and maintained. Python 2.6 will act as a stepping stone between Python 3.x and 2.x, with the ability to warn about code which will break in Python 3.0 and with some Python 3.0 functionality available. Python 2.6rc2 was made available a few days before the 3.0rc1. A conversion tool, 2to3 is available for developers who want to automate their migration to Python 3.0. Python's developers do not expect a rapid switch over to Python 3.0 even when it is released. The general expectation is that developers will move to Python 2.6, use its warnings to modify code ready for Python 3.0, and later on move to Python 3.x itself.