We've just released the first beta of IronPython 1.0 and are entering the home stretch to a 1.0 final build. This build includes many bug fixes for issues reported to us by the community as well as many changes to get better compatibility with CPython 2.4. With this build we've addressed the majority of major design issues for a 1.0 final. We're not sure that you'll agree with all of our answers, so pick it up and let us know what you think.
You can download this release here: http://www.microsoft.com/downloads/details.aspx?FamilyID=94082d26-e689-4f7f-859b-fec6dacf3ae8&displaylang=en The fact that we've released a beta isn't going to change this project's frequent release schedule. You should expect to continue to see releases every 3 weeks for the near future. We're not going to commit to any fixed number of beta releases, but I can tell you that I'm a huge fan of single digit numbers and a beta 10 release would be unbelievably ugly to have to make. The major open design issues that we resolved for this release include: * Moved LoadAssembly* functions out of sys into new clr module See "Loading .NET libraries" in the shipped tutorial for more info * New exception system for better CPython compatibility AND CLI interoperability We've already sent email about this change and expect the discussion to continue now that you have real bits to play with * CLI methods are not exposed on Python types unless the accessing module uses "import clr" We owe you an email on this one in the next couple of days * Fixed many memory leaks when using eval/exec by using DynamicMethods This should make PythonEngine a much better script host We've also made some significant strides for cleanup of the release: * Updated the Avalon tutorial for the December CTP * Source code layout has been refactored * Fixed numerous PEVerification errors for generated code Finally, we're getting really strong on CPython compatibility: * From __future__ import division support * Support for -i command line option * More passing tests: test_warnings, test_opcodes, test_grammer, test_types We'd like to thank everyone in the community for your bug reports and suggestions that helped make this a better release: Andrew Pliszka, Edward K. Ream, glchapman, grizlupo, Jacques de Hooge, Jan Stranik, Keith Farmer, Kirk Olynyk, Koly, Michael Shilman, Nicholas Jacobson, opin2 hu, opindd, Paul Viola, Sanghyeon Seo, shyamg, Stanislas Pinte, Sumit Basu, Szymon Kobalczyk, William Reade, ZZZZzzzz4 Thanks and keep in touch, The IronPython Team More complete list of changes and bug fixes: ============================================ Fixed generators causing PEVerification errors Fixed list.index (regression in 0.9.6) Marked IronPythonConsole.exe's Main w/ STAThread, -X:MTA supported for running in MTA Many changes to the implementation of locals() Improved locals() support for execfile, eval, vars & dir Enabled access to protected members Debug builds of IronPython verify assemblies after running Conversions between str classes & str Fixes for intern, iter, min, sum, dir and eval Fix for operator.isMappingType Dict __getitem__ method can now be overridden by derived types None can now be converted to a string Can override .NET virtual properties Range support for big integers No longer convert from float to int automatically Parsing integers throws on base > 36 Execfile fixes Pow, readline, import fixes Simple buffer class support chr(x) now throws if x > 0xFF coerce supported for str->float transition tokenizer eats Unicode header compile validates flags execfile throws correct error if bogus file / directory passed ord fixed to work on strings and chars only __init__ and __new__ are now optimized PythonCompiler fixes & enhancements Various built-in function corner cases fixed Fix branch out of try block Fixed usage of user defined locals function when calling exec Fixed generators not being able to yield from an except block Fixed float('5\0') not throwing Fixed _ getting defined in locals dictionary Fixed Unicode console display and Unicode file bugs Recursive list comparison now throws Fixed generators not being able to yield from finally block Fixed generation of pdbs from compiler Fixed string representation of NoneType Expandtas now accepts n<=0 All generators now share a common type Fixed non-ascii identifiers Math precision improvements New methods on float type New flag for accessing private members Conversions from tuples/lists to CLR arrays, lists, ArrayLists Method dispatch prefers M(int) over M(int, params int[]) Comparing enum to None no longer throws Functions now compare to themselves property Fixed space-padded numeric string formatting Added a public API to re-use pre-compiled scripts Added support for getdefaultencoding / setdefaultencoding Print the correct type name for str(instance) Integer class renamed BigInteger. Engine debug mode is off by default CLR Namespaces & Python namespaces can now overlap and be combined _______________________________________________ users mailing list users@lists.ironpython.com http://lists.ironpython.com/listinfo.cgi/users-ironpython.com