Repository navigation
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What type of PR is this? (check all applicable)
Related issues
No separate issue filed; reproduced on current main.
Checklist
Please explain your changes below.
sparse.diff(COO.from_numpy(np.array([False, True, True, False])))raisesTypeErrorbecause it subtracts boolean arrays. NumPy's documented behavior returns[True, False, True]and preserves the boolean dtype.Select inequality for boolean differencing and subtraction for other dtypes after concatenating any prepend/append arrays. This preserves numeric promotion when a boolean input has numeric edges. Extend the existing NumPy-parity tests to cover booleans, signed/unsigned integers, floats, complex values, higher-order differences, axes and prepend/append combinations, including nonzero boolean fill values in COO and GCXS.
Validation on Python 3.12.13 / NumPy 2.5.4: 32 boolean regressions fail on unchanged main; numeric and complex controls pass. All 147 focused cases pass after the fix. Full Numba-backend suite and module doctests with branch coverage: 7,017 passed, 1 skipped, 97 xfailed, 60 xpassed, 2 warnings. All added coverable lines and arcs are covered. Repository hooks, wheel build and diff checks pass. Finch/MLIR and other operating systems/interpreters were not tested locally.
Prepared with OpenAI Codex assistance and independently reviewed before submission.