Skip to content
This repository was archived by the owner on Dec 30, 2025. It is now read-only.

Improve static analysis and add JET tests#8

Open
ChrisRackauckas-Claude wants to merge 1 commit intoSciML:mainfrom
ChrisRackauckas-Claude:static-improvements-20251229-212754
Open

Improve static analysis and add JET tests#8
ChrisRackauckas-Claude wants to merge 1 commit intoSciML:mainfrom
ChrisRackauckas-Claude:static-improvements-20251229-212754

Conversation

@ChrisRackauckas-Claude
Copy link

Summary

  • Fix undefined BVP/IVP exports: Added const BVP = BVPSolver and const IVP = IVPSolver type aliases to fix the broken exports in the module
  • Add type parameter constraints: Constrained kernel type parameters to Real (T <: Real) for better static analysis and early error detection
  • Add JET.jl test suite: Added comprehensive JET static analysis tests with @test_opt and @test_call macros for type stability verification

Changes

Bug fix

The package was exporting BVP and IVP but these names were not defined - only BVPSolver and IVPSolver existed. Added type aliases to fix this.

Static analysis improvements

  • Added T <: Real constraint to SquaredExponentialKernel{T} and Matern52Kernel{T}
  • This helps catch type errors at compile time rather than runtime

New tests

Added test/jet.jl with:

  • @test_opt tests for type stability on scalar and vector inputs
  • @test_call tests to verify no errors in FastSolvers module functions
  • All 9 JET tests pass

Test plan

  • Run Pkg.test() locally - all tests pass
  • CI passes on Julia 1, lts, and pre versions

cc @ChrisRackauckas

🤖 Generated with Claude Code

- Fix undefined BVP/IVP exports by adding type aliases for BVPSolver/IVPSolver
- Constrain kernel type parameters to Real (T <: Real) for better static analysis
- Add JET.jl test suite with @test_opt and @test_call for type stability verification
- All kernel functions pass JET analysis with no type instabilities

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

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants