QA: run_qa v1.6 form + ExplicitImports (root + sublibs)#206
Draft
ChrisRackauckas-Claude wants to merge 1 commit into
Draft
QA: run_qa v1.6 form + ExplicitImports (root + sublibs)#206ChrisRackauckas-Claude wants to merge 1 commit into
ChrisRackauckas-Claude wants to merge 1 commit into
Conversation
Convert the root QA env and all 7 lib/<Sub> sublibrary QA envs to the SciMLTesting 1.6 run_qa form with ExplicitImports enabled. Per QA env: rewrite qa.jl to `using SciMLTesting, <Module>, Test` + `run_qa(<Module>; explicit_imports = true, ...)`; bump the env's SciMLTesting [compat] to "1.6"; keep Aqua where ambiguities is disabled. ExplicitImports stays a transitive dep of SciMLTesting (not listed). ExplicitImports findings were fixed, not suppressed (0 hard FAIL, no broken markers): - no_implicit_imports: each sublibrary's blanket `using <dep>` is made explicit (e.g. `using DiffEqBase: DiffEqBase, BVProblem, ...`, `using Catalyst: Catalyst, @reaction_network, ...`), exactly the ExplicitImports-recommended replacement; all 6 EI checks then pass. - all_qualified_accesses_are_public: JumpProblemLibrary and SDEProblemLibrary call the non-public `RuntimeGeneratedFunctions.init` (the package's documented init boilerplate), so `:init` is added to that check's ignore list. Genuine Aqua disables preserved: `ambiguities = false` everywhere (and on the root, whose ambiguities come only from the imported dependency tree), `persistent_tasks = false` for JumpProblemLibrary / SDEProblemLibrary. Root package Project.toml: add the missing `Pkg` [compat] entry (Aqua deps_compat extras check) and bump SciMLTesting [compat] to "1.6". Monorepo [sources]/develop wiring is unchanged. Verified on Julia 1.11 against released SciMLTesting 1.6.0: root QA 16/16 pass; each sublibrary's 6 ExplicitImports checks pass. 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.
This PR should be ignored until reviewed by @ChrisRackauckas.
Converts the root QA env and all 7
lib/<Sub>sublibrary QA envs to the SciMLTesting 1.6run_qaform withexplicit_imports = true, in one branch.Per QA env
qa.jl→using SciMLTesting, <Module>, Test+run_qa(<Module>; explicit_imports = true, ...).test/qa/Project.toml: SciMLTesting[compat]bumped to"1.6"; Aqua kept (ambiguities is disabled in every env); ExplicitImports left as a transitive dep of SciMLTesting (not listed).[sources]/ develop wiring (sublib + umbrella-root pins,activate_group_env/develop_sources!<1.11backport) is preserved exactly.ExplicitImports: fixed, not suppressed (0 hard FAIL, no broken markers)
no_implicit_imports— each sublibrary's blanketusing <dep>is replaced with the explicit name list ExplicitImports recommends, e.g.using DiffEqBase: DiffEqBase, BVPFunction, BVProblem,using SpecialFunctions: SpecialFunctions, erfusing LinearAlgebra: LinearAlgebra, Diagonal, I, SymTridiagonal, diagind, ldiv!, mul!, rmul!, etc.using Catalyst: Catalyst, @reaction_network, @species, @parameters, @named, Num, Reaction, ReactionSystem, complete, default_t, hill, make_empty_network, species, unknownsall_qualified_accesses_are_public—JumpProblemLibraryandSDEProblemLibrarycall the non-publicRuntimeGeneratedFunctions.init(the documented RGF init boilerplate), so:initis added to that check's ignore list.Genuine Aqua disables preserved
ambiguities = falsein every env (including the root — its only ambiguities come from the imported dependency tree, since the umbrella owns no methods).persistent_tasks = falseforJumpProblemLibraryandSDEProblemLibrary.Root package
Project.tomlPkg[compat]entry (Aquadeps_compatextras check flagged it once Aqua started running on the root).[compat]to"1.6".Sublibs converted
BVProblemLibrary, DAEProblemLibrary, DDEProblemLibrary, JumpProblemLibrary, NonlinearProblemLibrary, ODEProblemLibrary, SDEProblemLibrary (7) + root.
Verification (Julia 1.11, released SciMLTesting 1.6.0)
Quality Assurance | 16 pass / 16 total(Aqua incl. persistent_tasks + deps_compat after the Pkg fix; ExplicitImports 6/6).initignore). Aqua per sublib unchanged from the prior hand-rolled call.🤖 Generated with Claude Code