Fix Julia 1.12 precompilation and add JET static analysis tests#99
Merged
ChrisRackauckas merged 5 commits intoSciML:masterfrom Jan 11, 2026
Conversation
Changes: - Fix function signature formatting in atsit5.jl interpolation function that caused "UndefVarError: IIP not defined" on Julia 1.12. The multiline type parameter formatting in the callable struct signature was not correctly binding the type parameters from the where clause. Changed to single-line format which works correctly. - Also changed `if !IIP` to `if !isinplace(integ)` to use the accessor function instead of directly referencing the type parameter, consistent with the pattern used in tsit5.jl - Add JET.jl as a test dependency to enable static analysis testing - Add test/jet_tests.jl with type stability tests for all main solvers: - SimpleEuler (OOP and IIP) - SimpleRK4 (OOP and IIP) - SimpleTsit5 (OOP and IIP) - SimpleATsit5 (OOP and IIP) - All JET tests pass, confirming the solvers are type-stable 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add separate 'JET' job in Tests.yml using the reusable workflow with group parameter - Update runtests.jl to check GROUP env variable and conditionally run tests - Remove JET from main test dependencies; JET is now installed dynamically only when running the JET test group This follows the pattern used in OrdinaryDiffEq.jl and other SciML packages. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Contributor
Author
|
Split JET tests to a separate CI group: Changes:
This follows the pattern used in OrdinaryDiffEq.jl and other SciML packages where JET tests run in a separate CI job. |
3 tasks
- Disable downgrade CI with `if: false` (waiting on dependency updates) - Rename JET test group to "nopre" following SciML conventions - Exclude "lts" and "pre" Julia versions from nopre group - Add Pkg as test dependency for dynamic JET installation Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
3795572 to
685c94f
Compare
Contributor
Author
|
Fixed the CI issues:
|
Co-Authored-By: Claude Opus 4.5 <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.
Summary
This PR fixes a precompilation error on Julia 1.12 and adds JET.jl static analysis tests.
Bug Fix
UndefVarError: IIP not definederror that occurs during precompilation on Julia 1.12atsit5.jl(line 695) where the callable struct's type parameters were split across multiple lines. This formatting pattern doesn't correctly bind type parameters from thewhereclause in Julia 1.12if !IIPwithif !isinplace(integ)to use the accessor function (consistent with pattern used intsit5.jl)JET.jl Tests
test/jet_tests.jlwith type stability tests for all main solvers:Test Plan
cc @ChrisRackauckas
🤖 Generated with Claude Code