Skip to content

Raise LinearSolve sublibrary floor to 5.4 - #1165

Merged
ChrisRackauckas merged 1 commit into
SciML:masterfrom
ChrisRackauckas-Claude:bump-linearsolve-sublib-floor-5.4
Aug 14, 2026
Merged

ChrisRackauckas merged 1 commit into
SciML:masterfrom
ChrisRackauckas-Claude:bump-linearsolve-sublib-floor-5.4

Conversation

@ChrisRackauckas-Claude

Copy link
Copy Markdown
Member

Please ignore this PR until it has been reviewed by @ChrisRackauckas.

Follow-up to #1163, which raised the LinearSolve floor to 5.4 in NonlinearSolve and NonlinearSolveBase. The FirstOrder and QuasiNewton sublibraries were left at LinearSolve = "5".

What changed

Pure [compat] lower-bound bump in two independently tested sublibraries:

  • lib/NonlinearSolveFirstOrder/Project.toml: LinearSolve = "5" → "5.4"
  • lib/NonlinearSolveQuasiNewton/Project.toml: LinearSolve = "5" → "5.4"

No solver code, tests, or package versions were changed.

Why

Downgrade Sublibraries on master is red while the matching parent Downgrade and latest CI (NonlinearSolve) runs are not. The failing jobs are only:

Downgrade pins each sublibrary's declared LinearSolve floor. With "5" that is LinearSolve 5.0.0, which cannot satisfy in-tree NonlinearSolveBase (LinearSolve = "5.4"):

Unsatisfiable requirements detected for package LinearSolve
 ├─restricted to versions 5 by NonlinearSolveQuasiNewton
 ├─restricted to versions 5.4.0-5 by NonlinearSolveBase
 └─restricted to versions 5.0.0 by an explicit requirement

Verification

Julia 1.10.11, Pkg.develop of each sublibrary, then Pkg.add(name="LinearSolve", version=...):

Sublibrary LinearSolve 5.0.0 (old floor) LinearSolve 5.4.0 (new floor)
NonlinearSolveFirstOrder unsatisfiable resolves
NonlinearSolveQuasiNewton unsatisfiable resolves

Not verified here: the full Core/QA/GPU test groups, or whether other sublibraries have similar floors (only these two jobs were red on the latest Downgrade Sublibraries run).

Stale related PR: #1143 (parent-only LinearSolve 5.4 bump; superseded by #1163).

NonlinearSolveBase already requires LinearSolve 5.4 (SciML#1163). The
FirstOrder and QuasiNewton sublibraries still declared LinearSolve 5,
so Downgrade Sublibraries pinned 5.0.0 and Pkg.test failed as
unsatisfiable.

Co-Authored-By: Chris Rackauckas <accounts@chrisrackauckas.com>
@ChrisRackauckas
ChrisRackauckas marked this pull request as ready for review August 14, 2026 14:32
@ChrisRackauckas
ChrisRackauckas merged commit c8479f4 into SciML:master Aug 14, 2026
72 of 78 checks passed
@ChrisRackauckas-Claude

Copy link
Copy Markdown
Member Author

Independent clean-master validation of the merged floor alignment:

  • On 30fd52ec61872225af8cc975e4a1f354ee5cffca, Julia 1.10.11 environments developing the current local NonlinearSolveBase reproduce both resolver failures when explicitly pinned to the sublibrary floor LinearSolve@5.0.0. The parent 4816e1c067fadc3ed4c7ad058c797bff08da2ac3 resolves both at 5.0.0; with this PR's two floor changes, both current-source environments resolve at LinearSolve 5.4.0.
  • NonlinearSolveFirstOrder current-graph Core passed, including General NLLS 480/480, NewtonRaphson 309/309, PseudoTransient 51/51, TrustRegion 1176/1176, LevenbergMarquardt 33/33, sparse AutoDiff 12/12, structured Jacobians 16/16, and the final package success. QA passed 20/20 in 2m24.0s.
  • NonlinearSolveQuasiNewton current-graph Core passed, including Broyden 594/594, Klement 216/216, LimitedMemoryBroyden 99/99, update-rule reinit 63/63, and the final package success. QA passed 20/20 in 1m56.0s.
  • Runic, typos on both changed Project files, and git diff --check all exited 0. A docs build is not applicable to this compat-only change.

The exact assigned clean-master failures were:

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.

2 participants