Skip to content

Bump FindFirstFunctions compat to allow 2.x#86

Merged
ChrisRackauckas merged 1 commit into
JuliaComputing:mainfrom
ChrisRackauckas-Claude:bump-fff-compat-2
May 21, 2026
Merged

Bump FindFirstFunctions compat to allow 2.x#86
ChrisRackauckas merged 1 commit into
JuliaComputing:mainfrom
ChrisRackauckas-Claude:bump-fff-compat-2

Conversation

@ChrisRackauckas-Claude
Copy link
Copy Markdown

Summary

StateSelection currently pins FindFirstFunctions = "1.2.0", which blocks downstream consumers from using FFF 2.0. The only FFF symbol used here is findfirstequal (in src/math/sparsematrixclil.jl), whose signature is unchanged between FFF 1.x and 2.0 — it remains findfirstequal(vpivot, ivars) -> Union{Int, Nothing}, with the same DenseVector{Int64} fast path.

This PR bumps the compat to "1.2.0, 2".

Why

FFF 2.0 added a new strategy-based API (Auto, SearchProperties, searchsortedlast! etc.) without breaking the equality API. Downstream packages that have moved to FFF 2.0 (e.g. SciML/DataInterpolations.jl#529) cannot co-resolve with StateSelection 1.x, which blocks any docs/test build that pulls in both via ModelingToolkit.

Verification

  • Cloned this repo, applied the compat bump, dev-installed FFF 2.0 from a local checkout.
  • Pkg.test() passes cleanly on Julia 1.11 (bareiss, carpanzano_tearing, get_new_mm testsets — all 13 assertions green).
  • No source changes needed; FFF 2.0 retains the same findfirstequal definition.

Notes

Please ignore until reviewed by @ChrisRackauckas. Submitting from an external account; the change is mechanical and the test suite confirms compatibility.

🤖 Generated with Claude Code

The new `2.x` line is API-compatible for the surface StateSelection actually
uses (`findfirstequal`, with an unchanged signature). Tests pass locally
against FFF 2.0.0.

Co-Authored-By: Chris Rackauckas <accounts@chrisrackauckas.com>
@ChrisRackauckas ChrisRackauckas marked this pull request as ready for review May 21, 2026 14:01
@ChrisRackauckas ChrisRackauckas merged commit 6f95481 into JuliaComputing:main May 21, 2026
20 of 23 checks passed
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.

3 participants