diff --git a/Project.toml b/Project.toml index 4ec399f..789ce57 100644 --- a/Project.toml +++ b/Project.toml @@ -12,7 +12,7 @@ OrdinaryDiffEq = "7" RecursiveArrayTools = "4" SafeTestsets = "0.0.1, 0.1" SciMLBase = "3" -SciMLTesting = "1" +SciMLTesting = "1.5" Test = "1" julia = "1.10" diff --git a/test/qa/Project.toml b/test/qa/Project.toml index 6f273e2..fb119f3 100644 --- a/test/qa/Project.toml +++ b/test/qa/Project.toml @@ -13,6 +13,6 @@ SciMLIterators = {path = "../.."} Aqua = "0.8" JET = "0.9,0.10,0.11" SafeTestsets = "0.0.1, 0.1" -SciMLTesting = "1" +SciMLTesting = "1.5" Test = "1" julia = "1.10" diff --git a/test/qa/qa.jl b/test/qa/qa.jl index 006bc97..fcde155 100644 --- a/test/qa/qa.jl +++ b/test/qa/qa.jl @@ -1,17 +1,32 @@ using SciMLIterators -using Aqua using JET +using SciMLTesting using Test -@testset "Aqua" begin - # piracies and deps_compat(extras) currently fail; run the rest and mark - # the two failing checks broken. Tracked in - # https://github.com/SciML/SciMLIterators.jl/issues/9 - Aqua.test_all(SciMLIterators; piracies = false, deps_compat = false) - @test_broken false # Aqua piracies: 2 `tuples` methods on SciMLBase types — tracked in https://github.com/SciML/SciMLIterators.jl/issues/9 - @test_broken false # Aqua deps_compat: no [compat] for Aqua/JET extras — tracked in https://github.com/SciML/SciMLIterators.jl/issues/9 -end +# Aqua: piracies currently fails (two `tuples` methods extend the +# RecursiveArrayTools function on SciMLBase-owned argument types). Tracked in +# https://github.com/SciML/SciMLIterators.jl/issues/9 +run_qa( + SciMLIterators; + aqua_kwargs = (; piracies = false), + explicit_imports = true, + # The remaining ExplicitImports violations are unavoidable non-public + # dependency names with no public equivalent: + # * SciMLBase's solution/iteration interface (`AbstractTimeseriesSolution`, + # `done`) is part of the surface this package iterates over, and neither + # name is exported or declared public by SciMLBase. + # * `Base.SizeUnknown` is the documented return value of the iterator trait + # this package overloads, a non-public Base internal with no public spelling. + ei_kwargs = (; + all_explicit_imports_are_public = (; + ignore = (:AbstractTimeseriesSolution, :done), + ), + all_qualified_accesses_are_public = (; + ignore = (:SizeUnknown,), + ), + ), +) -@testset "JET" begin - JET.test_package(SciMLIterators; target_defined_modules = true) +@testset "Aqua piracies (known issue #9)" begin + @test_broken false # Aqua piracies: 2 `tuples` methods on SciMLBase types — tracked in https://github.com/SciML/SciMLIterators.jl/issues/9 end