[IronPython] IronPython 0.9.6 released

Martin Maly Martin.Maly at microsoft.com
Sat Dec 10 10:32:14 CET 2005


Hello IronPython community,

We?ve just released the newest version of IronPython ? 0.9.6. This is most likely the last Alpha version of IronPython before the end of the year when we play to release IronPython 1.0 Beta 1. This build includes many bug fixes for issues reported to us by the community as well as support for many new modules. We are continuing to drive completeness of the Python and support for interoperability between .NET and IronPython.  Here are the highlithts of the 0.9.6 release, the full list of changes is included at the end of the mail:

All missing dictionary methods are now implemented
Parser changes for tools integration
Weak reference support
Itertools module is now implemented
Improved debugger sequence point generation, parser & tokenizer improvements
Python equality/hashing and CLR equality/hashing separated
Unhandled exceptions are no longer passed to the OS
Exceptions have better stack traces in the interactive environment
locals() support for most common usage scenarios (but not execfile or eval yet)
Regular expression improvements: Implement missing methods, support Python named groups, fix match implementation when matching in the middle of a string,

We?d also like to thank everyone in the community for your bug reports and suggestions that helped make this a better release: Mike Hostetler, Nicholas Jacobson, Davy Mitchell, Alexei Bocharov, Rosenkrantz, Jacques de Hooge, Anthony Tarlano, diaphanein, pchasco, Koly, Sumit Basu, Shon Shah, Angelo Xu, Boris Capitanu, carlostekken, Flexibal, glchapman, Luis M. Gonzalez, reportlabrobin, spencermah

You can download the IronPython 0.9.6 release from:
http://www.microsoft.com/downloads/details.aspx?FamilyID=e73fad51-6566-4f4a-a42c-33bb5b89b4e8&displaylang=en

Thanks and keep in touch,
The IronPython team

Full list of changes and bug fixes:
===================================
Duplicate parameters & fancy kw args fixed
Kw-arg property assignment fixed
Module on old class moved into dictionary
Improved syntax errors for null expressions
Exec supports multi-line expressions
Dict now has copy, and update supports user defined dictionaries
== will call user defined __cmp__ function
Improved error reporting for parser 
Duplicate named parameters detected by parser & reported
Integer performance improvements & possible correctness improvements
Bitwise operators implemented for bool
IronPython compiles warning free
Kw args & default params work better together
__hash__ is called for user defined types when hashing
All old style classes are of type instance
Code gen no longer produced duplicate parameter names
Tab at end of file no longer produces parser error
Throwing strings is supported
Backwards slices (m<n) are now handled correctly 
Non-closure methods in function w/ closure defined fixed
x [] now correctly generates a syntax error 
IgnoreSymbolStoreSequencePoints now applied to generated assemblies for improved debugging & performance
Implement hexversion in sys module
Last statement in a file no longer gets an extra sequence point
Calling __init__ on inherited in winforms w/ kw-args from subclass supported
Inheritance of methods from built-in overridden in subclass now propagate to additional subclasses of the ubclass.
Exceptions on another thread no longer rip process (only for threads created through thread module)
Unicode with no args no longer throws type error
String formatting now throws when not all arguments are converted
Apply function implemented in builtins
Coerce function implemented in builtins
New execfile overloads (but no locals support here yet)
Filter implemented for strings, tuples, and subclasses thereof
Improved support for inheriting from string
Floating point modulo code correctness fixes
Frame object matches Python?s behavior of when updating locals or globals
Locals in frame can be any mapping object
Can now override __xxx__ methods on Tuple
Lambda expression sequence points fixed
Dead code cleanup in PythonEngine
code object support (only allows getting argument names so far)
new sys._getframe overload (but not implemented)
improved handling for passing None to reg-ex methods
static event handlers can now be hooked from IronPython
Conversion from double to integer 
Unichr now returns the correct type
Integer parsing now accepts Arabic-Indic digits
Hash(None) no longer throws
Hex and oct fixes to throw correct error when object is missing
Sys.maxunicode added
Improved error handling in integer parsing
Start of cStringIO implementation
Updated tutorial to be compatible with Avalon for .NET 2.0
return <value> on module level generates invalid program exception rather than SyntaxError
Equals between boxed bool and Python bool now returns True
String manipulation produces incorrect results - bug fixed



More information about the Ironpython-users mailing list