Correct ImplicitDiscreteSolve NonlinearSolveBase compat - #4051
ChrisRackauckas-Claude wants to merge 1 commit into
Conversation
Co-Authored-By: Chris Rackauckas <accounts@chrisrackauckas.com>
|
Early CI triage: |
|
Additional verification on the exact reported downgrade path (commit |
|
CI confirms this one-line metadata correction is the first required fix. The exact upstream/master base run 30414223142 failed ProbNumDiffEq and all five SciMLSensitivity jobs during resolution because ImplicitDiscreteSolve 2.1.5 required the unregistered NonlinearSolveBase 2.40; this PR moves those jobs past that error, and the ImplicitDiscreteSolve Core (Julia 1/LTS/pre), QA, and downgrade jobs are green. The downstream jobs then expose separate stale constraints: PositiveIntegrators pins LinearSolve 3.75 while current OrdinaryDiffEq requires 5.2; SciMLSensitivity test groups pin AlgebraicMultigrid 1, which only supports old LinearSolve; and ProbNumDiffEq pins JET 0.11 while this job runs Julia 1.10 (with a second resolver conflict through its PrecompileTools pin). These are independent downstream follow-ups, not failures of the ImplicitDiscreteSolve compat change. I am reproducing and splitting them into focused fixes rather than adding unrelated changes here. |
|
The additional DiffEqDevTools downgrade red is infrastructure, not a test assertion: GitHub’s sole check annotation is “The self-hosted runner lost communication with the server,” and the test step never received a terminal conclusion or uploaded logs. Current classification is therefore seven independent downstream resolver constraints plus one runner-loss failure; 113 checks are green so far, including all ImplicitDiscreteSolve-specific jobs. |
|
The GPU red is also an exact clean-master failure: upstream run 30414223517 at base |
|
A higher bound is okay too. |
Ignore this PR until it has been reviewed by @ChrisRackauckas.
Summary
ImplicitDiscreteSolve2.1.5 from #4042 requires the publicNonlinearSolveBase.solve_cache!API. That API was ultimately registered in NonlinearSolveBase 2.38.0, after the unreleased version sequence was normalized, but the merged project compat still requires nonexistent 2.40.This one-line metadata fix changes the lower bound from 2.40 to 2.38. Version 2.1.5 is not registered yet (General currently ends at 2.1.4), so no additional ImplicitDiscreteSolve version bump is needed.
Local verification
Exact head
5a12aafe72, Julia 1.12.6, resolving registered NonlinearSolveBase 2.38.0 and NonlinearSolve 4.24.0:Pkg.test()path: 53/53 passed;--check: exit 0;git diff --check: exit 0.Process notes
This was found while validating the registered dependency chain for #3985. I checked General to confirm that ImplicitDiscreteSolve 2.1.5 is unreleased and NonlinearSolveBase 2.38.0 is the registered API release, searched open OrdinaryDiffEq PRs for an existing correction, synced the fork master to upstream, made the single compat edit, and ran the package resolver, functional tests, QA, and repository formatter before committing.