docs CI: re-clone StochasticDiffEq fresh in env setup (complete #870 fix)#872
Merged
ChrisRackauckas merged 2 commits intoJun 16, 2026
Conversation
654cd0f to
bc302e9
Compare
Drop the `Pkg.develop` of OrdinaryDiffEq and StochasticDiffEq in the docs build
(and the env-setup re-clone dance), resolving them — and all the solver
subpackages — from the registry at their released versions instead of master.
Why:
- StochasticDiffEq is a subpackage of the OrdinaryDiffEq.jl monorepo as of v7
(registry `repo = OrdinaryDiffEq.jl`, `subdir = lib/StochasticDiffEq`), so
`Pkg.develop("StochasticDiffEq")` re-cloned the same monorepo and the stale
leftover checkout of the old `SciML/StochasticDiffEq.jl` repo (6.100.0) broke
resolution against the docs `[compat] = "7"`:
ERROR: empty intersection between StochasticDiffEq@6.100.0 and compat 7
- `Pkg.develop`ing the monorepo master also risks version skew: the dev'd
master meta-package's subpackage [compat] must be satisfiable by the
*registered* subpackages (sources don't propagate to the docs project), which
breaks whenever master races ahead of the registry.
- The released packages already ship their `docs/` (OrdinaryDiffEq 7.0.0's
tarball includes `docs/` with pages.jl + src + common_*_steps.jl), so the API
docs can be copied from the installed stable packages with no dev checkout.
Net effect: the stable docs reflect released versions, the stale-checkout failure
mode and the monorepo skew are both gone, and env-setup is just instantiate.
(StochasticDiffEq's registered tarball does not yet ship `docs/` — its docs/ needs
to be migrated into lib/StochasticDiffEq in the monorepo; until then the
"StochasticDiffEq.jl API" section stays dropped, as added in SciML#869.)
Co-Authored-By: Chris Rackauckas <accounts@chrisrackauckas.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
bc302e9 to
14fc13e
Compare
Building against the stable release (previous commit) surfaced that OrdinaryDiffEq 7.0.0 does not re-export `EnsembleProblem` (master does), so the low-dependency example's `ODE.EnsembleProblem` was an `UndefVarError`. Source it from SciMLBase, which defines it — consistent with this page's own point that "you will always need SciMLBase.jl, since it defines all of the fundamental types." This is the only docs `@example` affected: across all of docs/src the only OrdinaryDiffEq-exported-on-master-but-not-7.0.0 symbol used via the alias is `EnsembleProblem`, here. Verified locally on the released stack (OrdinaryDiffEq 7.0.0 + OrdinaryDiffEqLowOrderRK + DiffEqCallbacks + SciMLBase): the example's ensemble solve runs successfully. Co-Authored-By: Chris Rackauckas <accounts@chrisrackauckas.com> Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
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.
Note
Please ignore until reviewed by @ChrisRackauckas.
#870 fixed the Documentation build failing on a stale
~/.julia/dev/OrdinaryDiffEqcheckout, but only handled OrdinaryDiffEq.docs/make.jlalsoPkg.develops StochasticDiffEq, which hits the identical failure on any runner carrying a stale checkout — observed just now ondemeter4-3:This generalizes the env-setup re-clone to refresh both OrdinaryDiffEq and StochasticDiffEq before developing them, completing the #870 fix. After this,
make.jl's ownPkg.developcalls for the two are no-ops on the freshly-cloned checkouts.This is a prerequisite for #871 (the AMG default-coarse-solver docs cleanup), whose Documentation build currently fails here before reaching any
@example.🤖 Generated with Claude Code