Closed devmotion closed 1 year ago
Patch coverage: 80.00
% and project coverage change: -0.10
:warning:
Comparison is base (
9da7bfd
) 94.25% compared to head (143c8b0
) 94.16%.
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.
I assume the only questionable change is that fixing the method ambiguity of
map(t::Transform, ::AbstractVector)
, caused bymap(::Tf, ::SparseVector) where {Tf}
in SparseArrays, requires adding a dependency on SparseArrays.
I guess it's even more questionable since actually it is not sufficient to fix the method ambiguities in the tests which load additional packages (see, e.g., https://github.com/JuliaGaussianProcesses/KernelFunctions.jl/actions/runs/3268189406/jobs/5374299901#step:6:222 and https://github.com/JuliaGaussianProcesses/KernelFunctions.jl/actions/runs/3268189406/jobs/5374301250#step:6:224):
Evaluated: isempty(Tuple{Method, Method}[(map(f::Tf, A::SparseArrays.AbstractCompressedVector) where Tf @ SparseArrays.HigherOrderFns /opt/hostedtoolcache/julia/nightly/x64/share/julia/stdlib/v1.9/SparseArrays/src/higherorderfns.jl:152, map(t::Transform, x::AbstractVector) @ KernelFunctions ~/work/KernelFunctions.jl/KernelFunctions.jl/src/transform/transform.jl:11), (map(f, A::NamedDims.NamedDimsArray) @ NamedDims ~/.julia/packages/NamedDims/kCxfn/src/functions.jl:157, map(t::Transform, x::AbstractVector) @ KernelFunctions ~/work/KernelFunctions.jl/KernelFunctions.jl/src/transform/transform.jl:11), (map(f, a1::StaticArraysCore.StaticArray, as::AbstractArray...) @ StaticArrays ~/.julia/packages/StaticArrays/PUoe1/src/mapreduce.jl:30, map(t::Transform, x::AbstractVector) @ KernelFunctions ~/work/KernelFunctions.jl/KernelFunctions.jl/src/transform/transform.jl:11), (map(f, As::AxisArray{T, N, D, Ax}...) where {T, N, D, Ax<:Tuple{Vararg{Axis}}} @ AxisArrays ~/.julia/packages/AxisArrays/v7vf4/src/core.jl:431, map(t::Transform, x::AbstractVector) @ KernelFunctions ~/work/KernelFunctions.jl/KernelFunctions.jl/src/transform/transform.jl:11), (map(f, A::AxisArray) @ AxisArrays ~/.julia/packages/AxisArrays/v7vf4/src/core.jl:422, map(t::Transform, x::AbstractVector) @ KernelFunctions ~/work/KernelFunctions.jl/KernelFunctions.jl/src/transform/transform.jl:11), (map(f::Tf, A::Union{SparseArrays.AbstractCompressedVector, SparseArrays.AbstractSparseMatrixCSC}, Bs::Vararg{Union{SparseArrays.AbstractCompressedVector, SparseArrays.AbstractSparseMatrixCSC}, N}) where {Tf, N} @ SparseArrays.HigherOrderFns /opt/hostedtoolcache/julia/nightly/x64/share/julia/stdlib/v1.9/SparseArrays/src/higherorderfns.jl:156, map(t::Transform, x::AbstractVector) @ KernelFunctions ~/work/KernelFunctions.jl/KernelFunctions.jl/src/transform/transform.jl:11)])
So I am not sure if we can fix the map
method ambiguity issues at all.
@devmotion Can we get this merged anyway (we can leave some ambiguities)
Lgtm when the tests are fixed
@theogf I managed to fix all method ambiguities by completely removing the definition of map(t::Transform, x::AbstractVector)
(causes problems with basically every array package since they tend to implement map(f, x::MyArray)
). Instead I only defined map(t::Transform, x::Union{ColVecs,RowVecs})
.
Fixes #481.
I assume the only questionable change is that fixing the method ambiguity ofmap(t::Transform, ::AbstractVector)
, caused bymap(::Tf, ::SparseVector) where {Tf}
in SparseArrays, requires adding a dependency on SparseArrays.