From 72ca967c974bd476b8b13b1f1616b32c575311e6 Mon Sep 17 00:00:00 2001 From: ChrisRackauckas-Claude Date: Sat, 13 Jun 2026 07:11:14 -0400 Subject: [PATCH] Split NoPre test group: JET -> canonical QA, sensitivity tests -> AD The NoPre group mixed standard QA tooling (JET) with functional SciMLSensitivity/Zygote/Tracker AD tests. Per the fleet rule, split them: - QA (standard checks): now also carries JET. jet_tests.jl moves into the new test/qa env (Aqua + JET) alongside qa.jl, and the QA dispatch activates that env and runs both files. QA is set to versions ["lts","1"], ubuntu-only. - AD (functional): the three SciMLSensitivity/Zygote/Tracker tests move from test/nopre into test/AD with their own env (the former nopre env minus JET). New [AD] group at versions ["lts","1"]; not run on prerelease. The old [NoPre] key, test/nopre dir, and NoPre dispatch are removed. Test file bodies are unchanged (moved verbatim); only config and dispatch were edited. Co-Authored-By: Chris Rackauckas Co-Authored-By: Claude Opus 4.8 (1M context) --- test/{nopre => AD}/Project.toml | 2 -- test/{nopre => AD}/integrating_sensitivity_tests.jl | 0 .../integrating_sum_sensitivity_tests.jl | 0 test/{nopre => AD}/saving_tracker_tests.jl | 0 test/qa/Project.toml | 10 ++++++++++ test/{nopre => qa}/jet_tests.jl | 0 test/runtests.jl | 12 ++++++------ test/test_groups.toml | 7 ++++--- 8 files changed, 20 insertions(+), 11 deletions(-) rename test/{nopre => AD}/Project.toml (94%) rename test/{nopre => AD}/integrating_sensitivity_tests.jl (100%) rename test/{nopre => AD}/integrating_sum_sensitivity_tests.jl (100%) rename test/{nopre => AD}/saving_tracker_tests.jl (100%) create mode 100644 test/qa/Project.toml rename test/{nopre => qa}/jet_tests.jl (100%) diff --git a/test/nopre/Project.toml b/test/AD/Project.toml similarity index 94% rename from test/nopre/Project.toml rename to test/AD/Project.toml index 0e03883b..7ab63091 100644 --- a/test/nopre/Project.toml +++ b/test/AD/Project.toml @@ -3,7 +3,6 @@ ComponentArrays = "b0b7db55-cfe3-40fc-9ded-d10e2dbeff66" DiffEqCallbacks = "459566f4-90b8-5000-8ac3-15dfb0a30def" ForwardDiff = "f6369f11-7733-5829-9624-2563aa707210" Functors = "d9f16b24-f501-4c13-a1f2-28368ffc5196" -JET = "c3a54625-cd67-489e-a8e7-0a5a0ff4e31b" JLArrays = "27aeb0d3-9eb9-45fb-866b-73c2ecf80fcb" OrdinaryDiffEqLowOrderRK = "1344f307-1e59-4825-a18e-ace9aa3fa4c6" OrdinaryDiffEqTsit5 = "b1df2697-797e-41e3-8120-5422d3b24e4a" @@ -22,7 +21,6 @@ DiffEqCallbacks = {path = "../.."} ComponentArrays = "0.15.18" ForwardDiff = "0.10.36" Functors = "0.5" -JET = "0.9, 0.10, 0.11" JLArrays = "0.1, 0.2" OrdinaryDiffEqLowOrderRK = "2" OrdinaryDiffEqTsit5 = "2" diff --git a/test/nopre/integrating_sensitivity_tests.jl b/test/AD/integrating_sensitivity_tests.jl similarity index 100% rename from test/nopre/integrating_sensitivity_tests.jl rename to test/AD/integrating_sensitivity_tests.jl diff --git a/test/nopre/integrating_sum_sensitivity_tests.jl b/test/AD/integrating_sum_sensitivity_tests.jl similarity index 100% rename from test/nopre/integrating_sum_sensitivity_tests.jl rename to test/AD/integrating_sum_sensitivity_tests.jl diff --git a/test/nopre/saving_tracker_tests.jl b/test/AD/saving_tracker_tests.jl similarity index 100% rename from test/nopre/saving_tracker_tests.jl rename to test/AD/saving_tracker_tests.jl diff --git a/test/qa/Project.toml b/test/qa/Project.toml new file mode 100644 index 00000000..cb4fd96e --- /dev/null +++ b/test/qa/Project.toml @@ -0,0 +1,10 @@ +[deps] +Aqua = "4c88cf16-eb10-579e-8560-4a9242c79595" +DiffEqCallbacks = "459566f4-90b8-5000-8ac3-15dfb0a30def" +JET = "c3a54625-cd67-489e-a8e7-0a5a0ff4e31b" +Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40" + +[compat] +Aqua = "0.8" +JET = "0.9, 0.10, 0.11" +Test = "1" diff --git a/test/nopre/jet_tests.jl b/test/qa/jet_tests.jl similarity index 100% rename from test/nopre/jet_tests.jl rename to test/qa/jet_tests.jl diff --git a/test/runtests.jl b/test/runtests.jl index f188787f..548c7959 100644 --- a/test/runtests.jl +++ b/test/runtests.jl @@ -1,11 +1,11 @@ using SciMLTesting -# The NoPre group is selectable by name only on non-prerelease Julia (the original -# `GROUP == "NoPre" && isempty(VERSION.prerelease)` gate). Under "All" the NoPre -# folder always ran regardless of prerelease, and folder-discovery's "All" globs the -# NoPre folder unconditionally, so "All" is unaffected by this guard. -if current_group() == "NoPre" && !isempty(VERSION.prerelease) - # prerelease Julia: GROUP=NoPre runs nothing, matching the original gate. +# The AD group is selectable by name only on non-prerelease Julia (the AD/sensitivity +# stack — SciMLSensitivity, Tracker, Zygote — does not support prerelease). Under "All" +# the AD folder always ran regardless of prerelease, and folder-discovery's "All" globs +# the AD folder unconditionally, so "All" is unaffected by this guard. +if current_group() == "AD" && !isempty(VERSION.prerelease) + # prerelease Julia: GROUP=AD runs nothing, matching the original NoPre gate. else run_tests() end diff --git a/test/test_groups.toml b/test/test_groups.toml index c6777e77..e25a68a7 100644 --- a/test/test_groups.toml +++ b/test/test_groups.toml @@ -5,6 +5,7 @@ os = ["ubuntu-latest", "macos-latest", "windows-latest"] [QA] versions = ["lts", "1"] -[NoPre] -versions = ["1", "lts", "pre"] -os = ["ubuntu-latest", "macos-latest", "windows-latest"] +# SciMLSensitivity/Zygote/Tracker-backed AD tests. The AD stack does not +# support prerelease Julia; deps live in test/AD/Project.toml. +[AD] +versions = ["lts", "1"]