Pkg.update() fails

package

#1

Hello,
since a few days Pkg.update() fails on one of my machines:

julia> Pkg.update()
INFO: Updating METADATA...
INFO: Updating GR master...
INFO: Updating QML master...
INFO: Updating RadauBVP master...
INFO: Updating Plots master...
INFO: Updating CxxWrap master...
INFO: Updating GLWindow master...
INFO: Computing changes...
ERROR: unsatisfiable package requirements detected: no feasible version could be found for package: FileIO
  (you may try increasing the value of the
   JULIA_PKGRESOLVE_ACCURACY environment variable)
 in resolve(::Dict{String,Base.Pkg.Types.VersionSet}, ::Dict{String,Dict{VersionNumber,Base.Pkg.Types.Available}}) at ./pkg/resolve.jl:37
 in 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:495
 in update(::String, ::Set{String}) at ./pkg/entry.jl:458
 in (::Base.Pkg.Dir.##2#3{Array{Any,1},Base.Pkg.Entry.#update,Tuple{String,Set{String}}})() at ./pkg/dir.jl:31
 in cd(::Base.Pkg.Dir.##2#3{Array{Any,1},Base.Pkg.Entry.#update,Tuple{String,Set{String}}}, ::String) at ./file.jl:59
 in #cd#1(::Array{Any,1}, ::Function, ::Function, ::String, ::Vararg{Any,N}) at ./pkg/dir.jl:31
 in update() at ./pkg/pkg.jl:210

Any idea how to fix this problem?

Uwe


#2

I think this is because different packages want conflicting versions of FileIO. You can try

Pkg.dependents("FileIO")

and then check which version each requires.


#3

Here my output:

julia> Pkg.dependents("FileIO")
36-element Array{AbstractString,1}:
 "Luxor"        
 "Images"       
 "ELF"          
 "MFCC"         
 "GLAbstraction"
 "NRRD"         
 "LibSndFile"   
 "RData"        
 "AndorSIF"     
 "JLD"          
 ⋮              
 "QuartzImageIO"
 "FLAC"         
 "ImageView"    
 "ImageMagick"  
 "ImagineFormat"
 "Netpbm"       
 "Caesar"       
 "GslibIO"      
 "RDatasets"    

julia> 

How can I display the complete list?

#4

It’s not the prettiest output in the world, but gives the information required.

julia> showall(Pkg.dependents(“FileIO”))
AbstractString[“Luxor”,“Images”,“ELF”,“MFCC”,“GLAbstraction”,“NRRD”,“LibSndFile”,“RData”,“AndorSIF”,“JLD”,“GLBooks”,“PkgBenchmark”,“Weber”,“Meshes”,“WAV”,“DataFrames”,“GLVisualize”,“GLWindow”,“RigidBodyTreeInspector”,“TestImages”,“MeshIO”,“Ogg”,“TensorFlow”,“ProfileView”,“MP3”,“ColorSchemes”,“Opus”,“QuartzImageIO”,“FLAC”,“ImageView”,“ImageMagick”,“ImagineFormat”,“Netpbm”,“Caesar”,“GslibIO”,“RDatasets”]


#5

What does Pkg.status() say?


#6

The problem likely stems from using master of too many packages. Don’t do that unless you’re actively contributing changes to a package. Run Pkg.free to get back to tagged releases.


#7

Indeed, Pkg.free(“QML”) solved my problem. Thanks a lot!

Next question:
I enjoy to test the newest versions of QML.jl, so why does using QML head causes a problem with FileIO?

Uwe


#8

That’s a mystery to me, QML.jl doesn’t require FileIO. Note that at this time the only changes between the released QML.jl and master are changes in tests and examples, so you’re not missing much.