Skip to content

Commit 8e308bc

Browse files
Add Aqua tests (#395)
* Add Aqua tests * Use ReTest * Remove InplaceOps * Fix ambiguities * Fix format Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
1 parent b61cbb5 commit 8e308bc

File tree

6 files changed

+18
-6
lines changed

6 files changed

+18
-6
lines changed

Project.toml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@ version = "0.6.4"
66
AbstractMCMC = "80f14c24-f653-4e6a-9b94-39d6b0f70001"
77
ArgCheck = "dce04be8-c92d-5529-be00-80e4d2c0e197"
88
DocStringExtensions = "ffbed154-4ef7-542d-bbb7-c09d3a79fcae"
9-
InplaceOps = "505f98c9-085e-5b2c-8e89-488be7bf1f34"
109
LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e"
1110
LogDensityProblems = "6fdf6af0-433a-55f7-b3ed-c6c6e0b8df7c"
1211
LogDensityProblemsAD = "996a588d-648d-4e1f-a8f0-a84b347e47b1"
@@ -34,7 +33,6 @@ AbstractMCMC = "5.6"
3433
ArgCheck = "1, 2"
3534
CUDA = "3, 4, 5"
3635
DocStringExtensions = "0.8, 0.9"
37-
InplaceOps = "0.3"
3836
LogDensityProblems = "2"
3937
LogDensityProblemsAD = "1"
4038
MCMCChains = "5, 6"

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
[![Coverage Status](https://coveralls.io/repos/github/TuringLang/AdvancedHMC.jl/badge.svg?branch=kx%2Fbug-fix)](https://coveralls.io/github/TuringLang/AdvancedHMC.jl?branch=kx%2Fbug-fix)
66
[![Stable](https://img.shields.io/badge/docs-stable-blue.svg)](https://turinglang.github.io/AdvancedHMC.jl/stable/)
77
[![Dev](https://img.shields.io/badge/docs-dev-blue.svg)](https://turinglang.github.io/AdvancedHMC.jl/dev/)
8+
[![Aqua QA](https://raw.githubusercontent.com/JuliaTesting/Aqua.jl/master/badge.svg)](https://github.com/JuliaTesting/Aqua.jl)
89

910
AdvancedHMC.jl provides a robust, modular, and efficient implementation of advanced HMC algorithms. An illustrative example of AdvancedHMC's usage is given below. AdvancedHMC.jl is part of [Turing.jl](https://github.com/TuringLang/Turing.jl), a probabilistic programming library in Julia.
1011
If you are interested in using AdvancedHMC.jl through a probabilistic programming language, please check it out!

src/AdvancedHMC.jl

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -163,17 +163,19 @@ function Hamiltonian(
163163
)
164164
return Hamiltonian(metric, ℓπ.logdensity, kind; kwargs...)
165165
end
166-
Hamiltonian(metric::AbstractMetric, ℓπ, m::Module; kwargs...) =
167-
Hamiltonian(metric, ℓπ, Val(Symbol(m)); kwargs...)
168-
function Hamiltonian(metric::AbstractMetric, ℓπ, kind::Union{Symbol,Val}; kwargs...)
166+
function Hamiltonian(metric::AbstractMetric, ℓπ, kind::Union{Symbol,Val,Module}; kwargs...)
169167
if LogDensityProblems.capabilities(ℓπ) === nothing
170168
throw(
171169
ArgumentError(
172170
"The log density function does not support the LogDensityProblems.jl interface",
173171
),
174172
)
175173
end
176-
= LogDensityProblemsAD.ADgradient(kind, ℓπ; kwargs...)
174+
= LogDensityProblemsAD.ADgradient(
175+
kind isa Val ? kind : Val(Symbol(kind)),
176+
ℓπ;
177+
kwargs...,
178+
)
177179
return Hamiltonian(metric, ℓ)
178180
end
179181

test/Project.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
[deps]
22
AbstractMCMC = "80f14c24-f653-4e6a-9b94-39d6b0f70001"
3+
Aqua = "4c88cf16-eb10-579e-8560-4a9242c79595"
34
Bijectors = "76274a88-744f-5084-9051-94815aaf08c4"
45
CUDA = "052768ef-5323-5732-b1bb-66c8b64840ba"
56
Comonicon = "863f3e99-da2a-4334-8734-de3dacbe5542"

test/aqua.jl

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
using AdvancedHMC
2+
using ReTest
3+
import Aqua
4+
5+
@testset "Aqua" begin
6+
Aqua.test_all(AdvancedHMC)
7+
end

test/runtests.jl

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,8 @@ using FillArrays
33
using AdvancedHMC: AdvancedHMC
44
using LogDensityProblems: LogDensityProblems
55
using LogDensityProblemsAD: LogDensityProblemsAD
6+
using MCMCChains
7+
using OrdinaryDiffEq
68
using ReTest
79

810
println("Environment variables for testing")
@@ -17,6 +19,7 @@ include("common.jl")
1719
if GROUP == "All" || GROUP == "AdvancedHMC"
1820
using ReTest, CUDA
1921

22+
include("aqua.jl")
2023
include("metric.jl")
2124
include("hamiltonian.jl")
2225
include("integrator.jl")

0 commit comments

Comments
 (0)