Bump compat for OrdinaryDiffEq v7 / SciMLBase v3 ecosystem#4476
Merged
ChrisRackauckas merged 1 commit intoSciML:masterfrom Apr 27, 2026
Merged
Conversation
Widen compat across Project.toml, lib/ModelingToolkitBase/Project.toml, and docs/Project.toml for the OrdinaryDiffEq v7 / StochasticDiffEq v7 / DelayDiffEq v6 majors introduced in SciML/OrdinaryDiffEq.jl#3562 and SciML#3565. Compat changes (all widened to include new major): ModelingToolkit: DelayDiffEq: 5.61 → 5.61, 6 OrdinaryDiffEq: 6.82.0 → 6.82.0, 7 (re-add v7 after revert) OrdinaryDiffEqBDF: 1 → 1, 2 OrdinaryDiffEqDefault: 1.2 → 1.2, 2 OrdinaryDiffEqNonlinearSolve: 1.5.0 → 1.5.0, 2 OrdinaryDiffEqRosenbrock: 1 → 1, 2 StochasticDiffEq: 6.82.0 → 6.82.0, 7 ModelingToolkitBase: DelayDiffEq: 5.61 → 5.61, 6 ImplicitDiscreteSolve: 0.1.2, 1 → 0.1.2, 1, 2 OrdinaryDiffEq: 6.82.0 → 6.82.0, 7 OrdinaryDiffEqDefault: 1.2 → 1.2, 2 OrdinaryDiffEqNonlinearSolve: 1.5.0 → 1.5.0, 2 StochasticDiffEq: 6.82.0 → 6.82.0, 7 docs: OrdinaryDiffEq: 6.31 → 6.31, 7 StochasticDiffEq: 6 → 6, 7 Source migrations for v7 breaking changes: - test/fmi/fmi.jl: Rodas5P(autodiff = false) → Rodas5P(autodiff = AutoFiniteDiff()) (Bool-typed autodiff removed in OrdinaryDiffEq v7; must use ADTypes object) - lib/ModelingToolkitBase/test/sdesystem.jl: ensemble prob_func/output_func signatures updated from (prob, i, repeat)/(sol, i) to (prob, ctx)/(sol, ctx) with ctx.i replacing the positional index argument (SciMLBase v3 change) Co-Authored-By: Chris Rackauckas <accounts@chrisrackauckas.com>
ChrisRackauckas-Claude
pushed a commit
to ChrisRackauckas-Claude/BaseModelica.jl
that referenced
this pull request
Apr 27, 2026
The PR previously widened `OrdinaryDiffEq = "6.103, 7"` but kept `DiffEqBase = "6.211.0"` capped at v6, which is why CI's resolver silently picks OrdinaryDiffEq v6.111.0 — DiffEqBase v6 is incompatible with OrdinaryDiffEq v7's `DiffEqBase = "7"` requirement, so the resolver backs off to v6 across the board. This widening (`"6.211.0"` -> `"6.211.0, 7"`) is necessary but not yet sufficient: the next blocker is upstream — `ModelingToolkitBase v1.31.0` (the latest registered) caps `ImplicitDiscreteSolve = "0.1.2 - 1.11.0"`, forbidding `ImplicitDiscreteSolve v2`, which `OrdinaryDiffEqCore v4` requires. MTK's PR SciML/ModelingToolkit.jl#4476 already widens that compat in the MTKBase sublib but hasn't been released. Once ModelingToolkitBase is registered with the widened `ImplicitDiscreteSolve = "0.1.2, 1, 2"`, this PR's compat will admit the v7 line. Co-Authored-By: Chris Rackauckas <accounts@chrisrackauckas.com>
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.
Summary
Widens compat for the OrdinaryDiffEq v7 / StochasticDiffEq v7 / DelayDiffEq v6 majors from SciML/OrdinaryDiffEq.jl#3562 and #3565.
Follows up on #4467 (which bumped DiffEqBase v7, SciMLBase v3, OrdinaryDiffEqCore v4) by covering the remaining packages that got new majors.
Compat changes:
DelayDiffEq(MTK + MTKBase)5.615.61, 6OrdinaryDiffEq(MTK + MTKBase + docs)6.82.06.82.0, 7OrdinaryDiffEqBDF(MTK)11, 2OrdinaryDiffEqDefault(MTK + MTKBase)1.21.2, 2OrdinaryDiffEqNonlinearSolve(MTK + MTKBase)1.5.01.5.0, 2OrdinaryDiffEqRosenbrock(MTK)11, 2StochasticDiffEq(MTK + MTKBase + docs)6.82.0/66.82.0, 7/6, 7ImplicitDiscreteSolve(MTKBase)0.1.2, 10.1.2, 1, 2Source migrations (OrdinaryDiffEq v7 / SciMLBase v3 breaking changes):
test/fmi/fmi.jl(7 sites):Rodas5P(autodiff = false)→Rodas5P(autodiff = AutoFiniteDiff())— Bool-typedautodiffremoved in v7; must use ADTypes object.lib/ModelingToolkitBase/test/sdesystem.jl: ensembleprob_func(prob, i, repeat)/output_func = (sol, i) ->→prob_func(prob, ctx)/output_func = (sol, ctx) ->withctx.ireplacing the positional index — SciMLBase v3 ensemble interface change.No source migrations were needed for the other v7 breakages (
u_modified!,has_destats,DEAlgorithm/DEProblem/DESolution,concrete_solve,fastpow,QuadratureProblem,chunk_size,diff_type,standardtag,gamma/beta1/beta2PID kwargs) — grepped clean acrosssrc/,ext/, andlib/ModelingToolkitBase/src/.Note:
StochasticDelayDiffEq = "1.11"is left as-is; per the v7 NEWS, StochasticDelayDiffEq has no v7-compatible release planned and users should migrate to DelayDiffEq directly.Test plan
autodiff = AutoFiniteDiff()migration)prob_func/output_funcsignature migration)Pkg.add(["OrdinaryDiffEq@7", "StochasticDiffEq@7", "DelayDiffEq@6"])in a test environment resolves without conflicts🤖 Generated with Claude Code