Closed github-actions[bot] closed 2 years ago
Just as a heads up:
No CI build ran here. I ran the tests locally (Ubuntu x64) with IntervalArithmetic v0.20 and at least one test failed for me. With v0.19.2 all tests passed.
Forward integration 2: Error During Test at ~/.julia/dev/TaylorModels/test/validated_integ.jl:104
Got exception outside of a @test
MethodError: no method matching atomic(::Type{Interval{Interval{Float64}}}, ::Int64)
Closest candidates are:
atomic(::Type{Interval{T}}, ::T) where T<:Integer at ~/.julia/packages/IntervalArithmetic/AAfrU/src/intervals/conversion.jl:72
atomic(::Type{Interval{T}}, ::S) where {T<:AbstractFloat, S<:Real} at ~/.julia/packages/IntervalArithmetic/AAfrU/src/intervals/conversion.jl:95
atomic(::Type{Interval{Rational{T}}}, ::S) where {T<:Integer, S<:Integer} at ~/.julia/packages/IntervalArithmetic/AAfrU/src/intervals/conversion.jl:142
Stacktrace:
[1] convert(#unused#::Type{Interval{Interval{Float64}}}, x::Int64)
@ IntervalArithmetic ~/.julia/packages/IntervalArithmetic/AAfrU/src/intervals/conversion.jl:17
[2] _promote
@ ./promotion.jl:269 [inlined]
[3] promote
@ ./promotion.jl:292 [inlined]
[4] *(x::Int64, y::Interval{Interval{Float64}})
@ Base ./promotion.jl:322
[5] _validate_step!(xTM1K::Vector{TaylorModel1{TaylorN{Float64}, Float64}}, f!::Function, dx::Vector{TaylorModel1{TaylorN{Float64}, Float64}}, x0::Vector{TaylorModelN{2, Float64, Float64}}, params::Nothing, x::Vector{Taylor1{TaylorN{Float64}}}, t::Taylor1{Float64}, box::IntervalBox{2, Float64}, dof::Int64, rem::Vector{Interval{Float64}}, abstol::Float64, δt::Float64, sign_tstep::Int64, E::Vector{Interval{Float64}}, E′::Vector{Interval{Float64}}, polv::Vector{Taylor1{TaylorN{Float64}}}, low_ratiov::Vector{Float64}, hi_ratiov::Vector{Float64}, adaptive::Bool, minabstol::Float64; ε::Float64, δ::Float64, validatesteps::Int64, extrasteps::Int64)
@ TaylorModels ~/.julia/dev/TaylorModels/src/validatedODEs.jl:690
[6] validated_integ2(f!::var"#falling_ball!#163", X0::IntervalBox{2, Float64}, t0::Float64, tf::Float64, orderQ::Int64, orderT::Int64, abstol::Float64, params::Nothing; parse_eqs::Bool, maxsteps::Int64, absorb::Bool, adaptive::Bool, minabstol::Float64, validatesteps::Int64, ε::Float64, δ::Float64, absorb_steps::Int64)
@ TaylorModels ~/.julia/dev/TaylorModels/src/validatedODEs.jl:843
[7] validated_integ2(f!::Function, X0::IntervalBox{2, Float64}, t0::Float64, tf::Float64, orderQ::Int64, orderT::Int64, abstol::Float64, params::Nothing) (repeats 2 times)
@ TaylorModels ~/.julia/dev/TaylorModels/src/validatedODEs.jl:794
[8] macro expansion
@ ~/.julia/dev/TaylorModels/test/validated_integ.jl:105 [inlined]
[9] macro expansion
@ /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Test/src/Test.jl:1151 [inlined]
[10] macro expansion
@ ~/.julia/dev/TaylorModels/test/validated_integ.jl:105 [inlined]
[11] macro expansion
@ /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Test/src/Test.jl:1151 [inlined]
[12] macro expansion
@ ~/.julia/dev/TaylorModels/test/validated_integ.jl:42 [inlined]
[13] macro expansion
@ /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Test/src/Test.jl:1151 [inlined]
[14] top-level scope
@ ~/.julia/dev/TaylorModels/test/validated_integ.jl:41
[15] include(fname::String)
@ Base.MainInclude ./client.jl:444
[16] top-level scope
@ ~/.julia/dev/TaylorModels/test/runtests.jl:6
[17] include(fname::String)
@ Base.MainInclude ./client.jl:444
[18] top-level scope
@ none:6
[19] eval
@ ./boot.jl:360 [inlined]
[20] exec_options(opts::Base.JLOptions)
@ Base ./client.jl:261
[21] _start()
@ Base ./client.jl:485
Thanks @schillic for reporting this. I'll take a look on this...
The problem is due to this line and the change in the meaning of eltype
in IntervalArithmetics.jl (see https://github.com/JuliaIntervals/IntervalArithmetic.jl/pull/496). This is solved in #126
See #126
This pull request changes the compat entry for the
IntervalArithmetic
package from0.16, 0.17, 0.18, 0.19
to0.16, 0.17, 0.18, 0.19, 0.20
. This keeps the compat entries for earlier versions.Note: I have not tested your package with this new compat entry. It is your responsibility to make sure that your package tests pass before you merge this pull request.