SciML / SciML/FiniteVolumeMethod1D.jl

QA: Aqua/JET findings marked @test_broken pending fix

Open
#83 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Julia
Stars
8
Forks
2
Avg merge
36m
Merged PRs (30d)
3

Description

While converting the test suite to the grouped-tests CI layout, the QA group surfaced two genuine findings (one Aqua, one JET) that are currently marked @test_broken so the QA group stays green and the grouped-tests PR can merge. They should be fixed and un-broken.

Finding 1 — Aqua deps_compat (check_deps)

Aqua.test_all "Compat bounds" -> deps check fails: the package depends on SparseArrays (2f01184e-e22b-5df5-ae63-d93ebab69eaf) but the main Project.toml [compat] section has no compat entry for it. Aqua error:

FiniteVolumeMethod1D deps: result is non-empty -> SparseArrays [2f01184e-...] has no compat entry

Fix: add a SparseArrays compat bound (e.g. SparseArrays = "1") to [compat].

Finding 2 — JET report_package (4 possible errors)

JET.test_package(FiniteVolumeMethod1D; target_defined_modules=true) reports 4 possible errors:

  • Dirichlet{F,P}(; f, p) kwarg constructor (src/boundary_conditions.jl:25): no matching method (::Type{Dirichlet{_A,_B}})(::Any, ::Any).
  • Neumann{F,P}(; f, p) kwarg constructor (src/boundary_conditions.jl:57): no matching method (::Type{Neumann{_A,_B}})(::Any, ::Any).
  • init(prob::FVMProblem, alg; kwargs...) (src/solve.jl:66): no matching method init(::ODEProblem{...}, ::Any).
  • init(prob::FVMProblem, alg; kwargs...) (src/solve.jl:66): no matching kwcall for that init.

All other Aqua sub-checks pass. To keep QA running every other check, the QA driver now calls Aqua.test_all(FiniteVolumeMethod1D; deps_compat=false) plus a @test_broken for the deps finding, and replaces the failing JET.test_package with a @test_broken placeholder. These should be fixed and un-broken.

Ignore until reviewed by @ChrisRackauckas.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the QA driver, Project.toml, src/boundary_conditions.jl, and src/solve.jl, then run the Aqua and JET checks described in the issue. Trace the two keyword constructors and init calls, and verify that the dependency compatibility check passes. Done means the reported findings are fixed, the @test_broken placeholders are removed, and the full QA group remains green.

Written by the indexing model from the issue text.

Assessment

Tech stack
julia
Domain
testing-qa
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Clearly specified
Newbie friendliness
68/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.