Skip to content

Method ambiguity for put! between QuantumSavory and WorkerUtilities #424

Description

@JoseRodriguezRomero

Bug Description

There is a method ambiguity for the method put!, that can be caught with Aqua.jl, between QuantumSavory.jland WorkerUtilities.jl.

Reproducing the Bug

Simply using the library WorkerUtilities makes Test.detect_ambiguities(QuantumSavory) fail.

The script script_no_errors.jl does not include WorkerUtilitiesand thus it reports no errors. On the other hand, script_with_errors.jl is identical to the prior script but simply includes WorkerUtilities and reports an error.

script_no_errors.jl

using Test
using Aqua
using QuantumOpticsBase
using QuantumSavory
using Gabs

@testset "Aqua" begin
	@test Test.detect_ambiguities(QuantumSavory) == Tuple{Method, Method}[]
end

script_with_errors.jl

using Test
using Aqua
using QuantumOpticsBase
using QuantumSavory
using Gabs
using WorkerUtilities

@testset "Aqua" begin
	@test Test.detect_ambiguities(QuantumSavory) == Tuple{Method, Method}[]
end

Example Error Log

Aqua: Test Failed at /Users/j.romero/Test.jl:9
  Expression: Test.detect_ambiguities(QuantumSavory) == Tuple{Method, Method}[]
   Evaluated: Tuple{Method, Method}[(put!(f, x::OrderedSynchronizer, i, incr) @ WorkerUtilities ~/.julia/packages/WorkerUtilities/ey0fP/src/WorkerUtilities.jl:214, put!(mb::MessageBuffer, args...) @ QuantumSavory ~/Documents/GitHub/QuantumSavory.jl/src/messagebuffer.jl:42), (put!(f, x::OrderedSynchronizer, i) @ WorkerUtilities ~/.julia/packages/WorkerUtilities/ey0fP/src/WorkerUtilities.jl:214, put!(mb::MessageBuffer, args...) @ QuantumSavory ~/Documents/GitHub/QuantumSavory.jl/src/messagebuffer.jl:42)] == Tuple{Method, Method}[]

Stacktrace:
 [1] top-level scope
   @ ~/Test.jl:9
 [2] macro expansion
   @ ~/.julia/juliaup/julia-1.12.6+0.aarch64.apple.darwin14/share/julia/stdlib/v1.12/Test/src/Test.jl:1777 [inlined]
 [3] macro expansion
   @ ~/Test.jl:9 [inlined]
 [4] macro expansion
   @ ~/.julia/juliaup/julia-1.12.6+0.aarch64.apple.darwin14/share/julia/stdlib/v1.12/Test/src/Test.jl:680 [inlined]
Test Summary: | Fail  Total  Time
Aqua          |    1      1  1.5s
RNG of the outermost testset: Random.Xoshiro(0x6c39e3cf9a9cd7ec, 0x4ac138c47b0d11b7, 0x3944ecbdfc75a6a0, 0xb304ccee2675816c, 0x4ff7c8560746d825)
ERROR: LoadError: Some tests did not pass: 0 passed, 1 failed, 0 errored, 0 broken.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions