Skip to content

Support DataInterpolations 9 - #499

Merged
ChrisRackauckas merged 1 commit into
SciML:mainfrom
ChrisRackauckas-Claude:agent/fix-mtsl-data-interpolations-9
Aug 10, 2026
Merged

Support DataInterpolations 9#499
ChrisRackauckas merged 1 commit into
SciML:mainfrom
ChrisRackauckas-Claude:agent/fix-mtsl-data-interpolations-9

Conversation

@ChrisRackauckas-Claude

Copy link
Copy Markdown
Member

What changed

Widen the DataInterpolations compatibility entry to include version 9 and exercise the version-correct BSpline constructor in the existing interpolation test. This lets current ModelingToolkit/ModelingToolkitBase downstream tests resolve the shared FindFirstFunctions 3 dependency while retaining the DataInterpolations 8 test path.

Fixes #498.

Root cause

SciMLBase 3.35 and later require FindFirstFunctions 3, while DataInterpolations 8 is restricted to FindFirstFunctions 1.3–1.8. DataInterpolations 9 moved to FindFirstFunctions 3, but it also removed the old pVecType positional BSpline constructor argument, so widening compat alone makes test/sources.jl error.

Verification

Failing before, from MTSL dd512368441fc4684b2a6f6a011447dbe5cd80c8 against clean ModelingToolkit d7f3ad523c00b4150281f259d1e97618fba79982:

DataInterpolations 8 restricts FindFirstFunctions to 1.3-1.8
SciMLBase 3.44 restricts FindFirstFunctions to 3
ERROR: Unsatisfiable requirements detected for package FindFirstFunctions

With only the compat widened, the existing Core test discriminated the constructor change:

Core/sources.jl | 63 passed, 1 errored, 1 broken
MethodError: no method matching BSplineInterpolation(..., ::Int64, ::Symbol, ::Symbol)

With this patch:

GROUP=Core julia +1.12.6 --startup-file=no --project=. -e 'using Pkg; Pkg.develop(path="../ModelingToolkit.jl/lib/ModelingToolkitBase"); Pkg.develop(path="../ModelingToolkit.jl"); Pkg.update(); Pkg.test(; coverage=false)'

resolved DataInterpolations 9.2.0, FindFirstFunctions 3.2.1, and SciMLBase 3.44.0, then exited 0:

Core/sources.jl | 64 passed, 1 broken, 65 total
Testing ModelingToolkitStandardLibrary tests passed

Additional local checks:

DataInterpolations 8.10.0 standalone BSpline constructor: pass
GROUP=QA julia +release --project=. -e 'using Pkg; Pkg.test(; coverage=false)'
QA/qa.jl | 20 passed, 20 total
Runic --check test/sources.jl: pass
git diff --check: pass
typos over the focused diff: pass

No docs build was run because this changes no public API or documentation.

Please ignore this draft until it has been reviewed by @ChrisRackauckas.

Co-Authored-By: Chris Rackauckas <accounts@chrisrackauckas.com>
@ChrisRackauckas
ChrisRackauckas marked this pull request as ready for review August 10, 2026 08:34
@ChrisRackauckas
ChrisRackauckas merged commit eb37d1e into SciML:main Aug 10, 2026
10 of 11 checks passed
@ChrisRackauckas-Claude

Copy link
Copy Markdown
Member Author

CI follow-up: all ModelingToolkitStandardLibrary Core, QA, downgrade, docs, Runic, and typos checks pass. The long ModelingToolkit downstream job failed after 3h39m in ModelingToolkit's pre-existing Expression-valued initial trajectories test:

Some parameters are missing from the variable map.
var"v#0"(t)
Optimization | 184 passed, 1 errored, 1 broken

This is tracked at SciML/ModelingToolkit.jl#4925 and fixed by the separately validated draft SciML/ModelingToolkit.jl#4927. The failing downstream job is https://github.com/SciML/ModelingToolkitStandardLibrary.jl/actions/runs/31367386793/job/93388623849. No MTSL resolver or test failure appears in the log.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Test resolver conflict: DataInterpolations 8 vs SciMLBase 3.35+

2 participants