Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Type piracy issues #18

Open
andreasvarga opened this issue Jan 23, 2024 · 1 comment
Open

Type piracy issues #18

andreasvarga opened this issue Jan 23, 2024 · 1 comment
Labels
help wanted Extra attention is needed

Comments

@andreasvarga
Copy link
Owner

I am facing the following type piracy issue when testing with Aqua:

julia> using DescriptorSystems

julia> using Aqua

julia> Aqua.test_piracies(DescriptorSystems)
Possible type-piracy detected:
[1] hcat(A::Union{Number, DescriptorStateSpace, LinearAlgebra.UniformScaling, AbstractVecOrMat}...) @ DescriptorSystems C:\Users\Andreas\Documents\software\Julia\DescriptorSystems.jl\src\connections.jl:220
[2] hvcat(rows::Tuple{Vararg{Int64}}, A::Union{Number, DescriptorStateSpace, LinearAlgebra.UniformScaling, AbstractVecOrMat}...) @ DescriptorSystems C:\Users\Andreas\Documents\software\Julia\DescriptorSystems.jl\src\connections.jl:260
[3] vcat(A::Union{Number, DescriptorStateSpace, LinearAlgebra.UniformScaling, AbstractVecOrMat}...) @ DescriptorSystems C:\Users\Andreas\Documents\software\Julia\DescriptorSystems.jl\src\connections.jl:220
Test Failed at C:\Users\Andreas\.julia\packages\Aqua\9p8ck\src\piracies.jl:232
  Expression: isempty(v)
   Evaluated: isempty(Method[hcat(A::Union{Number, DescriptorStateSpace, LinearAlgebra.UniformScaling, AbstractVecOrMat}...) @ DescriptorSystems C:\Users\Andreas\Documents\software\Julia\DescriptorSystems.jl\src\connections.jl:220, hvcat(rows::Tuple{Vararg{Int64}}, A::Union{Number, DescriptorStateSpace, LinearAlgebra.UniformScaling, AbstractVecOrMat}...) @ DescriptorSystems C:\Users\Andreas\Documents\software\Julia\DescriptorSystems.jl\src\connections.jl:260, vcat(A::Union{Number, DescriptorStateSpace, LinearAlgebra.UniformScaling, AbstractVecOrMat}...) @ DescriptorSystems C:\Users\Andreas\Documents\software\Julia\DescriptorSystems.jl\src\connections.jl:220])

ERROR: There was an error during testing

The implementation of hcat, vcat and hvcat operations on the DescriptorStateSpace structure should be similar to that employed in the LinearMaps package, which is apparently fully Aqua compliant. I wonder how this compliance can be enforced also for this package. Any help is welcome @dkarrasch.

@andreasvarga andreasvarga added the help wanted Extra attention is needed label Jan 23, 2024
@dkarrasch
Copy link

To be honest, LinearMaps.jl is not fully compliant. The type piracy check is broken, see

https://github.com/JuliaLinearAlgebra/LinearMaps.jl/blob/master/test/runtests.jl

for how to "fix" this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

2 participants