From 463fd2866e40622ac654d4111f56352b0834c493 Mon Sep 17 00:00:00 2001 From: ChrisRackauckas-Claude Date: Fri, 3 Jul 2026 14:23:32 -0400 Subject: [PATCH 1/2] Skip JET QA tests on Julia 1.13 until JET supports it On Julia 1.13.0-rc1 the QA @test_opt calls fail with runtime-dispatch reports whose leaf frames are all in Base (broadcast preprocess, simd_index/CartesianIndex, SubArray construction, mightalias). Native inference of every flagged frame is concrete and identical on 1.12.6 and 1.13.0-rc1, and the kernels are allocation-free on both, so these are false positives in JET's 1.13 analysis (its 1.13 support is still in progress), not ForwardDiff or Base problems. Reported with reduced JET-only MWEs in https://github.com/aviatesk/JET.jl/issues/839. Gate on v"1.13.0-" so prereleases are covered; re-enable once a JET release analyzes 1.13 correctly. Co-Authored-By: Chris Rackauckas Co-Authored-By: Claude Fable 5 Claude-Session: https://claude.ai/code/session_01Vx7zQ96NYk4VV4ML2s3kAC --- test/QATest.jl | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/test/QATest.jl b/test/QATest.jl index 860ccdb0..a792f583 100644 --- a/test/QATest.jl +++ b/test/QATest.jl @@ -5,12 +5,20 @@ using Test using JET: @test_opt -@testset "JET" begin - # issue #778 - @test_opt ForwardDiff.derivative(identity, 1.0) - @test_opt ForwardDiff.gradient(only, [1.0], ForwardDiff.GradientConfig(only, [1.0], ForwardDiff.Chunk{1}())) - @test_opt ForwardDiff.jacobian(identity, [1.0], ForwardDiff.JacobianConfig(identity, [1.0], ForwardDiff.Chunk{1}())) - @test_opt ForwardDiff.hessian(only, [1.0], ForwardDiff.HessianConfig(only, [1.0], ForwardDiff.Chunk{1}())) +# On Julia 1.13, JET produces false-positive runtime-dispatch reports for +# concrete Base broadcast/view/CartesianIndex code reached by these calls: +# native inference of every flagged frame is concrete and the kernels are +# allocation-free, so nothing is actually mis-inferred in ForwardDiff. +# Re-enable once JET supports Julia 1.13; tracked in +# https://github.com/aviatesk/JET.jl/issues/839 +if VERSION < v"1.13.0-" + @testset "JET" begin + # issue #778 + @test_opt ForwardDiff.derivative(identity, 1.0) + @test_opt ForwardDiff.gradient(only, [1.0], ForwardDiff.GradientConfig(only, [1.0], ForwardDiff.Chunk{1}())) + @test_opt ForwardDiff.jacobian(identity, [1.0], ForwardDiff.JacobianConfig(identity, [1.0], ForwardDiff.Chunk{1}())) + @test_opt ForwardDiff.hessian(only, [1.0], ForwardDiff.HessianConfig(only, [1.0], ForwardDiff.Chunk{1}())) + end end end # module From cbb8368fc18a7851b94ac63e4a8d44fbf949ca35 Mon Sep 17 00:00:00 2001 From: ChrisRackauckas-Claude Date: Fri, 3 Jul 2026 14:53:47 -0400 Subject: [PATCH 2/2] Gate JET QA tests on prerelease Julia instead of 1.13 JET routinely lags new Julia versions during their prerelease phase, so key the skip on isempty(VERSION.prerelease) rather than a hardcoded 1.13 bound: the QA tests run on every released Julia and skip on rc/beta/DEV builds, where JET false positives are expected. Co-Authored-By: Chris Rackauckas Co-Authored-By: Claude Fable 5 Claude-Session: https://claude.ai/code/session_01Vx7zQ96NYk4VV4ML2s3kAC --- test/QATest.jl | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/test/QATest.jl b/test/QATest.jl index a792f583..7ebac540 100644 --- a/test/QATest.jl +++ b/test/QATest.jl @@ -5,13 +5,14 @@ using Test using JET: @test_opt -# On Julia 1.13, JET produces false-positive runtime-dispatch reports for -# concrete Base broadcast/view/CartesianIndex code reached by these calls: -# native inference of every flagged frame is concrete and the kernels are -# allocation-free, so nothing is actually mis-inferred in ForwardDiff. -# Re-enable once JET supports Julia 1.13; tracked in -# https://github.com/aviatesk/JET.jl/issues/839 -if VERSION < v"1.13.0-" +# On Julia prereleases JET's analysis lags the compiler and produces +# false-positive runtime-dispatch reports (e.g. on 1.13.0-rc1 for concrete +# Base broadcast/view/CartesianIndex code reached by these calls: native +# inference of every flagged frame is concrete and the kernels are +# allocation-free, so nothing is actually mis-inferred in ForwardDiff; +# https://github.com/aviatesk/JET.jl/issues/839). Only run the JET tests on +# released Julia versions. +if isempty(VERSION.prerelease) @testset "JET" begin # issue #778 @test_opt ForwardDiff.derivative(identity, 1.0)