QA: Aqua/JET findings marked @test_broken pending fix
Nobody has claimed this yet.
- Dominant language
- Julia
- Stars
- 26
- Forks
- 10
- Avg merge
- 42m
- Merged PRs (30d)
- 5
Description
As part of the grouped-tests CI conversion (branch grouped-tests-ci), the QA test group runs Aqua + JET. Two genuine Aqua findings and one genuine JET finding currently fail the QA group, so they have been wrapped as @test_broken in test/qa/qa.jl to keep the grouped-tests QA group green and allow the PR to merge. They should be fixed and un-broken.
Findings (Julia 1.11, Aqua 0.8.16, JET 0.9.20):
-
Aqua.test_alldeps_compat (extras) —MathMLdoes not declare a[compat]entry for the following[extras]:Pkg [44cfe95a-1eb2-52ea-b672-e2afdf69b78f]. Fix: add a[compat]bound forPkg(e.g.Pkg = "1"), or dropPkgfrom[extras]/[targets]if it is no longer needed by the test suite. -
Aqua.test_allpiracies — possible type piracy: three methods defined onEzXML.NodeinMathML:children(n::EzXML.Node)@src/utils.jl:77printnode(io::IO, node::EzXML.Node)@src/utils.jl:78nodetype(::EzXML.Node)@src/utils.jl:79
children/nodetype/printnodeare owned byAbstractTrees, and the only argument types are owned byEzXML— neither is owned byMathML, hence piracy. Fix options: move theseAbstractTreesinterface methods upstream intoEzXML(or an EzXML-AbstractTrees glue package), or wrapEzXML.Nodein aMathML-owned wrapper type before defining the interface.
-
JET.test_package(report_package) — 1 possible error:no matching method found mathml_to_nums(::EzXML.Node), called frommathml_to_nums(xml::EzXML.Document)@src/utils.jl:20(return mathml_to_nums(doc_root)wheredoc_root::EzXML.Node). The docstring formathml_to_numsclaims anEzXML.Nodemethod exists, but no such method is defined. Fix: definemathml_to_nums(::EzXML.Node)(the function theDocument/AbstractStringmethods are supposed to dispatch into).
The remaining Aqua sub-checks (ambiguities, unbound type params, undefined exports, project-extras comparison, stale deps, julia/deps/weakdeps compat, persistent tasks) pass; only the two Aqua checks and the one JET check above are wrapped broken.
Ignore until reviewed by @ChrisRackauckas.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with test/qa/qa.jl and inspect the @test_broken wrappers around the Aqua and JET checks. Read src/utils.jl at lines 20 and 77-79, then run the QA group with Julia 1.11, Aqua 0.8.16, and JET 0.9.20; done means the three findings are fixed, the wrappers are removed, and the QA group remains green.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- julia
- Domain
- testing-qa
- Issue type
- Bug
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100