Skip to content

Fix docs build: explicit JumpProcesses/StochasticDiffEq imports after DiffEq 8.0#594

Merged
ChrisRackauckas merged 1 commit into
SciML:masterfrom
ChrisRackauckas-Claude:fix-docs-jumpproblem-diffeq8
May 23, 2026
Merged

Fix docs build: explicit JumpProcesses/StochasticDiffEq imports after DiffEq 8.0#594
ChrisRackauckas merged 1 commit into
SciML:masterfrom
ChrisRackauckas-Claude:fix-docs-jumpproblem-diffeq8

Conversation

@ChrisRackauckas-Claude
Copy link
Copy Markdown
Contributor

Please ignore until reviewed by @ChrisRackauckas.

Summary

The Documentation workflow has been failing on master since 2026-05-11 (PR #591, the dependabot DifferentialEquations 7.11 -> 8.0 bump in docs/Project.toml).

DifferentialEquations.jl v8.0.0 only reexports SciMLBase and OrdinaryDiffEq. It no longer reexports JumpProcesses, StochasticDiffEq, DiffEqNoiseProcess, DiffEqCallbacks, etc. As a result, using DifferentialEquations in the tutorials no longer brings symbols like JumpProblem, ConstantRateJump, VariableRateJump, Direct, SSAStepper, or SRIW1 into scope, and the Documenter build fails with:

UndefVarError: `JumpProblem` not defined in `Main.__atexample__named__tut3`
@ docs/src/tutorials/jump_diffusion.md:163

The "also exported by ModelingToolkitBase / Catalyst" hints in Documenter's output are red herrings emitted because those packages are loaded elsewhere in the build — they do not actually shadow JumpProcesses.JumpProblem. The root cause is the lost reexport in DifferentialEquations 8.0.

Fix

Replace using DifferentialEquations with explicit imports in the two affected tutorial files:

  • docs/src/tutorials/jump_diffusion.md (tut3): using JumpProcesses, StochasticDiffEq, OrdinaryDiffEq, Plots
  • docs/src/tutorials/discrete_stochastic_example.md (tut2 @example and @setup blocks): using JumpProcesses, OrdinaryDiffEq, Plots, LinearAlgebra

Updated the corresponding Pkg.add prose to match. docs/src/tutorials/simple_poisson_process.md already uses explicit using JumpProcesses, Plots and was not affected.

Verification

Reproduced the failure locally against the current docs/Project.toml (DifferentialEquations 8.0.0, Catalyst 16.1.1, ModelingToolkitBase 1.35.0) on Julia 1.11:

julia> using DifferentialEquations
julia> isdefined(@__MODULE__, :JumpProblem)
false
julia> isdefined(@__MODULE__, :ConstantRateJump)
false
julia> isdefined(@__MODULE__, :SRIW1)
false

After the fix, ran the full code from both tutorials end-to-end with using JumpProcesses, StochasticDiffEq, OrdinaryDiffEq, Plots (for tut3) and using JumpProcesses, OrdinaryDiffEq, Plots, LinearAlgebra + using Catalyst (for tut2): both complete successfully.

Test plan

  • CI's "Documentation" workflow goes green on this branch.

🤖 Generated with Claude Code

…Eq 8.0

DifferentialEquations.jl v8.0.0 only reexports SciMLBase and OrdinaryDiffEq,
dropping the JumpProcesses, StochasticDiffEq, DiffEqNoiseProcess, DiffEqCallbacks
and other reexports it used to provide in v7. The docs tutorials were relying
on `using DifferentialEquations` to bring `JumpProblem`, `ConstantRateJump`,
`VariableRateJump`, `Direct`, `SSAStepper`, `SRIW1`, etc. into scope, which
caused the Documenter build to fail with `UndefVarError: JumpProblem not
defined` at jump_diffusion.md:163 and similar errors in
discrete_stochastic_example.md once docs/Project.toml was bumped to allow
DifferentialEquations 8.0.

Replace `using DifferentialEquations` with explicit `using JumpProcesses,
OrdinaryDiffEq[, StochasticDiffEq]` in the affected tutorial @example blocks,
@setup blocks, and corresponding Pkg.add prose. simple_poisson_process.md
already imported JumpProcesses directly and is unaffected.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-Authored-By: Chris Rackauckas <accounts@chrisrackauckas.com>
@ChrisRackauckas ChrisRackauckas marked this pull request as ready for review May 23, 2026 08:33
@ChrisRackauckas ChrisRackauckas merged commit 7e12322 into SciML:master May 23, 2026
2 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