Raise ModelingToolkitBase DiffEqBase floor for symbolic diagnostics

Open Beginner friendly
#4,922 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
2/5
Estimated time
1-3 hours
Newbie friendliness
86/100
Issue type
Bug
Clarity
Clearly specified
Activity status
Quiet
Tech stack
github-actions, julia

Research direction

Update the DiffEqBase compatibility entry in lib/ModelingToolkitBase/Project.toml, starting from its current 7.4.2 floor. Reproduce the incompatible SciMLBase 3.44.0 and DiffEqBase 7.10.0 pair if needed, then rerun the ModelingToolkitBase downgrade CI job. Done means the floor is 7.12 and the downgrade job no longer fails with the missing symbolic_diagnostic field.

Written by the indexing model from the issue text.

Description

ModelingToolkitBase downgrade CI resolves an incompatible pair on clean ModelingToolkit master d7f3ad523c00b4150281f259d1e97618fba79982: SciMLBase 3.44.0 and DiffEqBase 7.10.0. This is unrelated to the one-line change in https://github.com/SciML/ModelingToolkit.jl/pull/4920.

Failing job: https://github.com/SciML/ModelingToolkit.jl/actions/runs/31368626108/job/93392420550

Observed CI failure:

InitializationSystem Test: Error During Test
LoadError: type DEVerbosity has no field symbolic_diagnostic
@ SciMLBase .../integrator_interface.jl:1012

Exact clean standalone reproduction on Julia 1.10.11:

julialauncher +1.10 -e "using Pkg; Pkg.activate(\"base-min-repro-env\"); Pkg.add([PackageSpec(name=\"SciMLBase\", version=\"3.44.0\"), PackageSpec(name=\"DiffEqBase\", version=\"7.10.0\")]); using SciMLBase, DiffEqBase; verbose = DEVerbosity(); @show hasproperty(verbose, :symbolic_diagnostic); verbose.symbolic_diagnostic"

Observed result:

hasproperty(verbose, :symbolic_diagnostic) = false
type DEVerbosity has no field symbolic_diagnostic

Changing only DiffEqBase to 7.12.0 reports:

hasproperty(verbose, :symbolic_diagnostic) = true
verbose.symbolic_diagnostic = SciMLLogging.MessageLevel(3)

The symbolic_diagnostic field was added by OrdinaryDiffEq commit 0237ef1552 in https://github.com/SciML/OrdinaryDiffEq.jl/pull/3731. The code still declared DiffEqBase 7.11.0 at that commit and was first shipped by the following version bump as DiffEqBase 7.12.0.

ModelingToolkitBase currently permits DiffEqBase 7.4.2 in lib/ModelingToolkitBase/Project.toml. The focused resolution is to raise that compatibility floor to 7.12 and rerun the ModelingToolkitBase downgrade job. This should be a standalone mechanical compatibility PR.

Dominant language
Julia
Stars
1.7k
Forks
270
Avg merge
20h 8m
Merged PRs (30d)
92

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from SciML/ModelingToolkit.jl

All issues in SciML/ModelingToolkit.jl

Similar issues

More Julia issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.