Hello Python Community,
We’re proud to announce the release of IronPython 2.6 final. This is a major release with improvements across all areas of IronPython. Significant changes include:
- Updating the language and standard library to match CPython 2.6
- Improved .NET integration
- Updating to the latest version of the DLR
- Adding previously missing CPython features and fixing bugs
- Performance improvements in particular startup time improvements
Python 2.6 support includes a large number of new features which include support for the new bytes and byte array types (PEP 3112
), decorators for classes (PEP 3129
), advanced string formatting (PEP 3101
) which will feel familiar to .NET users and integrates nicely with IFormattable, print as a function (PEP 3105
), Abstract Base Classes (PEP 3119
), support for binary literals, along with lots of other minor features and changes.
IronPython also continues to improve .NET integration in this release. We’ve added the __clrtype__ method
to types which enables deep integration via meta-classes with the .NET type system. There are also a number of smaller changes such as supporting IDisposable in for loops
matching the behavior of other .NET languages. This release also includes the latest version of the DLR and fixes a number of issues related to cross-language dynamic interop. Also, there’s improvements in Silverlight integration by supporting Python code in HTML script tags
, and using IronPython as a ASP.NET programming language
We’ve also continued to improve Python compatibility by adding missing features and fixing bugs. In this release we’ve added support for the ctypes
module which provides interop with native code in a compatible way across Python implementations. We’ve also implemented sys.settrace to provide support for the pdb module
and other Python debuggers. This release also changes how we support sys.getframe: a fully working version is now available by a command line option; when not enabled sys.
getframe doesn’t exist at all. This release also fixes over 400 bugs removing a large number of smaller incompatibilities.
As always we’ve also continued to improve performance, and this release primarily focuses on improving startup time. The IronPython installer now pre-compiles (ngens) IronPython during installation on both 32-bit and 64-bit platforms. Modules are now interpreted initially and hot functions are compiled for faster import times. A number of other code paths that used to involve runtime code generation have been optimized to be contained within the pre-compiled IronPython binaries. We’ve also made a number of smaller changes which improve performance in other areas such as adding constant folding.
Thank you for your continued support of IronPython.
The IronPython Team