From 66b4c6ca2c04dc42afb5849af59e92742beedf1e Mon Sep 17 00:00:00 2001 From: Guillaume Dalle <22795598+gdalle@users.noreply.github.com> Date: Fri, 23 Jan 2026 11:12:46 +0100 Subject: [PATCH 1/3] test: bypass failing Enzyme test until upstream fix --- .../test/Back/Enzyme/test.jl | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/DifferentiationInterface/test/Back/Enzyme/test.jl b/DifferentiationInterface/test/Back/Enzyme/test.jl index f80fc63c3..5cbc42376 100644 --- a/DifferentiationInterface/test/Back/Enzyme/test.jl +++ b/DifferentiationInterface/test/Back/Enzyme/test.jl @@ -63,9 +63,26 @@ end; end @testset "Second order" begin + test_differentiation( + AutoEnzyme(), + default_scenarios(; include_constantified = true, include_cachified = true); + excluded = vcat(FIRST_ORDER, :hvp, :hessian), + logging = LOGGING, + ) + + test_differentiation( + # TODO: replace with AutoEnzyme() when https://github.com/EnzymeAD/Enzyme.jl/issues/2854 is fixed + SecondOrder( + AutoEnzyme(; mode = Enzyme.set_runtime_activity(Enzyme.Forward)), + AutoEnzyme(; mode = Enzyme.set_runtime_activity(Enzyme.Reverse)) + ), + default_scenarios(; include_constantified = true, include_cachified = true); + excluded = vcat(FIRST_ORDER, :second_derivative), + logging = LOGGING, + ) + test_differentiation( [ - AutoEnzyme(), SecondOrder( AutoEnzyme(; mode = Enzyme.Reverse), AutoEnzyme(; mode = Enzyme.Forward) ), From abafa86b881720b33a0d2d4225675aa798b7b91c Mon Sep 17 00:00:00 2001 From: Guillaume Dalle <22795598+gdalle@users.noreply.github.com> Date: Fri, 23 Jan 2026 11:15:56 +0100 Subject: [PATCH 2/3] Fix --- DifferentiationInterface/test/Back/Enzyme/test.jl | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/DifferentiationInterface/test/Back/Enzyme/test.jl b/DifferentiationInterface/test/Back/Enzyme/test.jl index 5cbc42376..685046671 100644 --- a/DifferentiationInterface/test/Back/Enzyme/test.jl +++ b/DifferentiationInterface/test/Back/Enzyme/test.jl @@ -70,13 +70,20 @@ end logging = LOGGING, ) + test_differentiation( + AutoEnzyme(), + default_scenarios(; include_constantified = true); + excluded = vcat(FIRST_ORDER, :second_derivative), + logging = LOGGING, + ) + test_differentiation( # TODO: replace with AutoEnzyme() when https://github.com/EnzymeAD/Enzyme.jl/issues/2854 is fixed SecondOrder( AutoEnzyme(; mode = Enzyme.set_runtime_activity(Enzyme.Forward)), AutoEnzyme(; mode = Enzyme.set_runtime_activity(Enzyme.Reverse)) ), - default_scenarios(; include_constantified = true, include_cachified = true); + default_scenarios(; include_normal = false, include_constantified = false, include_cachified = true); excluded = vcat(FIRST_ORDER, :second_derivative), logging = LOGGING, ) From 872a25216d9021334c40463d52705a5e998fc0d4 Mon Sep 17 00:00:00 2001 From: Guillaume Dalle <22795598+gdalle@users.noreply.github.com> Date: Sat, 24 Jan 2026 16:38:29 +0100 Subject: [PATCH 3/3] Fix runtime activity --- DifferentiationInterface/test/Back/Enzyme/test.jl | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/DifferentiationInterface/test/Back/Enzyme/test.jl b/DifferentiationInterface/test/Back/Enzyme/test.jl index 685046671..d43019d43 100644 --- a/DifferentiationInterface/test/Back/Enzyme/test.jl +++ b/DifferentiationInterface/test/Back/Enzyme/test.jl @@ -78,11 +78,15 @@ end ) test_differentiation( - # TODO: replace with AutoEnzyme() when https://github.com/EnzymeAD/Enzyme.jl/issues/2854 is fixed - SecondOrder( - AutoEnzyme(; mode = Enzyme.set_runtime_activity(Enzyme.Forward)), - AutoEnzyme(; mode = Enzyme.set_runtime_activity(Enzyme.Reverse)) - ), + # TODO: simplify when https://github.com/EnzymeAD/Enzyme.jl/issues/2854 and https://github.com/EnzymeAD/Enzyme.jl/issues/2925 are fixed + if VERSION >= v"1.11" + SecondOrder( + AutoEnzyme(; mode = Enzyme.set_runtime_activity(Enzyme.Forward)), + AutoEnzyme(; mode = Enzyme.set_runtime_activity(Enzyme.Reverse)) + ) + else + AutoEnzyme() + end, default_scenarios(; include_normal = false, include_constantified = false, include_cachified = true); excluded = vcat(FIRST_ORDER, :second_derivative), logging = LOGGING,