Failed to precompile due to DiffEqBase
PhyX-Meow opened this issue · comments
Describe the bug
Precompile of the package failed after a recent update.
Update log:
Updating `~/.julia/environments/v1.7/Project.toml`
[6e4b80f9] ↑ BenchmarkTools v1.2.1 ⇒ v1.2.2
[9b87118b] ↑ PackageCompiler v2.0.2 ⇒ v2.0.3
[295af30f] ↑ Revise v3.1.20 ⇒ v3.2.0
Updating `~/.julia/environments/v1.7/Manifest.toml`
[6e4b80f9] ↑ BenchmarkTools v1.2.1 ⇒ v1.2.2
[864edb3b] ↑ DataStructures v0.18.10 ⇒ v0.18.11
[6e36e845] ↑ DynamicalSystemsBase v2.3.2 ⇒ v2.3.3
[3362f125] ↑ ManifoldsBase v0.12.9 ⇒ v0.12.10
[8913a72c] ↑ NonlinearSolve v0.3.11 ⇒ v0.3.12
[1dea7af3] ↑ OrdinaryDiffEq v5.68.0 ⇒ v5.69.0
[9b87118b] ↑ PackageCompiler v2.0.2 ⇒ v2.0.3
[295af30f] ↑ Revise v3.1.20 ⇒ v3.2.0
[0bca4576] ↑ SciMLBase v1.19.5 ⇒ v1.20.0
[47a9eef4] ↑ SparseDiffTools v1.18.1 ⇒ v1.18.3
Precompile log:
julia> using DynamicalSystems
[ Info: Precompiling DynamicalSystems [61744808-ddfa-5f27-97ff-6e42cc95d634]
ERROR: LoadError: UndefVarError: DiffEqBase not defined
Stacktrace:
[1] include
@ ./Base.jl:418 [inlined]
[2] include_package_for_output(pkg::Base.PkgId, input::String, depot_path::Vector{String}, dl_load_path::Vector{String}, load_path::Vector{String}, concrete_deps::Vector{Pair{Base.PkgId, UInt64}}, source::String)
@ Base ./loading.jl:1318
[3] top-level scope
@ none:1
[4] eval
@ ./boot.jl:373 [inlined]
[5] eval(x::Expr)
@ Base.MainInclude ./client.jl:453
[6] top-level scope
@ none:1
in expression starting at /home/wuli/.julia/packages/ChaosTools/hpoM2/src/ChaosTools.jl:1
ERROR: LoadError: Failed to precompile ChaosTools [608a59af-f2a3-5ad4-90b4-758bdf3122a7] to /home/wuli/.julia/compiled/v1.7/ChaosTools/jl_hXgTBp.
Stacktrace:
[1] error(s::String)
@ Base ./error.jl:33
[2] compilecache(pkg::Base.PkgId, path::String, internal_stderr::IO, internal_stdout::IO, ignore_loaded_modules::Bool)
@ Base ./loading.jl:1466
[3] compilecache(pkg::Base.PkgId, path::String)
@ Base ./loading.jl:1410
[4] _require(pkg::Base.PkgId)
@ Base ./loading.jl:1120
[5] require(uuidkey::Base.PkgId)
@ Base ./loading.jl:1013
[6] require(into::Module, mod::Symbol)
@ Base ./loading.jl:997
[7] include
@ ./Base.jl:418 [inlined]
[8] include_package_for_output(pkg::Base.PkgId, input::String, depot_path::Vector{String}, dl_load_path::Vector{String}, load_path::Vector{String}, concrete_deps::Vector{Pair{Base.PkgId, UInt64}}, source::Nothing)
@ Base ./loading.jl:1318
[9] top-level scope
@ none:1
[10] eval
@ ./boot.jl:373 [inlined]
[11] eval(x::Expr)
@ Base.MainInclude ./client.jl:453
[12] top-level scope
@ none:1
in expression starting at /home/wuli/.julia/packages/DynamicalSystems/quIMb/src/DynamicalSystems.jl:1
ERROR: Failed to precompile DynamicalSystems [61744808-ddfa-5f27-97ff-6e42cc95d634] to /home/wuli/.julia/compiled/v1.7/DynamicalSystems/jl_Vb5Olx.
Stacktrace:
[1] error(s::String)
@ Base ./error.jl:33
[2] compilecache(pkg::Base.PkgId, path::String, internal_stderr::IO, internal_stdout::IO, ignore_loaded_modules::Bool)
@ Base ./loading.jl:1466
[3] compilecache(pkg::Base.PkgId, path::String)
@ Base ./loading.jl:1410
[4] _require(pkg::Base.PkgId)
@ Base ./loading.jl:1120
[5] require(uuidkey::Base.PkgId)
@ Base ./loading.jl:1013
[6] require(into::Module, mod::Symbol)
@ Base ./loading.jl:997
Package versions
Please provide the versions you use. To do this, run the code:
Status `~/.julia/environments/v1.7/Manifest.toml`
[608a59af] ChaosTools v2.6.1
[5732040d] DelayEmbeddings v2.0.2
[61744808] DynamicalSystems v2.1.3
[6e36e845] DynamicalSystemsBase v2.3.3
[ed8fcbec] Entropies v1.1.1
[639c3291] RecurrenceAnalysis v1.6.3
I notice the error says
ERROR: LoadError: UndefVarError: DiffEqBase not defined
So something must go wrong here.
Think found reason of this, line 13 of
https://github.com/JuliaDynamics/ChaosTools.jl/blob/master/src/ChaosTools.jl
using DynamicalSystemsBase.DiffEqBase: AbstractODEIntegrator, u_modified!, DEIntegrator
But now it has been changed to SciMLBase in
JuliaDynamics/DynamicalSystemsBase.jl#130
working on it now! JuliaDynamics/ChaosTools.jl#232 sorry!
I have the same problem. It seems that ChasTools.jl
needs DiffEqBase
after all. ContinuousCallbacks
is not included in SciMLBase
and is needed by transit_time_statistics.jl
.
you can add explicitly DynamicalSystemsBase 2.3.2 in the meantime and it will work for you.
I have the same problem. It seems that ChasTools.jl needs DiffEqBase after all. ContinuousCallbacks is not included in SciMLBase and is needed by transit_time_statistics.jl.
I'm moving ContinuousCallbacks over today BTW since Trixi wanted the same thing.