Skip to content

Auto QUality Assurance for Julia packages

License

Notifications You must be signed in to change notification settings

ChrisRackauckas/Aqua.jl

 
 

Repository files navigation

Aqua.jl: Auto QUality Assurance for Julia packages

Stable Dev GitHub Actions Codecov GitHub commits since tagged version Aqua QA

Aqua.jl provides functions to run a few automatable checks for Julia packages:

  • There are no method ambiguities.
  • There are no undefined exports.
  • There are no unbound type parameters.
  • There are no stale dependencies listed in Project.toml.
  • Check that test target of the root project Project.toml and test project (test/Project.toml) are consistent.
  • Check that all external packages listed in deps have corresponding compat entry.
  • Project.toml formatting is compatible with Pkg.jl output.

See more in the documentation.

Quick usage

Call Aqua.test_all(YourPackage) from test/runtests.jl, e.g.,

using YourPackage
using Aqua
Aqua.test_all(YourPackage)

Specifying Aqua version

To avoid breaking test when a new Aqua.jl version is released, it is recommended to add version bound for Aqua.jl in test/Project.toml:

[deps]
Aqua = "4c88cf16-eb10-579e-8560-4a9242c79595"
Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40"

[compat]
Aqua = "0.5"

Badge

You can add the following line in README.md to include Aqua.jl badge:

[![Aqua QA](https://raw.githubusercontent.com/JuliaTesting/Aqua.jl/master/badge.svg)](https://github.com/JuliaTesting/Aqua.jl)

which is rendered as

Aqua QA

About

Auto QUality Assurance for Julia packages

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Julia 99.9%
  • Makefile 0.1%