pythonnet v2.0.0-alpha.2 Release Notes

  • ๐Ÿ”„ Changed

    • First work on Python 2.5 compatibility. The destination version can be set by defining PYTHON24 or PYTHON25. Python 2.6 compatibility is in work.

    • โœ… Added VS 2005 solution and project files including a UnitTest configuration which runs the unit test suite.

    • โœ… Enhanced unit test suite. All test cases are combined in a single test suite now.

    • ๐Ÿ›  Fixed bugs in generics support for all Python versions.

    • ๐Ÿ›  Fixed exception bugs for Python 2.5+. When compiled for Python 2.5+ all managed exceptions are based on Python's exceptions.Exception class.

    • ๐Ÿ—„ Added deprecation warnings for importing from CLR.* and the CLR module.

    • ๐Ÿ‘ Implemented support for methods with variable arguments spam(params object[] egg)

    • ๐Ÿ›  Fixed Mono support by adding a custom marshaler for UCS-4 unicode, fixing a some ref counter bugs and creating a new makefile.mono.

    • Added a standard python extension to load the clr environment. The src/monoclr/ directory contains additional sample code like a Python binary linked against libpython2.x.so and some example code how to embed Mono and PythonNet in a C application.

    • Added yet another python prompt. This time it's a C application that embedds both Python and Mono. It may be useful as an example app for others and I need it to debug a nasty bug.

    • Implemented ModuleFunctionAttribute and added ForbidPythonThreadsAttribute. The latter is required for module functions which invoke Python methods.

    • Added clr.setPreload(), clr.getPreload(), clr.AddReference("assembly name"), clr.FindAssembly("name") and clr.ListAssemblies(verbose). Automatic preloading can be enabled with clr.setPreload/True). Preloading is automatically enabled for interactive Python shells and disabled in all other cases.

    • ๐Ÿ New Makefile that works for Windows and Mono and autodetects the Python version and UCS 2/4 setting.

    • ๐Ÿ— Added code for Python 2.3. PythonNet can be build for Python 2.3 again but it is not fully supported.

    • Changed the PythonException.Message value so it displays the name of the exception class Exception instead of its representation <type 'exceptions.Exception'>.

    • Added Python.Runtime.dll.config.