SciML / SciML/SparseWithDenseRowColMatrices.jl

CI/infra hardening: coverage upload, non-blocking nightly, CompatHelper, and a tracked benchmark suite

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

Nobody has claimed this yet.

Dominant language
Julia
Stars
0
Forks
1
Avg merge
14m
Merged PRs (30d)
6

Description

WHAT: CI.yml tests 1.10/1.11/'1' across three OSes but never runs julia-processcoverage + codecov (no coverage signal), has no nightly/'pre' entry (valuable for a package leaning on LinearAlgebra/SparseArrays internals like getcolptr/rowvals), and there is TagBot.yml but no CompatHelper.yml (so [compat] bounds, including the new deps, won't auto-bump). Separately, the README quotes many specific perf numbers (QR ms tables, lstsq '191x at n=2000', '44x reusable solve') with no benchmark/ dir, no BenchmarkTools dep, and no PkgBenchmark/AirspeedVelocity — nothing guards the new QR/lstsq/refactor paths against regression, and the allocation drifts found in this review are evidence the numbers have already drifted. WHY IT MATTERS: No regression safety net or coverage signal on the newest, most fragile surface. FIX: Add coverage upload to CI.yml, a non-blocking nightly matrix entry (fail-fast:false + continue-on-error), a CompatHelper.yml, and a benchmark/benchmarks.jl (BenchmarkTools SUITE) covering Woodbury/augmented/QR factor-solve-refactor, update_lowrank!, lstsq structured-vs-dense, and the cached-lstsq reuse path. EFFORT: M.


Priority: low. Filed from an automated next-steps audit of the QR/lstsq work (see PR #6).

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 reading CI.yml and the existing TagBot.yml workflow, then inspect the repository layout before creating CompatHelper.yml and benchmark/benchmarks.jl. Done means CI reports coverage, includes a non-blocking nightly entry, CompatHelper is configured, and the benchmark suite covers the listed Woodbury, QR, update_lowrank!, lstsq, and cached-reuse paths.

Written by the indexing model from the issue text.

Assessment

Tech stack
github-actions, julia
Domain
ci-cd, performance, testing-qa
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.