🌐 AI搜索 & 代理 主页
Skip to content

Commit 1ae96dd

Browse files
committed
Update Authors and Changelog
1 parent e7a3aba commit 1ae96dd

File tree

2 files changed

+40
-46
lines changed

2 files changed

+40
-46
lines changed

AUTHORS.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
- Victor Milovanov ([@lostmsu](https://github.com/lostmsu))
77

88
## Former Development Leads
9+
910
- Barton Cline ([@BartonCline](https://github.com/BartonCline))
1011
- Brian Lloyd ([@brianlloyd](https://github.com/brianlloyd))
1112
- David Anthoff ([@davidanthoff](https://github.com/davidanthoff))
@@ -86,3 +87,4 @@
8687
- ([@gpetrou](https://github.com/gpetrou))
8788
- Ehsan Iran-Nejad ([@eirannejad](https://github.com/eirannejad))
8889
- ([@legomanww](https://github.com/legomanww))
90+
- ([@gertdreyer](https://github.com/gertdreyer))

CHANGELOG.md

Lines changed: 38 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ This document follows the conventions laid out in [Keep a CHANGELOG][].
1313

1414
### Fixed
1515

16+
- Fixed RecursionError for reverse operators on C# operable types from python. See #2240
1617

1718
## [3.0.3](https://github.com/pythonnet/pythonnet/releases/tag/v3.0.3) - 2023-10-11
1819

@@ -50,7 +51,6 @@ This document follows the conventions laid out in [Keep a CHANGELOG][].
5051
- Fixed `PyInt` conversion to `BigInteger` and `System.String` produced incorrect result for values between 128 and 255.
5152
- Fixed implementing a generic interface with a Python class
5253

53-
5454
## [3.0.0](https://github.com/pythonnet/pythonnet/releases/tag/v3.0.0) - 2022-09-29
5555

5656
### Added
@@ -61,61 +61,63 @@ This document follows the conventions laid out in [Keep a CHANGELOG][].
6161
- Ability to implement delegates with `ref` and `out` parameters in Python, by returning the modified parameter values in a tuple. ([#1355][i1355])
6262
- Ability to override .NET methods that have `out` or `ref` in Python by returning the modified parameter values in a tuple. ([#1481][i1481])
6363
- `PyType` - a wrapper for Python type objects, that also permits creating new heap types from `TypeSpec`
64-
- Improved exception handling:
65-
* exceptions can now be converted with codecs
66-
* `InnerException` and `__cause__` are propagated properly
64+
- Improved exception handling:
65+
66+
* exceptions can now be converted with codecs
67+
* `InnerException` and `__cause__` are propagated properly
68+
6769
- `__name__` and `__signature__` to reflected .NET methods
6870
- .NET collection types now implement standard Python collection interfaces from `collections.abc`.
69-
See [Mixins/collections.py](src/runtime/Mixins/collections.py).
71+
See [Mixins/collections.py](src/runtime/Mixins/collections.py).
7072
- you can cast objects to generic .NET interfaces without specifying generic arguments as long as there is no ambiguity.
7173
- .NET arrays implement Python buffer protocol
7274
- Python integer interoperability with `System.Numerics.BigInteger`
7375
- Python.NET will correctly resolve .NET methods, that accept `PyList`, `PyInt`,
74-
and other `PyObject` derived types when called from Python.
76+
and other `PyObject` derived types when called from Python.
7577
- .NET classes, that have `__call__` method are callable from Python
7678
- `PyIterable` type, that wraps any iterable object in Python
7779
- `PythonEngine` properties for supported Python versions: `MinSupportedVersion`, `MaxSupportedVersion`, and `IsSupportedVersion`
7880
- The runtime that is loaded on `import clr` can now be configured via environment variables
7981

80-
8182
### Changed
83+
8284
- Drop support for Python 2, 3.4, 3.5, and 3.6
8385
- `wchar_t` size aka `Runtime.UCS` is now determined at runtime
8486
- `clr.AddReference` may now throw errors besides `FileNotFoundException`, that provide more
85-
details about the cause of the failure
87+
details about the cause of the failure
8688
- `clr.AddReference` no longer adds ".dll" implicitly
8789
- `PyIter(PyObject)` constructor replaced with static `PyIter.GetIter(PyObject)` method
8890
- Python runtime can no longer be shut down if the Python error indicator is set, as it would have unpredictable behavior
8991
- BREAKING: Return values from .NET methods that return an interface are now automatically
90-
wrapped in that interface. This is a breaking change for users that rely on being
91-
able to access members that are part of the implementation class, but not the
92-
interface. Use the new `__implementation__` or `__raw_implementation__` properties to
93-
if you need to "downcast" to the implementation class.
92+
wrapped in that interface. This is a breaking change for users that rely on being
93+
able to access members that are part of the implementation class, but not the
94+
interface. Use the new `__implementation__` or `__raw_implementation__` properties to
95+
if you need to "downcast" to the implementation class.
9496
- BREAKING: `==` and `!=` operators on `PyObject` instances now use Python comparison
95-
(previously was equivalent to `object.ReferenceEquals(,)`)
97+
(previously was equivalent to `object.ReferenceEquals(,)`)
9698
- BREAKING: Parameters marked with `ParameterAttributes.Out` are no longer returned in addition
97-
to the regular method return value (unless they are passed with `ref` or `out` keyword).
98-
- BREAKING: Drop support for the long-deprecated CLR.* prefix.
99+
to the regular method return value (unless they are passed with `ref` or `out` keyword).
100+
- BREAKING: Drop support for the long-deprecated CLR.\* prefix.
99101
- `PyObject` now implements `IEnumerable<PyObject>` in addition to `IEnumerable`
100102
- floating point values passed from Python are no longer silently truncated
101-
when .NET expects an integer [#1342][i1342]
103+
when .NET expects an integer [#1342][i1342]
102104
- More specific error messages for method argument mismatch
103105
- members of `PyObject` inherited from `System.Object and `DynamicObject` now autoacquire GIL
104106
- BREAKING: when inheriting from .NET types in Python if you override `__init__` you
105-
must explicitly call base constructor using `super().__init__(.....)`. Not doing so will lead
106-
to undefined behavior.
107+
must explicitly call base constructor using `super().__init__(.....)`. Not doing so will lead
108+
to undefined behavior.
107109
- BREAKING: most `PyScope` methods will never return `null`. Instead, `PyObject` `None` will be returned.
108110
- BREAKING: `PyScope` was renamed to `PyModule`
109111
- BREAKING: Methods with `ref` or `out` parameters and void return type return a tuple of only the `ref` and `out` parameters.
110112
- BREAKING: to call Python from .NET `Runtime.PythonDLL` property must be set to Python DLL name
111-
or the DLL must be loaded in advance. This must be done before calling any other Python.NET functions.
113+
or the DLL must be loaded in advance. This must be done before calling any other Python.NET functions.
112114
- BREAKING: `PyObject.Length()` now raises a `PythonException` when object does not support a concept of length.
113115
- BREAKING: disabled implicit conversion from C# enums to Python `int` and back.
114-
One must now either use enum members (e.g. `MyEnum.Option`), or use enum constructor
115-
(e.g. `MyEnum(42)` or `MyEnum(42, True)` when `MyEnum` does not have a member with value 42).
116+
One must now either use enum members (e.g. `MyEnum.Option`), or use enum constructor
117+
(e.g. `MyEnum(42)` or `MyEnum(42, True)` when `MyEnum` does not have a member with value 42).
116118
- BREAKING: disabled implicit conversion from Python objects implementing sequence protocol to
117-
.NET arrays when the target .NET type is `System.Object`. The conversion is still attempted when the
118-
target type is a `System.Array`.
119+
.NET arrays when the target .NET type is `System.Object`. The conversion is still attempted when the
120+
target type is a `System.Array`.
119121
- Sign Runtime DLL with a strong name
120122
- Implement loading through `clr_loader` instead of the included `ClrModule`, enables
121123
support for .NET Core
@@ -125,23 +127,23 @@ target type is a `System.Array`.
125127
- Replaced the old `__import__` hook hack with a PEP302-style Meta Path Loader
126128
- BREAKING: Names of .NET types (e.g. `str(__class__)`) changed to better support generic types
127129
- BREAKING: overload resolution will no longer prefer basic types. Instead, first matching overload will
128-
be chosen.
130+
be chosen.
129131
- BREAKING: acquiring GIL using `Py.GIL` no longer forces `PythonEngine` to initialize
130132
- BREAKING: `Exec` and `Eval` from `PythonEngine` no longer accept raw pointers.
131133
- BREAKING: .NET collections and arrays are no longer automatically converted to
132-
Python collections. Instead, they implement standard Python
133-
collection interfaces from `collections.abc`.
134-
See [Mixins/collections.py](src/runtime/Mixins/collections.py).
134+
Python collections. Instead, they implement standard Python
135+
collection interfaces from `collections.abc`.
136+
See [Mixins/collections.py](src/runtime/Mixins/collections.py).
135137
- BREAKING: When trying to convert Python `int` to `System.Object`, result will
136-
be of type `PyInt` instead of `System.Int32` due to possible loss of information.
137-
Python `float` will continue to be converted to `System.Double`.
138+
be of type `PyInt` instead of `System.Int32` due to possible loss of information.
139+
Python `float` will continue to be converted to `System.Double`.
138140
- BREAKING: Python.NET will no longer implicitly convert types like `numpy.float64`, that implement `__float__` to
139-
`System.Single` and `System.Double`. An explicit conversion is required on Python or .NET side.
141+
`System.Single` and `System.Double`. An explicit conversion is required on Python or .NET side.
140142
- BREAKING: `PyObject.GetHashCode` can fail.
141143
- BREAKING: Python.NET will no longer implicitly convert any Python object to `System.Boolean`.
142144
- BREAKING: `PyObject.GetAttr(name, default)` now only ignores `AttributeError` (previously ignored all exceptions).
143145
- BREAKING: `PyObject` no longer implements `IEnumerable<PyObject>`.
144-
Instead, `PyIterable` does that.
146+
Instead, `PyIterable` does that.
145147
- BREAKING: `IPyObjectDecoder.CanDecode` `objectType` parameter type changed from `PyObject` to `PyType`
146148

147149
### Fixed
@@ -173,18 +175,19 @@ Instead, `PyIterable` does that.
173175
### Removed
174176

175177
- `ShutdownMode` has been removed. The only shutdown mode supported now is an equivalent of `ShutdownMode.Reload`.
176-
There is no need to specify it.
178+
There is no need to specify it.
177179
- implicit assembly loading (you have to explicitly `clr.AddReference` before doing import)
178180
- messages in `PythonException` no longer start with exception type
179181
- `PyScopeManager`, `PyScopeException`, `PyScope` (use `PyModule` instead)
180182
- support for .NET Framework 4.0-4.6; Mono before 5.4. Python.NET now requires .NET Standard 2.0
181-
(see [the matrix](https://docs.microsoft.com/en-us/dotnet/standard/net-standard#net-implementation-support))
183+
(see [the matrix](https://docs.microsoft.com/en-us/dotnet/standard/net-standard#net-implementation-support))
182184

183185
## [2.5.2](https://github.com/pythonnet/pythonnet/releases/tag/v2.5.2) - 2021-02-05
184186

185187
Bugfix release.
186188

187189
### Fixed
190+
188191
- Fix `object[]` parameters taking precedence when should not in overload resolution
189192
- Empty parameter names (as can be generated from F#) do not cause crashes
190193

@@ -194,8 +197,8 @@ Bugfix release.
194197

195198
### Fixed
196199

197-
- Fix incorrect dereference of wrapper object in `tp_repr`, which may result in a program crash
198-
- Fix incorrect dereference in params array handling
200+
- Fix incorrect dereference of wrapper object in `tp_repr`, which may result in a program crash
201+
- Fix incorrect dereference in params array handling
199202

200203
## [2.5.0](https://github.com/pythonnet/pythonnet/releases/tag/v2.5.0) - 2020-06-14
201204

@@ -302,7 +305,6 @@ This version improves performance on benchmarks significantly compared to 2.3.
302305
- Fix spurious assembly loading exceptions from private types ([#703][i703])
303306
- Fix inheritance of non-abstract base methods ([#755][i755])
304307

305-
306308
## [2.3.0][] - 2017-03-11
307309

308310
### Added
@@ -839,25 +841,15 @@ This version improves performance on benchmarks significantly compared to 2.3.
839841
- Initial (mostly) working experimental release.
840842

841843
[keep a changelog]: http://keepachangelog.com/
842-
843844
[semantic versioning]: http://semver.org/
844-
845845
[unreleased]: ../../compare/v3.0.1...HEAD
846-
847846
[2.3.0]: ../../compare/v2.2.2...v2.3.0
848-
849847
[2.2.2]: ../../compare/v2.2.1...v2.2.2
850-
851848
[2.2.1]: ../../compare/v2.2.0-dev1...v2.2.1
852-
853849
[2.2.0-dev1]: ../../compare/v2.1.0...v2.2.0-dev1
854-
855850
[2.1.0]: ../../compare/v2.0.0...v2.1.0
856-
857851
[2.0.0]: ../../compare/1.0...v2.0.0
858-
859852
[1.0.0]: https://github.com/pythonnet/pythonnet/releases/tag/1.0
860-
861853
[i714]: https://github.com/pythonnet/pythonnet/issues/714
862854
[i608]: https://github.com/pythonnet/pythonnet/issues/608
863855
[i443]: https://github.com/pythonnet/pythonnet/issues/443

0 commit comments

Comments
 (0)