Pkg.update() Error on NullableArrays (JuliaPro_v0.6.2.2_build-321)

When updating packages, the following error was issued. (JuliaPro_v0.6.2.2_build-321 on Windows 10 Pro)

This is probably the same as the errors in Error with NullableArrays when trying to install or remove packages or run Pkg.update() - #6 by Harsha . Do the instructions posted there help?

Also please post code by copying and pasting it, rather than including a screenshot. Screenshots are harder to read and generally impossible to search, among other reasons.

v0.6.2> versioninfo()
Julia Version 0.6.2
Commit d386e40c17* (2017-12-13 18:08 UTC)
Platform Info:
  OS: Windows (x86_64-w64-mingw32)
  CPU: Intel(R) Core(TM) i7-3770K CPU @ 3.50GHz
  WORD_SIZE: 64
  BLAS: mkl_rt
  LAPACK: mkl_rt
  LIBM: libopenlibm
  LLVM: libLLVM-3.9.1 (ORCJIT, ivybridge)

v0.6.2> Pkg.update()
INFO: Updating METADATA...
INFO: Updating cache of Lazy...
INFO: Updating cache of MbedTLS...
INFO: Updating cache of Rotations...
INFO: Updating cache of StatsBase...
INFO: Updating cache of MacroTools...
INFO: Updating cache of LineSearches...
INFO: Updating cache of WeakRefStrings...
INFO: Updating cache of AutoGrad...
INFO: Updating cache of Knet...
INFO: Updating cache of Compat...
INFO: Updating cache of Parameters...
INFO: Updating cache of Dagger...
INFO: Updating cache of Showoff...
INFO: Updating cache of OnlineStats...
INFO: Computing changes...
WARNING: Juno is fixed at 0.4.0 conflicting with requirement for Atom: [0.4.1,∞)
ERROR: resolve is unable to satisfy package requirements.
  The problem was detected when trying to find a feasible version
  for package Compat.
  However, this only means that package Compat is involved in an
  unsatisfiable or difficult dependency relation, and the root of
  the problem may be elsewhere.

Stacktrace:
 [1] resolve(::Dict{String,Base.Pkg.Types.VersionSet}, ::Dict{String,Dict{VersionNumber,Base.Pkg.Types.Available}}) at .\pkg\resolve.jl:48
 [2] resolve(::Dict{String,Base.Pkg.Types.VersionSet}, ::Dict{String,Dict{VersionNumber,Base.Pkg.Types.Available}}, ::Dict{String,Tuple{VersionNumber,Bool}}, ::Dict{String,
Base.Pkg.Types.Fixed}, ::Dict{String,VersionNumber}, ::Set{String}) at .\pkg\entry.jl:499
 [3] update(::String, ::Set{String}) at .\pkg\entry.jl:461
 [4] (::Base.Pkg.Dir.##3#6{Array{Any,1},Base.Pkg.Entry.#update,Tuple{String,Set{String}}})() at .\pkg\dir.jl:33
 [5] cd(::Base.Pkg.Dir.##3#6{Array{Any,1},Base.Pkg.Entry.#update,Tuple{String,Set{String}}}, ::String) at .\file.jl:59
 [6] withenv(::Base.Pkg.Dir.##2#5{Array{Any,1},Base.Pkg.Entry.#update,Tuple{String,Set{String}},String}, ::Pair{String,String}, ::Vararg{Pair{String,String},N} where N) at
.\env.jl:157
 [7] #cd#1(::Array{Any,1}, ::Function, ::Function, ::String, ::Vararg{Any,N} where N) at .\pkg\dir.jl:32
 [8] update() at .\pkg\pkg.jl:228
 [9] macro expansion at H:\JuliaPro-0.6.2.2\pkgs-0.6.2.2\v0.6\Atom\src\repl.jl:118 [inlined]
 [10] anonymous at .\<missing>:?

v0.6.2>

Thank you for your advice and the pointer.
I’ve followed the instructions in the link, but haven’t been able to fix the error.

I found the file REQUIRE under …\v0.6\Requires folder, which had a line
julia 0.6.0-pre.beta.450

I first deleted the line, but it didn’t work.
I changed the line to the following cases, including
julia 0.6.2+
julia 0.6+
but still get the error message as follows:

julia> Pkg.resolve()
ERROR: resolve is unable to satisfy package requirements.
  The problem was detected when trying to find a feasible version
  for package Compat.
  However, this only means that package Compat is involved in an
  unsatisfiable or difficult dependency relation, and the root of
  the problem may be elsewhere.

Stacktrace:
 [1] resolve(::Dict{String,Base.Pkg.Types.VersionSet}, ::Dict{String,Dict{VersionNumber,Base.Pkg.Types.Available}}) at .\pkg\resolve.jl:48
 [2] resolve(::Dict{String,Base.Pkg.Types.VersionSet}, ::Dict{String,Dict{VersionNumber,Base.Pkg.Types.Available}}, ::Dict{String,Tuple{VersionNumber,Bool}}, ::Dict{String,Base.Pkg.Types.Fixed}, ::Dict{String,VersionNumber}, ::Set{String}) at .\pkg\entry.jl:499
 [3] resolve(::Dict{String,Base.Pkg.Types.VersionSet}, ::Dict{String,Dict{VersionNumber,Base.Pkg.Types.Available}}, ::Dict{String,Tuple{VersionNumber,Bool}}, ::Dict{String,Base.Pkg.Types.Fixed}) at .\pkg\entry.jl:479
 [4] (::Base.Pkg.Dir.##3#6{Array{Any,1},Base.Pkg.Entry.#resolve,Tuple{}})() at .\pkg\dir.jl:33
 [5] cd(::Base.Pkg.Dir.##3#6{Array{Any,1},Base.Pkg.Entry.#resolve,Tuple{}}, ::String) at .\file.jl:59
 [6] withenv(::Base.Pkg.Dir.##2#5{Array{Any,1},Base.Pkg.Entry.#resolve,Tuple{},String}, ::Pair{String,String}, ::Vararg{Pair{String,String},N} where N) at .\env.jl:157
 [7] #cd#1(::Array{Any,1}, ::Function, ::Function) at .\pkg\dir.jl:32
 [8] resolve() at .\pkg\pkg.jl:238
julia> versioninfo()
Julia Version 0.6.2
Commit d386e40c17* (2017-12-13 18:08 UTC)
Platform Info:
  OS: Windows (x86_64-w64-mingw32)
  CPU: Intel(R) Core(TM) i7-2620M CPU @ 2.70GHz
  WORD_SIZE: 64
  BLAS: libopenblas (USE64BITINT DYNAMIC_ARCH NO_AFFINITY Sandybridge)
  LAPACK: libopenblas64_
  LIBM: libopenlibm
  LLVM: libLLVM-3.9.1 (ORCJIT, sandybridge)

Er, no, that doesn’t look right. The file you should be changing is ...\v0.6\REQUIRE, and you need to change the line with Compat. See Error with NullableArrays when trying to install or remove packages or run Pkg.update() - #6 by Harsha

It looks like you edited the wrong file (...\v0.6\Requires\REQUIRE) and changed the wrong line (the julia requirement itself).

3 Likes

Sorry I edited the wrong file.
Yes, it worked! :slight_smile:

I opened the file REQUIRE in the folder …\JuliaPro-0.6.2.2\pkgs-0.6.2.2\v0.6, and changed
Compat 0.55.1 0.55.1+
to
Compat

Then, Pkg.resolve() worked fine!
Many thanks.

1 Like

Excellent!

1 Like

@rdeits: Thank you vary much!