Support DomainSets 0.8 (compat bumps; isolates DiffEq8 breakage)#565
Merged
ChrisRackauckas merged 2 commits intoJun 4, 2026
Merged
Conversation
Updates the requirements on [DomainSets](https://github.com/JuliaApproximation/DomainSets.jl) and [DifferentialEquations](https://github.com/SciML/DifferentialEquations.jl) to permit the latest version. Updates `DomainSets` to 0.8.0 - [Release notes](https://github.com/JuliaApproximation/DomainSets.jl/releases) - [Commits](JuliaApproximation/DomainSets.jl@v0.7.0...v0.8.0) Updates `DomainSets` to 0.8.0 - [Release notes](https://github.com/JuliaApproximation/DomainSets.jl/releases) - [Commits](JuliaApproximation/DomainSets.jl@v0.7.0...v0.8.0) Updates `DifferentialEquations` to 8.0.0 - [Release notes](https://github.com/SciML/DifferentialEquations.jl/releases) - [Changelog](https://github.com/SciML/DifferentialEquations.jl/blob/master/NEWS.md) - [Commits](SciML/DifferentialEquations.jl@v7.0.0...v8.0.0) --- updated-dependencies: - dependency-name: DomainSets dependency-version: 0.8.0 dependency-type: direct:production dependency-group: all-julia-packages - dependency-name: DomainSets dependency-version: 0.8.0 dependency-type: direct:production dependency-group: all-julia-packages - dependency-name: DifferentialEquations dependency-version: 8.0.0 dependency-type: direct:production dependency-group: all-julia-packages ... Signed-off-by: dependabot[bot] <support@github.com>
The dependabot bump (SciML#564) widened DomainSets to `0.7, 0.8`, but the package could not resolve because PDEBase (and ModelingToolkitBase) still pinned DomainSets to 0.7. Bump the PDEBase lower bound to 0.1.25, the release that admits DomainSets 0.8. MethodOfLines's own source needs no changes: all DomainSets usage is via qualified, still-exported names (`DomainSets.infimum`, `DomainSets.supremum`, `DomainSets.ClosedInterval`, and `Interval`), none of which are affected by the 0.8 breaking changes. Co-Authored-By: Chris Rackauckas <accounts@chrisrackauckas.com>
This was referenced Jun 4, 2026
ChrisRackauckas
added a commit
that referenced
this pull request
Jun 4, 2026
…ffeq-7-sciml-3 Fix for OrdinaryDiffEq 7 / SciMLBase 3 / RecursiveArrayTools 4 (complements #565)
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.
Please ignore until reviewed by @ChrisRackauckas.
This PR builds on the dependabot bump #564 (DomainSets
0.7 -> 0.8+ DifferentialEquations bump) and makes the changes needed to resolve the DomainSets 0.8 part of that group. It is branched off the dependabot branch, so it includes the dependabot compat bump.Root cause of the #564 resolution failure
CI on #564 fails to even resolve:
MethodOfLines now requires DomainSets 0.8, but two of its (transitive) dependencies still pinned DomainSets to 0.7:
DomainSets = "0.7")DomainSets = "0.6, 0.7")Nothing can resolve until both admit 0.8. (Symbolics already supports DomainSets 0.8 since 7.18.1.)
Companion PRs (must merge + be released first)
DomainSets = "0.7, 0.8")DomainSets = "0.6, 0.7, 0.8")This MoL PR cannot pass CI until PDEBase 0.1.25 and a ModelingToolkitBase with DomainSets 0.8 support are registered.
DomainSets 0.8 breaking changes vs. MethodOfLines usage
DomainSets v0.8.0 (DomainSets.jl#178): removed an old
×type piracy (soDomainSets.×andLinearAlgebra.×differ) and unexported some internals now living in FunctionMaps.jl.MethodOfLines only uses DomainSets through qualified, still-exported names —
DomainSets.infimum,DomainSets.supremum,DomainSets.ClosedInterval, andInterval(re-exported via PDEBase). There is no bare×and no unexported-internal usage, so no MethodOfLines source changes are required. Verified against DomainSets 0.8.0:Changes in this PR
Project.toml:DomainSets = "0.7, 0.8"(from the dependabot commit), bumpPDEBaselower bound0.1.20 -> 0.1.25, version0.11.12 -> 0.11.13.Local verification (Julia 1.11, DomainSets 0.8.0)
With the companion PDEBase/ModelingToolkitBase branches developed in, the environment resolves to DomainSets 0.8.0 and the full SciML stack precompiles cleanly. Resolved versions: DomainSets 0.8.0, Symbolics 7.26.0, ModelingToolkitBase 1.42.2, PDEBase 0.1.25.
Components group — all pass under DomainSets 0.8.0:
(The "Discretization of space and grid types" set is the one that does
using DomainSetsand builds domains directly — it exercises DomainSets 0.8 most directly and passes.)1D Linear Diffusion group — 99 pass, 6 errored:
The 6 errors are NOT caused by DomainSets 0.8. They are caused by the other major-version bumps that the same dependabot group drags in (DifferentialEquations 7 -> 8, which pulls OrdinaryDiffEq 7.0.0, SciMLBase 3.17, RecursiveArrayTools 4.3):
UndefVarError: Rodas4 not defined—using OrdinaryDiffEqno longer re-exportsRodas4in OrdinaryDiffEq 7 (the hint saysimport OrdinaryDiffEqRosenbrock).MethodError: no method matching size(::Pair{Symbolics.Num, Matrix{Float64}}, ::Int64)insideRecursiveArrayTools.length(::PDETimeSeriesSolution)— a SciMLBase 3 / RecursiveArrayTools 4 change to solutionlength/size.Evidence these are independent of DomainSets:
masterCI is already red on the sameTests (1, Diffusion)/Tests (1, Integrals)jobs (2026-06-03), independent of this PR.Controlled comparison — same environment (OrdinaryDiffEq 7.0.0, SciMLBase 3.17.0, RecursiveArrayTools 4.3.0, Symbolics 7.26.0), only DomainSets differs:
The pass/error counts and the exact error messages are identical whether DomainSets is 0.8.0 or 0.7.18 — proving the failures are unrelated to DomainSets.
Integrals group — passes under DomainSets 0.8.0 (this group constructs integral domains with
DomainSets.ClosedInterval, so it exercises DomainSets 0.8 directly):Scope note
This PR fixes only the DomainSets 0.8 blocker. The OrdinaryDiffEq 7 / SciMLBase 3 / RecursiveArrayTools 4 breakages introduced by the DifferentialEquations 8 bump in the same dependabot group are a separate, larger piece of work (they need MethodOfLines source/test updates for the new solver export layout and the new
PDETimeSeriesSolutionlength/size semantics) and are intentionally not addressed here. They should be handled in their own PR; consider splitting #564 so the DomainSets bump can land independently of the DifferentialEquations 8 bump.🤖 Generated with Claude Code