SciML / SciML/MultiScaleArrays.jl

QA: Aqua/JET findings marked @test_broken pending fix

Open
#142 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Julia
Stars
77
Forks
17
Avg merge
8h 9m
Merged PRs (30d)
12

Description

The QA test group (Aqua + JET) surfaces the following genuine findings. To keep the QA CI group GREEN while these are tracked, the failing checks have been marked @test_broken (via Aqua.test_all(...; ambiguities=false, deps_compat=false) plus explicit @test_broken, and @test_broken false for the JET check) in test/qa/qa.jl. These should be fixed and the @test_broken markers removed (un-broken) once resolved.

Aqua findings

1. Method ambiguities (Aqua.test_ambiguities) — 5 ambiguities

Four in construct (src/shape_construction.jl) between the AbstractMultiScaleArrayLeaf args... method (line 42) and the AbstractMultiScaleArray tuple/vector + values methods (lines 55, 64, 72, 81):

construct(::Type{T}, args...) where T<:AbstractMultiScaleArrayLeaf  (shape_construction.jl:42)
  vs
construct(::Type{T}, nodes::Tuple{Vararg{AbstractMultiScaleArray}}, args...)        (shape_construction.jl:72)
construct(::Type{T}, nodes::Tuple{Vararg{AbstractMultiScaleArray}}, values, args...) (shape_construction.jl:81)
construct(::Type{T}, nodes::AbstractVector{<:AbstractMultiScaleArray}, values, args...) (shape_construction.jl:64)
construct(::Type{T}, nodes::AbstractVector{<:AbstractMultiScaleArray}, args...)      (shape_construction.jl:55)

One in ldiv! (src/math.jl:109) vs LinearAlgebra:

ldiv!(A::LU{T, Tridiagonal{T, V}}, B::AbstractVecOrMat) where {T, V}  (LinearAlgebra/src/lu.jl:684)
  vs
ldiv!(A::LU, b::AbstractMultiScaleArray)                              (src/math.jl:109)
2. Deps compat (Aqua.test_deps_compat)

[deps] entries lacking a [compat] entry:

LinearAlgebra [37e2e46d-f89d-539d-b4ee-838fcccc9c8e]
Random        [9a3f8284-a2c9-5f02-9a11-845980a1fd5c]

(These are stdlibs; they should get [compat] bounds, e.g. LinearAlgebra = "1.10", Random = "1".)

JET finding (JET.test_package)

remove_node_non_user_cache!(integrator::AbstractSDEIntegrator, idxs, node...) @ src/diffeq.jl:282
  remove_node_noise!(integrator::AbstractSDEIntegrator, node...) @ src/diffeq.jl:427
    `DiffEqBase.alg_needs_extra_process` is not defined: DiffEqBase.alg_needs_extra_process

DiffEqBase.alg_needs_extra_process is referenced in the SDE branch of remove_node_noise! (src/diffeq.jl:427) but is no longer exported/defined by the current DiffEqBase. The call site needs updating to the current API.


These are marked @test_broken so CI is green; they should be fixed and the markers removed. 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 by running the QA group in test/qa/qa.jl and inspect the reported dispatch cases in src/shape_construction.jl, src/math.jl, and src/diffeq.jl. Review the dependency entries and current DiffEqBase API, then verify that Aqua.test_ambiguities, Aqua.test_deps_compat, and JET.test_package pass with all @test_broken markers removed.

Written by the indexing model from the issue text.

Assessment

Tech stack
julia
Domain
devtools, testing-qa
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.