tabmat
tabmat copied to clipboard
Tabmat v4 alpha
Checklist
- [ ] Added a
CHANGELOG.rstentry
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
DenseMatrixandSparseMatrixare 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 thatSplitMatrixexposes).DenseMatrixandSparseMatrixnow contain their data in an_arrayattribute, containing anumpy.ndarrayor ascipy.csc_matrix, respectively. The underlying data structures can be accessed using the.unpack()method.MatrixBaseobjects are always 2-dimensional (this was not the case withDenseMatrixbefore. 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.
🎉