Releases: matt-graham/symnum
Releases · matt-graham/symnum
v0.2.1
What's Changed
- Add Zenodo DOI by @matt-graham in #11
- Fix derivatives of constant functions by @matt-graham in #12
- Support for Python 3.9 dropped
Full Changelog: v0.2.0...v0.2.1
v0.2.0
Major release.
Breaking changes
symnum.array.SymbolicArray
no longer subclassessympy.tensor.array.dense_ndim_array.ImmutableDenseNDimArray
, instead wrapping an instance of this class and delegating some methods. Only a subset of previously inherited methods are now exposed.symnum.codegen.FunctionExpression
no longer subclassessympy.core.expr.Expr
with updated handling no longer requiring this, and this avoiding exposing inherited methods which do not perform as expected for instances of class.symnum.numpy.array
function now returns original array when passed a NumPy array of non-object datatype.synnum.array.ScalarLike
now includes boolean types (in-built plus SymPy)symnum.array.slice_iterator
no longer publicly exposed as part of API.
Bug fixes and enhancements
- Handling of zero-dimensional
SymbolicArray
instances improved, with several corner cases in methods previously causing errors fixed. - Deprecated imports of generic types from
collections
instead ofcollections.abc
fixed allowing usage with Python 3.10+. - Use of deprecated
numpy.object
datatype replaced with in-builtobject
, allowing usage with NumPy 1.24+. - Type hints added to all publicly exposed functions and methods.
- Unit tests added for
symnum.numpy
andsymnum.array
modules. symnum.numpy.concatenate
now handlesaxis=None
case equivalently to NumPy.
Packaging and documentation improvement
- API documentation now built using Sphinx.
- Project metadata now stored in
pyproject.toml
file withsetup.py
script removed.
v0.1.2
Minor update for compatibility with SymPy version 1.8
v0.1.1
Minor release.
- Fixed handling of zero-dimensional symbolic arrays.
- Added
numpy.concatenate
,numpy.real
,numpy.imag
,numpy.maximum
andnumpy.minimum
implementations.
v0.1.0
Initial PyPI release.