Skip to content

Raise DataDrivenLux Distributions floor to 0.25.123 for downgrade CI#626

Merged
ChrisRackauckas merged 1 commit into
SciML:masterfrom
ChrisRackauckas-Claude:fix-ddlux-downgrade-distributions-floor
Jun 24, 2026
Merged

Raise DataDrivenLux Distributions floor to 0.25.123 for downgrade CI#626
ChrisRackauckas merged 1 commit into
SciML:masterfrom
ChrisRackauckas-Claude:fix-ddlux-downgrade-distributions-floor

Conversation

@ChrisRackauckas-Claude

Copy link
Copy Markdown
Contributor

Ignore until reviewed by @ChrisRackauckas.

Problem

The only red lane on master is Downgrade Sublibraries / test (lib/DataDrivenLux). (Root CI, Sublibrary CI, and Downgrade are all green post-#624.) It fails at the Pkg.test sandbox resolution with:

ERROR: Unsatisfiable requirements detected for package ModelingToolkitBase [7771a370]:
 ├─restricted by compatibility requirements with ModelingToolkit to versions: 1.30.0-1.45.0
 └─restricted by compatibility requirements with SymbolicUtils to versions: 1.0.0-1.29.1 — no versions left

Root cause

  • The root DataDrivenDiffEq compat floors ModelingToolkit = "11.21.0". The lowest MTK satisfying that (11.21.0) requires ModelingToolkitBase >= 1.30.0, which requires SymbolicUtils >= 4.23.1.
  • At --min, the Distributions = "0.25" floor in lib/DataDrivenLux resolves to Distributions 0.25.88, whose transitive constraints cap SymbolicUtils <= 4.21.0.
  • >= 4.23.1 vs <= 4.21.0 → UNSAT.

Note: this is distinct from #624, which carried the release-independent code/test fixes but deliberately left the downgrade floor decision unmade.

Fix

Raise the lib/DataDrivenLux floor to Distributions = "0.25.123". Bisected against the binding MTK 11.21.0 floor:

Distributions resolves with MTK 11.21.0?
0.25.122 UNSAT
0.25.123 OK

0.25.123 is the lowest 0.25.x whose transitive graph admits SymbolicUtils >= 4.23.1. The compat upper bound is unchanged (0.25.123 means >=0.25.123,<0.26), so regular CI keeps selecting the latest 0.25.x and is unaffected.

Verification (local, Julia 1.10.11, clean depot)

  • julia-downgrade-compat@v2 downgrade.jl (Resolver.jl --min, alldeps merged mode) against lib/DataDrivenLux: Successfully resolved minimal versions.
  • The Pkg.test sandbox resolution that previously threw the UNSAT now succeeds; it resolves ModelingToolkitBase and SymbolicUtils at versions >= the floors that were impossible before.

🤖 Generated with Claude Code

The Downgrade Sublibraries lane for lib/DataDrivenLux fails at the Pkg.test
sandbox resolution with "Unsatisfiable requirements detected for
ModelingToolkitBase":

  ModelingToolkitBase restricted by ModelingToolkit to 1.30.0+ (requires
  SymbolicUtils >= 4.23.1), but at --min the Distributions = "0.25" floor
  pins Distributions to 0.25.88, whose transitive constraints cap
  SymbolicUtils at <= 4.21.0 -> no versions left.

The root DataDrivenDiffEq compat floors ModelingToolkit at 11.21.0, and the
lowest MTK satisfying that (11.21.0) already requires MTKBase >= 1.30 ->
SymbolicUtils >= 4.23.1. Distributions 0.25.123 is the lowest Distributions
0.25.x whose transitive graph admits SymbolicUtils >= 4.23.1 (bisected:
0.25.122 UNSAT, 0.25.123 OK with MTK 11.21.0). The upper bound is unchanged
(0.25.123 means >=0.25.123,<0.26), so non-downgrade CI keeps picking the
latest 0.25.x.

Verified locally on Julia 1.10.11 in a clean depot: julia-downgrade-compat@v2
downgrade.jl (Resolver.jl --min, alldeps merged mode) resolves successfully,
and the Pkg.test sandbox resolution that previously threw UNSAT now succeeds
(resolves ModelingToolkitBase and SymbolicUtils at versions >= the floors
that were impossible before).

Co-Authored-By: Chris Rackauckas <accounts@chrisrackauckas.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@ChrisRackauckas ChrisRackauckas marked this pull request as ready for review June 24, 2026 11:56
@ChrisRackauckas ChrisRackauckas merged commit 43cb046 into SciML:master Jun 24, 2026
19 of 24 checks passed
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.

2 participants