Skip to content

Floor OrdinaryDiffEqDifferentiation at 3.3 - #4085

Merged
ChrisRackauckas merged 1 commit into
masterfrom
floor-ordinarydiffeqdifferentiation-3.3
Jul 31, 2026
Merged

Floor OrdinaryDiffEqDifferentiation at 3.3#4085
ChrisRackauckas merged 1 commit into
masterfrom
floor-ordinarydiffeqdifferentiation-3.3

Conversation

@ChrisRackauckas

Copy link
Copy Markdown
Member

Raises the OrdinaryDiffEqDifferentiation lower bound from "3" (and "3.2.1" in Rosenbrock) to "3.3" across the monorepo, so the entire 3.2 line — including 3.2.3 — is no longer resolvable.

Why

Downstream packages have been carrying their own pins to route around 3.2.3. SciML/MinimallyDisruptiveCurves.jl has had

OrdinaryDiffEqDifferentiation = "3.2.0 - 3.2.2"  # just to fix a 3.2.3 precompilation bug

together with an [extras] entry declaring a package it never loads, purely so [compat] could constrain a transitive dependency. CompatHelper then repeatedly proposes widening that pin (#66), which would silently re-admit exactly the version it excludes.

Constraining this here instead means:

  • the bound lives in the package that actually depends on OrdinaryDiffEqDifferentiation, not in each consumer;
  • downstream packages can drop their transitive-dependency declarations entirely and just floor OrdinaryDiffEq;
  • any other package hitting the same problem inherits the fix without knowing about it.

There is no 3.2.4, so nothing was ever patched into the 3.2 line — moving to 3.3 is the only way past it.

Scope

17 Project.toml files: 13 sublibraries (patch-bumped so the floor is releasable), plus docs/ and three test/qa/ environments. [deps] UUID lines are untouched; only [compat] bounds and the 13 versions changed.

Caveat worth reviewing

I could not reproduce the 3.2.3 precompilation failure in isolation — 3.2.2, 3.2.3 and 3.3.0 all precompile cleanly standalone on Julia 1.11.8, and no issue or PR in this repo references it. The only record is the inline comment above. This raises the floor on the strength of that report rather than a reproduction, so it is a deliberate safety margin, not a diagnosed fix.

Note this also raises what Downgrade CI exercises for these sublibraries from 3.0.0 to 3.3.0.

Puts the 3.2 line, including the 3.2.3 release that downstream packages
have been pinning around, permanently out of the resolvable range.

Patch-bumps the 13 sublibraries whose compat changed so the new floor can
be released.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@ChrisRackauckas
ChrisRackauckas merged commit 463f771 into master Jul 31, 2026
160 of 214 checks passed
ChrisRackauckas added a commit that referenced this pull request Jul 31, 2026
Four sublibraries were already ahead of the registry with a release pending
when #4085 patch-bumped them, leaving a hole. AutoMerge rejects those:

  Does not meet sequential version number guideline:
  version 2.6.1 skips over 2.6.0

Reverts those four to their pending versions, which already carry the new
OrdinaryDiffEqDifferentiation floor. The other nine were at registry+1 and
are unaffected.

Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
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.

1 participant