# Pkg broken: "No feasible version" error

**URL:** <https://discourse.julialang.org/t/pkg-broken-no-feasible-version-error/2347>\
**Category:** General Usage\
**Created:** [February 27, 2017, 6:34pm UTC](https://discourse.julialang.org/t/pkg-broken-no-feasible-version-error/2347 "2017-02-27T18:34:51Z")\
**Posts on this page:** 17\
**Page:** 1

<div class="post-metadata">

**Author:** ![mkborregaard](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/mkborregaard/32/556_2.png) [@mkborregaard](https://discourse.julialang.org/u/mkborregaard)\
**Post date:** [February 27, 2017, 6:34pm UTC](https://discourse.julialang.org/t/pkg-broken-no-feasible-version-error/2347/1 "2017-02-27T18:34:52Z")

</div>

I have a recurrent issue with Pkg, that means I cannot update packages. Pkg operations (`add`, `rm`, `update`) fail with:

```julia
ERROR: unsatisfiable package requirements detected: no feasible version could be found for package: QuartzImageIO
  (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 /Applications/Julia-0.5.app/Contents/Resources/julia/lib/julia/sys.dylib:? (repeats 2 times)
 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}) at ./pkg/entry.jl:476
 in edit(::Function, ::String, ::Base.Pkg.Types.VersionSet, ::Vararg{Base.Pkg.Types.VersionSet,N}) at ./pkg/entry.jl:30
 in (::Base.Pkg.Entry.##2#5{String,Base.Pkg.Types.VersionSet})() at ./task.jl:360
 in sync_end() at /Applications/Julia-0.5.app/Contents/Resources/julia/lib/julia/sys.dylib:?
 in macro expansion at ./task.jl:327 [inlined]
 in add(::String, ::Base.Pkg.Types.VersionSet) at ./pkg/entry.jl:51
 in (::Base.Pkg.Dir.##2#3{Array{Any,1},Base.Pkg.Entry.#add,Tuple{String}})() at ./pkg/dir.jl:31
 in cd(::Base.Pkg.Dir.##2#3{Array{Any,1},Base.Pkg.Entry.#add,Tuple{String}}, ::String) at ./file.jl:59
 in #cd#1(::Array{Any,1}, ::Function, ::Function, ::String, ::Vararg{Any,N}) at /Applications/Julia-0.5.app/Contents/Resources/julia/lib/julia/sys.dylib:?
 in add(::String) at ./pkg/pkg.jl:100

```

The only operation that gives a different error is, specifically `Pkg.rm("QuartzImageIO")` which fails with the complaint about ColorVectorSpace:

```julia
Pkg.rm("QuartzImageIO")
ERROR: unsatisfiable package requirements detected: no feasible version could be found for package: ColorVectorSpace
  (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 /Applications/Julia-0.5.app/Contents/Resources/julia/lib/julia/sys.dylib:? (repeats 2 times)
 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}) at ./pkg/entry.jl:476
 in edit(::Function, ::String) at ./pkg/entry.jl:30
 in rm(::String) at ./pkg/entry.jl:81
 in (::Base.Pkg.Dir.##2#3{Array{Any,1},Base.Pkg.Entry.#rm,Tuple{String}})() at ./pkg/dir.jl:31
 in cd(::Base.Pkg.Dir.##2#3{Array{Any,1},Base.Pkg.Entry.#rm,Tuple{String}}, ::String) at ./file.jl:59
 in #cd#1(::Array{Any,1}, ::Function, ::Function, ::String, ::Vararg{Any,N}) at /Applications/Julia-0.5.app/Contents/Resources/julia/lib/julia/sys.dylib:?
 in rm(::String) at ./pkg/pkg.jl:91

```

Following, `Pkg.rm("ColorVectorSpace)` seems not to complain

```julia
INFO: Removing ColorVectorSpace (unregistered)

```

but it does not resolve the problem, nor does it make `Pkg.rm("QuartzImageIO")` stop complaining. It appears my Pkg is currently dead.

versioninfo():

```julia
Julia Version 0.5.0
Commit 3c9d753 (2016-09-19 18:14 UTC)
Platform Info:
  System: Darwin (x86_64-apple-darwin13.4.0)
  CPU: Intel(R) Core(TM) i7-5557U CPU @ 3.10GHz
  WORD_SIZE: 64
  BLAS: libopenblas (USE64BITINT DYNAMIC_ARCH NO_AFFINITY Haswell)
  LAPACK: libopenblas64_
  LIBM: libopenlibm
  LLVM: libLLVM-3.7.1 (ORCJIT, broadwell)

```

Pkg.status():

```julia
54 required packages:
 - ArrayViews 0.6.4
 - Atom 0.5.9+ master
 - BenchmarkTools 0.0.7
 - Bio 0.4.5
 - CSV 0.1.2
 - Clustering 0.7.0
 - ColorBrewer 0.3.0
 - Contour 0.2.0
 - CrossfilterCharts 0.1.1
 - DataFrames 0.8.5
 - DataFramesMeta 0.1.3
 - DataTables 0.0.1
 - Distributions 0.12.1
 - FactCheck 0.4.3
 - FileIO 0.3.0
 - FreqTables 0.0.2
 - GLM 0.6.1+ master
 - GLPlot 0.0.5+ master
 - GLVisualize 0.2.2 master
 - GR 0.19.0+ master
 - Gadfly 0.5.3
 - Grid 0.4.2
 - HypothesisTests 0.4.0
 - IJulia 1.4.1
 - JLD 0.6.9
 - LaTeXStrings 0.2.0
 - Lint 0.2.5+ master
 - MAT 0.3.1
 - MarketData 0.6.0
 - MixedModels 0.7.6
 - NamedArrays 0.5.3
 - NetCDF 0.4.1
 - PhyloNetworks 0.5.0+ master
 - PlotRecipes 0.2.0+ master
 - PlotThemes 0.1.1+ master
 - PlotlyJS 0.5.2+ master
 - ProfileView 0.1.5
 - PyPlot 2.3.1
 - Quandl 0.6.1
 - QuartzImageIO 0.1.4
 - Query 0.3.0
 - RCall 0.6.4+ master
 - RDatasets 0.2.0
 - RecipesBase 0.1.0
 - Reexport 0.0.3
 - Requests 0.4.1
 - Rsvg 0.0.2
 - Shapefile 0.0.3
 - SimJulia 0.3.14+ master
 - SimpleTraits 0.3.0
 - StaticArrays 0.3.0
 - Stats 0.1.0
 - TimeSeries 0.9.1+ candlesticks
 - TreeView 0.1.0
149 additional packages:
 - ASTInterpreter 0.0.4
 - AbstractTrees 0.0.4
 - ArgParse 0.4.0
 - AutoHashEquals 0.1.1
 - AxisAlgorithms 0.1.6
 - AxisArrays 0.0.3
 - BGZFStreams 0.1.2
 - BandedMatrices 0.2.1+ master
 - BaseTestNext 0.2.2
 - BinDeps 0.4.7
 - Blink 0.5.1+ master
 - Blosc 0.2.0
 - BufferedStreams 0.3.0
 - COFF 0.0.2
 - CRC 1.2.0
 - Cairo 0.2.35
 - Calculus 0.2.0
 - CatIndices 0.0.2
 - CategoricalArrays 0.1.1
 - CodeTools 0.4.3+ master
 - Codecs 0.2.0
 - ColorTypes 0.2.12
 - Colors 0.6.9
 - Combinatorics 0.3.2
 - CommonSubexpressions 0.0.1
 - Compat 0.19.0
 - Compose 0.4.5
 - Conda 0.5.1
 - CustomUnitRanges 0.0.4
 - DWARF 0.1.0
 - DataArrays 0.3.12
 - DataStreams 0.1.2
 - DataStructures 0.5.3
 - DiffBase 0.0.4
 - Distances 0.4.0
 - DocStringExtensions 0.3.1
 - Docile 0.5.23
 - Documenter 0.9.0
 - DualNumbers 0.2.3
 - ELF 0.1.0
 - FFTViews 0.0.1
 - FixedPointNumbers 0.2.1
 - FixedSizeArrays 0.2.5 master
 - Formatting 0.2.0
 - ForwardDiff 0.3.4
 - FreeType 1.2.0 master
 - FunctionWrappers 0.0.1
 - GLAbstraction 0.3.1+ master
 - GLFW 1.2.2
 - GLWindow 0.3.2 master
 - GZip 0.2.20
 - Gallium 0.0.4+ master
 - GeometryTypes 0.2.2 master
 - Graphics 0.1.3
 - Gtk 0.10.4
 - GtkUtilities 0.1.0
 - HDF5 0.7.3
 - Hexagons 0.0.4
 - Hiccup 0.1.1
 - Homebrew 0.4.2
 - HttpCommon 0.2.6
 - HttpParser 0.2.0
 - HttpServer 0.1.7
 - Images 0.5.14
 - IndexableBitVectors 0.1.1
 - Interpolations 0.3.7
 - IntervalSets 0.0.3
 - IntervalTrees 0.1.1
 - Iterators 0.3.0
 - JSON 0.8.3
 - JuliaParser 0.7.4
 - Juno 0.2.6+ master
 - KernelDensity 0.3.0
 - LNR 0.0.2
 - Lazy 0.11.5 master
 - LegacyStrings 0.2.0
 - Libz 0.2.4
 - LightGraphs 0.7.2
 - LightXML 0.4.0
 - LineSearches 0.1.5
 - Loess 0.1.0
 - MachO 0.0.4
 - MacroTools 0.3.4
 - MappedArrays 0.0.6
 - MathProgBase 0.6.1
 - MbedTLS 0.4.3
 - Measures 0.0.3
 - Media 0.2.5+ master
 - MeshIO 0.0.6
 - MetaPkg 0.0.0- master (unregistered)
 - ModernGL 0.1.1
 - Mustache 0.1.3
 - Mux 0.2.3
 - NLopt 0.3.3
 - NaNMath 0.2.2
 - NamedTuples 1.0.0
 - NearestNeighbors 0.0.5
 - Nettle 0.3.0
 - NetworkLayout 0.0.1
 - NullableArrays 0.1.0
 - ObjFileBase 0.0.4
 - OffsetArrays 0.2.14
 - Optim 0.7.7
 - PDMats 0.5.6
 - Packing 0.0.4
 - ParserCombinator 1.7.11
 - PlotUtils 0.3.0+ colorlibraries2
 - Plots 0.10.3+ JuliaPlots/master
 - PolynomialFactors 0.0.3
 - Polynomials 0.1.2
 - PositiveFactorizations 0.0.4
 - Primes 0.1.2
 - PyCall 1.10.0
 - QuadGK 0.1.1
 - Quaternions 0.1.1
 - RData 0.0.4
 - RangeArrays 0.1.2
 - Ratios 0.0.4
 - Reactive 0.3.7 master
 - Requires 0.3.0
 - Rmath 0.1.6
 - Roots 0.3.0
 - SHA 0.3.1
 - SIUnits 0.1.0
 - ShowItLikeYouBuildIt 0.0.1
 - Showoff 0.0.7
 - SignedDistanceFields 0.1.0
 - SortingAlgorithms 0.1.0
 - SpatialEcology 0.0.0- use-views-for-subsetting (unregistered)
 - SpecialFunctions 0.1.1
 - StatPlots 0.2.1+ DataTables
 - StatsBase 0.13.1 bugfix-for-uneven-bins-in-histogram
 - StatsFuns 0.4.0
 - StructIO 0.0.2
 - TerminalUI 0.0.2
 - TexExtensions 0.0.3
 - TextWrap 0.1.6
 - TikzGraphs 0.3.0
 - TikzPictures 0.3.5
 - Tokenize 0.1.6+ master
 - URIParser 0.1.8
 - UnicodeFun 0.0.2
 - VT100 0.0.2
 - VectorizedRoutines 0.0.2+ master
 - WeakRefStrings 0.2.0
 - WebSockets 0.2.1
 - WoodburyMatrices 0.2.2
 - ZMQ 0.4.1
 - Zlib 0.1.12

```

There is a similar (but not identical) issue here, but I don’t have VideoIO:

> [@More Pkg trouble: "unsatisfiable package requirements detected"](https://discourse.julialang.org/t/more-pkg-trouble-unsatisfiable-package-requirements-detected/2142/11):
>
> @ChrisRackauckas [Done](https://github.com/symengine/SymEngine.jl/issues/72)@tkelman thanks. I removed VideoIO, then Pkg.resolve() added it back (PGFPlots, which I need, is a dependent of a dependent). However, everything seems to work okay now. Any idea why I’m seeing so many packages get downgraded?

I posted in this issue, but was referred to discourse:

> <https://github.com/JuliaLang/julia/issues/20313#issuecomment-282796652>
>
> \*\*Long bug report\*\*, mostly for my own reference.
> 
> Two related issues:
> \- a st…range version resolution that doesn't make much sense, and
> \- a wrong error message (which I've seen before but now have a reproducible test case)
> 
> The following is starting from a clean empty \`JULIA\_PKGDIR\`, and using a particular branch of my METADATA fork so the results won't change with new commits to default JuliaLang metadata-v2.
> \`\`\`
> $ rm -rf $HOME/Julia/jlpkgtmp
> $ JULIA\_PKGDIR=$HOME/Julia/jlpkgtmp ~/Julia/julia-0.6/julia --depwarn=no
> \_
> \_ \_ \_(\_)\_ | A fresh approach to technical computing
> (\_) | (\_) (\_) | Documentation: http://docs.julialang.org
> \_ \_ \_| |\_ \_\_ \_ | Type "?help" for help.
> | | | | | | |/ \_\` | |
> | | |\_| | | | (\_| | | Version 0.6.0-dev.2459 (2017-01-29 03:30 UTC)
> \_/ |\\\_\_'\_|\_|\_|\\\_\_'\_| | Commit 058cc7d\* (0 days old master)
> |\_\_/ | x86\_64-linux-gnu
> 
> julia\> Pkg.init("https://github.com/tkelman/METADATA.jl","tk/old-images")
> INFO: Initializing package repository /home/tkelman/Julia/jlpkgtmp/v0.6
> INFO: Cloning METADATA from https://github.com/tkelman/METADATA.jl
> 
> julia\> Pkg.add("ImageRegistration")
> INFO: Cloning cache of BinDeps from https://github.com/JuliaLang/BinDeps.jl.git
> \<same for Cairo, ColorTypes, Colors, Compat, Dates, FixedPointNumbers, Graphics, ImageRegistration,
> ImageView, Images, IniFile, Reexport, SHA, SIUnits, TexExtensions, Tk, URIParser, Winston, Zlib\>
> INFO: Installing BinDeps v0.4.5
> INFO: Installing Cairo v0.2.35
> INFO: Installing ColorTypes v0.2.12
> INFO: Installing Colors v0.6.9
> INFO: Installing Compat v0.14.0
> INFO: Installing Dates v0.4.4
> INFO: Installing FixedPointNumbers v0.2.1
> INFO: Installing Graphics v0.1.3
> INFO: Installing ImageRegistration v0.0.1
> INFO: Installing ImageView v0.2.0
> INFO: Installing Images v0.4.44
> INFO: Installing IniFile v0.2.5
> INFO: Installing Reexport v0.0.3
> INFO: Installing SHA v0.3.0
> INFO: Installing SIUnits v0.1.0
> INFO: Installing TexExtensions v0.0.3
> INFO: Installing Tk v0.4.0
> INFO: Installing URIParser v0.1.7
> INFO: Installing Winston v0.12.1
> INFO: Installing Zlib v0.1.12
> INFO: Building Cairo
> INFO: Building Images
> ====================================\[ERROR: Images \]=====================================
> 
> LoadError: UndefVarError: Uint8 not defined
> while loading /home/tkelman/Julia/jlpkgtmp/v0.6/Images/deps/build.jl, in expression starting on line 92
> 
> ==========================================================================================
> INFO: Building Tk
> 
> =====================================\[BUILD ERRORS \]=====================================
> 
> WARNING: Images had build errors.
> 
> - packages with build errors remain installed in /home/tkelman/Julia/jlpkgtmp/v0.6
> - build the package(s) and all dependencies with \`Pkg.build("Images")\`
> - build a single package by running its \`deps/build.jl\` script
> 
> ==========================================================================================
> INFO: Package database updated
> 
> julia\> Pkg.pin("Images",v"0.5.14") ### \<---- why didn't Pkg pick this version in the first place????
> INFO: Creating Images branch pinned.1b3536e6.tmp
> INFO: Cloning cache of ColorVectorSpace from https://github.com/JuliaGraphics/ColorVectorSpace.jl.git
> INFO: Cloning cache of DataStructures from https://github.com/JuliaLang/DataStructures.jl.git
> INFO: Cloning cache of FileIO from https://github.com/JuliaIO/FileIO.jl.git
> INFO: Cloning cache of StatsBase from https://github.com/JuliaStats/StatsBase.jl.git
> INFO: Installing ColorVectorSpace v0.1.12
> INFO: Installing DataStructures v0.5.2
> INFO: Installing FileIO v0.2.2
> INFO: Installing StatsBase v0.13.0
> 
> julia\> Pkg.status()
> 1 required packages:
> - ImageRegistration 0.0.1
> 23 additional packages:
> - BinDeps 0.4.5
> - Cairo 0.2.35
> - ColorTypes 0.2.12
> - ColorVectorSpace 0.1.12
> - Colors 0.6.9
> - Compat 0.14.0
> - DataStructures 0.5.2
> - Dates 0.4.4
> - FileIO 0.2.2
> - FixedPointNumbers 0.2.1
> - Graphics 0.1.3
> - ImageView 0.2.0
> - Images 0.5.14 pinned.1b3536e6.tmp
> - IniFile 0.2.5
> - Reexport 0.0.3
> - SHA 0.3.0
> - SIUnits 0.1.0
> - StatsBase 0.13.0
> - TexExtensions 0.0.3
> - Tk 0.4.0
> - URIParser 0.1.7
> - Winston 0.12.1
> - Zlib 0.1.12
> 
> julia\> Pkg.free("Images")
> INFO: Freeing Images
> INFO: Downgrading Images: v0.5.14 =\> v0.4.44
> INFO: Removing ColorVectorSpace v0.1.12
> INFO: Removing DataStructures v0.5.2
> INFO: Removing FileIO v0.2.2
> INFO: Removing StatsBase v0.13.0
> INFO: Building Images
> ====================================\[ERROR: Images \]=====================================
> 
> LoadError: UndefVarError: Uint8 not defined
> while loading /home/tkelman/Julia/jlpkgtmp/v0.6/Images/deps/build.jl, in expression starting on line 92
> 
> ==========================================================================================
> 
> =====================================\[BUILD ERRORS \]=====================================
> 
> WARNING: Images had build errors.
> 
> - packages with build errors remain installed in /home/tkelman/Julia/jlpkgtmp/v0.6
> - build the package(s) and all dependencies with \`Pkg.build("Images")\`
> - build a single package by running its \`deps/build.jl\` script
> 
> ==========================================================================================
> 
> julia\> Pkg.pin("ColorTypes",v"0.3.0") ### the error message below is blaming the wrong package!!!
> INFO: Creating ColorTypes branch pinned.a846a532.tmp
> ERROR: unsatisfiable package requirements detected: no feasible version could be found for package: ImageRegistration
> Stacktrace:
> \[1\] resolve(::Dict{String,Base.Pkg.Types.VersionSet}, ::Dict{String,Dict{VersionNumber,Base.Pkg.Types.Available}}) at ./pkg/resolve.jl:37
> \[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:500
> \[3\] resolve(::Dict{String,Base.Pkg.Types.VersionSet}) at ./pkg/entry.jl:480
> \[4\] pin(::String, ::String) at ./pkg/entry.jl:339
> \[5\] pin(::String, ::VersionNumber) at ./pkg/entry.jl:350
> \[6\] (::Base.Pkg.Dir.##2#3{Array{Any,1},Base.Pkg.Entry.#pin,Tuple{String,VersionNumber}})() at ./pkg/dir.jl:31
> \[7\] cd(::Base.Pkg.Dir.##2#3{Array{Any,1},Base.Pkg.Entry.#pin,Tuple{String,VersionNumber}}, ::String) at ./file.jl:69
> \[8\] #cd#1(::Array{Any,1}, ::Function, ::Function, ::String, ::Vararg{Any,N} where N) at ./pkg/dir.jl:31
> \[9\] pin(::String, ::VersionNumber) at ./pkg/pkg.jl:201
> \`\`\`
> 
> If installing Images 0.5.14 works fine, why didn't Pkg choose to do that? It instead picked an old version, 0.4.44, which happens to not load on recent Julia. My current best theory is that Images 0.4.44 is the most recent version that doesn't depend on the ColorVectorSpace package. If both Images 0.4.44 and Images 0.5.14 are feasible solutions to dependency version resolution though, then I guess the version-weight objective function says the 0.4.44 solution is better somehow?
> 
> cc @carlobaldassi do you have any advice for how to poke at the resolver and figure out what it's thinking?
> 
> The second issue is the error message when you try to pin ColorTypes to 0.3.0. That isn't possible because ColorTypes 0.3.0 requires FixedPointNumbers 0.3.0 or higher, but Images 0.4.44 and 0.5.14 both have upper bounds on FixedPointNumbers of strictly less than 0.3.0. (Be aware that the test branch of metadata here is a bit behind the state of the default JuliaLang metadata-v2.) If you undo the failed pinning of ColorTypes with a \`Pkg.free\`, then switch to Images 0.5.14, then try \`Pkg.pin("ColorTypes",v"0.3.0")\` again, you get a better error message that explains the situation perfectly. The original error from when Images 0.4.44 was installed was blaming ImageRegistration, which is not the package responsible for the issue. The code that's throwing the \`unsatisfiable package requirements detected\` error has a bug.
> 
> \`\`\`
> julia\> Pkg.free("ColorTypes")
> INFO: Freeing ColorTypes
> INFO: Downgrading ColorTypes: v0.3.0 =\> v0.2.12
> 
> julia\> Pkg.pin("Images",v"0.5.14")
> INFO: Package Images: checking out existing branch pinned.1b3536e6.tmp
> INFO: Installing ColorVectorSpace v0.1.12
> INFO: Installing DataStructures v0.5.2
> INFO: Installing FileIO v0.2.2
> INFO: Installing StatsBase v0.13.0
> 
> julia\> Pkg.pin("ColorTypes",v"0.3.0")
> INFO: Package ColorTypes: checking out existing branch pinned.a846a532.tmp
> ERROR: fixed packages introduce conflicting requirements for FixedPointNumbers:
> ColorTypes requires versions \[0.3.0,∞)
> Images requires versions \[0.1.0,0.3.0)
> the requirements are unsatisfiable because their intersection is empty
> Stacktrace:
> \[1\] check\_requirements(::Dict{String,Base.Pkg.Types.VersionSet}, ::Dict{String,Dict{VersionNumber,Base.Pkg.Types.Available}}, ::Dict{String,Base.Pkg.Types.Fixed}) at ./pkg/query.jl:205
> \[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:497
> \[3\] resolve(::Dict{String,Base.Pkg.Types.VersionSet}) at ./pkg/entry.jl:480
> \[4\] pin(::String, ::String) at ./pkg/entry.jl:339
> \[5\] pin(::String, ::VersionNumber) at ./pkg/entry.jl:350
> \[6\] (::Base.Pkg.Dir.##2#3{Array{Any,1},Base.Pkg.Entry.#pin,Tuple{String,VersionNumber}})() at ./pkg/dir.jl:31
> \[7\] cd(::Base.Pkg.Dir.##2#3{Array{Any,1},Base.Pkg.Entry.#pin,Tuple{String,VersionNumber}}, ::String) at ./file.jl:69
> \[8\] #cd#1(::Array{Any,1}, ::Function, ::Function, ::String, ::Vararg{Any,N} where N) at ./pkg/dir.jl:31
> \[9\] pin(::String, ::VersionNumber) at ./pkg/pkg.jl:201
> \`\`\`

---

<div class="post-metadata">

**Author:** ![Ken-B](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/ken-b/32/1780_2.png) [@Ken-B](https://discourse.julialang.org/u/Ken-B)\
**Post date:** [February 27, 2017, 9:02pm UTC](https://discourse.julialang.org/t/pkg-broken-no-feasible-version-error/2347/2 "2017-02-27T21:02:55Z")

</div>

Did you try increasing accuracy as suggested in the error message? Use for example `ENV["JULIA_PKGRESOLVE_ACCURACY"] = "3"; Pkg.resolve()`. I’ve experienced that if this errors, different accuracy values will just point to different packages, so `ColorVectorSpace` might not be related to this issue at all.

Is `QuartzImageIO` still listed in your `REQUIRE` file in your `Pkg.dir()`? I find it odd that it shows `v0.1.4` while the last version released yesterday is `v0.2.1`. `Pkg.dependents("QuartzImageIO")` lists `VisualRegressionTests` and `ColorSchemes` but you don’t seem to have any of them installed, so no potential conflict there.

Ok, I just tried installing “QuartzImageIO” myself (Mac, julia v0.5) and for me it also won’t install `v0.2.1` but `v0.2.0` (with an up to date metadata). EDIT: that’s because the latest released is not yet in metadata, see [pr](https://github.com/JuliaLang/METADATA.jl/pull/8136).

In the similar issue that you pointed to, I ended up removing my complete package dir. I reinstalled packages one by one, noting that no version downgrades occur and moving to master of those packages that did (turned out to be `IterativeSolvers` and `FixedEffectModels` in my case).

---

<div class="post-metadata">

**Author:** ![mkborregaard](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/mkborregaard/32/556_2.png) [@mkborregaard](https://discourse.julialang.org/u/mkborregaard)\
**Post date:** [February 27, 2017, 11:04pm UTC](https://discourse.julialang.org/t/pkg-broken-no-feasible-version-error/2347/3 "2017-02-27T23:04:31Z")

</div>

> [@Ken-B](#):
>
> ENV[“JULIA\_PKGRESOLVE\_ACCURACY”] = “3”; Pkg.resolve()

Thanks, this was very useful. It turned out to be the GLVisualize masters playing tricks. Setting the value to 4 allowed me use Pkg for operations, and since GLVisualize depended on ColorVectorSpace I decided to `Pkg.free()` on GLVisualize, GLPlot, GLAbstraction and GLWindow. This solved the issue! 🙂

@sdanisch may be relevant for you.

---

<div class="post-metadata">

**Author:** ![mkborregaard](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/mkborregaard/32/556_2.png) [@mkborregaard](https://discourse.julialang.org/u/mkborregaard)\
**Post date:** [February 28, 2017, 7:34am UTC](https://discourse.julialang.org/t/pkg-broken-no-feasible-version-error/2347/4 "2017-02-28T07:34:22Z")

</div>

Edit: No I keep having the issue today. Clearly not fair to point the blame at GL-ecosystem, so sorry about that @sdanisch ! I may just resign to setting ENV[“JULIA\_PKGRESOLVE\_ACCURACY”] = “4” every time I run Pkg, seeing that a shift to julia 0.6 is imminent anyway.

---

<div class="post-metadata">

**Author:** ![sdanisch](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/sdanisch/32/1406_2.png) [@sdanisch](https://discourse.julialang.org/u/sdanisch)\
**Post date:** [February 28, 2017, 11:04am UTC](https://discourse.julialang.org/t/pkg-broken-no-feasible-version-error/2347/5 "2017-02-28T11:04:01Z")

</div>

No worries 🙂 Maybe you have some package that is dirty, which then pins others on unsatisfiable versions?  
I’ve been through a whole chain of `Pkg.free("PackageX");Pkg.update("PackageX")`, only to find out that at the end of the chain, there was one dirty package throwing the package manager into havoc!

---

<div class="post-metadata">

**Author:** ![mkborregaard](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/mkborregaard/32/556_2.png) [@mkborregaard](https://discourse.julialang.org/u/mkborregaard)\
**Post date:** [February 28, 2017, 12:13pm UTC](https://discourse.julialang.org/t/pkg-broken-no-feasible-version-error/2347/6 "2017-02-28T12:13:48Z")

</div>

As @Ken-B said, I had QuartzImageIO and its dependencies at very low version numbers. `Pkg.checkout(Images)` updated all of these, and for now at least the problems seem to have disappeared (note my more careful phrasing this time).

---

<div class="post-metadata">

**Author:** ![StefanKarpinski](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/stefankarpinski/32/24_2.png) [@StefanKarpinski](https://discourse.julialang.org/u/StefanKarpinski)\
**Post date:** [February 28, 2017, 2:05pm UTC](https://discourse.julialang.org/t/pkg-broken-no-feasible-version-error/2347/7 "2017-02-28T14:05:08Z")

</div>

@carlobaldassi: this has been happening a _lot_ lately. Is it possible that one of your recent Pkg resolution updates broke something? Or is it possible that some change in METADATA recently added some substructure that it’s not happy with?

---

<div class="post-metadata">

**Author:** ![tkelman](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/tkelman/32/692_2.png) [@tkelman](https://discourse.julialang.org/u/tkelman)\
**Post date:** [February 28, 2017, 2:33pm UTC](https://discourse.julialang.org/t/pkg-broken-no-feasible-version-error/2347/8 "2017-02-28T14:33:59Z")

</div>

It’s the division of Images and all its dependencies.

Carlo’s changes have if anything fixed these. I’m getting through the rest of the backports for 0.5.1 which will include the fixes.

---

<div class="post-metadata">

**Author:** ![carlobaldassi](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/carlobaldassi/32/37_2.png) [@carlobaldassi](https://discourse.julialang.org/u/carlobaldassi)\
**Post date:** [February 28, 2017, 4:11pm UTC](https://discourse.julialang.org/t/pkg-broken-no-feasible-version-error/2347/9 "2017-02-28T16:11:28Z")

</div>

Yes, the reports I’ve seen seem to be all about Julia 0.5, and (if I’m not mistaken) about genuine problems with the requirements (although with very confusing error message reports by the solver).  
I guess we’ll need to see what happens when the changes are backported to 0.5.1 and/or Julia 0.6 is released. Hopefully, the situation should be substantially improved, but we’ll see.  
In the meanwhile, I have been thinking a bit about how to improve the error reporting further, but I haven’t come up with something concrete yet. This is just to say that it’s part of the future plans.

---

<div class="post-metadata">

**Author:** ![sdanisch](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/sdanisch/32/1406_2.png) [@sdanisch](https://discourse.julialang.org/u/sdanisch)\
**Post date:** [March 2, 2017, 11:51am UTC](https://discourse.julialang.org/t/pkg-broken-no-feasible-version-error/2347/10 "2017-03-02T11:51:00Z")

</div>

I think for some reason, people have started using version restrictions much more… 😉  
I run into this quite frequently, especially when trying to set someone else up with Julia…

---

<div class="post-metadata">

**Author:** ![DNF](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/dnf/32/10191_2.png) [@DNF](https://discourse.julialang.org/u/DNF)\
**Post date:** [March 2, 2017, 12:14pm UTC](https://discourse.julialang.org/t/pkg-broken-no-feasible-version-error/2347/11 "2017-03-02T12:14:45Z")

</div>

I have had a lot of these problems lately, on Julia 0.5 installed with homebrew. I’ve been unable to install or update anything the past couple of weeks.

Recently the error message changed into something new. Is this related?:

```julia
julia> Pkg.update()
...
METADATA cannot be updated. Resolve problems manually in /Users/dnf/.julia/v0.5/METADATA.
GitError(Code:ERROR, Class:Invalid, Invalid version 0 on git_proxy_options)

```

---

<div class="post-metadata">

**Author:** ![tkelman](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/tkelman/32/692_2.png) [@tkelman](https://discourse.julialang.org/u/tkelman)\
**Post date:** [March 3, 2017, 12:56am UTC](https://discourse.julialang.org/t/pkg-broken-no-feasible-version-error/2347/12 "2017-03-03T00:56:07Z")

</div>

No, that error is because Homebrew upgrades Julia’s dependencies (here libgit2) underneath you, to newer versions that existing past Julia releases do not work with. Use the dmg version of Julia, which is built against the fixed recommended versions that are tested against at the time of Julia releases.

edit: see [https://github.com/staticfloat/homebrew-julia/issues/231](https://github.com/staticfloat/homebrew-julia/issues/231) for more information on that

---

<div class="post-metadata">

**Author:** ![ogreyesp](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/ogreyesp/32/8169_2.png) [@ogreyesp](https://discourse.julialang.org/u/ogreyesp)\
**Post date:** [March 4, 2017, 3:37pm UTC](https://discourse.julialang.org/t/pkg-broken-no-feasible-version-error/2347/13 "2017-03-04T15:37:39Z")

</div>

Hello,

I’m having the same problem. This problem appeared after I intended (and never worked) to install the Plotly package. How can I resolve it?

> Pkg.update()

INFO: Updating METADATA…  
INFO: Updating cache of DataFrames…  
INFO: Updating cache of DataFrames…  
INFO: Updating Plotly master…  
INFO: Computing changes…  
ERROR: unsatisfiable package requirements detected: no feasible version could be found for package: Compat  
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

---

<div class="post-metadata">

**Author:** ![mkborregaard](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/mkborregaard/32/556_2.png) [@mkborregaard](https://discourse.julialang.org/u/mkborregaard)\
**Post date:** [March 4, 2017, 4:27pm UTC](https://discourse.julialang.org/t/pkg-broken-no-feasible-version-error/2347/14 "2017-03-04T16:27:30Z")

</div>

I think posting the output of `Pkg.status()` is essential for people to give you any specific advice.

---

<div class="post-metadata">

**Author:** ![ogreyesp](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/ogreyesp/32/8169_2.png) [@ogreyesp](https://discourse.julialang.org/u/ogreyesp)\
**Post date:** [March 4, 2017, 8:03pm UTC](https://discourse.julialang.org/t/pkg-broken-no-feasible-version-error/2347/15 "2017-03-04T20:03:55Z")

</div>

This is the output of Pkg.status()

Pkg.status()  
163 required packages:

- ASTInterpreter 0.0.4
- AbstractTrees 0.0.4
- ArgParse 0.4.0
- Atom 0.5.9
- AutoGrad 0.0.5 558a217d (dirty)
- AutoHashEquals 0.1.1
- AxisAlgorithms 0.1.6
- AxisArrays 0.0.3
- BinDeps 0.4.7 461c08f8 (dirty)
- Blink 0.5.1
- Blosc 0.2.0
- BusinessDays 0.5.0
- COFF 0.0.2
- CRC 1.2.0
- CSV 0.1.2 38a36939 (dirty)
- Cairo 0.2.35
- Calculus 0.2.0
- CatIndices 0.0.2
- CategoricalArrays 0.1.1
- Clustering 0.7.0
- CodeTools 0.4.3
- Codecs 0.2.0
- ColorTypes 0.3.4
- ColorVectorSpace 0.4.0
- Colors 0.7.3 d479df3f (dirty)
- Combinatorics 0.3.2
- Compat 0.19.0
- Compose 0.4.5 2337062a (dirty)
- ComputationalResources 0.0.2
- Conda 0.5.1
- Contour 0.2.0
- CustomUnitRanges 0.0.4
- DBAPI 0.0.3
- DSP 0.1.1 8fb5c7ca (dirty)
- DWARF 0.1.0
- DataArrays 0.3.12
- DataFrames 0.8.5
- DataStreams 0.1.2
- DataStructures 0.5.2
- DecFP 0.1.5
- DecisionTree 0.5.1
- DiffBase 0.0.4
- Distances 0.3.2
- Distributions 0.12.1
- DualNumbers 0.2.3
- ELF 0.1.0
- FFTViews 0.0.1
- FileIO 0.3.0
- FixedPointNumbers 0.3.4 852909e2 (dirty)
- FixedSizeArrays 0.2.5
- Fontconfig 0.1.1
- Formatting 0.2.0
- ForwardDiff 0.3.4
- GLM 0.6.1
- GZip 0.2.20
- Gadfly 0.5.3 bc5d4e13 (dirty)
- Gallium 0.0.4 613ab104 (dirty)
- Graphics 0.1.3
- HDF5 0.7.3
- HTTPClient 0.2.1
- Hexagons 0.0.4
- Hiccup 0.1.1
- HttpCommon 0.2.6
- HttpParser 0.2.0
- HttpServer 0.1.7
- HypothesisTests 0.4.0
- IJulia 1.4.1
- ImageAxes 0.1.0
- ImageCore 0.1.4
- ImageFiltering 0.1.2
- ImageMetadata 0.2.0
- Images 0.7.0
- IndirectArrays 0.1.1
- Interact 0.4.3
- Interpolations 0.3.7
- IntervalSets 0.0.3
- Iterators 0.3.0
- JDBC 0.1.0
- JLD 0.6.9
- JSON 0.8.3 a145d09f (dirty)
- JavaCall 0.4.2
- JuMP 0.15.1 a0b5f0d1 (dirty)
- JuliaParser 0.7.4 51ec7616 (dirty)
- JuliaWebAPI 0.2.1
- Juno 0.2.6
- KernelDensity 0.3.0
- Knet 0.8.1 c9556d48 (dirty)
- LNR 0.0.2
- LaTeXStrings 0.2.0
- Lazy 0.11.5
- LegacyStrings 0.2.0
- LibCURL 0.2.1
- LightGraphs 0.7.2
- LightXML 0.4.0
- LineSearches 0.1.5
- Loess 0.1.0
- Logging 0.3.1
- MLBase 0.6.1
- MNIST 0.0.2
- MXNet 0.2.1 e599d51d (dirty)
- MachO 0.0.4
- MacroTools 0.3.4
- MappedArrays 0.0.6
- MathProgBase 0.5.10
- MbedTLS 0.4.3 2ca7a3cb (dirty)
- Measures 0.0.3
- Media 0.2.5
- Mocha 0.2.0 add793ae (dirty)
- Mustache 0.1.3
- Mux 0.2.3
- NaNMath 0.2.2
- NearestNeighbors 0.1.1
- Nettle 0.3.0
- NullableArrays 0.1.0
- ODBC 0.5.1
- ObjFileBase 0.0.4
- OffsetArrays 0.2.14
- Optim 0.7.7
- PDMats 0.5.6
- Parameters 0.6.0 3226946d (dirty)
- ParserCombinator 1.7.11
- Plotly 0.1.1 master
- PolynomialFactors 0.0.3
- Polynomials 0.1.2
- PositiveFactorizations 0.0.4
- Primes 0.1.2
- ProtoBuf 0.3.2 80eda00c (dirty)
- PyCall 1.10.0
- PyPlot 2.3.1 3cbfe1a2 (dirty)
- QuadGK 0.1.1
- QuantEcon 0.9.0
- RCall 0.6.4
- RangeArrays 0.1.2
- Ratios 0.0.4
- Reactive 0.3.7
- Reexport 0.0.3
- Requests 0.4.1
- Requires 0.3.0
- ReverseDiffSparse 0.6.0
- Rmath 0.1.6
- Roots 0.3.0
- SHA 0.3.1
- SIUnits 0.1.0
- ScikitLearnBase 0.2.2
- ShowItLikeYouBuildIt 0.0.1
- Showoff 0.0.7
- SimpleTraits 0.3.0
- SortingAlgorithms 0.1.0
- SpecialFunctions 0.1.1
- StaticArrays 0.3.0
- StatsBase 0.13.1 cb2668ba (dirty)
- StatsFuns 0.4.0
- StructIO 0.0.2
- TerminalUI 0.0.2
- TexExtensions 0.0.3
- TextWrap 0.1.6
- TiledIteration 0.0.2
- URIParser 0.1.8 933fbcd2 (dirty)
- VT100 0.1.0
- WeakRefStrings 0.2.0
- WebSockets 0.2.1
- WoodburyMatrices 0.2.2
- ZMQ 0.4.1  
5 additional packages:
- BufferedStreams 0.3.0
- DocStringExtensions 0.3.1
- JunoRun 0.0.0- master (unregistered)
- Libz 0.2.4
- PlotlyJS 0.5.2

---

<div class="post-metadata">

**Author:** ![tkelman](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/tkelman/32/692_2.png) [@tkelman](https://discourse.julialang.org/u/tkelman)\
**Post date:** [March 4, 2017, 8:58pm UTC](https://discourse.julialang.org/t/pkg-broken-no-feasible-version-error/2347/16 "2017-03-04T20:58:27Z")

</div>

Check why so many packages are dirty. That means you have local modifications to them, which prevents them from being upgraded to avoid overwriting whatever the modifications are. Check with `git status` and `git diff` in each of them, push the changes to a branch in your fork on github if you want to keep them, then go back to an unmodified copy so you can run `Pkg.free("URIParser")` etc and get back to normal releases.

---

<div class="post-metadata">

**Author:** ![ogreyesp](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/ogreyesp/32/8169_2.png) [@ogreyesp](https://discourse.julialang.org/u/ogreyesp)\
**Post date:** [March 4, 2017, 9:21pm UTC](https://discourse.julialang.org/t/pkg-broken-no-feasible-version-error/2347/17 "2017-03-04T21:21:11Z")

</div>

Thanks for your response. I don’t know why so many packages are dirty, I just recent installed JuliaPro and it comes with this packages by default
