Python.NET 3.0.0 Released
Written by Nikos Vaggalis   
Tuesday, 15 November 2022

You could be forgiven for assuming that Python.NET was a dead project, or equally for never having heard of it. In September it emerged from hibernation with a major update - Release 3.0.0 - which supports modern .NET and Python versions. 

pythonnet

According to its GitHub repo:

Python for .NET is a package that gives Python programmers nearly seamless integration with the .NET Common Language Runtime (CLR) and provides a powerful application scripting tool for .NET developers.

Announcing Release 3.0.0 of Python.NET, its Maintainer, Benedikt Reinartz, aka "filmor", wrote: 

I'm proud to finally release the first new major version of Python.NET in 7 years.

explaining that it was the culmination of 2 years of work from many contributors. 

The highlights of Release 3.0.0 are: 

  • Support for Python 3.9 and 3.10
  • Support for .NET 6
  • Codec system to control conversions between .NET and
    Python objects
  • Single assembly for all Python versions and operation systems (and thus also just a single wheel)
  • Significantly simplified the build system, only requires a modern .NET SDK to build the Python package

The What's Changed list is extensive and is evidence that a lot of work has gone into this upgrade.

Python.NET uses semantic versioning and what the above list of highlights glosses over is that Release 3.0.0 signals a major break with its predecessor 2.5.2 just as Python 3.x was backward incompatible with the Python 2.x.  

Subsequently version 3.0.1 has been released with support for Python 3.11. Its one Changed features is to allow decoders to override conversion of types derived from primitive types and the changelog also lists three items as Fixed

 

Python.NET 3.0 comes with clear and informative documentation which opens by stating:

A key goal for this project has been that Python.NET should “work just the way you’d expect in Python”, except for cases that are .NET-specific (in which case the goal is to work “just the way you’d expect in C#”).

It then gives the advice that:

A good way to start is to interactively explore .NET usage in python interpreter by following along with the examples in this document. If you get stuck, there are also a number of demos and unit tests located in the source directory of the distribution that can be helpful as examples. 

If you want to know how Python.NET compares to IronPython, another and better known implementation of Python for the .NET Framework see Python and .NET - An Ongoing Saga 

pythonnet 

More Information

pythonnet on GitHub

Related Articles

Python and .NET - An Ongoing Saga  

To be informed about new articles on I Programmer, sign up for our weekly newsletter, subscribe to the RSS feed and follow us on Twitter, Facebook or Linkedin.

Banner


Amazon Adds Agents To Q Developer
05/12/2024

Amazon has announced enhancements to Amazon Q Developer, including agents that automate unit testing, documentation generation, code reviews, and a capability to help users "address operational issues [ ... ]



Flutter Forked As Flock
05/11/2024

One of developers who worked on the Flutter team at Google has created an open-source form of the framework. Matt Carroll says Flock will be "Flutter+", will remain constantly up to date with Flutter, [ ... ]


More News

espbook

 

Comments




or email your comment to: comments@i-programmer.info

 

Last Updated ( Tuesday, 15 November 2022 )