Releases: tonybaloney/CSnakes
Releases · tonybaloney/CSnakes
v1.0.21
What's Changed
Major improvements
- Added support for Hot Reload of Python code whilst debugging
Other changes
- Consolidate patterns for
IPyBuffer
by @atifaziz in #266 - Make type name patterns explicit where
typing.
qualification is optional by @atifaziz in #267 - Make generated signature tests stricter by @atifaziz in #268
- Add reload module functionality and connect generated classes to Hot Reload by @tonybaloney in #259
- Immortalising -1, 0 and 1 by @aaronpowell in #274
Full Changelog: v1.0.20...v1.0.21
v1.0.20
What's Changed
Full Changelog: v1.0.19...v1.0.20
v1.0.19
What's Changed
Major Changes
- Support macOS free-threaded mode by @tonybaloney in #22
- Add Conda Environment Management and Locator Support by @tonybaloney in #232
- Support single point precision downcast and conversion by @tonybaloney in #231
Bug fixes and Dev Changes
- Update README.md by @jamesmontemagno in #229
- Add github to docs page by @tonybaloney in #222
- Remove second package from aspire demo and fix warning on insecure ve… by @tonybaloney in #223
4 - Use invariant culture when converting float constant to string by @atifaziz in #245
- Pre-allocate list based on source length by @atifaziz in #206
- Improve Aspire sample using large data set and Pandas. Use buffer protocol in kmeans demo by @tonybaloney in #230
- Fix test for
NuGetLocator
whenNUGET_PACKAGES
is defined by @atifaziz in #233 - Refactor
PythonConstant
types into a true union by @atifaziz in #234 - Generate fields per function instead of dictionary by @atifaziz in #236
- Bump System.Text.Json from 8.0.4 to 8.0.5 in /samples/Aspire/CSnakesAspire.AppHost by @dependabot in #246
- Use 3.13 GA by @tonybaloney in #247
- Bump versions by @RussKie in #252
- Fixing how the assemblies are referenced in NuGet by @aaronpowell in #253
- Have generated module interfaces inherit from
IDisposable
by @atifaziz in #249 - Consolidate redundant patterns in
MethodReflection.FromMethod
by @atifaziz in #248 - Fix GIL acquisition during Python runtime finalization by @atifaziz in #239
New Contributors
- @jamesmontemagno made their first contribution in #229
- @dependabot made their first contribution in #246
Full Changelog: v1.0.18...v1.0.19
v1.0.18
Main Changes
- Raised Exceptions support
InnerException
where the Python exception has a__cause__
property - Converged to a single package,
CSnakes.Runtime
- Support .NET 9
- Support for Buffer protocol
What's Changed
- Qualified typenames by @tonybaloney in #182
- Add integer overflow test by @tonybaloney in #185
- Optimize Managed -> Python dictionary conversions by @tonybaloney in #184
- Use integrated eventing for the profile project by @tonybaloney in #186
- Fix path to read-me doc in VS solution file by @atifaziz in #191
- Fix NuGet packages override path combination by @atifaziz in #190
- Use CI version of Python by @RussKie in #194
- Fix broken links to examples in docs by @atifaziz in #197
- Have direct integration example implement
IDisposable
by @atifaziz in #198 - Resolve reported paths by @RussKie in #196
- Make PyDictionary and PyList convertable back to PyObject without marshalling by @tonybaloney in #200
- Run Windows tests against the supplied Python version by @RussKie in #203
- Fix CS8604 (possible null dereferencing) warnings by @atifaziz in #205
- Parser supports additional syntax for type arguments by @tonybaloney in #201
- Reuse
PyEnumerable
, removing need forPyKeyValuePairEnumerable
by @atifaziz in #204 - Support .NET 9 by @RussKie in #202
- Reference Tensor by @RussKie in #213
- Add support for inner exceptions using the cause property. by @tonybaloney in #215
- Convert ndarray scalars to Span using the buffer protocol by @tonybaloney in #187
- Rename CSnakes project to CSnake.SourceGeneration and unify nupkgs by @RussKie in #211
- Improve test coverage by @RussKie in #217
- Fix LD_PRELOAD workarounds by @tonybaloney in #220
- Adding F# sample by @aaronpowell in #207
New Contributors
Full Changelog: v1.0.17...v1.0.18
v1.0.17
What's Changed
- Add methods to
PyObject
forIs
,Equals
andNotEquals
by @tonybaloney in #151 - Aspire tracing tweaks by @tonybaloney in #158
- Chill the logging out a bit by @tonybaloney in #157
- Implement <, >, <=, >= by @AaronRobinsonMSFT in #156
- Compiler conversions by @aaronpowell in #171
- Improve performance by 2x and add a basic benchmark test by @tonybaloney in #159
- Reducing the calls to ConvertTo/ConvertFrom so we can refactor them easier by @aaronpowell in #174
- Make the returned dictionary and list types lazy by @tonybaloney in #178
Internals
- refactor the profile into a benchmark by @tonybaloney in #175
- Caching nuget packages between runs by @aaronpowell in #160
- More work on test reporting by @aaronpowell in #155
- Experimenting with test reporter by @aaronpowell in #152
Full Changelog: v1.0.16...v1.0.17
v1.0.16
What's Changed
- Marshal
SafeHandle
impls through the P/Invoke by @AaronRobinsonMSFT in #137 - Public method for creating a PyObject from a CLR type. by @aaronpowell in #138
- Allow conversion between Python
int
andSystem.Numerics.BigInteger
by @tonybaloney in #136 - Don't use the TypeConverter API directly from the source generator or docs by @tonybaloney in #139
- Use NUGET_PACKAGES override in Nuget locator by @tonybaloney in #143
- Fixing how we generate packages with debug info by @aaronpowell in #145
- Implement Generator Iterators by @tonybaloney in #141
- type converter perf by @aaronpowell in #149
- Add IsNone and None static attribute for PyObject by @tonybaloney in #148
New Contributors
- @AaronRobinsonMSFT made their first contribution in #137
Full Changelog: v1.0.15...v1.0.16
v1.0.15
What's Changed
- Add HasAttr and GetRepr functions to PyObject by @tonybaloney in #116
- Improve PyObject debugging capabilities by @tonybaloney in #117
- Capture Python stack traces and frame data for easier debugging by @tonybaloney in #120
- Support conversion to the generic
typing.Sequence
type andtyping.Mapping
type by @tonybaloney in #122 - Support PEP570 - positional only args
/
syntax by @tonybaloney in #123 - Aspire samples by @aaronpowell in #106
- Support keyword-only argument calls in Python and normalize nullable argument types by @tonybaloney in #126
- remove path locator by @aaronpowell in #132
- Remove path locator from samples and docs by @tonybaloney in #134
- Implement Optional[T] with a default of None as a nullable type of T. by @tonybaloney in #135
Full Changelog: v1.0.13...v1.0.15
v1.0.13
What's Changed
- Add DevContainer and update Linux venv support by @tonybaloney in #113
- Adding .NET as matrix by @aaronpowell in #114
- warning fixes by @aaronpowell in #115
Full Changelog: v1.0.12...v1.0.13
v1.0.12
What's Changed
- Add extra code generation tests for types and constants by @tonybaloney in #108
- Fixes to the Pip installer if more than one version of Python is installed by @tonybaloney in #110
Full Changelog: v1.0.11...v1.0.12
Outstanding bugs exist with the PipInstaller
and WithVirtualEnvironment
classes on Linux. See #112
v1.0.11
Version bump