Closed dk-zen closed 1 year ago
Thanks for the report. I'm currently working to clean up the dependencies. However, I am waiting for a paper submission to be accepted before I do so. So, it might take 3-4 weeks before a new version is published.
Did you try installing ClimateTools in a new environment or was it inside the global Julia env?
Thanks for the report. I'm currently working to clean up the dependencies. However, I am waiting for a paper submission to be accepted before I do so. So, it might take 3-4 weeks before a new version is published.
Did you try installing ClimateTools in a new environment or was it inside the global Julia env?
Thanks!
My current solution is that I created a new environment to install ClimateTools package
, calling Plots package
in the global environment. So far it works fine.
Great! I will publish asap a new version that will be up-to-date with current Julia ecosystem. Thanks for your patience 😄
The latest version v.0.24 should fixes dependencies problems. They all have been updated and modifications have been done accordingly. Cheers!
ClimateTools adjusts the dependecies versions of installed packages, causing other packages to precompile incorrectly. For example, ClimateTools would drop the version of the StatsBase package from 0.33.21 to 0.32.2, while pairwise! was only added at 0.33.8. This causes the problem of not finding the pairwise! function. It also caused errors in the pre-compilation of the Plots package. What is the solution?
`julia> using StatsBase help?> pairwise! search:
Couldn't find pairwise! Perhaps you meant pairs No documentation found.
Binding pairwise! does not exist.`
julia> using Plots [ Info: Precompiling Plots [91a5bcdd-55d7-5caf-9e0b-520d859cae80] ERROR: LoadError: MethodError: no method matching floatrange(::Type{Float64}, ::Int64, ::Int64, ::Float64, ::Int64) Closest candidates are: floatrange(::Type{T}, ::Integer, ::Integer, ::Integer, ::Integer) where T at C:\Users\Administrator\AppData\Local\Programs\Julia-1.7.1\share\julia\base\twiceprecision.jl:370 floatrange(::AbstractFloat, ::AbstractFloat, ::Real, ::AbstractFloat) at C:\Users\Administrator\AppData\Local\Programs\Julia-1.7.1\share\julia\base\twiceprecision.jl:384 Stacktrace: [1] floatrange(a::Float64, st::Float64, len::Float64, divisor::Float64) @ Base .\twiceprecision.jl:392 [2] histrange(lo::Float64, hi::Float64, n::Int64, closed::Symbol) @ StatsBase C:\Users\Administrator\.julia\packages\StatsBase\548SN\src\hist.jl:99 [3] histrange(v::Vector{Float64}, n::Int64, closed::Symbol) @ StatsBase C:\Users\Administrator\.julia\packages\StatsBase\548SN\src\hist.jl:39 [4] _hist_edge @ C:\Users\Administrator\.julia\packages\Plots\CUQan\src\recipes.jl:798 [inlined] [5] #212 @ C:\Users\Administrator\.julia\packages\Plots\CUQan\src\recipes.jl:811 [inlined] [6] map @ .\tuple.jl:222 [inlined] [7] _hist_edges @ C:\Users\Administrator\.julia\packages\Plots\CUQan\src\recipes.jl:811 [inlined] [8] _make_hist(vs::Tuple{Vector{Float64}, Vector{Float64}}, binning::Int64; normed::Bool, weights::Nothing) @ Plots C:\Users\Administrator\.julia\packages\Plots\CUQan\src\recipes.jl:830 [9] macro expansion @ C:\Users\Administrator\.julia\packages\Plots\CUQan\src\recipes.jl:952 [inlined] [10] apply_recipe(plotattributes::AbstractDict{Symbol, Any}, #unused#::Type{Val{:histogram2d}}, x::Any, y::Any, z::Any) @ Plots C:\Users\Administrator\.julia\packages\RecipesBase\z10lo\src\RecipesBase.jl:300 [11] _process_seriesrecipe(plt::Any, plotattributes::Any) @ RecipesPipeline C:\Users\Administrator\.julia\packages\RecipesPipeline\XxUHt\src\series_recipe.jl:50 [12] _process_seriesrecipes!(plt::Any, kw_list::Any) @ RecipesPipeline C:\Users\Administrator\.julia\packages\RecipesPipeline\XxUHt\src\series_recipe.jl:27 [13] recipe_pipeline!(plt::Any, plotattributes::Any, args::Any) @ RecipesPipeline C:\Users\Administrator\.julia\packages\RecipesPipeline\XxUHt\src\RecipesPipeline.jl:99 [14] _plot!(plt::Plots.Plot, plotattributes::Any, args::Any) @ Plots C:\Users\Administrator\.julia\packages\Plots\CUQan\src\plot.jl:232 [15] #plot#152 @ C:\Users\Administrator\.julia\packages\Plots\CUQan\src\plot.jl:107 [inlined] [16] #histogram2d#477 @ C:\Users\Administrator\.julia\packages\RecipesBase\z10lo\src\RecipesBase.jl:427 [inlined] [17] var"##10#282"() @ Plots C:\Users\Administrator\.julia\packages\Plots\CUQan\src\precompilation.jl:15 [18] top-level scope @ C:\Users\Administrator\.julia\packages\Plots\CUQan\src\precompilation.jl:25 [19] eval @ .\boot.jl:373 [inlined] [20] eval @ C:\Users\Administrator\.julia\packages\Plots\CUQan\src\Plots.jl:1 [inlined] [21] _broadcast_getindex_evalf @ .\broadcast.jl:670 [inlined] [22] _broadcast_getindex @ .\broadcast.jl:643 [inlined] [23] getindex @ .\broadcast.jl:597 [inlined] [24] copyto_nonleaf!(dest::Vector{Nothing}, bc::Base.Broadcast.Broadcasted{Base.Broadcast.DefaultArrayStyle{1}, Tuple{Base.OneTo{Int64}}, typeof(Plots.eval), Tuple{Base.Broadcast.Extruded{Vector{Expr}, Tuple{Bool}, Tuple{Int64}}}}, iter::Base.OneTo{Int64}, state::Int64, count::Int64) @ Base.Broadcast .\broadcast.jl:1055 [25] copy(bc::Base.Broadcast.Broadcasted{Base.Broadcast.DefaultArrayStyle{1}, Tuple{Base.OneTo{Int64}}, typeof(Plots.eval), Tuple{Vector{Expr}}}) @ Base.Broadcast .\broadcast.jl:907 [26] materialize @ .\broadcast.jl:860 [inlined] [27] macro expansion @ C:\Users\Administrator\.julia\packages\Plots\CUQan\src\precompilation.jl:32 [inlined] [28] macro expansion @ C:\Users\Administrator\.julia\packages\SnoopPrecompile\1XXT1\src\SnoopPrecompile.jl:69 [inlined] [29] (::Plots.var"#589#590")() @ Plots C:\Users\Administrator\.julia\packages\Plots\CUQan\src\precompilation.jl:29 [30] withenv(f::Plots.var"#589#590", keyvals::Pair{String, String}) @ Base .\env.jl:172 [31] macro expansion @ C:\Users\Administrator\.julia\packages\Plots\CUQan\src\precompilation.jl:28 [inlined] [32] macro expansion @ C:\Users\Administrator\.julia\packages\SnoopPrecompile\1XXT1\src\SnoopPrecompile.jl:119 [inlined] [33] top-level scope @ C:\Users\Administrator\.julia\packages\Plots\CUQan\src\precompilation.jl:4 [34] include(mod::Module, _path::String) @ Base .\Base.jl:418 [35] include(x::String) @ Plots C:\Users\Administrator\.julia\packages\Plots\CUQan\src\Plots.jl:1 [36] top-level scope @ C:\Users\Administrator\.julia\packages\Plots\CUQan\src\Plots.jl:204 [37] include @ .\Base.jl:418 [inlined] [38] 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 [39] top-level scope @ none:1 [40] eval @ .\boot.jl:373 [inlined] [41] eval(x::Expr) @ Base.MainInclude .\client.jl:453 [42] top-level scope @ none:1 in expression starting at C:\Users\Administrator\.julia\packages\Plots\CUQan\src\precompilation.jl:3 in expression starting at C:\Users\Administrator\.julia\packages\Plots\CUQan\src\Plots.jl:1 ERROR: Failed to precompile Plots [91a5bcdd-55d7-5caf-9e0b-520d859cae80] to C:\Users\Administrator\.julia\compiled\v1.7\Plots\jl_AB42.tmp. 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
My julia environment: ` julia> versioninfo versioninfo (generic function with 2 methods)julia> versioninfo() Julia Version 1.7.1 Commit ac5cc99908 (2021-12-22 19:35 UTC) Platform Info: OS: Windows (x86_64-w64-mingw32) CPU: Intel(R) Core(TM) i7-8650U CPU @ 1.90GHz WORD_SIZE: 64 LIBM: libopenlibm LLVM: libLLVM-12.0.1 (ORCJIT, skylake) Environment: JULIA_PKG_SERVER = https://mirrors.bfsu.edu.cn/julia/static `