Skip to content

Package maintenance: Aqua, ExplicitImports, docstrings, README#35

Merged
kdw503 merged 11 commits into
masterfrom
dwk/mng
May 22, 2026
Merged

Package maintenance: Aqua, ExplicitImports, docstrings, README#35
kdw503 merged 11 commits into
masterfrom
dwk/mng

Conversation

@kdw503
Copy link
Copy Markdown
Member

@kdw503 kdw503 commented May 22, 2026

Summary

  • Add Aqua.jl quality checks to the test suite
  • Add ExplicitImports.jl with explicit using statements in src/ and test coverage
  • Remove mutable from AperturesMismatch (no fields are reassigned after construction)
  • Fix CUDA test failures (scalar GPU indexing; pass [algorithm] not algorithms to driver)
  • Add and improve docstrings on all exported symbols
  • Improve README: CI/Codecov/version badges, installation instructions (HolyLabRegistry), usage examples

Test plan

  • CI passes on min and 1 Julia versions
  • Codecov reports coverage

🤖 Generated with Claude Code

kdw503 and others added 9 commits May 21, 2026 14:44
- Fix unbound type parameter in AperturesMismatch constructor: replace
  nodes::NTuple{N,K} (flagged by Test.detect_unbound_args for variadic
  homogeneous tuples with variable N) with NTuple{N}, extracting K via
  eltype(nodes) inside the body
- Move RegisterDriver and Aqua from [deps] to [extras]/[targets] — both
  are test-only dependencies
- Add SharedArrays compat bound (stdlib dep was missing an entry)
- Wire Aqua.test_all into the test suite, suppressing the stale-deps
  check for dynamically-loaded CUDA/RegisterMismatchCuda and the
  piracy check for the intentional load_mm_package extension
- Add Aqua badge to README

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
… construction

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
The CUDA test block created a single `algorithm` (with dev=0) but then
passed the non-CUDA `algorithms` array to `monitor` and `driver`, so the
CUDA registration path was never exercised even on a GPU machine.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
GPUArraysCore defaults to ScalarDisallowed outside interactive sessions, so
RegisterMismatchCuda's scalar indexing caused Pkg.test() to hard-error.
Wrap the driver call with CUDA.@allowscalar to make the intent explicit;
also import CUDA in runtests.jl so the macro resolves.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Add module docstring summarizing package purpose and entry points
- Rewrite AperturesMismatch docstring: imperative mood, indented
  signature block, all keyword args documented, return type stated,
  monitored fields explained, broken Julia 0.6-era example replaced
  with working code
- Add worker docstring: return annotation, tindex semantics, per-field
  return value descriptions

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…ples

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…A fixes

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…lause

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@codecov
Copy link
Copy Markdown

codecov Bot commented May 22, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 65.93%. Comparing base (9d92b59) to head (c086c9f).

Additional details and impacted files
@@           Coverage Diff           @@
##           master      #35   +/-   ##
=======================================
  Coverage   65.93%   65.93%           
=======================================
  Files           1        1           
  Lines          91       91           
=======================================
  Hits           60       60           
  Misses         31       31           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

kdw503 and others added 2 commits May 22, 2026 12:01
… struct

K (the element type of the nodes tuple) only annotated the nodes field and
drove no dispatch. The auto-generated inner constructor with K in the where
clause was flagged by Aqua as having an unbound type parameter.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@kdw503 kdw503 merged commit c20970f into master May 22, 2026
4 checks passed
@kdw503 kdw503 deleted the dwk/mng branch May 22, 2026 17:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant