IronPython 2.6 is (or will be) a big release. The major feature is compatibility with Python 2.6, but there are a whole host of others features as well:
- The __clrtype__ metaclass for data binding and .NET attribute support
- Implementation of the ctypes module
- Support for Python stack frames and sys.settrace, which means the pdb debugger works
- Better performance through adaptive compilation
- Faster startup
We’re pleased to announce the release of IronPython 2.6 Release Candidate 2. Since the public availability of Release Candidate 1, we’ve addressed the following:Harry Pierson, the IronPython program manager for Microsoft has just announced that he is leaving the IronPython team for the Windows team:
If no major issues with this release candidate are discovered, we hope to ship the final 2.6 release in a little under a month. Anyone planning on upgrading to 2.6 should try out this release candidate and let us know of any issues you find ASAP.
- The “json” CPython package has been included with our MSI installer
- CPython’s logging module can be utilized without passing the –X:Frames command-line parameter to ipy.exe
- Documentation distributed with the release has been updated
- A memory leak in the hosting APIs reported on the mailing list was fixed
- Multi-threaded debugging using sys.settrace show now work
- Fixed mapping of .NET “Compare” methods to __cmp__ when they return the wrong type
- The imp.load_module function now respects the file argument
- A bug related to relative module imports has been addressed
- Fixed indexing on .NET types defining DefaultMemberAttribute
- Several issues involving new-style string formatting have been corrected
Big news in DevHawk land: I’ll be taking on a new role in the Windows division after I come back from TechEd Europe (plus a week vacation visiting my bro-in-law in Germany after TechEd).
You guys have heard of Windows, right? They just released a new version recently you might be aware of…
Of course, starting a new job means my time on the IronPython team is coming to an end. As excited as I am about this new opportunity in the Windows division, I’m a little sad to be leaving Developer Division and the IronPython team. I’ve joked with audiences that I care about Python because Microsoft pays me to care about Python, but that’s not completely true. Python is a fantastic language and IronPython’s combination of Python + .NET is hard to beat in my opinion. IronPython has made significant progress while I’ve been here the last eighteen months – two major releases (well, 2.6 is almost done), redisting the Python standard library, Visual Studio 2010 compat - but there’s still much for IronPython to accomplish. And of course, leaving behind such great teammates like Dino, Dave, Jim and Jimmy is ALWAYS hard.Harry has also blogged about the latest two of the three IronPython releases:
It has been a very busy week for the IronPython team. Just under a week ago, we shipped a CTP for .NET Framework 4.0. Since then, we’ve shipped two – yes, two! – more versions of IronPython. Three releases in one week! If we could keep up that pace, we’d be shipping like 27 more releases of IronPython by the end of the year!
FYI, we’re not going to keep up the pace of shipping three releases a week for the next two months. We may be a little crazy on the IronPython team, but we’re not THAT crazy!
Actually, all three of these releases represent fairly small changes in the IronPython source tree. The .NET 4.0 beta was a CTP, so it’s basically whatever we had in our main trunk when they forked .NET Framework for the beta.
IronPython 2.0.3 is a minor point release in the 2.0 branch (duh). In addition to backporting some fixes from 2.6, we had to fix an CLR breaking change in partial trust on Windows 7. If you’re using IronPython 2.0.x in partial trust on Windows 7 you *MUST* upgrade to 2.0.3 (or 2.6 when it’s released). Sorry about that – but it was out of our hands.
IronPython 2.6 RC2 is – as you would expect - a minor update over the first release candidate. There was a memory leak discovered in the hosting APIs which forced us to do a second release candidate. Since we had to fix that, we took in a few of other fixes including some standard library changes (we left out json by accident in RC1 and Michael Foord got logging updated to work better with IronPython so we took the latest version of it). As per the release notes, we expect this to be the final RC and will re-ship it as RTM in about a month. Please start using this latest release and let us know if you find anything.