Restore root LinearSolve 5 floor - #1087
Closed
ChrisRackauckas-Claude wants to merge 1 commit into
Closed
Conversation
Co-Authored-By: Chris Rackauckas <accounts@chrisrackauckas.com>
This was referenced Jul 16, 2026
Member
Author
|
Interim CI audit for head
|
This was referenced Jul 16, 2026
Member
Author
|
Closing as superseded by merged #1095. That PR landed the same required root |
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.
Important
Ignore this PR until it has been reviewed by @ChrisRackauckas.
Summary
LinearSolvecompatibility floor to version 5, matching the current in-tree Base, FirstOrder, and QuasiNewton source packages.Root cause
PR #1070 established that the current source-tree caches require the LinearSolve 5 interface: LinearSolve 4.3 fails when the local FirstOrder and QuasiNewton packages use callable
LinearSolveJLCachebehavior. PR #1079 subsequently broadened only the root compatibility entry from5back to4.3, 5, while the in-treeNonlinearSolveQuasiNewton1.14.1 project still requires LinearSolve 5.The deployed downgrade action therefore selected and explicitly pinned LinearSolve 4.3.0 from the root floor.
Pkg.test(...; allow_reresolve=false)then combined that manifest with the in-tree source packages and failed before loading test code:This is the failure in PR #1061's unrelated downgrade job 87701889361 (run 29522250552). The exact same failure reproduces on clean upstream
masterat60736b5, so this PR contains no #1061 code.A formal bisect over the relevant clean-master range reported:
The good midpoint,
cbabebe8(#1075), selected LinearSolve 5.0.0 and reached the Core test body. The first bad commit is60736b5(#1079), whose root-only compatibility change reopened the incompatible 4.3 endpoint.Validation
All Julia validation used Julia 1.10.11 and workspace-local depots.
The exact deployed
julia-actions/julia-downgrade-compat@v2implementation (fab1defb76df9fd672f63c94df73ce131d32e134) completed on the final diff with the workflow-derived stdlib and[sources]skip list, modedeps, Julia floor1, andMooncakeno-promote setting.The resulting manifest contains
NonlinearSolve 4.21.2andLinearSolve 5.0.0.The exact CI test invocation reached and ran Core tests instead of failing in dependency resolution:
Core is not green on clean master. The final diff and the good bisect control both reach the same independently documented Broyden baseline: 94 passed, 1 failed, 1 errored, 19 broken. The failure is Generalized Rosenbrock algorithm 4; the error is the Brown algorithm-4 unexpected pass. These are tracked in Master CI red since 2026-07-12: "23 Test Problems: Broyden" alg #4 broken-list mismatch, bisected to #1039 (merged via cancelled CI run) #1083 and Brown bad-Broyden broken test is environment-sensitive #1056. This PR does not skip, silence, loosen, or otherwise modify either test.
Runic 1.7.0 passed all 373 tracked Julia files.
Project.tomlparsing and assertions for version 4.21.2 andLinearSolve = "5"passed.git diff --checkpassed.The existing root downgrade workflow provides regression coverage for this compatibility floor; no test source was changed.
Investigation process
I inspected the failing Actions job and exact reusable workflow inputs, reproduced the clean-master resolver failure with the deployed action SHA, reviewed prior fixes #1059, #1070, #1075, and #1079, ran a formal git bisect, compared the good midpoint's full Core result with the patched result, searched open PRs and issues for a duplicate fix, and validated the smallest source-tree-compatible correction. The open #1086 changes only the Base sublibrary version and does not overlap this root change.