Release 3.0.0 #1954
filmor
announced in
Announcements
Release 3.0.0
#1954
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
I'm proud to finally release the first new major version of Python.NET in 7 years.
This is the culmination of over 2 years of work from many contributors to modernise the code base and support modern .NET and Python versions.
Highlights
The new package is available from PyPI and Nuget, respectively. Updated documentation is available here:
https://pythonnet.github.io/pythonnet/
In particular, there is an updated Getting Started section that documents using .NET 6 (coreclr) from Python:
https://pythonnet.github.io/pythonnet/python.html#getting-started
While we tried to keep this release as backwards-compatible as possible, there are still some breaking changes. The changelog is available here:
https://github.com/pythonnet/pythonnet/blob/master/CHANGELOG.md#300---2022-09-29
What's Changed
CheckExceptionOccurredcalls by @amos402 in Remove unnecessaryCheckExceptionOccurredcalls #1175lenwork forICollection<>interface objects by @danabr in Makelenwork forICollection<>interface objects #1253find_libpythonduringimport clras Python.Runtime can find it on its own by @lostmsu in Do not callfind_libpythonduringimport clras Python.Runtime can find it on its own #1440__cause__on overload bind failure and array conversion by @lostmsu in Fixed__cause__on overload bind failure and array conversion #1442PyType_Readyin CLR MetaType'stp_newby @lostmsu in Fixed double call toPyType_Readyin CLR MetaType'stp_new#1486Py.ImportandPyModule.ImportreturnPyObjectinstead ofPyModuleby @lostmsu inPy.ImportandPyModule.ImportreturnPyObjectinstead ofPyModule#1530needsResolutionhack by @lostmsu in RemoveneedsResolutionhack #1531PyObject.As<object>()by @lostmsu in Allow decoders affectPyObject.As<object>()#1546threadingmodule afterTestInterruptby @lostmsu in Added workaround for warning inthreadingmodule afterTestInterrupt#1560ClassManagerillegally decrefedClassObject's refcount on shutdown by @lostmsu inClassManagerillegally decrefedClassObject's refcount on shutdown #1563PythonEnginehave similarSetUpandTearDownby @lostmsu in Ensure tests, that need runningPythonEnginehave similarSetUpandTearDown#1564tpHandleinClassBase.tp_clear- it might be used intp_deallocby @lostmsu in Do not cleantpHandleinClassBase.tp_clear- it might be used intp_dealloc#1566collections.abcinterfaces by @lostmsu in Mixins for standard collections that implementcollections.abcinterfaces #1543Dispatcherby @lostmsu in SimplifyDispatcher#1559ResolveHandler, and use official assembly name parsing by @lostmsu in Simplify assemblyResolveHandler, and use official assembly name parsing #1570FileLoadExceptionwhen tryingclr.AddReference('/full/path.dll')by @lostmsu in FixedFileLoadExceptionwhen tryingclr.AddReference('/full/path.dll')#1573BadPythonDllExceptioninstead of confusingTypeLoadExceptionwhenPythonDLLwas not configured properly by @lostmsu in RaiseBadPythonDllExceptioninstead of confusingTypeLoadExceptionwhenPythonDLLwas not configured properly #1577PyScope/PyModuleAPI cleanup by @lostmsu inPyScope/PyModuleAPI cleanup #1569PyTypeis allocated by @lostmsu in When reflecting nested types, ensure their correspondingPyTypeis allocated #1579GetAttr(name, default)by @lostmsu in SaferGetAttr(name, default)#1578PyType.Getby @lostmsu in ExposePyType.Get#1581PySequenceandPyIterableby @lostmsu in Allow user-created instances ofPySequenceandPyIterable#1580IPyObjectDecoder.CanDecodeby @lostmsu in Changed signature ofIPyObjectDecoder.CanDecode#1583floatandboolimplicit conversions by @lostmsu in Disabledfloatandboolimplicit conversions #1584__call__method callable from Python by @lostmsu in Make .NET objects that have__call__method callable from Python #1589PythonMethodAttributeby @lostmsu in Remove unusedPythonMethodAttribute#1609ShutdownMode. Now always behaves like originalReloadby @lostmsu in RemovedShutdownMode. Now always behaves like originalReload#1638Pyclass into its own file by @lostmsu in MovedPyclass into its own file #1649__int__instance method on enum types to supportint(Enum.Member)by @lostmsu in Provide__int__instance method on enum types to supportint(Enum.Member)#1661PyBuffera bit by @lostmsu in CleanupPyBuffera bit #1662PyObjectconversion toIEnumerableby @lostmsu in Allow dynamicPyObjectconversion toIEnumerable#1697PyObjectinherited from its base .NET classes GIL-safe by @lostmsu in Make methods ofPyObjectinherited from its base .NET classes GIL-safe #1711BigInteger(C#) <->PyIntby @lostmsu in Support forBigInteger(C#) <->PyInt#1710NativeTypeSpecon 32 bit platforms by @lostmsu in Fix layout ofNativeTypeSpecon 32 bit platforms #1765Min/MaxSupportedVersionandIsSupportedVersiononPythonEngineby @filmor inMin/MaxSupportedVersionandIsSupportedVersiononPythonEngine#1799Min/MaxSupportedVersionandIsSupportedVersiononPythonEngineby @lostmsu inMin/MaxSupportedVersionandIsSupportedVersiononPythonEngine#1798NewReference.Moveby @lostmsu in Fixed a leak inNewReference.Move#1873InitializeandBeginAllowThreadsin the README by @lostmsu in Mention the need forInitializeandBeginAllowThreadsin the README #1897New Contributors
Full Changelog: v2.5.2...v3.0.0
This discussion was created from the release Release 3.0.0.
Beta Was this translation helpful? Give feedback.
All reactions