# Can't install Gadfly - unsatisfiable requirements detected

**URL:** <https://discourse.julialang.org/t/cant-install-gadfly-unsatisfiable-requirements-detected/22205>\
**Category:** New to Julia\
**Created:** [March 22, 2019, 3:15pm UTC](https://discourse.julialang.org/t/cant-install-gadfly-unsatisfiable-requirements-detected/22205 "2019-03-22T15:15:08Z")\
**Posts on this page:** 17\
**Page:** 1

<div class="post-metadata">

**Author:** ![klaff](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/klaff/32/7637_2.png) [@klaff](https://discourse.julialang.org/u/klaff)\
**Post date:** [March 22, 2019, 3:15pm UTC](https://discourse.julialang.org/t/cant-install-gadfly-unsatisfiable-requirements-detected/22205/1 "2019-03-22T15:15:09Z")

</div>

Hi,

[Edit: It seems that I just needed to do a `pkg> update` prior to adding the package. Now off to read about why …]

I’m new to Julia and am having trouble installing Gadfly, specifically this happens when I try to add the package:

```julia
(v1.1) pkg> add Gadfly
Resolving package versions...
ERROR: Unsatisfiable requirements detected for package DebuggerFramework [67417a49]:
 DebuggerFramework [67417a49] log:
 ├─possible versions are: 0.1.0-0.1.2 or uninstalled
 ├─restricted by compatibility requirements with Atom [c52e3926] to versions: 0.1.0-0.1.2
 │ └─Atom [c52e3926] log:
 │ ├─possible versions are: [0.1.0-0.1.1, 0.2.0-0.2.1, 0.3.0, 0.4.0-0.4.6, 0.5.0-0.5.10, 0.6.0-0.6.17, 0.7.0-0.7.15, 0.8.0-0.8.2] or uninstalled
 │ └─restricted to versions 0.7.15 by an explicit requirement, leaving only versions 0.7.15
 └─restricted by julia compatibility requirements to versions: uninstalled — no versions left

(v1.1) pkg>

```

```julia
julia> versioninfo()
Julia Version 1.1.0
Commit 80516ca202 (2019-01-21 21:24 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-6.0.1 (ORCJIT, skylake)

```

[edited post to add result under Linux]

P.S. I tried under Ubuntu in a VMWare session and I get a different compatibility issue:

```julia
(v1.1) pkg> add Gadfly
  Updating registry at `~/.julia/registries/General`
  Updating git-repo `https://github.com/JuliaRegistries/General.git`
 Resolving package versions...
ERROR: Unsatisfiable requirements detected for package SIUnits [b9d75638]:
 SIUnits [b9d75638] log:
 ├─possible versions are: [0.0.1-0.0.6, 0.1.0] or uninstalled
 ├─restricted by compatibility requirements with Images [916415d5] to versions: [0.0.1-0.0.6, 0.1.0]
 │ └─Images [916415d5] log:
 │ ├─possible versions are: [0.2.0-0.2.50, 0.3.0-0.3.3, 0.4.0-0.4.50, 0.5.0-0.5.14, 0.6.0-0.6.1, 0.7.0, 0.8.0, 0.9.0-0.9.1, 0.10.0-0.10.1, 0.11.0-0.11.5, 0.12.0, 0.13.0, 0.14.0, 0.15.0-0.15.1, 0.16.0-0.16.1, 0.17.0-0.17.3] or uninstalled
 │ └─restricted to versions 0.17.2 by an explicit requirement, leaving only versions 0.17.2
 └─restricted by julia compatibility requirements to versions: uninstalled — no versions left

(v1.1) pkg> 

```

```julia
julia> versioninfo()
Julia Version 1.1.0
Commit 80516ca202 (2019-01-21 21:24 UTC)
Platform Info:
  OS: Linux (x86_64-pc-linux-gnu)
  CPU: Intel(R) Core(TM) i7-8650U CPU @ 1.90GHz
  WORD_SIZE: 64
  LIBM: libopenlibm
  LLVM: libLLVM-6.0.1 (ORCJIT, skylake)

```

Thanks

---

<div class="post-metadata">

**Author:** ![roi.holtzman](https://avatars.discourse-cdn.com/v4/letter/r/f05b48/32.png) [@roi.holtzman](https://discourse.julialang.org/u/roi.holtzman)\
**Post date:** [April 28, 2019, 2:31pm UTC](https://discourse.julialang.org/t/cant-install-gadfly-unsatisfiable-requirements-detected/22205/2 "2019-04-28T14:31:13Z")

</div>

@klaff even after doing `update` when in `Pkg` I can’t add `Gadfly`. Do you know what is the issue?

This is the output I get

```julia
(v1.1) pkg> add Gadfly
 Resolving package versions...
ERROR: Unsatisfiable requirements detected for package DataArrays [0fe7c1db]:
 DataArrays [0fe7c1db] log:
 ├─possible versions are: [0.0.1-0.0.3, 0.1.0-0.1.12, 0.2.0-0.2.20, 0.3.0-0.3.12, 0.4.0-0.4.1, 0.5.0-0.5.3, 0.6.0-0.6.2, 0.7.0] or uninstalled
 ├─restricted to versions 0.7.0 by an explicit requirement, leaving only versions 0.7.0
 └─restricted by compatibility requirements with Gadfly [c91e804a] to versions: [0.0.1-0.0.3, 0.1.0-0.1.12, 0.2.0-0.2.20, 0.3.0-0.3.12, 0.4.0-0.4.1, 0.5.0-0.5.3, 0.6.0-0.6.2] — no versions left
   └─Gadfly [c91e804a] log:
     ├─possible versions are: [0.1.0-0.1.31, 0.2.0-0.2.9, 0.3.0-0.3.18, 0.4.0-0.4.4, 0.5.0-0.5.3, 0.6.0-0.6.5, 0.7.0, 0.8.0, 1.0.0-1.0.1] or uninstalled
     ├─restricted to versions * by an explicit requirement, leaving only versions [0.1.0-0.1.31, 0.2.0-0.2.9, 0.3.0-0.3.18, 0.4.0-0.4.4, 0.5.0-0.5.3, 0.6.0-0.6.5, 0.7.0, 0.8.0, 1.0.0-1.0.1]
     └─restricted by compatibility requirements with Distributions [31c24e10] to versions: 0.1.18 or uninstalled, leaving only versions: 0.1.18
       └─Distributions [31c24e10] log:
         ├─possible versions are: [0.1.0-0.1.4, 0.2.0-0.2.13, 0.3.0, 0.6.4-0.6.7, 0.7.0-0.7.6, 0.8.0-0.8.10, 0.9.0, 0.10.0-0.10.2, 0.11.0-0.11.1, 0.12.0-0.12.5, 0.13.0, 0.14.0-0.14.2, 0.15.0, 0.16.0-0.16.4, 0.17.0, 0.18.0, 0.19.1-0.19.2] or uninstalled
         └─restricted to versions 0.19.2 by an explicit requirement, leaving only versions 0.19.2

```

I have `DataArrays` installed already.

---

<div class="post-metadata">

**Author:** ![klaff](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/klaff/32/7637_2.png) [@klaff](https://discourse.julialang.org/u/klaff)\
**Post date:** [April 28, 2019, 6:56pm UTC](https://discourse.julialang.org/t/cant-install-gadfly-unsatisfiable-requirements-detected/22205/3 "2019-04-28T18:56:58Z")

</div>

Despite my comment above I didn’t do much more research, so I don’t know how to figure out where the conflicting requirements are coming from.

---

<div class="post-metadata">

**Author:** ![Mattriks](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/mattriks/32/351_2.png) [@Mattriks](https://discourse.julialang.org/u/Mattriks)\
**Post date:** [April 28, 2019, 8:34pm UTC](https://discourse.julialang.org/t/cant-install-gadfly-unsatisfiable-requirements-detected/22205/4 "2019-04-28T20:34:16Z")

</div>

[DataArrays.jl](https://github.com/JuliaStats/DataArrays.jl) is a deprecated package, and isn’t a requirement of the current version of Gadfly: [https://github.com/GiovineItalia/Gadfly.jl/blob/master/Project.toml](https://github.com/GiovineItalia/Gadfly.jl/blob/master/Project.toml).  
So try removing DataArrays.

---

<div class="post-metadata">

**Author:** ![roi.holtzman](https://avatars.discourse-cdn.com/v4/letter/r/f05b48/32.png) [@roi.holtzman](https://discourse.julialang.org/u/roi.holtzman)\
**Post date:** [April 29, 2019, 6:50am UTC](https://discourse.julialang.org/t/cant-install-gadfly-unsatisfiable-requirements-detected/22205/5 "2019-04-29T06:50:42Z")

</div>

Thanks, I’ve removed `DataArrays` but still I cannot add `Gadfly`. I did `update` after removing `DataArrays`, but I still get the same error.

---

<div class="post-metadata">

**Author:** ![Mattriks](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/mattriks/32/351_2.png) [@Mattriks](https://discourse.julialang.org/u/Mattriks)\
**Post date:** [April 29, 2019, 7:02am UTC](https://discourse.julialang.org/t/cant-install-gadfly-unsatisfiable-requirements-detected/22205/6 "2019-04-29T07:02:40Z")

</div>

Does `add Gadfly#master` work?  
If not, can you list your Pkg status.

---

<div class="post-metadata">

**Author:** ![roi.holtzman](https://avatars.discourse-cdn.com/v4/letter/r/f05b48/32.png) [@roi.holtzman](https://discourse.julialang.org/u/roi.holtzman)\
**Post date:** [April 29, 2019, 9:32am UTC](https://discourse.julialang.org/t/cant-install-gadfly-unsatisfiable-requirements-detected/22205/7 "2019-04-29T09:32:58Z")

</div>

It does something, but I still get some errors:

```julia
(v1.1) pkg> add Gadfly#master
   Cloning git-repo `https://github.com/GiovineItalia/Gadfly.jl.git`
  Updating git-repo `https://github.com/GiovineItalia/Gadfly.jl.git`
 Resolving package versions...
ERROR: Unsatisfiable requirements detected for package StatsBase [2913bbd2]:
 StatsBase [2913bbd2] log:
 ├─possible versions are: [0.1.0, 0.2.0-0.2.1, 0.2.3-0.2.10, 0.3.0-0.3.13, 0.4.0-0.4.4, 0.5.0-0.5.3, 0.6.0-0.6.16, 0.7.0-0.7.4, 0.8.0-0.8.3, 0.9.0, 0.10.0, 0.11.0-0.11.1, 0.12.0, 0.13.0-0.13.1, 0.14.0-0.14.1, 0.15.0, 0.16.0-0.16.1, 0.17.0, 0.18.0, 0.19.0-0.19.5, 0.20.0-0.20.1, 0.22.0, 0.23.0-0.23.1, 0.24.0, 0.25.0, 0.26.0, 0.27.0, 0.28.0-0.28.1, 0.29.0, 0.30.0] or uninstalled
 ├─restricted to versions 0.29.0-0.29 by Gadfly [c91e804a], leaving only versions 0.29.0
 │ └─Gadfly [c91e804a] log:
 │ ├─possible versions are: 1.1.0 or uninstalled
 │ └─Gadfly [c91e804a] is fixed to version 1.1.0
 └─restricted to versions 0.30.0 by an explicit requirement — no versions left

```

I tried `using Gadfly` but it still does not work.

My Pkg status is

```julia
(v1.1) pkg> status
    Status `~/.julia/environments/v1.1/Project.toml`
  [c52e3926] Atom v0.8.5
  [34da2185] Compat v2.1.0
  [0c46a032] DifferentialEquations v6.3.0
  [31c24e10] Distributions v0.19.2
  [7073ff75] IJulia v1.18.1
  [e5e0dc1b] Juno v0.7.0
  [b964fa9f] LaTeXStrings v1.0.3
  [23fbe1c1] Latexify v0.8.2
  [65888b18] ParameterizedFunctions v4.1.1
  [91a5bcdd] Plots v0.24.0
  [438e738f] PyCall v1.91.2
  [d330b81b] PyPlot v2.8.1
  [1fd47b50] QuadGK v2.0.3
  [276daf66] SpecialFunctions v0.7.2
  [2913bbd2] StatsBase v0.30.0

```

---

<div class="post-metadata">

**Author:** ![Ajaychat3](https://avatars.discourse-cdn.com/v4/letter/a/ecd19e/32.png) [@Ajaychat3](https://discourse.julialang.org/u/Ajaychat3)\
**Post date:** [April 29, 2019, 9:44am UTC](https://discourse.julialang.org/t/cant-install-gadfly-unsatisfiable-requirements-detected/22205/8 "2019-04-29T09:44:19Z")

</div>

I had a similar problem installing StatsBase and it was due to Distributions v0.19 package.

Can you try uninstalling Distributions and then install Gadfly? If this does not work then also uninstall StatsBase and try.

---

<div class="post-metadata">

**Author:** ![kristoffer.carlsson](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/kristoffer.carlsson/32/22_2.png) [@kristoffer.carlsson](https://discourse.julialang.org/u/kristoffer.carlsson)\
**Post date:** [April 29, 2019, 9:48am UTC](https://discourse.julialang.org/t/cant-install-gadfly-unsatisfiable-requirements-detected/22205/9 "2019-04-29T09:48:21Z")

</div>

Try `add StatsBase Gadfly`.

---

<div class="post-metadata">

**Author:** ![Mattriks](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/mattriks/32/351_2.png) [@Mattriks](https://discourse.julialang.org/u/Mattriks)\
**Post date:** [April 29, 2019, 10:17am UTC](https://discourse.julialang.org/t/cant-install-gadfly-unsatisfiable-requirements-detected/22205/10 "2019-04-29T10:17:30Z")

</div>

or `add StatsBase@0.29`

The explanation (as I understand it) is that if you have a package B (e.g. `StatsBase`) installed independently in your environment that package A (e.g. `Gadfly`) depends on, then package B in your environment needs to match package A’s [Project.toml](https://github.com/GiovineItalia/Gadfly.jl/blob/master/Project.toml). @kristoffer.carlsson might want to elaborate.

---

<div class="post-metadata">

**Author:** ![kristoffer.carlsson](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/kristoffer.carlsson/32/22_2.png) [@kristoffer.carlsson](https://discourse.julialang.org/u/kristoffer.carlsson)\
**Post date:** [April 29, 2019, 11:04am UTC](https://discourse.julialang.org/t/cant-install-gadfly-unsatisfiable-requirements-detected/22205/11 "2019-04-29T11:04:31Z")

</div>

[https://github.com/JuliaLang/Pkg.jl/issues/110](https://github.com/JuliaLang/Pkg.jl/issues/110) says it all pretty much.

---

<div class="post-metadata">

**Author:** ![roi.holtzman](https://avatars.discourse-cdn.com/v4/letter/r/f05b48/32.png) [@roi.holtzman](https://discourse.julialang.org/u/roi.holtzman)\
**Post date:** [April 29, 2019, 12:32pm UTC](https://discourse.julialang.org/t/cant-install-gadfly-unsatisfiable-requirements-detected/22205/12 "2019-04-29T12:32:56Z")

</div>

@kristoffer.carlsson Trying `add StatsBase Gadfly`, it seems that it needs `DataArrays`

I get

```julia
(v1.1) pkg> add StatsBase Gadfly
 Resolving package versions...
ERROR: Unsatisfiable requirements detected for package DataArrays [0fe7c1db]:
 DataArrays [0fe7c1db] log:
 ├─possible versions are: [0.0.1-0.0.3, 0.1.0-0.1.12, 0.2.0-0.2.20, 0.3.0-0.3.12, 0.4.0-0.4.1, 0.5.0-0.5.3, 0.6.0-0.6.2, 0.7.0] or uninstalled
 ├─restricted by compatibility requirements with Gadfly [c91e804a] to versions: [0.0.1-0.0.3, 0.1.0-0.1.12, 0.2.0-0.2.20, 0.3.0-0.3.12, 0.4.0-0.4.1, 0.5.0-0.5.3, 0.6.0-0.6.2]
 │ └─Gadfly [c91e804a] log:
 │ ├─possible versions are: [0.1.0-0.1.31, 0.2.0-0.2.9, 0.3.0-0.3.18, 0.4.0-0.4.4, 0.5.0-0.5.3, 0.6.0-0.6.5, 0.7.0, 0.8.0, 1.0.0-1.0.1] or uninstalled
 │ ├─restricted to versions * by an explicit requirement, leaving only versions [0.1.0-0.1.31, 0.2.0-0.2.9, 0.3.0-0.3.18, 0.4.0-0.4.4, 0.5.0-0.5.3, 0.6.0-0.6.5, 0.7.0, 0.8.0, 1.0.0-1.0.1]
 │ └─restricted by compatibility requirements with Distributions [31c24e10] to versions: 0.1.18 or uninstalled, leaving only versions: 0.1.18
 │ └─Distributions [31c24e10] log:
 │ ├─possible versions are: [0.1.0-0.1.4, 0.2.0-0.2.13, 0.3.0, 0.6.4-0.6.7, 0.7.0-0.7.6, 0.8.0-0.8.10, 0.9.0, 0.10.0-0.10.2, 0.11.0-0.11.1, 0.12.0-0.12.5, 0.13.0, 0.14.0-0.14.2, 0.15.0, 0.16.0-0.16.4, 0.17.0, 0.18.0, 0.19.1-0.19.2] or uninstalled
 │ └─restricted to versions 0.19.2 by an explicit requirement, leaving only versions 0.19.2
 └─restricted by julia compatibility requirements to versions: 0.7.0 or uninstalled — no versions left

```

@Mattriks trying `add StatsBase@0.29` doesn’t work also. It seems that the `Distributions` package needs version `0.30.0` of `StatsBase`

```julia
(v1.1) pkg> add StatsBase@0.29
 Resolving package versions...
ERROR: Unsatisfiable requirements detected for package StatsBase [2913bbd2]:
 StatsBase [2913bbd2] log:
 ├─possible versions are: [0.1.0, 0.2.0-0.2.1, 0.2.3-0.2.10, 0.3.0-0.3.13, 0.4.0-0.4.4, 0.5.0-0.5.3, 0.6.0-0.6.16, 0.7.0-0.7.4, 0.8.0-0.8.3, 0.9.0, 0.10.0, 0.11.0-0.11.1, 0.12.0, 0.13.0-0.13.1, 0.14.0-0.14.1, 0.15.0, 0.16.0-0.16.1, 0.17.0, 0.18.0, 0.19.0-0.19.5, 0.20.0-0.20.1, 0.22.0, 0.23.0-0.23.1, 0.24.0, 0.25.0, 0.26.0, 0.27.0, 0.28.0-0.28.1, 0.29.0, 0.30.0] or uninstalled
 ├─restricted to versions 0.29 by an explicit requirement, leaving only versions 0.29.0
 └─restricted by compatibility requirements with Distributions [31c24e10] to versions: 0.30.0 — no versions left
   └─Distributions [31c24e10] log:
     ├─possible versions are: [0.1.0-0.1.4, 0.2.0-0.2.13, 0.3.0, 0.6.4-0.6.7, 0.7.0-0.7.6, 0.8.0-0.8.10, 0.9.0, 0.10.0-0.10.2, 0.11.0-0.11.1, 0.12.0-0.12.5, 0.13.0, 0.14.0-0.14.2, 0.15.0, 0.16.0-0.16.4, 0.17.0, 0.18.0, 0.19.1-0.19.2] or uninstalled
     └─restricted to versions 0.19.2 by an explicit requirement, leaving only versions 0.19.2

```

Is there a way to bypass it?

---

<div class="post-metadata">

**Author:** ![Mattriks](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/mattriks/32/351_2.png) [@Mattriks](https://discourse.julialang.org/u/Mattriks)\
**Post date:** [April 29, 2019, 2:03pm UTC](https://discourse.julialang.org/t/cant-install-gadfly-unsatisfiable-requirements-detected/22205/13 "2019-04-29T14:03:26Z")

</div>

Reading the posts above, you need to downgrade 2 packages in your environment (Distributions and StatsBase) to the same versions as in Gadfly’s [Project.toml](https://github.com/GiovineItalia/Gadfly.jl/blob/master/Project.toml). Try `add Distributions@0.18` first.

If that doesn’t work, maybe edit the Project.toml file in your v1.1 environment, so that it contains the needed [compats] for Distributions and StatsBase, and then `instantiate` the Project.toml in a (clean) v1.1 folder. See [Pkg docs](https://julialang.github.io/Pkg.jl/v1/compatibility/) for more info.

---

<div class="post-metadata">

**Author:** ![roi.holtzman](https://avatars.discourse-cdn.com/v4/letter/r/f05b48/32.png) [@roi.holtzman](https://discourse.julialang.org/u/roi.holtzman)\
**Post date:** [April 29, 2019, 2:17pm UTC](https://discourse.julialang.org/t/cant-install-gadfly-unsatisfiable-requirements-detected/22205/14 "2019-04-29T14:17:59Z")

</div>

@Mattriks Perfect! Installing `Distributions@0.18` and `add StatsBase@0.29` works like a charm. Now `add Gadfly` runs ok. Thanks!

---

<div class="post-metadata">

**Author:** ![wgfoote](https://avatars.discourse-cdn.com/v4/letter/w/6f9a4e/32.png) [@wgfoote](https://discourse.julialang.org/u/wgfoote)\
**Post date:** [May 22, 2020, 5:23pm UTC](https://discourse.julialang.org/t/cant-install-gadfly-unsatisfiable-requirements-detected/22205/15 "2020-05-22T17:23:46Z")

</div>

I tried all of the above recommendations and Gadfly still has unsatisfiable requirements detected. What changed since 2019? Thanks.

---

<div class="post-metadata">

**Author:** ![Mattriks](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/mattriks/32/351_2.png) [@Mattriks](https://discourse.julialang.org/u/Mattriks)\
**Post date:** [May 22, 2020, 5:48pm UTC](https://discourse.julialang.org/t/cant-install-gadfly-unsatisfiable-requirements-detected/22205/16 "2020-05-22T17:48:50Z")

</div>

Please paste your errors, after reading this [help psa](https://discourse.julialang.org/t/psa-make-it-easier-to-help-you/14757).

---

<div class="post-metadata">

**Author:** ![NicholasWMRitchie](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/nicholaswmritchie/32/22449_2.png) [@NicholasWMRitchie](https://discourse.julialang.org/u/NicholasWMRitchie)\
**Post date:** [May 26, 2020, 2:50pm UTC](https://discourse.julialang.org/t/cant-install-gadfly-unsatisfiable-requirements-detected/22205/17 "2020-05-26T14:50:26Z")

</div>

Gadfly is my favorite 2D plotting package however, there is something odd about Gadfly’s interaction with the package manager. I haven’t been able to figure out why. However, some of the other comments sound familiar to me. The interaction with DataArrays being one.

If I don’t pin my version of Gadfly to the latest (v1.2.1) then Gadfly is sometimes (~30% of the time) downgraded by the package manager to a 2 year old version (0.8 ish) which installs a non-compiling version of DataArrays. Everything goes downhill from there. Before I started pinning Gadfly to the latest revision, I’d dread `] update` as I’d never know what was going to happen once the cascade of downgrades started.
