Skip to content

Conversation

@JoshuaLampert
Copy link
Contributor

Checklist

  • Appropriate tests were added
  • Any code changes were done in a way that does not break public API
  • All documentation related to code changes were updated
  • The new code follows the
    contributor guidelines, in particular the SciML Style Guide and
    COLPRAC.
  • Any new documentation only uses public API

Additional context

As discussed in #501 (comment), this adds JET.jl tests. I'll try to also fix any potential issues reported by JET.jl here.

@JoshuaLampert
Copy link
Contributor Author

JoshuaLampert commented Dec 18, 2025

So the remaining errors from JET.jl are all because of StaticArraysCore.similar_type. The problem here is that RecursiveArrayTools.jl depends only on StaticArraysCore.jl, where similar_type is defined, but only as a stub. The actual implementation lives in StaticArrays.jl, which is not visible to RecursiveArrayTools.jl. I'm not sure what the best option to fix this is. Any ideas, @ChrisRackauckas?
Of course, this is usually not a problem because we have StaticArrays.jl loaded when we want to call this method, but I understand why JET.jl is complaining.

@ChrisRackauckas
Copy link
Member

You can set it to ignore that function

@JoshuaLampert
Copy link
Contributor Author

You can set it to ignore that function

There is not option for filtering specific functions directly in JET.jl, right? So now I first get all reports, then manually filter out the similar_type related errors, and finally test if any error is left.

@JoshuaLampert JoshuaLampert marked this pull request as ready for review December 19, 2025 08:10
@ChrisRackauckas
Copy link
Member

There is not option for filtering specific functions directly in JET.jl, right?

I thought there was? At least the Aqua use of JET has it?

@@ -0,0 +1,60 @@
name: JET
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

instead of a new workflow it should just be a new test group

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That won't be possible because we cannot add JET.jl to the Project.toml and test on julia pre-v1.12 and v1.12 due to package compat connstraints, see NumericalMathematics/DispersiveShallowWater.jl#216 (comment).

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No it just needs to allow JET v0.9 and v0.11

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You mean something like 2acf709? Let's see if that works. Last time I tried to make something like this work, I always got compat problems.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ok, seems fine.

@JoshuaLampert
Copy link
Contributor Author

There is not option for filtering specific functions directly in JET.jl, right?

I thought there was? At least the Aqua use of JET has it?

Can you point me to that please?

@ChrisRackauckas
Copy link
Member

Oh actually that's just for implicit import checks. So this approach seems fine.

@ChrisRackauckas ChrisRackauckas merged commit eb2e255 into SciML:master Dec 19, 2025
22 of 28 checks passed
@JoshuaLampert JoshuaLampert deleted the JET-tests branch December 19, 2025 09:59
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