Skip to content

Conversation

@ChrisRackauckas-Claude
Copy link
Contributor

Summary

This PR removes the default SDE algorithm selection from DifferentialEquations.jl, as it has been moved to StochasticDiffEq.jl.

Closes #1086 (partial - for SDE portion)

Changes

  • ❌ Removed src/sde_default_alg.jl - SDE default algorithm logic
  • ❌ Removed include of sde_default_alg.jl from src/DifferentialEquations.jl
  • ❌ Removed test/default_sde_alg_test.jl - SDE default algorithm tests
  • ❌ Removed SDE default algorithm test from test/runtests.jl

Context

This is part of the ongoing effort to modularize DifferentialEquations.jl by moving default solver logic to their respective packages (see #1086). The SDE default algorithm is now handled directly in StochasticDiffEq.jl via __init and __solve dispatches when no algorithm is specified.

Related PRs

Breaking Changes

None - this is purely an internal refactoring. The user-facing API remains unchanged. Users can still call solve(sde_problem) without specifying an algorithm and the appropriate default will be selected by StochasticDiffEq.jl.

Test Plan

  • Removed SDE default algorithm tests (now in StochasticDiffEq.jl)
  • CI should pass after StochasticDiffEq.jl#633 is merged and released

🤖 Generated with Claude Code

Co-Authored-By: Claude noreply@anthropic.com

@ChrisRackauckas-Claude ChrisRackauckas-Claude force-pushed the remove-sde-default-algorithm branch from a363327 to a594acf Compare October 10, 2025 17:04
…(v8.0.0)

This PR removes all default algorithm selection logic from DifferentialEquations.jl and transforms it into a minimal meta-package that only re-exports the core ODE solver ecosystem.

Closes SciML#1086

## Major Changes (v8.0.0 - Breaking Release)

### Removed source files (9):
- ❌ `src/default_solve.jl`
- ❌ `src/default_arg_parsing.jl`
- ❌ `src/sde_default_alg.jl`
- ❌ `src/dae_default_alg.jl`
- ❌ `src/dde_default_alg.jl`
- ❌ `src/discrete_default_alg.jl`
- ❌ `src/rode_default_alg.jl`
- ❌ `src/steady_state_default_alg.jl`
- ❌ `src/bvp_default_alg.jl`

### Removed test files (7):
- ❌ All `test/default_*_alg_test.jl` files

### Minimal dependencies:
**Before (17 deps):** BoundaryValueDiffEq, DelayDiffEq, DiffEqBase, DiffEqCallbacks, DiffEqNoiseProcess, JumpProcesses, LinearAlgebra, LinearSolve, NonlinearSolve, OrdinaryDiffEq, Random, RecursiveArrayTools, Reexport, SciMLBase, SteadyStateDiffEq, StochasticDiffEq, Sundials

**After (3 deps):** OrdinaryDiffEq, Reexport, SciMLBase

### Updated:
- ✏️ `src/DifferentialEquations.jl` - Now only re-exports SciMLBase and OrdinaryDiffEq
- ✏️ `Project.toml` - Version bumped to 8.0.0, minimal dependencies
- ✏️ `test/runtests.jl` - Minimal test suite
- ✏️ Julia compat bumped to 1.10

## Context
DifferentialEquations.jl is now a minimal meta-package. Default algorithm selection is handled directly in each solver package via `__init` and `__solve` dispatches.

Users requiring other solver types (SDEs, DDEs, DAEs, BVPs, etc.) should now directly depend on and import the specific solver packages:
- `StochasticDiffEq` for SDEs
- `DelayDiffEq` for DDEs
- `BoundaryValueDiffEq` for BVPs
- etc.

## Related PRs
- **SDE:** SciML/StochasticDiffEq.jl#633
- **DDE:** SciML/DelayDiffEq.jl#326, SciML#334

## Breaking Changes
- **Version 8.0.0** - Major breaking release
- No longer re-exports all solver packages
- Users must explicitly add and import solver packages they need
- `using DifferentialEquations` now only provides ODE solving capabilities

🤖 Generated with [Claude Code](https://claude.ai/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
@ChrisRackauckas-Claude ChrisRackauckas-Claude force-pushed the remove-sde-default-algorithm branch from a594acf to 157da34 Compare October 10, 2025 17:10
@ChrisRackauckas ChrisRackauckas changed the title Remove SDE default algorithm (moved to StochasticDiffEq.jl) Setup for v8 Oct 10, 2025
@ChrisRackauckas ChrisRackauckas merged commit fafbe5a into SciML:master Oct 10, 2025
5 of 6 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.

DifferentialEquations.jl v8

2 participants