Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion Project.toml
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@ ModelingToolkit = "9.7.1, 10, 11.27"
NonlinearSolve = "4.12"
OptimizationOptimJL = "0.3, 0.4"
OrdinaryDiffEq = "6.80.0, 7"
OrdinaryDiffEqCore = "4.4"
OrdinaryDiffEqSDIRK = "1.7, 2"
Random = "1"
SafeTestsets = "0.1"
Expand All @@ -36,9 +37,10 @@ Lux = "b2108857-7c20-44ae-9111-449ecde12c47"
MethodOfLines = "94925ecb-adb7-4558-8ed8-f975c56a0bf4"
NonlinearSolve = "8913a72c-1f9b-4ce2-8d82-65094dcecaec"
OptimizationOptimJL = "36348300-93cb-4f02-beb5-3c3902f8871e"
OrdinaryDiffEqCore = "bbf590c4-e513-4bbe-9b18-05decba2e5d8"
SafeTestsets = "1bc83da4-3b8d-516f-aca4-4fe02f6d838f"
SciMLTesting = "09d9d899-5365-40a9-917a-5f67fddea283"
Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40"

[targets]
test = ["Test", "MethodOfLines", "Lux", "NonlinearSolve", "OptimizationOptimJL", "SafeTestsets", "SciMLTesting"]
test = ["Test", "MethodOfLines", "Lux", "NonlinearSolve", "OptimizationOptimJL", "OrdinaryDiffEqCore", "SafeTestsets", "SciMLTesting"]
2 changes: 1 addition & 1 deletion test/qa/Project.toml
Original file line number Diff line number Diff line change
Expand Up @@ -11,5 +11,5 @@ PDESystemLibrary = {path = "../.."}

[compat]
SafeTestsets = "0.1, 1"
SciMLTesting = "1"
SciMLTesting = "1.6"
julia = "1.10"
23 changes: 20 additions & 3 deletions test/qa/qa.jl
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
using PDESystemLibrary, Aqua, JET
using PDESystemLibrary, Test
using SciMLTesting
using JET

# JET runs in `:typo` mode (the SciMLTesting `run_qa` default). The library's
# problem builders construct symbolic expressions from `@variables`/`@parameters`;
Expand All @@ -8,7 +9,23 @@ using SciMLTesting
# analysis emits spurious `no matching method found` union-split reports for `+/-/*/cos/sin`
# on scalar variables that are always `Num` at runtime. Typo mode still catches real
# undefined-name errors without these dependency-inference false positives.
#
# ExplicitImports findings:
# * no_implicit_imports: tracked-broken. The module `using`s the symbolic/solver
# umbrellas (ModelingToolkit, DomainSets, OrdinaryDiffEq, Interpolations) that
# re-export from Symbolics/ModelingToolkitBase/IntervalSets/SciMLBase/CommonSolve,
# so a `using X: name` rewrite would pin owner packages that reshuffle names across
# releases. Two entries (`limit`, `domain`) are also local definitions EI flags
# conservatively, so a blanket explicit-import rewrite would be wrong. Tracked in
# https://github.com/SciML/PDESystemLibrary.jl/issues/63 ; kept broken
# (auto-flags Unexpected Pass once resolved).
# * all_qualified_accesses_are_public: `Random.seed!` is the canonical seeding API
# but the Random stdlib does not declare it `public`; ignored.
run_qa(
PDESystemLibrary; Aqua = Aqua, JET = JET, jet = true,
jet_kwargs = (; target_modules = (PDESystemLibrary,), mode = :typo)
PDESystemLibrary; explicit_imports = true,
jet_kwargs = (; target_modules = (PDESystemLibrary,), mode = :typo),
ei_kwargs = (;
all_qualified_accesses_are_public = (; ignore = (:seed!,)), # Random.seed! (Random stdlib, not declared public)
),
ei_broken = (:no_implicit_imports,)
)
Loading