Announce: Python for .NET 1.0 RC2 released

2005-06-05 Thread Brian Lloyd
Hi all -

I'm happy to announce the release of Python for .NET 1.0 RC2.
You can download it from:

  http://www.zope.org/Members/Brian/PythonNet

Highlights of this release:

- Changed some uses of Finalize as a static method name that confused
the
  Mono compiler and people reading the code. Note that this may be a
  breaking change if anyone was calling PythonEngine.Finalize(). If so,
  you should now use PythonEngine.Shutdown().

- Tweaked assembly lookup to ensure that assemblies can be found in the
  current working directory, even after changing directories using
things
  like os.chdir() from Python.

- Fixed some incorrect finalizers (thanks to Greg Chapman for the
report)
  that may have caused some threading oddities.

- Tweaked support for out and ref parameters. If a method has a return
  type of void and a single ref or out parameter, that parameter will be
  returned as the result of the method. This matches the current
behavior
  of IronPython and makes it more likely that code can be moved between
  Python for .NET and IP in the future.

- Refactored part of the assembly manager to remove a potential case of
  thread-deadlock in multi-threaded applications.

- Added a __str__ method to managed exceptions that returns the Message
  attribute of the exception and the StackTrace (if available).


Thanks to all who have sent in issue reports, patches and suggestions
for this and past releases.

Enjoy! ;)


Brian Lloyd[EMAIL PROTECTED]
V.P. Engineering   540.361.1716
Zope Corporation   http://www.zope.com

-- 
http://mail.python.org/mailman/listinfo/python-list


Announce: Python for .NET 1.0 RC1 released

2005-05-10 Thread Brian Lloyd
Hi all -

I'm happy to announce the release of Python for .NET 1.0 RC1.
You can download it from:

  http://www.zope.org/Members/Brian/PythonNet

Highlights of this release:

- Implemented a workaround for the fact that exceptions cannot be
  new-style classes in the CPython interpreter. Managed exceptions
  can now be raised and caught naturally from Python

- Implemented support for invoking methods with out and ref parameters.
  Because there is no real equivalent to these in Python, methods that
  have out or ref parameters will return a tuple. The tuple will contain
  the result of the method as its first item, followed by out parameter
  values in the order of their declaration in the method signature.

- Fixed a refcount problem that caused a crash when CLR was imported in
  an existing installed Python interpreter.

- Added an automatic conversion from Python strings to byte[]. This
makes
  it easier to pass byte[] data to managed methods (or set properties,
  etc.) as a Python string without having to write explicit conversion
  code. Also works for sbyte arrays. Note that byte and sbyte arrays
  returned from managed methods or obtained from properties or fields
  do *not* get converted to Python strings - they remain instances of
  Byte[] or SByte[].

- Added conversion of generic Python sequences to object arrays when
  appropriate (thanks to Mackenzie Straight for the patch).

- Added a bit of cautionary documentation for embedders, focused on
  correct handling of the Python global interpreter lock from managed
  code for code that calls into Python.

- PyObject.FromManagedObject now correctly returns the Python None
  object if the input is a null reference. Also added a new
AsManagedObject
  method to PyObject, making it easier to convert a Python-wrapped
  managed object to the real managed object.

- Created a simple installer for windows platforms.


All known bugs have also been fixed - thanks to all who have sent in issue
reports and patches for past releases.

At this point, the only thing I plan to do before a 1.0 final is fix any
new issues and add to the documentation (probably including a few specific
examples of embedding Python for .NET in a .NET application).

Enjoy! ;)


Brian Lloyd[EMAIL PROTECTED]
V.P. Engineering   540.361.1716
Zope Corporation   http://www.zope.com

-- 
http://mail.python.org/mailman/listinfo/python-list