All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
Version v0.8.9 - 2024-10-15
- Change
test_ambiguities
to only return ambiguities that happen in the target package. (#309)
Version v0.8.8 - 2024-10-10
- Improved the documentation of
test_persisten_tasks
. (#297)
Version v0.8.7 - 2024-04-09
Version v0.8.6 - 2024-04-09
- The output of
test_ambiguities
now gets printed to stderr instead of stdout. (#281)
Version v0.8.5 - 2024-04-03
- When supplying
broken = true
totest_ambiguities
,test_undefined_exports
,test_piracies
, ortest_unbound_args
, the output is shortened. In particular, the list of offending instances is no longer printed. To get the full output, setbroken = false
. (#272) - Use Changelog.jl to generate the changelog, and add it to the documentation. (#277, #279)
test_project_extras
prints failures the same on all julia versions. In particular, 1.11 and nightly are no outliers. (#275)
Version v0.8.4 - 2023-12-01
test_persistent_tasks
now accepts an optionalexpr
to run in the precompile package. (#255)- The
expr
option lets you test whether your precompile script leaves any dangling Tasks or Timers, which would make it unsafe to use as a dependency for downstream packages.
- The
Version v0.8.3 - 2023-11-29
test_persistent_tasks
is now less noisy. (#256)- Completely overhauled the documentation. Every test now has its dedicated page. (#250)
Version v0.8.2 - 2023-11-16
test_persistent_tasks
no longer clears the environment of the subtask. Instead, it modifiesLOAD_PATH
directly to make stdlibs work. (#241)
Version v0.8.1 - 2023-11-16
test_persistent_tasks
now redirects stdout and stderr of the created subtask. Furthermore, the environment of the subtask gets cleared to allow default values forJULIA_LOAD_PATH
to work. (#240)
Version v0.8.0 - 2023-11-15
- Two additions check whether packages might block precompilation on Julia 1.10 or higher: (#174)
test_persistent_tasks
tests whether "your" package can safely be used as a dependency for downstream packages. This test is enabled for the default testsuitetest_all
, but you can opt-out by supplyingpersistent_tasks=false
totest_all
. [BREAKING]find_persistent_tasks_deps
is useful if "your" package hangs upon precompilation: it runstest_persistent_tasks
on all the things you depend on, and may help isolate the culprit(s).
- In
test_deps_compat
, the two subtestscheck_extras
andcheck_weakdeps
are now run by default. (#202) [BREAKING] test_deps_compat
now requires compat entries for all dependencies. Stdlibs no longer get ignored. This change is motivated by similar changes in the General registry. (#215) [BREAKING]test_ambiguities
now excludes the keyword sorter of allexclude
d functions with keyword arguments as well. (#203)test_piracy
is renamed totest_piracies
. (#230) [BREAKING]test_ambiguities
andtest_piracies
now return issues in a defined order. This order may change in a patch release of Aqua.jl. (#233)- Improved the message for
test_project_extras
failures. (#234) test_deps_compat
now requires a compat entry forjulia
This can be disabling by settingcompat_julia = false
. (#236) [BREAKING]
test_project_toml_formatting
has been removed. Thus, the kwargproject_toml_formatting
totest_all
no longer exists. (#209) [BREAKING]
Version v0.7.4 - 2023-10-24
test_deps_compat
has two new kwargscheck_extras
andcheck_weakdeps
to extend the test to these dependency categories. They are not run by default. (#200)
- The docstring for
test_stale_deps
explains the situation with package extensions. (#203) - The logo of Aqua.jl has been updated. (#128)
Version v0.7.3 - 2023-09-25
test_deps_compat
has a new kwargbroken
to mark the test as broken usingTest.@test_broken
. (#193)
test_piracy
no longer prints warnings for methods where the third argument is aTypeVar
. (#188)
Version v0.7.2 - 2023-09-19
test_undefined_exports
additionally prints the modules of the undefined exports in the failure report. (#177)
Version v0.7.1 - 2023-09-05
test_piracy
no longer reports type piracy in the kwsorter, i.e.kwcall
should no longer appear in the report. (#171)
Version v0.7.0 - 2023-08-29
- Installation and usage instructions to the documentation. (#159)
test_ambiguities
now allows to exclude non-singleton callables. Excluding a type means to exclude all methods of the callable (sometimes also called "functor") and the constructor. (#144) [BREAKING]test_piracy
considers more functions. Callables and qualified names are now also checked. (#156) [BREAKING]
test_ambiguities
prints less unnecessary whitespace. (#158)test_ambiguities
no longer hangs indefinitely when there are many ambiguities. (#166)
Version v0.6.7 - 2023-09-19
test_undefined_exports
additionally prints the modules of the undefined exports in the failure report. (#177)
test_ambiguities
prints less unnecessary whitespace. (#158)- Fix
test_piracy
for some methods with arguments of custom subtypes ofFunction
. (#170)
Version v0.6.6 - 2023-08-24
test_ambiguities
no longer hangs indefinitely when there are many ambiguities. (#166)
Version v0.6.5 - 2023-06-26
- Typo when calling kwargs. (#153)
Version v0.6.4 - 2023-06-25
test_piracy
has a new kwargtreat_as_own
. It is useful for testing packages that deliberately commit some type piracy, e.g. modules adding higher-level functionality to a lightweight C-wrapper, or packages that are extendingStatsAPI.jl
. (#140)
- Explanation of
test_unbound_args
in the docstring. (#146)
- Callable objects with type parameters no longer error in
test_ambiguities
' kwargexclude
. (#142)
Version v0.6.3 - 2023-06-05
- When installing a method for a union type, it is only reported by
test_piracy
if all types in the union are foreign (instead of any for arguments). (#131)
test_deps_compat
's kwargignore
now works as intended. (#130)- Weakdeps are not reported as stale by
test_stale_deps
anymore. (#135)
Version v0.6.2 - 2023-06-02
test_ambiguities
,test_undefined_exports
,test_piracy
, andtest_unbound_args
each have a new kwargbroken
to mark the test as broken usingTest.@test_broken
. (#124)