Releases: lenskit/csr
0.5.2 - Bump Dependencies
What's Changed
- Use LensKit's conda-tool to set up Conda environments by @mdekstrand in #55
- Bump Python & Numba versions by @mdekstrand in #54
Full Changelog: v0.5.1...v0.5.2
Bump Numba support
0.5.0 - Moving Forward
Quite a few updates and improvements, including Python 3.11 support.
Major improvements include:
.row()
now takes an ndarray- new
.row_mask()
What's Changed
- Reduce uncontrolled randomization in tests by @mdekstrand in #21
- Use invoke task to build MKL helper by @mdekstrand in #23
- Update test pipelines by @mdekstrand in #24
- Generate CSRs directly for more tests by @mdekstrand in #22
- Test CSR on single-precision floating-point values by @mdekstrand in #27
- Correct test failures with updated dependencies by @mdekstrand in #31
- Use lenskit-build-helpers for CI builds by @mdekstrand in #30
- Further test cleanups and improvements to fix CI by @mdekstrand in #32
- Add a minimum-dependencies test to CI by @mdekstrand in #33
- Remove the .R accessor by @mdekstrand in #28
- Enable Numba 0.56 in tests by @mdekstrand in #36
- Update minimum tested SciPy version to 1.2 by @mdekstrand in #38
- Update metadata to PEP 621 by @mdekstrand in #40
- Support arrays of indices in row() by @mdekstrand in #43
- Add row_mask method to CSR by @mdekstrand in #44
- NEP 29: Require minimum versions Python 3.8 and NumPy 1.21 by @mdekstrand in #46
- Test with Python 3.11 & Numba 0.57 by @mdekstrand in #47
- Use PyTest 7 by @mdekstrand in #49
- Test on Python 3.11 on Conda by @mdekstrand in #48
Full Changelog: v0.4.1...v0.5.0b1
Build infra updates
This provides minor build updates to CSR to make it possible to build the Conda packages.
CSR dependency updates
This is a maintenance release to support Numba 0.56, and use the new LensKit build infrastructure.
What's Changed
- Import newer build system changes to 0.4 by @mdekstrand in #34
- Enable Numba 0.56 in tests by @mdekstrand in #37
Full Changelog: v0.4.1...v0.4.2
Update Python deps
This release adds support for Python 3.10 and Numba 0.55, and improves back-end release infrastructure.
Merged PRs
- Test with Python 3.10 and Numba 0.55 (#20) @mdekstrand
- Use conda-lock for CSR builds (#18) @mdekstrand
- Use Mamba for environment creation (#17) @mdekstrand
Better MKL
This PR fixes a few problems to make the MKL interfaces more robust, particularly when working with very large matrices. All users should upgrade.
Per NEP 29, this release also drops support for Python 3.6 and NumPy 1.16.
Merged PRs
- Gate large-memory tests based on available memory (#12) @mdekstrand
- Support very large matrix multiplication with MKL (#11) @mdekstrand
- Enforce MKL interface limits (#10) @mdekstrand
- Further updates to version testing (#9) @mdekstrand
- Fix creation of large empty matrices (#8) @mdekstrand
Fix release version
0.3.0 was uploaded to PyPI with the wrong version.
Picking Rows
This primarily adds the pick_rows
method to streamline LensKit algorithms.
Merged PRs
- Add pick_rows method for row subsetting (#6) @mdekstrand
- Update Python versions (#5) @mdekstrand
Structref
This release changes the CSR class to use NumPy structrefs instead of jitclasses. This removes the need for different interfaces for compiled and pure code - all code can just use CSR, and Numba access the accelerated APIs.