Note: See Python 2.3.5 for a patch release release which supersedes earlier releases of 2.3.
Important: This release is vulnerable to the problem described in security advisory PSF-2006-001 "Buffer overrun in repr() of unicode strings in wide unicode builds (UCS-4)". This fix is included in Python 2.4.4 and Python 2.5. If you need to remain with Python 2.3, there's a patch available from the security advisory page.
Important: 2.3.5 includes a security fix for SimpleXMLRPCServer.py.
We are pleased to announce the release of Python 2.3 on July 29, 2003. This is a final, stable release, and we recommend Python users upgrade to this version.
Nineteen months in the making, Python 2.3 represents a commitment to stability and improved performance, with a minimum of new language features. Countless bugs and memory leaks have been fixed, many new and updated modules have been added, and the new type/class system introduced in Python 2.2 has been significantly improved. Python 2.3 can be up to 30% faster than Python 2.2.
Please see the separate bugs page for known issues and the bug reporting procedure.
Download the release
Windows users should download the Windows installer, Python-2.3.exe, run it and follow the friendly instructions on the screen to complete the installation. Windows users may also be interested in Mark Hammond's win32all, a collection of Windows-specific extensions including COM support and Pythonwin, an IDE built using Windows components.
All others should download Python-2.3.tgz, the source archive. Unpack it with "tar -zxvf Python-2.3.tgz". Change to the Python-2.3 directory and run the "./configure", "make", "make install" commands to compile and install Python.
Macintosh users can find binaries and source on Jack Jansen's MacPython page. Mac OS X users who have a C compiler (which comes with the OS X Developer Tools) can also build from the source tarball below.
IDLEFORK users should take note: Idlefork has been re-merged back into the main Python distribution and takes the place of the old IDLE release.
- See the highlights of this release.
- Andrew Kuchling's What's New in Python 2.3 describes the most visible changes since Python 2.2 in more detail.
- A detailed list of the changes is in the release notes, or the Misc/NEWS file in the source distribution.
- For the full list of changes, you can poke around in CVS.
- The PSF's press release announcing 2.3.
The documentation has been updated too:
The interim documentation for new-style classes, last seen for Python 2.2.3, is still relevant for Python 2.3. In addition, The Python 2.3 Method Resolution Order is a nice paper by Michele Simionato that explains the C3 MRO algorithm (new in Python 2.3) clearly. (Also available as reStructured Text. Copied with permission.)
Files, MD5 checksums, signatures, and sizes
595620a4769073a812e353597585c4e8 Python-2.3.tgz (8436880 bytes, signature) 5763d167f4ab3467455e4728ac5a03ac Python-2.3.exe (9380742 bytes, signature)