QA: run_qa v1.6 form + ExplicitImports#231
Merged
ChrisRackauckas merged 1 commit intoJun 27, 2026
Merged
Conversation
Consolidate the hand-rolled test/qa/{aqua,jet,explicitimports}_tests.jl into a
single test/qa/qa.jl on the SciMLTesting 1.6 run_qa form, with ExplicitImports
enabled (all 6 checks).
ExplicitImports findings:
- all_qualified_accesses_via_owners + all_qualified_accesses_are_public both
flagged Latexify.LaTeXString (owner is LaTeXStrings, re-exported by Latexify).
FIXED in src: access it as LaTeXStrings.LaTeXString (LaTeXStrings is already a
direct dep; LaTeXString is exported/public there). Adds the LaTeXStrings module
to the existing `using LaTeXStrings: latexstring` import for the qualified access.
- all_qualified_accesses_are_public still flags 5 Base internals with no public
equivalent, accessed qualified: Base.IteratorSize/HasLength/SizeUnknown (the
iterator-trait interface), Base.Iterators.filter, Base.Threads.resize_nthreads!.
Ignored via ei_kwargs.
- The other 4 checks pass clean.
Aqua kwargs preserved verbatim (ambiguities exclude getindex, stale_deps ignore
Requires). JET kept as a hard check: run_qa's JET.test_package(mode=:typo,
target_modules=(RootedTrees,)) passes on both LTS and 1.12 (report_package full
mode surfaces 3 union-split/extension-stub artifacts on 1.12 only, which mode=:typo
correctly does not treat as failures).
Deps: drop ExplicitImports (transitive via SciMLTesting), bump SciMLTesting compat
to "1.6", keep Aqua (ambiguities child-proc needs it direct) and JET.
Verified locally vs released SciMLTesting 1.6.0: QA group 18/18 pass, 0 fail/error/
broken, on Julia 1.10 (lts) and 1.12.
Co-Authored-By: Chris Rackauckas <accounts@chrisrackauckas.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Please ignore until reviewed by @ChrisRackauckas.
Brings this repo's QA group onto the SciMLTesting 1.6
run_qaform with ExplicitImports enabled (all 6 checks).What changed
test/qa/{aqua,jet,explicitimports}_tests.jlinto a singletest/qa/qa.jlusingrun_qa(RootedTrees; explicit_imports = true, ...).test/qa/Project.toml: droppedExplicitImports(transitive via SciMLTesting), bumpedSciMLTestingcompat to"1.6". KeptAquadirect (theambiguitiessub-check's child process needs Aqua as a direct dep) andJET.ExplicitImports findings
The hand-rolled
explicitimports_tests.jlonly ran 2 of the 6 checks (no_implicit_imports,no_stale_explicit_imports). Enabling the full set surfaced:all_qualified_accesses_via_owners+all_qualified_accesses_are_publicflaggedLatexify.LaTeXStringinsrc/latexify.jl:90—LaTeXString's owner isLaTeXStrings(re-exported by Latexify). FIXED: access it asLaTeXStrings.LaTeXString(LaTeXStrings is already a direct dep;LaTeXStringis exported/public there). Added theLaTeXStringsmodule binding to the existingusing LaTeXStrings: latexstringimport. Verified the@latexrecipepath still returns aLaTeXStrings.LaTeXStringwith identical output.all_qualified_accesses_are_publicstill flags 5 Base internals with no public equivalent, accessed qualified —Base.IteratorSize/HasLength/SizeUnknown(the canonical iterator-trait interface),Base.Iterators.filter,Base.Threads.resize_nthreads!. These are ignored viaei_kwargs(documented inline).no_implicit_imports,no_stale_explicit_imports,all_explicit_imports_via_owners,all_explicit_imports_are_public) pass clean — no stale imports, noei_brokenneeded.Aqua / JET
ambiguities = (; exclude = [getindex]),stale_deps = (; ignore = [:Requires]).jet_broken).run_qa's defaultJET.test_package(mode = :typo, target_modules = (RootedTrees,))passes on both LTS and 1.12.report_package(full mode) surfaces 3 union-split/extension-stub artifacts on 1.12 only;mode = :typocorrectly does not treat those as failures, matching the intent of the old curated@test_optset.Verification (vs released SciMLTesting 1.6.0, no dev-from-branch)
QA group via
GROUP=QAfolder-discovery (run_tests()):QA/qa.jl | 18 18— 0 fail / 0 error / 0 brokenQA/qa.jl | 18 18— 0 fail / 0 error / 0 broken🤖 Generated with Claude Code