diff --git a/Project.toml b/Project.toml index d4bd8f3..3bcc69b 100644 --- a/Project.toml +++ b/Project.toml @@ -28,8 +28,9 @@ DDEProblemLibrary = "0.1" JumpProblemLibrary = "1, 2.0" NonlinearProblemLibrary = "0.1" ODEProblemLibrary = "1" +Pkg = "1.10" SafeTestsets = "0.1" -SciMLTesting = "1" +SciMLTesting = "1.6" SDEProblemLibrary = "1" Test = "1.10" julia = "1.10" diff --git a/lib/BVProblemLibrary/src/BVProblemLibrary.jl b/lib/BVProblemLibrary/src/BVProblemLibrary.jl index 09067f5..2070818 100644 --- a/lib/BVProblemLibrary/src/BVProblemLibrary.jl +++ b/lib/BVProblemLibrary/src/BVProblemLibrary.jl @@ -1,6 +1,8 @@ module BVProblemLibrary -using DiffEqBase, Markdown, SpecialFunctions +using DiffEqBase: DiffEqBase, BVPFunction, BVProblem +using Markdown: Markdown +using SpecialFunctions: SpecialFunctions, erf include("linear.jl") include("nonlinear.jl") diff --git a/lib/BVProblemLibrary/test/qa/Project.toml b/lib/BVProblemLibrary/test/qa/Project.toml index 3b6a6c9..0303815 100644 --- a/lib/BVProblemLibrary/test/qa/Project.toml +++ b/lib/BVProblemLibrary/test/qa/Project.toml @@ -1,6 +1,7 @@ [deps] Aqua = "4c88cf16-eb10-579e-8560-4a9242c79595" BVProblemLibrary = "ded0fc24-dfea-4565-b1d9-79c027d14d84" +SciMLTesting = "09d9d899-5365-40a9-917a-5f67fddea283" Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40" [sources] @@ -9,5 +10,6 @@ BVProblemLibrary = {path = "../.."} [compat] Aqua = "0.8" BVProblemLibrary = "0.1" +SciMLTesting = "1.6" Test = "1.10" julia = "1.10" diff --git a/lib/BVProblemLibrary/test/qa/qa.jl b/lib/BVProblemLibrary/test/qa/qa.jl index 36a36a3..d0cdafb 100644 --- a/lib/BVProblemLibrary/test/qa/qa.jl +++ b/lib/BVProblemLibrary/test/qa/qa.jl @@ -1,6 +1,3 @@ -using BVProblemLibrary -using Aqua +using SciMLTesting, BVProblemLibrary, Test -@testset "Aqua" begin - Aqua.test_all(BVProblemLibrary; ambiguities = false) -end +run_qa(BVProblemLibrary; explicit_imports = true, aqua_kwargs = (; ambiguities = false)) diff --git a/lib/DAEProblemLibrary/src/DAEProblemLibrary.jl b/lib/DAEProblemLibrary/src/DAEProblemLibrary.jl index 383121f..5d6644b 100644 --- a/lib/DAEProblemLibrary/src/DAEProblemLibrary.jl +++ b/lib/DAEProblemLibrary/src/DAEProblemLibrary.jl @@ -1,6 +1,7 @@ module DAEProblemLibrary -using DiffEqBase, Markdown +using DiffEqBase: DiffEqBase, DAEProblem +using Markdown: Markdown, @doc_str #DAE Example Problems export prob_dae_resrob, prob_dae_transamp diff --git a/lib/DAEProblemLibrary/test/qa/Project.toml b/lib/DAEProblemLibrary/test/qa/Project.toml index 5883ba1..47f8873 100644 --- a/lib/DAEProblemLibrary/test/qa/Project.toml +++ b/lib/DAEProblemLibrary/test/qa/Project.toml @@ -1,6 +1,7 @@ [deps] Aqua = "4c88cf16-eb10-579e-8560-4a9242c79595" DAEProblemLibrary = "dfb8ca35-80a1-48ba-a605-84916a45b4f8" +SciMLTesting = "09d9d899-5365-40a9-917a-5f67fddea283" Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40" [sources] @@ -9,5 +10,6 @@ DAEProblemLibrary = {path = "../.."} [compat] Aqua = "0.8" DAEProblemLibrary = "0.1" +SciMLTesting = "1.6" Test = "1.10" julia = "1.10" diff --git a/lib/DAEProblemLibrary/test/qa/qa.jl b/lib/DAEProblemLibrary/test/qa/qa.jl index 0bb41bc..19f7b6c 100644 --- a/lib/DAEProblemLibrary/test/qa/qa.jl +++ b/lib/DAEProblemLibrary/test/qa/qa.jl @@ -1,6 +1,3 @@ -using DAEProblemLibrary -using Aqua +using SciMLTesting, DAEProblemLibrary, Test -@testset "Aqua" begin - Aqua.test_all(DAEProblemLibrary; ambiguities = false) -end +run_qa(DAEProblemLibrary; explicit_imports = true, aqua_kwargs = (; ambiguities = false)) diff --git a/lib/DDEProblemLibrary/src/DDEProblemLibrary.jl b/lib/DDEProblemLibrary/src/DDEProblemLibrary.jl index 3284271..efc1a67 100644 --- a/lib/DDEProblemLibrary/src/DDEProblemLibrary.jl +++ b/lib/DDEProblemLibrary/src/DDEProblemLibrary.jl @@ -1,6 +1,6 @@ module DDEProblemLibrary -using DiffEqBase +using DiffEqBase: DiffEqBase, DDEFunction, DDEProblem, remake # DDE Example Problems # examples with constant delays diff --git a/lib/DDEProblemLibrary/test/qa/Project.toml b/lib/DDEProblemLibrary/test/qa/Project.toml index 233d74a..2806b3c 100644 --- a/lib/DDEProblemLibrary/test/qa/Project.toml +++ b/lib/DDEProblemLibrary/test/qa/Project.toml @@ -1,6 +1,7 @@ [deps] Aqua = "4c88cf16-eb10-579e-8560-4a9242c79595" DDEProblemLibrary = "f42792ee-6ffc-4e2a-ae83-8ee2f22de800" +SciMLTesting = "09d9d899-5365-40a9-917a-5f67fddea283" Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40" [sources] @@ -9,5 +10,6 @@ DDEProblemLibrary = {path = "../.."} [compat] Aqua = "0.8" DDEProblemLibrary = "0.1" +SciMLTesting = "1.6" Test = "1.10" julia = "1.10" diff --git a/lib/DDEProblemLibrary/test/qa/qa.jl b/lib/DDEProblemLibrary/test/qa/qa.jl index ce167c0..10c3fbb 100644 --- a/lib/DDEProblemLibrary/test/qa/qa.jl +++ b/lib/DDEProblemLibrary/test/qa/qa.jl @@ -1,6 +1,3 @@ -using DDEProblemLibrary -using Aqua +using SciMLTesting, DDEProblemLibrary, Test -@testset "Aqua" begin - Aqua.test_all(DDEProblemLibrary; ambiguities = false) -end +run_qa(DDEProblemLibrary; explicit_imports = true, aqua_kwargs = (; ambiguities = false)) diff --git a/lib/JumpProblemLibrary/src/JumpProblemLibrary.jl b/lib/JumpProblemLibrary/src/JumpProblemLibrary.jl index f5700b5..9263e67 100644 --- a/lib/JumpProblemLibrary/src/JumpProblemLibrary.jl +++ b/lib/JumpProblemLibrary/src/JumpProblemLibrary.jl @@ -1,6 +1,8 @@ module JumpProblemLibrary -using Catalyst +using Catalyst: Catalyst, @named, @parameters, @reaction_network, @species, Num, + Reaction, ReactionSystem, complete, default_t, hill, make_empty_network, + species, unknowns import RuntimeGeneratedFunctions RuntimeGeneratedFunctions.init(@__MODULE__) diff --git a/lib/JumpProblemLibrary/test/qa/Project.toml b/lib/JumpProblemLibrary/test/qa/Project.toml index 4d15c00..84983a9 100644 --- a/lib/JumpProblemLibrary/test/qa/Project.toml +++ b/lib/JumpProblemLibrary/test/qa/Project.toml @@ -1,6 +1,7 @@ [deps] Aqua = "4c88cf16-eb10-579e-8560-4a9242c79595" JumpProblemLibrary = "faf0f6d7-8cee-47cb-b27c-1eb80cef534e" +SciMLTesting = "09d9d899-5365-40a9-917a-5f67fddea283" Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40" [sources] @@ -9,5 +10,6 @@ JumpProblemLibrary = {path = "../.."} [compat] Aqua = "0.8" JumpProblemLibrary = "2" +SciMLTesting = "1.6" Test = "1.10" julia = "1.10" diff --git a/lib/JumpProblemLibrary/test/qa/qa.jl b/lib/JumpProblemLibrary/test/qa/qa.jl index 3d703ee..377d194 100644 --- a/lib/JumpProblemLibrary/test/qa/qa.jl +++ b/lib/JumpProblemLibrary/test/qa/qa.jl @@ -1,6 +1,10 @@ -using JumpProblemLibrary -using Aqua +using SciMLTesting, JumpProblemLibrary, Test -@testset "Aqua" begin - Aqua.test_all(JumpProblemLibrary; ambiguities = false, persistent_tasks = false) -end +# `RuntimeGeneratedFunctions.init(@__MODULE__)` qualified-accesses the non-public +# `RuntimeGeneratedFunctions.init` (the package's documented init boilerplate), so it +# is ignored for the public-API qualified-access check. +run_qa( + JumpProblemLibrary; explicit_imports = true, + aqua_kwargs = (; ambiguities = false, persistent_tasks = false), + ei_kwargs = (; all_qualified_accesses_are_public = (; ignore = (:init,))) +) diff --git a/lib/NonlinearProblemLibrary/src/NonlinearProblemLibrary.jl b/lib/NonlinearProblemLibrary/src/NonlinearProblemLibrary.jl index ae5c52f..397aa7d 100644 --- a/lib/NonlinearProblemLibrary/src/NonlinearProblemLibrary.jl +++ b/lib/NonlinearProblemLibrary/src/NonlinearProblemLibrary.jl @@ -1,6 +1,7 @@ module NonlinearProblemLibrary -using SciMLBase, LinearAlgebra +using SciMLBase: SciMLBase, NonlinearProblem +using LinearAlgebra: LinearAlgebra # Implementation of the 23 test problems in # [test_nonlin](https://people.sc.fsu.edu/~jburkardt/m_src/test_nonlin/test_nonlin.html) diff --git a/lib/NonlinearProblemLibrary/test/qa/Project.toml b/lib/NonlinearProblemLibrary/test/qa/Project.toml index 5ee5061..8b49b35 100644 --- a/lib/NonlinearProblemLibrary/test/qa/Project.toml +++ b/lib/NonlinearProblemLibrary/test/qa/Project.toml @@ -2,6 +2,7 @@ AllocCheck = "9b6a8646-10ed-4001-bbdc-1d2f46dfbb1a" Aqua = "4c88cf16-eb10-579e-8560-4a9242c79595" NonlinearProblemLibrary = "b7050fa9-e91f-4b37-bcee-a89a063da141" +SciMLTesting = "09d9d899-5365-40a9-917a-5f67fddea283" Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40" [sources] @@ -11,5 +12,6 @@ NonlinearProblemLibrary = {path = "../.."} AllocCheck = "0.2" Aqua = "0.8" NonlinearProblemLibrary = "0.1" +SciMLTesting = "1.6" Test = "1" julia = "1.10" diff --git a/lib/NonlinearProblemLibrary/test/qa/qa.jl b/lib/NonlinearProblemLibrary/test/qa/qa.jl index 5274826..5c4dc61 100644 --- a/lib/NonlinearProblemLibrary/test/qa/qa.jl +++ b/lib/NonlinearProblemLibrary/test/qa/qa.jl @@ -1,6 +1,3 @@ -using NonlinearProblemLibrary -using Aqua +using SciMLTesting, NonlinearProblemLibrary, Test -@testset "Aqua" begin - Aqua.test_all(NonlinearProblemLibrary; ambiguities = false) -end +run_qa(NonlinearProblemLibrary; explicit_imports = true, aqua_kwargs = (; ambiguities = false)) diff --git a/lib/ODEProblemLibrary/src/ODEProblemLibrary.jl b/lib/ODEProblemLibrary/src/ODEProblemLibrary.jl index 243c4d0..bf022ee 100644 --- a/lib/ODEProblemLibrary/src/ODEProblemLibrary.jl +++ b/lib/ODEProblemLibrary/src/ODEProblemLibrary.jl @@ -1,9 +1,9 @@ module ODEProblemLibrary -using DiffEqBase -using LinearAlgebra -using Markdown -using Random +using DiffEqBase: DiffEqBase, ODEFunction, ODEProblem +using LinearAlgebra: LinearAlgebra, Diagonal, I, SymTridiagonal, diagind, ldiv!, mul!, rmul! +using Markdown: Markdown, @doc_str +using Random: Random Random.seed!(100) diff --git a/lib/ODEProblemLibrary/test/qa/Project.toml b/lib/ODEProblemLibrary/test/qa/Project.toml index d52ff29..ff7b19a 100644 --- a/lib/ODEProblemLibrary/test/qa/Project.toml +++ b/lib/ODEProblemLibrary/test/qa/Project.toml @@ -1,6 +1,7 @@ [deps] Aqua = "4c88cf16-eb10-579e-8560-4a9242c79595" ODEProblemLibrary = "fdc4e326-1af4-4b90-96e7-779fcce2daa5" +SciMLTesting = "09d9d899-5365-40a9-917a-5f67fddea283" Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40" [sources] @@ -9,5 +10,6 @@ ODEProblemLibrary = {path = "../.."} [compat] Aqua = "0.8" ODEProblemLibrary = "1" +SciMLTesting = "1.6" Test = "1.10" julia = "1.10" diff --git a/lib/ODEProblemLibrary/test/qa/qa.jl b/lib/ODEProblemLibrary/test/qa/qa.jl index cdfb145..f5b5bb5 100644 --- a/lib/ODEProblemLibrary/test/qa/qa.jl +++ b/lib/ODEProblemLibrary/test/qa/qa.jl @@ -1,6 +1,3 @@ -using ODEProblemLibrary -using Aqua +using SciMLTesting, ODEProblemLibrary, Test -@testset "Aqua" begin - Aqua.test_all(ODEProblemLibrary; ambiguities = false) -end +run_qa(ODEProblemLibrary; explicit_imports = true, aqua_kwargs = (; ambiguities = false)) diff --git a/lib/SDEProblemLibrary/src/SDEProblemLibrary.jl b/lib/SDEProblemLibrary/src/SDEProblemLibrary.jl index 4b577d5..b463129 100644 --- a/lib/SDEProblemLibrary/src/SDEProblemLibrary.jl +++ b/lib/SDEProblemLibrary/src/SDEProblemLibrary.jl @@ -1,6 +1,7 @@ module SDEProblemLibrary -using DiffEqBase, Markdown +using DiffEqBase: DiffEqBase, SDEFunction, SDEProblem +using Markdown: Markdown, @doc_str import RuntimeGeneratedFunctions RuntimeGeneratedFunctions.init(@__MODULE__) diff --git a/lib/SDEProblemLibrary/test/qa/Project.toml b/lib/SDEProblemLibrary/test/qa/Project.toml index 2cdb197..90732b1 100644 --- a/lib/SDEProblemLibrary/test/qa/Project.toml +++ b/lib/SDEProblemLibrary/test/qa/Project.toml @@ -1,6 +1,7 @@ [deps] Aqua = "4c88cf16-eb10-579e-8560-4a9242c79595" SDEProblemLibrary = "c72e72a9-a271-4b2b-8966-303ed956772e" +SciMLTesting = "09d9d899-5365-40a9-917a-5f67fddea283" Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40" [sources] @@ -9,5 +10,6 @@ SDEProblemLibrary = {path = "../.."} [compat] Aqua = "0.8" SDEProblemLibrary = "1" +SciMLTesting = "1.6" Test = "1.10" julia = "1.10" diff --git a/lib/SDEProblemLibrary/test/qa/qa.jl b/lib/SDEProblemLibrary/test/qa/qa.jl index faf5dfb..396ed6d 100644 --- a/lib/SDEProblemLibrary/test/qa/qa.jl +++ b/lib/SDEProblemLibrary/test/qa/qa.jl @@ -1,6 +1,10 @@ -using SDEProblemLibrary -using Aqua +using SciMLTesting, SDEProblemLibrary, Test -@testset "Aqua" begin - Aqua.test_all(SDEProblemLibrary; ambiguities = false, persistent_tasks = false) -end +# `RuntimeGeneratedFunctions.init(@__MODULE__)` qualified-accesses the non-public +# `RuntimeGeneratedFunctions.init` (the package's documented init boilerplate), so it +# is ignored for the public-API qualified-access check. +run_qa( + SDEProblemLibrary; explicit_imports = true, + aqua_kwargs = (; ambiguities = false, persistent_tasks = false), + ei_kwargs = (; all_qualified_accesses_are_public = (; ignore = (:init,))) +) diff --git a/test/qa/Project.toml b/test/qa/Project.toml index 7037fbf..78e8c4e 100644 --- a/test/qa/Project.toml +++ b/test/qa/Project.toml @@ -1,6 +1,5 @@ [deps] DiffEqProblemLibrary = "a077e3f3-b75c-5d7f-a0c6-6bc4c8ec64a9" -ExplicitImports = "7d51a73a-1435-4ff3-83d9-f097790105c7" SafeTestsets = "1bc83da4-3b8d-516f-aca4-4fe02f6d838f" SciMLTesting = "09d9d899-5365-40a9-917a-5f67fddea283" Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40" @@ -10,8 +9,7 @@ DiffEqProblemLibrary = {path = "../.."} [compat] DiffEqProblemLibrary = "5" -ExplicitImports = "1" SafeTestsets = "0.0.1, 0.1" -SciMLTesting = "1" +SciMLTesting = "1.6" Test = "1.10" julia = "1.10" diff --git a/test/qa/qa.jl b/test/qa/qa.jl index 8c77d8f..454dc48 100644 --- a/test/qa/qa.jl +++ b/test/qa/qa.jl @@ -1,11 +1,6 @@ -# The root umbrella package's own test: it re-exports each sublibrary, -# so the test is that the whole thing builds with no implicit or stale -# explicit imports. -using DiffEqProblemLibrary -using ExplicitImports -using Test +using SciMLTesting, DiffEqProblemLibrary, Test -@testset "ExplicitImports" begin - @test check_no_implicit_imports(DiffEqProblemLibrary) === nothing - @test check_no_stale_explicit_imports(DiffEqProblemLibrary) === nothing -end +# The root umbrella package re-exports each sublibrary; it owns no methods of its own, +# so the reported method ambiguities all come from the imported dependency tree +# (DiffEqBase / SciMLBase / Catalyst), matching the `ambiguities = false` each sublib uses. +run_qa(DiffEqProblemLibrary; explicit_imports = true, aqua_kwargs = (; ambiguities = false))