Skip to content

Add Aqua and a docstring on every exported name - #9

Merged
michakraus merged 4 commits into
mainfrom
reducedbasis/part-3
Sep 23, 2026
Merged

michakraus merged 4 commits into
mainfrom
reducedbasis/part-3

Conversation

@michakraus

Copy link
Copy Markdown
Member

Adds Aqua to the test suite and a docstring to every exported name.

  • Aqua 0.8 is a test dependency. Aqua.test_all(ParticleMethods) runs inside its own @testset "Aqua", so a failing check fails the suite. All 11 checks pass, among them undefined exports.
  • Docstrings for the module, Particle and ParticleList. These were the only exported names without one. Base.Docs.undocumented_names(ParticleMethods) is now empty, and the library page renders all four names.
  • docs/make.jl keeps Documenter's default checkdocs = :all. checkdocs = :exports was considered and left out: Documenter 1.19.0 walks only Docs.meta, so neither setting finds an export that has no docstring, and :exports checks fewer names.

Pre-PR verification

Fixed

  • src/particle_list.jl: the ParticleList docstring now states the name rule that the constructor asserts. Variable and parameter names must not repeat each other or the field names list, views, params, particles, variables, indices. The Particle docstring already states the same rule.

Unresolved

  • None.

Pre-existing (not changed here)

  • nit, src/particle.jl:2: import Base.hasproperty, Base.getproperty is redundant, because every method is defined with the Base. prefix.
  • nit, docs/make.jl:6: a string repo makes Documenter warn that it cannot find the navbar URL.

Checked and clean

  • Aqua test_all in a testset: 11/11 pass on Aqua 0.8.18 and on 0.8.16.
  • The Aqua wrapper fails on a module with an undefined export, so a pass and a failure differ.
  • Pkg.test(): 81/81 on Julia 1.13.0, before the last two commits, which change only docstrings, docs/make.jl and the CHANGELOG.
  • The docs build passes. The library page renders ParticleMethods, Particle, ParticleList and eachparticle.
  • The docstring claims were tested against the constructors.
  • JuliaFormatter (sciml) and fatou lint are clean on the changed lines.

Not checked

  • Type stability: the branch changes no method.
  • Aqua on Julia 1.10: left to the CI min job.

🤖 Generated with Claude Code

michakraus and others added 4 commits September 23, 2026 10:40
Aqua.test_all runs inside its own @testset, so a failing check fails the
suite. Particle and ParticleList get docstrings; the docs build checks
exported names with checkdocs = :exports.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
Julia counts the module name as exported, so it needs a docstring for
every exported name to carry one. Base.Docs.undocumented_names is now
empty.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
…g work

checkdocs = :exports narrows the check to exported names, and Documenter
1.19.0 walks only Docs.meta, so an export without a docstring passes
under either setting. The default :all checks at least as many names,
so the narrower setting goes. The docs build passes with it.

The CHANGELOG records Aqua and the three new docstrings.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
The constructor asserts that variable and parameter names are disjoint
from each other and from the struct's field names. The Particle
docstring already states its rule; ParticleList's now does too.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
Copilot AI lite review requested due to automatic review settings September 23, 2026 09:36

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@codecov

codecov Bot commented Sep 23, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 86.00%. Comparing base (3cc4ce8) to head (c3588fa).

Additional details and impacted files
@@           Coverage Diff           @@
##             main       #9   +/-   ##
=======================================
  Coverage   86.00%   86.00%           
=======================================
  Files           4        4           
  Lines         100      100           
=======================================
  Hits           86       86           
  Misses         14       14           

☔ View full report in Codecov by Harness.
📢 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.

@michakraus
michakraus merged commit f5b64a0 into main Sep 23, 2026
12 checks passed
@michakraus
michakraus deleted the reducedbasis/part-3 branch September 23, 2026 10:02
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.

2 participants