Closed ocots closed 2 weeks ago
28 ambiguities found. To get a list, set `broken = false`.
Ambiguity #1
==(x::ForwardDiff.Dual{Tx}, y::Real) where Tx @ ForwardDiff ~/.julia/packages/ForwardDiff/PcZ48/src/dual.jl:144
==(x::Real, y::AbstractIrrational) @ Base irrationals.jl:90
Possible fix, define
==(::ForwardDiff.Dual{Tx}, ::AbstractIrrational) where Tx
Ambiguity #2
==(x::Real, y::ForwardDiff.Dual{Ty}) where Ty @ ForwardDiff ~/.julia/packages/ForwardDiff/PcZ48/src/dual.jl:145
==(x::AbstractIrrational, y::Real) @ Base irrationals.jl:89
Possible fix, define
==(::AbstractIrrational, ::ForwardDiff.Dual{Ty}) where Ty
Ambiguity #3
ForwardDiff.Dual(args...) @ ForwardDiff ~/.julia/packages/ForwardDiff/PcZ48/src/dual.jl:73
(::Type{T})(x::Base.TwicePrecision) where T<:Number @ Base twiceprecision.jl:265
Possible fix, define
ForwardDiff.Dual(::Base.TwicePrecision)
Ambiguity #4
(ForwardDiff.Dual{T})(value) where T @ ForwardDiff ~/.julia/packages/ForwardDiff/PcZ48/src/dual.jl:69
(::Type{T})(x::Base.TwicePrecision) where T<:Number @ Base twiceprecision.jl:265
Possible fix, define
(ForwardDiff.Dual{T})(::Base.TwicePrecision) where T
Ambiguity #5
(ForwardDiff.Dual{T, V})(x) where {T, V} @ ForwardDiff ~/.julia/packages/ForwardDiff/PcZ48/src/dual.jl:79
(::Type{T})(x::T) where T<:Number @ Core boot.jl:792
Possible fix, define
(ForwardDiff.Dual{T, V})(::ForwardDiff.Dual{T, V}) where {T, V}
Ambiguity #6
ForwardDiff.Dual(args...) @ ForwardDiff ~/.julia/packages/ForwardDiff/PcZ48/src/dual.jl:73
(::Type{T})(x::T) where T<:Number @ Core boot.jl:792
Possible fix, define
ForwardDiff.Dual(::ForwardDiff.Dual)
Ambiguity #7
(ForwardDiff.Dual{T, V})(x) where {T, V} @ ForwardDiff ~/.julia/packages/ForwardDiff/PcZ48/src/dual.jl:79
(::Type{T})(x::Base.TwicePrecision) where T<:Number @ Base twiceprecision.jl:265
Possible fix, define
(ForwardDiff.Dual{T, V})(::Base.TwicePrecision) where {T, V}
Ambiguity #8
ForwardDiff.Dual{T, V, N}(x) where {T, V, N} @ ForwardDiff ~/.julia/packages/ForwardDiff/PcZ48/src/dual.jl:77
(::Type{T})(x::Base.TwicePrecision) where T<:Number @ Base twiceprecision.jl:265
Possible fix, define
ForwardDiff.Dual{T, V, N}(::Base.TwicePrecision) where {T, V, N}
Ambiguity #9
ForwardDiff.Dual{T, V, N}(x) where {T, V, N} @ ForwardDiff ~/.julia/packages/ForwardDiff/PcZ48/src/dual.jl:77
(::Type{T})(z::Complex) where T<:Real @ Base complex.jl:44
Possible fix, define
ForwardDiff.Dual{T, V, N}(::Complex) where {T, V, N}
Ambiguity #10
(ForwardDiff.Dual{T})(value) where T @ ForwardDiff ~/.julia/packages/ForwardDiff/PcZ48/src/dual.jl:69
(::Type{T})(z::Complex) where T<:Real @ Base complex.jl:44
Possible fix, define
(ForwardDiff.Dual{T})(::Complex) where T
Ambiguity #11
ForwardDiff.Dual{T, V, N}(x::Number) where {T, V, N} @ ForwardDiff ~/.julia/packages/ForwardDiff/PcZ48/src/dual.jl:78
(::Type{T})(z::Complex) where T<:Real @ Base complex.jl:44
Possible fix, define
ForwardDiff.Dual{T, V, N}(::Complex) where {T, V, N}
Ambiguity #12
(ForwardDiff.Dual{T, V})(x) where {T, V} @ ForwardDiff ~/.julia/packages/ForwardDiff/PcZ48/src/dual.jl:79
(::Type{T})(z::Complex) where T<:Real @ Base complex.jl:44
Possible fix, define
(ForwardDiff.Dual{T, V})(::Complex) where {T, V}
Ambiguity #13
ForwardDiff.Dual(args...) @ ForwardDiff ~/.julia/packages/ForwardDiff/PcZ48/src/dual.jl:73
(::Type{T})(z::Complex) where T<:Real @ Base complex.jl:44
Possible fix, define
ForwardDiff.Dual(::Complex)
Ambiguity #14
ForwardDiff.Dual(args...) @ ForwardDiff ~/.julia/packages/ForwardDiff/PcZ48/src/dual.jl:73
(::Type{T})(x::AbstractChar) where T<:Union{AbstractChar, Number} @ Base char.jl:50
Possible fix, define
ForwardDiff.Dual(::AbstractChar)
Ambiguity #15
ForwardDiff.Dual{T, V, N}(x) where {T, V, N} @ ForwardDiff ~/.julia/packages/ForwardDiff/PcZ48/src/dual.jl:77
(::Type{T})(x::AbstractChar) where T<:Union{AbstractChar, Number} @ Base char.jl:50
Possible fix, define
ForwardDiff.Dual{T, V, N}(::AbstractChar) where {T, V, N}
Ambiguity #16
(ForwardDiff.Dual{T, V})(x) where {T, V} @ ForwardDiff ~/.julia/packages/ForwardDiff/PcZ48/src/dual.jl:79
(::Type{T})(x::AbstractChar) where T<:Union{AbstractChar, Number} @ Base char.jl:50
Possible fix, define
(ForwardDiff.Dual{T, V})(::AbstractChar) where {T, V}
Ambiguity #17
(ForwardDiff.Dual{T})(value) where T @ ForwardDiff ~/.julia/packages/ForwardDiff/PcZ48/src/dual.jl:69
(::Type{T})(x::AbstractChar) where T<:Union{AbstractChar, Number} @ Base char.jl:50
Possible fix, define
(ForwardDiff.Dual{T})(::AbstractChar) where T
Ambiguity #18
^(x::Irrational, y::ForwardDiff.Dual{Ty}) where Ty @ ForwardDiff ~/.julia/packages/ForwardDiff/PcZ48/src/dual.jl:145
^(::Irrational{:ℯ}, x::Number) @ Base.MathConstants mathconstants.jl:119
Possible fix, define
^(::Irrational{:ℯ}, ::ForwardDiff.Dual{Ty}) where Ty
Ambiguity #19
^(x::Real, y::ForwardDiff.Dual{Ty}) where Ty @ ForwardDiff ~/.julia/packages/ForwardDiff/PcZ48/src/dual.jl:145
^(::Irrational{:ℯ}, x::Number) @ Base.MathConstants mathconstants.jl:119
Possible fix, define
^(::Irrational{:ℯ}, ::ForwardDiff.Dual{Ty}) where Ty
Ambiguity #20
convert(::Type{ForwardDiff.Dual{T, V, N}}, x) where {T, V, N} @ ForwardDiff ~/.julia/packages/ForwardDiff/PcZ48/src/dual.jl:435
convert(::Type{T}, x::Base.TwicePrecision) where T<:Number @ Base twiceprecision.jl:271
Possible fix, define
convert(::Type{ForwardDiff.Dual{T, V, N}}, ::Base.TwicePrecision) where {T, V, N}
Ambiguity #21
convert(::Type{ForwardDiff.Dual{T, V, N}}, x) where {T, V, N} @ ForwardDiff ~/.julia/packages/ForwardDiff/PcZ48/src/dual.jl:435
convert(::Type{T}, index::CartesianIndex{1}) where T<:Number @ Base.IteratorsMD multidimensional.jl:135
Possible fix, define
convert(::Type{ForwardDiff.Dual{T, V, N}}, ::CartesianIndex{1}) where {T, V, N}
Ambiguity #22
convert(::Type{ForwardDiff.Dual{T, V, N}}, x) where {T, V, N} @ ForwardDiff ~/.julia/packages/ForwardDiff/PcZ48/src/dual.jl:435
convert(::Type{T}, x::AbstractChar) where T<:Number @ Base char.jl:185
Possible fix, define
convert(::Type{ForwardDiff.Dual{T, V, N}}, ::AbstractChar) where {T, V, N}
Ambiguity #23
getindex(a::StaticArrays.TrivialView, inds...) @ StaticArrays ~/.julia/packages/StaticArrays/hLnPS/src/util.jl:51
getindex(x::AbstractArray, i::CTBase.Index) @ CTBase ~/Research/logiciels/dev/control-toolbox/CTBase/src/types.jl:1105
Possible fix, define
getindex(::StaticArrays.TrivialView, ::CTBase.Index)
Ambiguity #24
getindex(x::SparseArrays.ReadOnly, y...) @ SparseArrays ~/.julia/juliaup/julia-1.10.3+0.aarch64.apple.darwin14/share/julia/stdlib/v1.10/SparseArrays/src/readonly.jl:20
getindex(x::AbstractArray, i::CTBase.Index) @ CTBase ~/Research/logiciels/dev/control-toolbox/CTBase/src/types.jl:1105
Possible fix, define
getindex(::SparseArrays.ReadOnly, ::CTBase.Index)
Ambiguity #25
log(x::Irrational, y::ForwardDiff.Dual{Ty}) where Ty @ ForwardDiff ~/.julia/packages/ForwardDiff/PcZ48/src/dual.jl:145
log(::Irrational{:ℯ}, x::Number) @ Base.MathConstants mathconstants.jl:124
Possible fix, define
log(::Irrational{:ℯ}, ::ForwardDiff.Dual{Ty}) where Ty
Ambiguity #26
log(x::Real, y::ForwardDiff.Dual{Ty}) where Ty @ ForwardDiff ~/.julia/packages/ForwardDiff/PcZ48/src/dual.jl:145
log(::Irrational{:ℯ}, x::Number) @ Base.MathConstants mathconstants.jl:124
Possible fix, define
log(::Irrational{:ℯ}, ::ForwardDiff.Dual{Ty}) where Ty
Ambiguity #27
promote_rule(::Type{R}, ::Type{ForwardDiff.Dual{T, V, N}}) where {R<:Real, T, V, N} @ ForwardDiff ~/.julia/packages/ForwardDiff/PcZ48/src/dual.jl:427
promote_rule(::Type{<:AbstractIrrational}, ::Type{T}) where T<:Real @ Base irrationals.jl:44
Possible fix, define
promote_rule(::Type{R}, ::Type{ForwardDiff.Dual{T, V, N}}) where {T, V, N, R<:AbstractIrrational}
Ambiguity #28
promote_rule(::Type{R}, ::Type{ForwardDiff.Dual{T, V, N}}) where {R<:Real, T, V, N} @ ForwardDiff ~/.julia/packages/ForwardDiff/PcZ48/src/dual.jl:427
promote_rule(::Type{S}, ::Type{T}) where {S<:AbstractIrrational, T<:Number} @ Base irrationals.jl:45
Possible fix, define
promote_rule(::Type{S}, ::Type{ForwardDiff.Dual{T, V, N}}) where {S<:AbstractIrrational, T, V, N}
Skipping Base.active_repl
Skipping Base.active_repl_backend
Method ambiguity: Test Failed at /Users/ocots/.julia/packages/Aqua/tHrmY/src/ambiguities.jl:78
Expression: iszero(num_ambiguities)
Stacktrace:
[1] macro expansion
@ ~/.julia/juliaup/julia-1.10.3+0.aarch64.apple.darwin14/share/julia/stdlib/v1.10/Test/src/Test.jl:672 [inlined]
[2] _test_ambiguities(packages::Vector{Base.PkgId}; broken::Bool, kwargs::@Kwargs{})
@ Aqua ~/.julia/packages/Aqua/tHrmY/src/ambiguities.jl:78
[3] _test_ambiguities
@ ~/.julia/packages/Aqua/tHrmY/src/ambiguities.jl:68 [inlined]
[4] test_ambiguities
@ ~/.julia/packages/Aqua/tHrmY/src/ambiguities.jl:28 [inlined]
[5] macro expansion
@ ~/.julia/packages/Aqua/tHrmY/src/Aqua.jl:69 [inlined]
[6] macro expansion
@ ~/.julia/juliaup/julia-1.10.3+0.aarch64.apple.darwin14/share/julia/stdlib/v1.10/Test/src/Test.jl:1577 [inlined]
[7] test_all(testtarget::Module; ambiguities::@NamedTuple{broken::Bool}, unbound_args::Bool, undefined_exports::Bool, project_extras::Bool, stale_deps::Bool, deps_compat::@NamedTuple{ignore::Vector{Symbol}}, piracies::Bool, persistent_tasks::Bool)
@ Aqua ~/.julia/packages/Aqua/tHrmY/src/Aqua.jl:68
Test Summary: | Fail Total Time
Method ambiguity | 1 1 1.9s
ERROR: Some tests did not pass: 0 passed, 1 failed, 0 errored, 0 broken.
julia> Aqua.test_all(CTBase;
ambiguities=(broken=true,),
deps_compat=(ignore=[:LinearAlgebra, :Unicode],),
piracies=true)
28 ambiguities found. To get a list, set `broken = false`.
Skipping Base.active_repl
Skipping Base.active_repl_backend
Test Summary: | Broken Total Time
Method ambiguity | 1 1 1.7s
Test Summary: | Pass Total Time
Unbound type parameters | 1 1 0.0s
Test Summary: | Pass Total Time
Undefined exports | 1 1 0.0s
Test Summary: | Pass Total Time
Compare Project.toml and test/Project.toml | 1 1 0.0s
Test Summary: | Pass Total Time
Stale dependencies | 1 1 0.7s
Test Summary: | Pass Total Time
Compat bounds | 4 4 0.0s
Possible type-piracy detected:
[1] \(x::Tuple{Vararg{Symbol}}, y::Tuple{Vararg{Symbol}}) @ CTBase ~/Research/logiciels/dev/control-toolbox/CTBase/src/description.jl:139
Piracy: Test Failed at /Users/ocots/.julia/packages/Aqua/tHrmY/src/piracies.jl:240
Expression: isempty(v)
Evaluated: isempty(Method[\(x::Tuple{Vararg{Symbol}}, y::Tuple{Vararg{Symbol}}) @ CTBase ~/Research/logiciels/dev/control-toolbox/CTBase/src/description.jl:139])
Stacktrace:
[1] macro expansion
@ ~/.julia/juliaup/julia-1.10.3+0.aarch64.apple.darwin14/share/julia/stdlib/v1.10/Test/src/Test.jl:672 [inlined]
[2] test_piracies(m::Module; broken::Bool, kwargs::@Kwargs{})
@ Aqua ~/.julia/packages/Aqua/tHrmY/src/piracies.jl:240
[3] test_piracies
@ ~/.julia/packages/Aqua/tHrmY/src/piracies.jl:217 [inlined]
[4] macro expansion
@ ~/.julia/packages/Aqua/tHrmY/src/Aqua.jl:100 [inlined]
[5] macro expansion
@ ~/.julia/juliaup/julia-1.10.3+0.aarch64.apple.darwin14/share/julia/stdlib/v1.10/Test/src/Test.jl:1577 [inlined]
[6] test_all(testtarget::Module; ambiguities::@NamedTuple{broken::Bool}, unbound_args::Bool, undefined_exports::Bool, project_extras::Bool, stale_deps::Bool, deps_compat::@NamedTuple{ignore::Vector{Symbol}}, piracies::Bool, persistent_tasks::Bool)
@ Aqua ~/.julia/packages/Aqua/tHrmY/src/Aqua.jl:99
Test Summary: | Fail Total Time
Piracy | 1 1 0.0s
ERROR: Some tests did not pass: 0 passed, 1 failed, 0 errored, 0 broken.
@ocots nice addition before the CI,but what is going on with ForwardDiff.jl
?
Don't really know what is going on with ForwardDiff.jl
but with Aqua.jl
we can exclude some checks:
using Aqua
@testset "Aqua.jl" begin
Aqua.test_all(
YourPackage;
ambiguities=(exclude=[SomePackage.some_function], broken=true),
stale_deps=(ignore=[:SomePackage],),
deps_compat=(ignore=[:SomeOtherPackage],),
piracies=false,
)
end
Aqua.jl provides functions to run a few automatable checks for Julia packages:
export
s.Project.toml
.Project.toml
and test project (test/Project.toml
) are consistent.deps
have correspondingcompat
entries.Add a file
CTBase/test/Aqua.jl
withand repair everything before adding this in the CI.