tabmat
tabmat copied to clipboard
Tabmat v4 alpha
Checklist
- [ ] Added a
CHANGELOG.rst
entry
The core changes for the Tabmat 4.0 release. The main goal is making the API of MatrixBase subclasses more consistent. All other PRs planned for the 4.0 release are based on this (
tabmat-v4`) branch.
Major changes
-
DenseMatrix
andSparseMatrix
are not subclasses of numpy ans scipy arrays, anymore. It means that they do not inherit their (sometimes conflicting) behavior, and only expose a minimal interface (i.e. mostly the methods thatSplitMatrix
exposes). -
DenseMatrix
andSparseMatrix
now contain their data in an_array
attribute, containing anumpy.ndarray
or ascipy.csc_matrix
, respectively. The underlying data structures can be accessed using the.unpack()
method. -
MatrixBase
objects are always 2-dimensional (this was not the case withDenseMatrix
before. One-dimensional inputs to their constructors are interpreted as column matrices.
It seems that our CI is set up to publish to PyPI on any GH release (including pre-releases), so creating a release with a corresponding alpha/beta/rc tag should be enough to get the v4 branch to PyPI.
🎉