Guard the SciMLBase hook and restore released compat - #4253
Conversation
Co-Authored-By: Chris Rackauckas <accounts@chrisrackauckas.com>
|
CI triage update (matrix still running):
I will post a final CI update after the remaining jobs and clean-master investigations finish. |
Co-Authored-By: Chris Rackauckas <accounts@chrisrackauckas.com>
|
Follow-up to the interim CI note: commit 52f3e62 restores This addresses the broad downgrade failure cluster from the previous head. The updated CI matrix is now running. |
|
Final CI and clean-master triage update for head Patch-facing checks
The exact Julia 1.12 AD lane gets past the original DiffEqBase precompile failure and reaches Unrelated failures investigated separately
At the final poll, all non-GPU jobs had settled: 228 successes, 31 failures, and 3 skipped checks. Nine GPU jobs remained queued for hardware. The remaining failures were left visible; no test was skipped, disabled, loosened, or silenced. This PR should remain a draft and be ignored until reviewed by @ChrisRackauckas. |
What changed and why
DiffEqBase 7.15.1 currently extends
SciMLBase.report_integrator_failure, but no released SciMLBase defines that hook. The normal resolver selects SciMLBase 3.47.0 and DiffEqBase fails while loading. The same change raised the SciMLBase compat floor to nonexistent version3.46.2, which makes minimum-version resolution unsatisfiable.This guards the method extension until SciMLBase provides the hook, restores the last released floor
SciMLBase = "3.46", and adds a Core regression test for both dependency states. Released SciMLBase versions continue using their existingcheck_errordiagnostics, while the DiffEqBase method is installed when the pending hook exists. There is no public API change.Git bisect identified 0ed2615 as the first bad commit. The migration merged in #4153 ahead of its still-open prerequisite SciML/SciMLBase.jl#1504. The failure is also tracked at #4249.
Verification
Failing before
On unmodified upstream master with SciMLBase 3.47.0:
The unmodified root
GROUP=ADrun independently resolved:The exact
julia-downgrade-compat@v2resolver passes on parent9d92d1c722and fails on0ed2615804. Its current root CI failure is https://github.com/SciML/OrdinaryDiffEq.jl/actions/runs/31768146910/job/94668206969.Passing after
The exact root minimum-version action now passes:
A representative nested path,
OrdinaryDiffEqRosenbrockTableaus → OrdinaryDiffEqRosenbrock → DiffEqBase, also passes:A fresh local environment validates the restored released floor:
I also tested against the exact pending SciMLBase head Shreyas-Ekanathan/SciMLBase.jl@71e1a41:
Not verified
I did not run
GROUP=Everything, GPU, or allowed-to-fail jobs locally. I stopped the full rootGROUP=ADrun after reproducing the dependency load failure; the focused DiffEqBase Core group exercises the repaired package load and regression test. GitHub's non-GPU matrix has settled; results and separately investigated failures are documented at #4253 (comment). Nine GPU jobs remained queued for hardware at the final poll.