# Unsatisfiable requirements without any compat added?

**URL:** https://discourse.julialang.org/t/unsatisfiable-requirements-without-any-compat-added/85541
**Category:** Package Management
**Created:** [August 9, 2022, 2:56pm UTC](https://discourse.julialang.org/t/unsatisfiable-requirements-without-any-compat-added/85541 "2022-08-09T14:56:16Z")
**Posts on this page:** 2
**Page:** 1

<div class="post-metadata">

### Author: ![albheim](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/albheim/32/34660_2.png) [@albheim](https://discourse.julialang.org/u/albheim)
#### Post date: [August 9, 2022, 2:56pm UTC](https://discourse.julialang.org/t/unsatisfiable-requirements-without-any-compat-added/85541/1 "2022-08-09T14:56:16Z")

</div>

Can’t figure out why this generates an error.

I want to add the packages `Lux` and `EMpht` to the same environment, and it does not work. Here I have a clean temp env, `Lux` is first installed and then I try to add `EMpht`.

What confuses me is that in the `Project.toml` of `EMpht` I can’t see any compat bounds on any dependency. The error says that `Distributions` is restricted to a lower version by `EMpht` (why?), though that still seems to be fine for the `SpecialFunctions` version. It is first further down that `Distributions` create a stricter requirement, though unclear why. It says look at the log above, so I assume it is from `EMpht` though I don’t really understand why it comes there?

Ran this in in julia 1.7.3

```julia
(jl_2yZdHo) pkg> add EMpht
   Resolving package versions...
ERROR: Unsatisfiable requirements detected for package SpecialFunctions [276daf66]:
 SpecialFunctions [276daf66] log:
 ├─possible versions are: 0.7.0-2.1.7 or uninstalled
 ├─restricted by compatibility requirements with Distributions [31c24e10] to versions: 0.7.0-2.1.7
 │ └─Distributions [31c24e10] log:
 │ ├─possible versions are: 0.16.0-0.25.66 or uninstalled
 │ ├─restricted to versions * by an explicit requirement, leaving only versions 0.16.0-0.25.66
 │ └─restricted by compatibility requirements with EMpht [0ca9fa26] to versions: 0.16.0-0.23.12
 │ └─EMpht [0ca9fa26] log:
 │ ├─possible versions are: 0.1.0 or uninstalled
 │ └─restricted to versions * by an explicit requirement, leaving only versions 0.1.0
 ├─restricted by compatibility requirements with Zygote [e88e6eb3] to versions: 0.10.0-2.1.7
 │ └─Zygote [e88e6eb3] log:
 │ ├─possible versions are: 0.1.0-0.6.43 or uninstalled
 │ ├─restricted by compatibility requirements with Lux [b2108857] to versions: 0.6.0-0.6.43
 │ │ └─Lux [b2108857] log:
 │ │ ├─possible versions are: 0.3.0-0.4.16 or uninstalled
 │ │ └─restricted to versions * by an explicit requirement, leaving only versions 0.3.0-0.4.16
 │ └─restricted by compatibility requirements with ChainRulesCore [d360d2e6] to versions: [0.1.0-0.6.5, 0.6.18-0.6.43] or uninstalled, leaving only versions: [0.6.0-0.6.5, 0.6.18-0.6.43]
 │ └─ChainRulesCore [d360d2e6] log:
 │ ├─possible versions are: 0.1.0-1.15.3 or uninstalled
 │ └─restricted by compatibility requirements with Lux [b2108857] to versions: 1.0.0-1.15.3
 │ └─Lux [b2108857] log: see above
 ├─restricted by compatibility requirements with Distributions [31c24e10] to versions: 0.7.0-0.10.3, leaving only versions: 0.10.0-0.10.3
 │ └─Distributions [31c24e10] log: see above
 └─restricted by compatibility requirements with CUDA [052768ef] to versions: 1.3.0-2.1.7 — no versions left
   └─CUDA [052768ef] log:
     ├─possible versions are: 0.1.0-3.12.0 or uninstalled
     ├─restricted by julia compatibility requirements to versions: [2.3.0, 2.5.0-3.12.0] or uninstalled
     ├─restricted by compatibility requirements with Lux [b2108857] to versions: 3.0.0-3.12.0
     │ └─Lux [b2108857] log: see above
     ├─restricted by compatibility requirements with NNlibCUDA [a00861dc] to versions: 3.3.1-3.12.0
     │ └─NNlibCUDA [a00861dc] log:
     │ ├─possible versions are: 0.1.0-0.2.4 or uninstalled
     │ └─restricted by compatibility requirements with Lux [b2108857] to versions: 0.2.0-0.2.4
     │ └─Lux [b2108857] log: see above
     └─restricted by compatibility requirements with LLVM [929cbde3] to versions: 3.3.3-3.12.0 or uninstalled, leaving only versions: 3.3.3-3.12.0
       └─LLVM [929cbde3] log:
         ├─possible versions are: 0.9.0-4.14.0 or uninstalled
         ├─restricted by julia compatibility requirements to versions: 4.0.0-4.14.0 or uninstalled
         └─restricted by compatibility requirements with CUDA [052768ef] to versions: 4.0.0-4.14.0
           └─CUDA [052768ef] log: see above

```

---

<div class="post-metadata">

### Author: ![baggepinnen](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/baggepinnen/32/693_2.png) [@baggepinnen](https://discourse.julialang.org/u/baggepinnen)
#### Post date: [August 9, 2022, 3:01pm UTC](https://discourse.julialang.org/t/unsatisfiable-requirements-without-any-compat-added/85541/2 "2022-08-09T15:01:02Z")

</div>

A package may have a different compat bound in the General registry than it has in its Project.toml file. Before compat bounds were required, some packages were registered without bounds, bounds may have been added in the registry after the package was registered.
