Skip to content

Release v0.5.0#152

Merged
broesler merged 702 commits intomasterfrom
release/v0.5.0
Feb 11, 2026
Merged

Release v0.5.0#152
broesler merged 702 commits intomasterfrom
release/v0.5.0

Conversation

@broesler
Copy link
Collaborator

This PR combines all of the new features and the CHOLMOD refactor in #138, #139, #141, #142, #143, #146, #147, #148, #149, and #151. I will close those individual PRs once this is merged.

I have listed the API changes, including bug fixes to the original, in the Change Log under doc/changes.rst.

I've also restructured the documentation to more closely resemble the NumPy/SciPy docs.

I have also opened a corresponding SciPy draft PR that shows how this new API would be integrated therein, and be ready for review once this PR is merged.

Use `stacklevel=2` in _handle_errors to make warnings appear from the
function that called _handle_errors, and call _handle_errors from
_malloc_copy to check for possible KLUOutOfMemoryError.
This behavior is consistent with sksparse.umfpack, and is more
convenient for the user to not have to invert the row-scaling factors.
The reciprocal is only computed on output, not used internally.
This behavior change makes sksparse.umfpack consistent with klu and
cholmod.
This change leaves CholeskyFactor in an "unsafe" state after __cinit__
is run (or `CholeskyFactor.__new__(CholeskyFactor)`), since the `_cm`
and `_factor` pointers are NULL, but it would have to be very
intentional on the part of the user to create an object as such. There
is a warning in the docs.
Just use the __dealloc__ method directly.
Remove the memcpy calls, which also take the pointers.
This method allows the user to chang the factor from LL.T to
LDL.T format, without any re-computation or copying the factor.
It does not expose the other arguments to cholmod_change_factor.
This commit does not change existing code, as the namedtuple has an
iterator that cycles properly over "count, h, parent, post, L".
This change ensures code still functions when users use "python -O" that
ignores assert statements.
This update does not make any behavioral changes, but allows users to
import just a single submodule at a time, in the case where all of
SuiteSparse is not installed, or just for import efficiency.
This module is used in validate_csc_input to check the user's scipy
version.
Also update the README to link to the migration table.
Also change project name from scikit-sparse-dev -> scikit-sparse.
@broesler broesler merged commit 22a4b81 into master Feb 11, 2026
20 checks passed
@broesler broesler deleted the release/v0.5.0 branch February 11, 2026 21:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant