Skip to content

Conversation

@ChrisRackauckas-Claude
Copy link

Summary

The minimum Julia version bound in DESCRIPTION was incorrect. Changed from Julia (>= 1.6) to Julia (>= 1.10) to match actual dependency requirements.

Analysis

I analyzed the current dependency requirements and found that the minimum Julia version bound of >= 1.6 is too low:

Current Code Requirements

The package uses complete(odesys, split=false) in R/diffeqr.R:

# Line 76
new_prob <- JuliaCall::julia_eval("ODEProblem(complete(odesys, split=false), [], tspan; jac=true)")

# Line 107  
new_prob <- JuliaCall::julia_eval("SDEProblem(complete(sdesys, split=false), [], tspan; jac=true)")

Dependency Version Requirements

  1. DifferentialEquations.jl requires Julia >= 1.10

    • This requirement was introduced in DifferentialEquations.jl v8.0.0 (October 10, 2025)
    • Previous versions required Julia >= 1.9
  2. ModelingToolkit.jl v9.0.0+ requires Julia >= 1.9

    • Released February 22, 2024
    • Introduced the requirement to call complete() before creating problems (PR #2436)
    • The split parameter for complete() was added in this version
  3. diffeqr code was updated to use complete(odesys, split=false) in PR fix: use split=false when jit-ing system, rely on defaults #46 (November 20, 2024)

    • This follows the same pattern as diffeqpy PR #149
    • Requires ModelingToolkit.jl v9.0.0+ which needs Julia >= 1.9

Conclusion

Since DifferentialEquations.jl (the primary dependency) requires Julia >= 1.10, the minimum Julia version for diffeqr must be 1.10.

Impact

This change correctly documents the actual minimum Julia version required. Users attempting to use diffeqr with Julia 1.6-1.9 would encounter errors with current versions of DifferentialEquations.jl and ModelingToolkit.jl.

Testing

No code changes were made - this is purely a documentation fix in the DESCRIPTION file to match actual dependency requirements.

cc @ChrisRackauckas

🤖 Generated with Claude Code

The current minimum version bound of Julia >= 1.6 is incorrect.

## Evidence

1. **DifferentialEquations.jl** requires Julia >= 1.10 (as of v8.0.0, Oct 2025)
2. **ModelingToolkit.jl v9+** requires Julia >= 1.9 (as of v9.0.0, Feb 2024)
3. The current diffeqr code uses `complete(odesys, split=false)` which requires
   ModelingToolkit.jl v9.0.0+ (introduced in PR #2436)

## Breaking Changes Timeline

- **Feb 2024**: ModelingToolkit v9.0.0 required systems to be `complete`d
  before creating problems, requiring Julia 1.9+
- **Oct 2025**: DifferentialEquations.jl v8.0.0 bumped to Julia 1.10+

## Impact

Users with Julia 1.6-1.9 will encounter errors when trying to use diffeqr
with current versions of DifferentialEquations.jl. This change correctly
documents the actual minimum version required.

Co-Authored-By: Claude Sonnet 4.5 <[email protected]>
@ChrisRackauckas ChrisRackauckas merged commit c7c68f6 into SciML:master Jan 8, 2026
1 of 4 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.

3 participants