Trouble updating Pluto

I’m having trouble updating Pluto, and I can’t figure out what’s wrong.

(@v1.4) pkg> update Pluto
 Updating registry at `C:\Users\...\.juliapro\JuliaPro_v1.4.2-1\registries\JuliaPro`
   Updating `C:\Users\...\.juliapro\JuliaPro_v1.4.2-1\environments\v1.4\Project.toml`
 [no changes]
   Updating `C:\Users\...\.juliapro\JuliaPro_v1.4.2-1\environments\v1.4\Manifest.toml`
 [no changes]

But then when I open a new notebook, I get a popup:

A new version of Pluto.jl is available!

You have v0.11.2, the latest is v0.11.9.

You can update Pluto.jl using the julia package manager.
Afterwards, exit Pluto.jl and restart julia.

I have restarted julia several times, and updated Pluto several times, and I still get this same message. Perhaps the issue is that I’m using julia 1.4?

But I don’t see a way to easily update julia without uninstalling/reinstalling. Since I don’t want to lost my packages, etc. I’d rather not make a minor upgrade. (Perhaps there is a way to keep the packages, but I don’t know it, and I’d also rather not experiment with keeping packages as I update.)

As you can see calling update yields no changes. If there really is a new version of Pluto.jl available, then it is not being updated because some previous package depends on Pluto.jl and does not support the new version, you can discover which is the package with:

(@v1.4) pkg> add Pluto@0.11.9

This will fail and report the source of the incompatibility if there some package holding Pluto.jl down.

1 Like

Hmm…It was…helpful?

ERROR: Unsatisfiable requirements detected for package Pluto [c3e4b0f8]:
 Pluto [c3e4b0f8] log:
 ├─possible versions are: [0.2.0, 0.3.0-0.3.6, 0.4.0-0.4.3, 0.5.0-0.5.21, 0.6.0-0.6.4, 0.7.0-0.7.10, 0.8.0-0.8.10, 0.9.0-0.9.11, 0.10.0-0.10.13, 0.11.0-0.11.2] or uninstalled
 └─restricted to versions 0.11.9 by an explicit requirement — no versions left

But I can’t figure out what the explicit requirement that’s restricting me from (to?) version 0.11.9 is. Perhaps I need Julia 1.5.

Hm, it seems like your registry data is somehow outdated since the version is definitely registered: https://github.com/JuliaRegistries/General/blob/799b1bd7814cf607286969bdadea7746678c950d/P/Pluto/Versions.toml#L289

The latest Pluto.jl requires Julia 1.0.0 and up, so that should not be a problem: https://github.com/fonsp/Pluto.jl/blob/f7ec03dbac8d46208cba6e600fd6d513f82b71c3/Project.toml#L22

The installation went fine for me.

Well I cloned the registry, and Pluto updated. But now Plots is very broken, as in, the error message is 140,100 characters long.

When I try to use Plots, it returns:

using Plots
[ Info: Precompiling Plots [91a5bcdd-55d7-5caf-9e0b-520d859cae80]
┌ Warning: Module Colors with build ID 1320883362016101 is missing from the cache.
│ This may mean Colors [5ae59095-9a9b-59fe-a467-6f913c188581] does not support precompilation but is imported by a module that does.
└ @ Base loading.jl:1016
┌ Warning: Module Colors with build ID 1320883362016101 is missing from the cache.
│ This may mean Colors [5ae59095-9a9b-59fe-a467-6f913c188581] does not support precompilation but is imported by a module that does.
└ @ Base loading.jl:1016
┌ Warning: Module Colors with build ID 1320883362016101 is missing from the cache.
│ This may mean Colors [5ae59095-9a9b-59fe-a467-6f913c188581] does not support precompilation but is imported by a module that does.
└ @ Base loading.jl:1016
┌ Warning: Module Colors with build ID 1320883362016101 is missing from the cache.
│ This may mean Colors [5ae59095-9a9b-59fe-a467-6f913c188581] does not support precompilation but is imported by a module that does.
└ @ Base loading.jl:1016
[ Info: Skipping precompilation since __precompile__(false). Importing Plots [91a5bcdd-55d7-5caf-9e0b-520d859cae80].
[ Info: Precompiling PlotUtils [995b91a9-d308-5afd-9ec6-746e21dbc043]
┌ Warning: Module Colors with build ID 1320883362016101 is missing from the cache.
│ This may mean Colors [5ae59095-9a9b-59fe-a467-6f913c188581] does not support precompilation but is imported by a module that does.
└ @ Base loading.jl:1016
┌ Warning: Module Colors with build ID 1320883362016101 is missing from the cache.
│ This may mean Colors [5ae59095-9a9b-59fe-a467-6f913c188581] does not support precompilation but is imported by a module that does.
└ @ Base loading.jl:1016
[ Info: Skipping precompilation since __precompile__(false). Importing PlotUtils [995b91a9-d308-5afd-9ec6-746e21dbc043].
[ Info: Precompiling ColorSchemes [35d6a980-a343-548e-a6ea-1d62b119f2f4]
┌ Warning: Module Colors with build ID 1320883362016101 is missing from the cache.
│ This may mean Colors [5ae59095-9a9b-59fe-a467-6f913c188581] does not support precompilation but is imported by a module that does.
└ @ Base loading.jl:1016
[ Info: Skipping precompilation since __precompile__(false). Importing ColorSchemes [35d6a980-a343-548e-a6ea-1d62b119f2f4].
[ Info: Precompiling PlotThemes [ccf2f8ad-2431-5c83-bf29-c5338b663b6a]
┌ Warning: Module PlotUtils with build ID 3069697945552515 is missing from the cache.
│ This may mean PlotUtils [995b91a9-d308-5afd-9ec6-746e21dbc043] does not support precompilation but is imported by a module that does.
└ @ Base loading.jl:1016
[ Info: Skipping precompilation since __precompile__(false). Importing PlotThemes [ccf2f8ad-2431-5c83-bf29-c5338b663b6a].
[ Info: Precompiling RecipesPipeline [01d81517-befc-4cb6-b9ec-a95719d0359c]
┌ Warning: Module PlotUtils with build ID 3069697945552515 is missing from the cache.
│ This may mean PlotUtils [995b91a9-d308-5afd-9ec6-746e21dbc043] does not support precompilation but is imported by a module that does.
└ @ Base loading.jl:1016
[ Info: Skipping precompilation since __precompile__(false). Importing RecipesPipeline [01d81517-befc-4cb6-b9ec-a95719d0359c].

When I then try to plot something simple, it returns:

Error showing value of type Plots.Plot{Plots.GRBackend}:
ERROR: could not load library "libGR.dll"
The specified module could not be found. 
Stacktrace:
 [1] setcharheight(::Float64) at C:\Users\MattProgramming\.juliapro\JuliaPro_v1.4.2-1\packages\GR\8mv9N\src\GR.jl:1395
 [2] gr_set_font(::Plots.Font, ::Plots.Subplot{Plots.GRBackend}; halign::Symbol, valign::Symbol, color::RGB{FixedPointNumbers.Normed{UInt8,8}}, rotation::Int64) at C:\Users\MattProgramming\.juliapro\JuliaPro_v1.4.2-1\packages\Plots\6RLiv\src\backends\gr.jl:386
 [3] gr_set_xticks_font(::Plots.Subplot{Plots.GRBackend}) at C:\Users\MattProgramming\.juliapro\JuliaPro_v1.4.2-1\packages\Plots\6RLiv\src\backends\gr.jl:688
 [4] _update_min_padding!(::Plots.Subplot{Plots.GRBackend}) at C:\Users\MattProgramming\.juliapro\JuliaPro_v1.4.2-1\packages\Plots\6RLiv\src\backends\gr.jl:900
 [5] iterate(::Base.Generator{Array{AbstractLayout,2},typeof(Plots._update_min_padding!)}) at .\generator.jl:47
 [6] _collect(::Array{AbstractLayout,2}, ::Base.Generator{Array{AbstractLayout,2},typeof(Plots._update_min_padding!)}, ::Base.EltypeUnknown, ::Base.HasShape{2}) at .\array.jl:678
 [7] collect_similar(::Array{AbstractLayout,2}, ::Base.Generator{Array{AbstractLayout,2},typeof(Plots._update_min_padding!)}) at .\array.jl:607
 [8] map(::Function, ::Array{AbstractLayout,2}) at .\abstractarray.jl:2072
 [9] _update_min_padding!(::Plots.GridLayout) at C:\Users\MattProgramming\.juliapro\JuliaPro_v1.4.2-1\packages\Plots\6RLiv\src\layouts.jl:310
 [10] prepare_output(::Plots.Plot{Plots.GRBackend}) at C:\Users\MattProgramming\.juliapro\JuliaPro_v1.4.2-1\packages\Plots\6RLiv\src\plot.jl:184
 [11] showjuno(::IOContext{Base.GenericIOBuffer{Array{UInt8,1}}}, ::MIME{Symbol("image/svg+xml")}, ::Plots.Plot{Plots.GRBackend}) at C:\Users\MattProgramming\.juliapro\JuliaPro_v1.4.2-1\packages\Plots\6RLiv\src\output.jl:258
 [12] show(::IOContext{Base.GenericIOBuffer{Array{UInt8,1}}}, ::MIME{Symbol("image/svg+xml")}, ::Plots.Plot{Plots.GRBackend}) at C:\Users\MattProgramming\.juliapro\JuliaPro_v1.4.2-1\packages\Plots\6RLiv\src\output.jl:212
 [13] show(::IOContext{Base.GenericIOBuffer{Array{UInt8,1}}}, ::String, ::Plots.Plot{Plots.GRBackend}) at .\multimedia.jl:109
 [14] displayinplotpane(::Plots.Plot{Plots.GRBackend}) at C:\Users\MattProgramming\.juliapro\JuliaPro_v1.4.2-1\packages\Atom\9h5Up\src\display\showdisplay.jl:67
 [15] display(::Atom.JunoDisplay, ::Plots.Plot{Plots.GRBackend}) at C:\Users\MattProgramming\.juliapro\JuliaPro_v1.4.2-1\packages\Atom\9h5Up\src\display\showdisplay.jl:118
 [16] display(::Any) at .\multimedia.jl:323
 [17] #invokelatest#1 at .\essentials.jl:712 [inlined]
 [18] invokelatest at .\essentials.jl:711 [inlined]
 [19] print_response(::IO, ::Any, ::Bool, ::Bool, ::Any) at C:\Users\julia\AppData\Local\Julia-1.4.2\share\julia\stdlib\v1.4\REPL\src\REPL.jl:161
 [20] print_response(::REPL.AbstractREPL, ::Any, ::Bool, ::Bool) at C:\Users\julia\AppData\Local\Julia-1.4.2\share\julia\stdlib\v1.4\REPL\src\REPL.jl:146
 [21] (::REPL.var"#do_respond#38"{Bool,Atom.var"#250#251",REPL.LineEditREPL,REPL.LineEdit.Prompt})(::Any, ::Any, ::Any) at C:\Users\julia\AppData\Local\Julia-1.4.2\share\julia\stdlib\v1.4\REPL\src\REPL.jl:729
 [22] #invokelatest#1 at .\essentials.jl:712 [inlined]
 [23] invokelatest at .\essentials.jl:711 [inlined]
 [24] run_interface(::REPL.Terminals.TextTerminal, ::REPL.LineEdit.ModalInterface, ::REPL.LineEdit.MIState) at C:\Users\julia\AppData\Local\Julia-1.4.2\share\julia\stdlib\v1.4\REPL\src\LineEdit.jl:2354
 [25] run_frontend(::REPL.LineEditREPL, ::REPL.REPLBackendRef) at C:\Users\julia\AppData\Local\Julia-1.4.2\share\julia\stdlib\v1.4\REPL\src\REPL.jl:1055
 [26] run_repl(::REPL.AbstractREPL, ::Any) at C:\Users\julia\AppData\Local\Julia-1.4.2\share\julia\stdlib\v1.4\REPL\src\REPL.jl:206
 [27] (::Base.var"#764#766"{Bool,Bool,Bool,Bool})(::Module) at .\client.jl:383
 [28] #invokelatest#1 at .\essentials.jl:712 [inlined]
 [29] invokelatest at .\essentials.jl:711 [inlined]
 [30] run_main_repl(::Bool, ::Bool, ::Bool, ::Bool, ::Bool) at .\client.jl:367
 [31] exec_options(::Base.JLOptions) at .\client.jl:305
 [32] _start() at .\client.jl:484
caused by [exception 26]
IOError: symlink: operation not permitted (EPERM)
Stacktrace:
 [1] uv_error at .\libuv.jl:97 [inlined]
 [2] symlink(::String, ::String) at .\file.jl:958
 [3] probe_symlink_creation(::String) at C:\Users\julia\AppData\Local\Julia-1.4.2\share\julia\stdlib\v1.4\Pkg\src\PlatformEngines.jl:132
 [4] unpack(::String, ::String; verbose::Bool) at C:\Users\julia\AppData\Local\Julia-1.4.2\share\julia\stdlib\v1.4\Pkg\src\PlatformEngines.jl:1038
 [5] download_verify_unpack(::String, ::Nothing, ::String; tarball_path::Nothing, ignore_existence::Bool, force::Bool, verbose::Bool, quiet_download::Bool) at C:\Users\julia\AppData\Local\Julia-1.4.2\share\julia\stdlib\v1.4\Pkg\src\PlatformEngines.jl:1214
 [6] download_artifact(::Base.SHA1, ::String, ::Nothing; verbose::Bool, quiet_download::Bool) at C:\Users\julia\AppData\Local\Julia-1.4.2\share\julia\stdlib\v1.4\Pkg\src\Artifacts.jl:750
 [7] (::Pkg.Artifacts.var"#43#45"{Bool,Bool,Base.SHA1})() at C:\Users\julia\AppData\Local\Julia-1.4.2\share\julia\stdlib\v1.4\Pkg\src\Artifacts.jl:874
 [8] with_show_download_info(::Pkg.Artifacts.var"#43#45"{Bool,Bool,Base.SHA1}, ::String, ::Bool) at C:\Users\julia\AppData\Local\Julia-1.4.2\share\julia\stdlib\v1.4\Pkg\src\Artifacts.jl:907
 [9] ensure_artifact_installed(::String, ::Dict{String,Any}, ::String; platform::Pkg.BinaryPlatforms.Platform, verbose::Bool, quiet_download::Bool) at C:\Users\julia\AppData\Local\Julia-1.4.2\share\julia\stdlib\v1.4\Pkg\src\Artifacts.jl:873
 [10] ensure_all_artifacts_installed(::String; platform::Pkg.BinaryPlatforms.Platform, pkg_uuid::Nothing, include_lazy::Bool, verbose::Bool, quiet_download::Bool) at C:\Users\julia\AppData\Local\Julia-1.4.2\share\julia\stdlib\v1.4\Pkg\src\Artifacts.jl:958
 [11] download_artifacts(::Pkg.Types.Context, ::Array{String,1}; platform::Pkg.BinaryPlatforms.Windows, verbose::Bool) at C:\Users\julia\AppData\Local\Julia-1.4.2\share\julia\stdlib\v1.4\Pkg\src\Operations.jl:609
 [12] download_artifacts(::Pkg.Types.Context, ::Array{Pkg.Types.PackageSpec,1}; platform::Pkg.BinaryPlatforms.Windows, verbose::Bool) at C:\Users\julia\AppData\Local\Julia-1.4.2\share\julia\stdlib\v1.4\Pkg\src\Operations.jl:588
 [13] download_artifacts(::Pkg.Types.Context, ::Array{Pkg.Types.PackageSpec,1}) at C:\Users\julia\AppData\Local\Julia-1.4.2\share\julia\stdlib\v1.4\Pkg\src\Operations.jl:587
 [14] up(::Pkg.Types.Context, ::Array{Pkg.Types.PackageSpec,1}, ::Pkg.Types.UpgradeLevel) at C:\Users\julia\AppData\Local\Julia-1.4.2\share\julia\stdlib\v1.4\Pkg\src\Operations.jl:1169
 [15] up(::Pkg.Types.Context, ::Array{Pkg.Types.PackageSpec,1}; level::Pkg.Types.UpgradeLevel, mode::Pkg.Types.PackageMode, update_registry::Bool, kwargs::Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{(),Tuple{}}}) at C:\Users\julia\AppData\Local\Julia-1.4.2\share\julia\stdlib\v1.4\Pkg\src\API.jl:224
 [16] up at C:\Users\julia\AppData\Local\Julia-1.4.2\share\julia\stdlib\v1.4\Pkg\src\API.jl:201 [inlined]
 [17] #up#47 at C:\Users\julia\AppData\Local\Julia-1.4.2\share\julia\stdlib\v1.4\Pkg\src\API.jl:196 [inlined]
 [18] up(::Array{Pkg.Types.PackageSpec,1}) at C:\Users\julia\AppData\Local\Julia-1.4.2\share\julia\stdlib\v1.4\Pkg\src\API.jl:196
 [19] do_cmd!(::Pkg.REPLMode.Command, ::REPL.LineEditREPL) at C:\Users\julia\AppData\Local\Julia-1.4.2\share\julia\stdlib\v1.4\Pkg\src\REPLMode\REPLMode.jl:403
 [20] do_cmd(::REPL.LineEditREPL, ::String; do_rethrow::Bool) at C:\Users\julia\AppData\Local\Julia-1.4.2\share\julia\stdlib\v1.4\Pkg\src\REPLMode\REPLMode.jl:381
 [21] do_cmd at C:\Users\julia\AppData\Local\Julia-1.4.2\share\julia\stdlib\v1.4\Pkg\src\REPLMode\REPLMode.jl:376 [inlined]
 [22] (::Pkg.REPLMode.var"#24#27"{REPL.LineEditREPL,REPL.LineEdit.Prompt})(::REPL.LineEdit.MIState, ::Base.GenericIOBuffer{Array{UInt8,1}}, ::Bool) at C:\Users\julia\AppData\Local\Julia-1.4.2\share\julia\stdlib\v1.4\Pkg\src\REPLMode\REPLMode.jl:542
 [23] (::Atom.var"#4#15"{Pkg.REPLMode.var"#24#27"{REPL.LineEditREPL,REPL.LineEdit.Prompt}})(::REPL.LineEdit.MIState, ::Base.GenericIOBuffer{Array{UInt8,1}}, ::Bool) at C:\Users\MattProgramming\.juliapro\JuliaPro_v1.4.2-1\packages\Atom\9h5Up\src\Atom.jl:31
 [24] #invokelatest#1 at .\essentials.jl:712 [inlined]
 [25] invokelatest at .\essentials.jl:711 [inlined]
 [26] run_interface(::REPL.Terminals.TextTerminal, ::REPL.LineEdit.ModalInterface, ::REPL.LineEdit.MIState) at C:\Users\julia\AppData\Local\Julia-1.4.2\share\julia\stdlib\v1.4\REPL\src\LineEdit.jl:2354
 [27] run_frontend(::REPL.LineEditREPL, ::REPL.REPLBackendRef) at C:\Users\julia\AppData\Local\Julia-1.4.2\share\julia\stdlib\v1.4\REPL\src\REPL.jl:1055
 [28] run_repl(::REPL.AbstractREPL, ::Any) at C:\Users\julia\AppData\Local\Julia-1.4.2\share\julia\stdlib\v1.4\REPL\src\REPL.jl:206
 [29] (::Base.var"#764#766"{Bool,Bool,Bool,Bool})(::Module) at .\client.jl:383
 [30] #invokelatest#1 at .\essentials.jl:712 [inlined]
 [31] invokelatest at .\essentials.jl:711 [inlined]
 [32] run_main_repl(::Bool, ::Bool, ::Bool, ::Bool, ::Bool) at .\client.jl:367
 [33] exec_options(::Base.JLOptions) at .\client.jl:305
 [34] _start() at .\client.jl:484

And then repeats that second error (or something similar) another 25 times.

I think I’m going to call it a night. I’ll probably just uninstall and reinstall in the morning.

Can you show the output of using Pkg; Pkg.status()?

Regarding the libGR.dll error, you can try Pkg.build("GR").

1 Like
julia> using Pkg; Pkg.status()
Status `C:\Users\...\.juliapro\JuliaPro_v1.4.2-1\environments\v1.4\Project.toml`
  [c52e3926] Atom v0.12.11 ⚲      
  [6e4b80f9] BenchmarkTools v0.5.0
  [a134a8b2] BlackBoxOptim v0.5.0   
  [2445eb08] DataDrivenDiffEq v0.3.2
  [aae7a2af] DiffEqFlux v1.17.0
  [41bf760c] DiffEqSensitivity v6.28.0
  [0c46a032] DifferentialEquations v6.15.0
  [31c24e10] Distributions v0.23.4
  [61744808] DynamicalSystems v1.4.0
  [587475ba] Flux v0.10.4
  [f6369f11] ForwardDiff v0.10.12
  [fd0ad045] GeometricalPredicates v0.4.0
  [7073ff75] IJulia v1.21.2
  [c601a237] Interact v0.10.3
  [d1acc4aa] IntervalArithmetic v0.17.5
  [138f1668] IntervalConstraintProgramming v0.12.1
  [c7c68f13] IntervalOptimisation v0.4.2
  [d2bf35a9] IntervalRootFinding v0.5.4
  [4076af6c] JuMP v0.21.3
  [18b7da76] JuliaAcademyData v0.1.0 #master (https://github.com/JuliaComputing/JuliaAcademyData.jl)
  [e5e0dc1b] Juno v0.8.2 ⚲
  [add582a8] MLJ v0.12.0
  [945b72a4] MarketData v0.12.1
  [961ee093] ModelingToolkit v3.14.2
  [76087f3c] NLopt v0.6.0
  [09606e27] ODEInterfaceDiffEq v3.7.0
  [429524aa] Optim v0.22.0
  [1dea7af3] OrdinaryDiffEq v5.42.1
  [65888b18] ParameterizedFunctions v5.4.0
  [4722fa14] PkgAuthentication v0.1.1
  [91a5bcdd] Plots v1.6.0
  [c3e4b0f8] Pluto v0.11.9
  [7f904dfe] PlutoUI v0.5.1
  [639c3291] RecurrenceAnalysis v1.0.3
  [37e2e3b7] ReverseDiff v1.4.2
  [47a9eef4] SparseDiffTools v1.9.1
  [90137ffa] StaticArrays v0.12.4
  [6fc51010] Surrogates v1.2.0
  [f269a46b] TimeZones v1.3.1
  [39424ebd] TreeView v0.3.1
  [fce5fe82] Turing v0.13.0
  [44d3d7a6] Weave v0.10.2
  [e88e6eb3] Zygote v0.4.22
  [ade2ca70] Dates 

So it looks like there were no package problems. And Pkg.build("GR") fixed the issue with Plots. I don’t know what caused these errors, but it’s working now. Thanks!