All Versions
34
Latest Version
Avg Release Cycle
165 days
Latest Release
433 days ago
Changelog History
Page 1
Changelog History
Page 1
-
v3.0.5 Changes
December 13, 2024 -
v3.0.4 Changes
September 19, 2024What's Changed
- 👍 Allow setting of the python module file by @bmello4688 in #2044
- When IterableWrapper iterates up to the middle of list, System.AccessViolationException occurs. by @JakeJP in #2280
- #2240 Recursion error when doing reversed python operations on C# types by @gertdreyer in #2327
- ➕ Added
ToPythonAs<T>()by @lostmsu in #2330 IComparableandIEquatableimplementations by @lostmsu in #2322- 🛠 Fix CI by using macos-13 explicitly, adjust OS config by @filmor in #2373
- 👉 Use non-BOM encodings by @filmor in #2370
- 🔦 Expose serialization api by @BadSingleton in #2336
- 🖐 Handle bad paths in
sys.pathby @lostmsu in #2383 - Simplify UTF8 StrPtr usage by @filmor in #2374
- 🛠 Fix crash when event does not have
Addmethod and improve message for some other internal errors by @lostmsu in #2409 - 🛠 Fix access violation exception on shutdown by @Frawak in #2386
🆕 New Contributors
- @bmello4688 made their first contribution in #2044
- @JakeJP made their first contribution in #2280
- @gertdreyer made their first contribution in #2327
- @Frawak made their first contribution in #2386
Full Changelog : v3.0.3...v3.0.4
-
v3.0.3 Changes
October 11, 2023What's Changed
- 🔄 change PyScope to PyModule by @OmkarBorhade98 in #2231
- 👉 use enum name in repr by @koubaa in #2239
- 👷 ARM CI fix by @lostmsu in #2256
- Python 3.12 by @filmor in #2249
- 👷 Only run docs CI/main CI for corresponding changes by @lostmsu in #2257
- 👷 Revert "Only run docs CI/main CI for corresponding changes" by @filmor in #2260
🆕 New Contributors
- @OmkarBorhade98 made their first contribution in #2231
Full Changelog : v3.0.2...v3.0.3
-
v3.0.2 Changes
August 29, 2023What's Changed
- ✅ 1776 Generic Virtual Method Causes Invalid Program: Fix + test by @rmadsen-ks in #2026
- 📦 Workaround for Ubuntu-provided package version being unsupported by @lostmsu in #2081
- Ensure that
loadonly runs once by @filmor in #2079 - ✂ Remove suggestions to use
internalfunctions by @filmor in #2092 - 1783 Implement Interface And Inherit Class by @rmadsen-ks in #2028
- 🛠 Fix
GetBufferthrowingArgumentOutOfRangeExceptionby @legomanww in #2120
🆕 New Contributors
- @legomanww made their first contribution in #2120
Full Changelog : v3.0.1...v3.0.2
-
v3.0.1 Changes
November 03, 2022What's Changed
- Implemented dynamic equality and inequality for
PyObjectinstances by @lostmsu in #1849 - 🗄 Got rid of a few deprecation warnings that pollute GitHub code review by @lostmsu in #1850
- 📄 docs: Fix a few typos by @timgates42 in #1879
- 🚀 Merge release branch back into master by @filmor in #1866
- ✂ Delete target object from event handler collections when it has no more event handlers by @lostmsu in #1973
- 👍 Allow decoders to decode Python types derived from primitives by @lostmsu in #1986
- 🛠 Fix positive
PyIntconverted to negativeBigIntegerby @lostmsu in #1993 - Python 3.11 by @filmor in #1955
- 🛠 Fix implementing a generic interface with a Python class by @filmor in #1998
Full Changelog : v3.0.0...v3.0.1
- Implemented dynamic equality and inequality for
-
v3.0.0 Changes
September 29, 2022What's Changed
- 🆓 Increase ob's ref count in tp_repr to avoid accidental free by @DanBarzilian in #1160
- 🛠 fixed crash due to a decref of a borrowed reference in params array handling by @lostmsu in #1163
- ⬇️ Drop Python 2 support by @filmor in #1158
- ✂ remove remoting block for .NET standard by @koubaa in #1170
- Pybuffer by @koubaa in #1195
- 🛠 Fix appveyor would only test the PyPI package by @amos402 in #1200
- ✂ Remove unnecessary
CheckExceptionOccurredcalls by @amos402 in #1175 - Provide more info about failuers to load CLR assemblies by @lostmsu in #1076
- ➕ Add syntax highlighting to Python code examples in README.rst [docs] by @SFM61319 in #1208
- ✂ Remove non-existent PInvoke functions by @amos402 in #1205
- Bad params object[] precedence (master) by @lostmsu in #1224
- ⬇️ drop 3.4 and 3.5 by @koubaa in #1227
- 🚚 really remove old versions by @koubaa in #1230
- ➕ Added a test for finalization on shutdown by @lostmsu in #1206
- 🛠 fix compiler warning by @koubaa in #1226
- Ensure only implementers of IEnumerable or IEnumerator are considered Iterable by @danabr in #1241
- Select correct method to invoke when keyword arguments are used by @danabr in #1242
- Wrap returned objects in interface if method return type is interface by @danabr in #1240
- Non-delegate types should not be callable by @alxnull in #1247
- 👉 Make indexers work for interface objects by @danabr in #1246
- 👉 Make it possible to use inherited indexers by @danabr in #1248
- ➕ Add soft shutdown by @amos402 in #958
- 🛠 Fixed dllLocal not being initialized. by @benoithudson in #1252
- Return interface objects when iterating over interface collections by @danabr in #1257
- 👉 Make
lenwork forICollection<>interface objects by @danabr in #1253 - 🏗 Enable Source Link and symbol package generation during build by @lostmsu in #1259
- 🛠 Fixed polyfill for TypeBuilder.CreateType by @lostmsu in #1261
- 🛠 fix wrongly cased Microsoft.CSHARP.Targets by @vivainio in #1271
- Intern string by @amos402 in #1254
- ✅ Use .NET Core 3.1 LTS for tests (instead of 2.0) by @lostmsu in #1279
- Python 3.9 by @filmor in #1264
- ✂ Remove deprecated implicit assembly loading by @lostmsu in #1277
- Ensure methods of Object are also available on interface objects by @danabr in #1284
- 🛠 Fix kwarg func resolution by @jmlidbetter in #1136
- 👍 Allow creating new .NET arrays from Python using Array[T](dim1, dim2,…) syntax by @lostmsu in #1291
- Detect the size of wchar_t (aka Runtime.UCS) at runtime using PyUnicode_GetMax by @lostmsu in #1298
- TypeOffset class no longer depends on target Python version by @lostmsu in #1292
- [Out] parameters no longer added to return tuple by @lostmsu in #1308
- ➕ Added github actions workflow to replace travis by @lostmsu in #1307
- 💅 Convert projects to SDK style by @filmor in #1209
- 🐧 Test other Operating Systems than Linux via Github Actions by @filmor in #1310
- Ensure that param-array matching works correctly by @filmor in #1304
- ✂ Remove API warnings as these will be stabilised for 3.0 by @filmor in #1315
- Replace custom platform handling by RuntimeInformation by @filmor in #1314
- 🛠 Fixed CollectBasicObject test by @lostmsu in #1313
- 🏗 Implement inplace building and develop by @filmor in #1317
- ⬇️ Drop the long-deprecated CLR.* alias by @filmor in #1319
- 🛠 Fix or disable warnings in Python.Runtime by @filmor in #1318
- 🛠 Fixed segfault in ClassDerived.tp_dealloc by @lostmsu in #1330
- 🛠 Fixed crash in finalizer of CLR types defined in Python, that survive engine shutdown by @lostmsu in #1260
- ✅ Test for non-ASCII encoded method name by @filmor in #1329
- 🛠 Fix illegal delegate usage by @BadSingleton in #1328
- PyIter: do not force dispose previous object upon moving to the next one by @lostmsu in #1331
- Incorrectly using a non-generic type with type parameters now produces a helpful Python error instead of throwing NullReferenceException by @tminka in #1326
- Call PyErr_NormalizeException for exceptions by @slide in #1265
- ✅ TestPythonEngineProperties.SetPythonPath avoids corrupting the module search path for later tests by @tminka in #1336
- 🔧 ABI.Initialize gives a helpful message when the TypeOffset interop class is not configured correctly by @tminka in #1340
- 👍 Better error messages from PyObject.AsManagedObject and DelegateManager.TrueDispatch by @tminka in #1344
- ✅ Python tests can now be debugged by running them as embedded tests within NUnit by @tminka in #1341
- 👍 Operator overloads support by @christabella in #1324
- ✅ Domain reload test cases fixes by @BadSingleton in #1287
- ➕ Add more more tests for in, out and ref parameters by @BadSingleton in #1349
- 👌 Support comparison operators by @christabella in #1347
- Disable implicit conversion from PyFloat to .NET integer types by @lostmsu in #1343
- ➕ Add GetPythonThreadID and Interrupt methods in PythonEngine by @gpetrou in #1337
- Disable implicit conversion from PyFloat to uint64 by @tminka in #1362
- Disable implicit conversion from float to array index by @tminka in #1363
- 👍 Better error messages for method argument mismatch and others by @tminka in #1361
- 👌 Support ByRef arguments in event handlers by @tminka in #1364
- 🏗 Build single Python.Runtime.dll for all platforms by @lostmsu in #1365
- 🛠 Fix exception string by @filmor in #1360
- ParameterInfo.Name needs to be checked for null before usage by @filmor in #1375
- 🚀 Monthly NuGet release previews by @lostmsu in #1381
- Sign Runtime DLL with a strong name by @gpetrou in #1382
- 🆕 New loading based on clr_loader by @filmor in #1373
- Simplify PyScope by delegating ownership to PyObject instance by @lostmsu in #1367
- implement list codec by @koubaa in #1084
- Ensure interned strings can not be referenced after InternString.Shutdown by @lostmsu in #1394
- ✅ Made InterruptTest more robust by @lostmsu in #1393
- Adjust static libpython detection by @filmor in #1396
- ✂ Remove Utf8Marshaler, set PyScope base class to PyObject, added PyModule by @lostmsu in #1391
- 👻 ImportHook cleanup + PyObject.Length exception by @lostmsu in #1400
- Suggest to set Runtime.PythonDLL when embedding in .NET by @lostmsu in #1411
- 👍 Allow GIL state debugging; require GILState to be properly disposed by @lostmsu in #1397
- 🐧 Try libdl.so.2 on Linux before libdl.so by @lostmsu in #1425
- PyType class, wrapper for Python types by @lostmsu in https:/...
-
v3.0.0-rc6 Changes
September 20, 2022What's Changed
Full Changelog : v3.0.0-rc5...v3.0.0-rc6
-
v2.5.2 Changes
February 05, 2021🛠 Bugfix release.
🛠 Fixed
- Fix
object[]parameters taking precedence when should not in overload resolution - Empty parameter names (as can be generated from F#) do not cause crashes
- Fix
-
v2.5.1 Changes
June 18, 2020🛠 Backports two reference counting bugfixes from
master.🛠 Many thanks two the reporters who also provided the fixes:
-
v2.5.0 Changes
June 14, 2020🚀 > ⚠️ This release will be the last one supporting Python 2 and non-.NET-Standard builds.
🐎 This version improves performance on benchmarks significantly compared to 2.3 and includes various additions and improvements to the library.
➕ Added
- 🏗 Automatic NuGet package generation in appveyor and local builds
- Function that sets
Py_NoSiteFlagto 1. - 👌 Support for Jetson Nano.
- Support for
__len__for .NET classes that implement ICollection PyExportattribute to hide .NET types from PythonPythonException.Formatmethod to format exceptions the same as
traceback.format_exceptionRuntime.Noneto be able to passNoneas parameter into Python from .NETPyObject.IsNone()to check if a Python object is None in .NET.- 👌 Support for Python 3.8
- Codecs as the designated way to handle automatic conversions between
.NET and Python types
🔄 Changed
- ➕ Added argument types information to "No method matches given arguments" message
- 🚚 Moved wheel import in setup.py inside of a try/except to prevent pip collection failures
- Removes
PyLong_GetMaxandPyClass_Newwhen targetting Python3 - 👌 Improved performance of calls from Python to C#
- ➕ Added support for converting python iterators to C# arrays
- 🔄 Changed usage of the obsolete function
GetDelegateForFunctionPointer(IntPtr, Type)to
GetDelegateForFunctionPointer<TDelegate>(IntPtr) - When calling C# from Python, enable passing argument of any type to a
parameter of C# typeobjectby wrapping it intoPyObjectinstance.
([#881][i881]) - ➕ Added support for kwarg parameters when calling .NET methods from Python
- 🔄 Changed method for finding MSBuild using vswhere
- Reworked
Finalizer. Now objects drop into its queue upon finalization,
which is periodically drained when new objects are created. - Marked
Runtime.OperatingSystemNameandRuntime.MachineNameas
Obsolete, should never have beenpublicin the first place. They also
don't necessarily return a result that matches theplatformmodule's. - 📜 Unconditionally depend on
pycparserfor the interop module generation
🛠 Fixed
- 🛠 Fixed runtime that fails loading when using pythonnet in an environment
together with Nuitka - 🛠 Fixes bug where delegates get casts (dotnetcore)
- Determine size of interpreter longs at runtime
- Handling exceptions ocurred in ModuleObject's getattribute
- Fill
__classcell__correctly for Python subclasses of .NET types - 🛠 Fixed issue with params methods that are not passed an array.
- 👉 Use UTF8 to encode strings passed to
PyRun_Stringon Python 3
Acknowledgements
🚀 These authors have contributed to this release: