# Unsatisfiable requirements error between my personal packages

**URL:** <https://discourse.julialang.org/t/unsatisfiable-requirements-error-between-my-personal-packages/95802>\
**Category:** Package Management\
**Tags:** compatibility\
**Created:** [March 9, 2023, 2:50pm UTC](https://discourse.julialang.org/t/unsatisfiable-requirements-error-between-my-personal-packages/95802 "2023-03-09T14:50:50Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![Nathan\_Boyer](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/nathan_boyer/32/14825_2.png) [@Nathan\_Boyer](https://discourse.julialang.org/u/Nathan_Boyer)\
**Post date:** [March 9, 2023, 2:50pm UTC](https://discourse.julialang.org/t/unsatisfiable-requirements-error-between-my-personal-packages/95802/1 "2023-03-09T14:50:50Z")

</div>

I wrote a package `ASME_SectionVIII_Division3_Edition2021` which depends on two other packages that I wrote, `KM620` and `KD232`, plus some other public packages. (None of my packages have real version numbers because I don’t have a local registry.)

The packages work together fine from the package’s environment:

```julia
(ASME_SectionVIII_Division3_Edition2021) pkg> st
Project ASME_SectionVIII_Division3_Edition2021 v0.1.0
Status `C:\Users\nboyer.AIP\.julia\dev\ASME_SectionVIII_Division3_Edition2021\Project.toml`
  [cbdf2221] AlgebraOfGraphics v0.6.14
  [336ed68f] CSV v0.10.9
  [13f3f980] CairoMakie v0.10.2
  [8be319e6] Chain v0.5.0
  [a93c6f00] DataFrames v1.5.0
  [d872a56f] ElectronDisplay v1.0.1
  [1fa38f19] Format v1.3.2
  [c27321d9] Glob v1.3.0
  [a98d9a8b] Interpolations v0.14.7
  [41458dd0] KD232 v0.1.0 `https://github.com/nathanrboyer/KD232.jl.git#master`
  [0ccbab1c] KM620 v0.1.0 `https://github.com/nathanrboyer/KM620.jl.git#master`
  [b964fa9f] LaTeXStrings v1.3.0
  [23fbe1c1] Latexify v0.15.18
  [e1fe445b] NativeFileDialog v0.2.1
  [bac558e1] OrderedCollections v1.4.1
  [f27b6e38] Polynomials v3.2.6
  [08abe8d2] PrettyTables v2.2.2
  [90137ffa] StaticArrays v1.5.16
  [fdbf4ff8] XLSX v0.9.0
  [37e2e46d] LinearAlgebra
  [10745b16] Statistics

(ASME_SectionVIII_Division3_Edition2021) pkg> up
    Updating registry at `C:\Users\nboyer.AIP\.julia\registries\General.toml`
    Updating git-repo `https://github.com/nathanrboyer/KM620.jl.git`
    Updating git-repo `https://github.com/nathanrboyer/KD232.jl.git`
  No Changes to `C:\Users\nboyer.AIP\.julia\dev\ASME_SectionVIII_Division3_Edition2021\Project.toml`
  No Changes to `C:\Users\nboyer.AIP\.julia\dev\ASME_SectionVIII_Division3_Edition2021\Manifest.toml`

```

However, it breaks when I try to work with the package in an external environment:

```julia
(@Code2021) pkg> st
Status `C:\Users\nboyer.AIP\.julia\environments\Code2021\Project.toml`
  [d29f79e6] ASME_SectionVIII_Division3_Edition2021 v0.1.0 `\\AIP-HQ-SRV1\Company Shared\Julia\ASME_SectionVIII_Division3_Edition2021#master`

(@Code2021) pkg> up
    Updating registry at `C:\Users\nboyer.AIP\.julia\registries\General.toml`
    Updating git-repo `\\AIP-HQ-SRV1\Company Shared\Julia\ASME_SectionVIII_Division3_Edition2021`
ERROR: Unsatisfiable requirements detected for package KM620 [0ccbab1c]:
 KM620 [0ccbab1c] log:
 ├─KM620 [0ccbab1c] has no known versions!
 └─restricted to versions * by ASME_SectionVIII_Division3_Edition2021 [d29f79e6] — no versions left
   └─ASME_SectionVIII_Division3_Edition2021 [d29f79e6] log:
     ├─possible versions are: 0.1.0 or uninstalled
     └─ASME_SectionVIII_Division3_Edition2021 [d29f79e6] is fixed to version 0.1.0

```

> **ASME\_SectionVIII\_Division3\_Edition2021 Project.toml**
>
> ```julia
> name = "ASME_SectionVIII_Division3_Edition2021"
> uuid = "d29f79e6-4313-439e-a1e0-c6c95527bf41"
> authors = ["nathanrboyer"]
> version = "0.1.0"
> 
> [deps]
> AlgebraOfGraphics = "cbdf2221-f076-402e-a563-3d30da359d67"
> CSV = "336ed68f-0bac-5ca0-87d4-7b16caf5d00b"
> CairoMakie = "13f3f980-e62b-5c42-98c6-ff1f3baf88f0"
> Chain = "8be319e6-bccf-4806-a6f7-6fae938471bc"
> DataFrames = "a93c6f00-e57d-5684-b7b6-d8193f3e46c0"
> ElectronDisplay = "d872a56f-244b-5cc9-b574-2017b5b909a8"
> Format = "1fa38f19-a742-5d3f-a2b9-30dd87b9d5f8"
> Glob = "c27321d9-0574-5035-807b-f59d2c89b15c"
> Interpolations = "a98d9a8b-a2ab-59e6-89dd-64a1c18fca59"
> KD232 = "41458dd0-f39a-4bb6-a4e0-031fda6b0048"
> KM620 = "0ccbab1c-04f8-4773-914b-89ad8e9d3a96"
> LaTeXStrings = "b964fa9f-0449-5b57-a5c2-d3ea65f4040f"
> Latexify = "23fbe1c1-3f47-55db-b15f-69d7ec21a316"
> LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e"
> NativeFileDialog = "e1fe445b-aa65-4df4-81c1-2041507f0fd4"
> OrderedCollections = "bac558e1-5e72-5ebc-8fee-abe8a469f55d"
> Polynomials = "f27b6e38-b328-58d1-80ce-0feddd5e7a45"
> PrettyTables = "08abe8d2-0d0c-5749-adfa-8a2ac140af0d"
> StaticArrays = "90137ffa-7385-5640-81b9-e52037218182"
> Statistics = "10745b16-79ce-11e8-11f9-7d13ad32a3b2"
> XLSX = "fdbf4ff8-1666-58a4-91e7-1b58723a45e0"
> 
> [compat]
> AlgebraOfGraphics = "0.6"
> CSV = "0.10"
> CairoMakie = "0.8, 0.9, 0.10"
> Chain = "0.5"
> DataFrames = "1"
> ElectronDisplay = "1"
> Format = "1"
> Glob = "1"
> Interpolations = "0.14"
> LaTeXStrings = "1"
> Latexify = "0.15"
> NativeFileDialog = "0.2"
> OrderedCollections = "1"
> Polynomials = "3"
> PrettyTables = "1, 2"
> StaticArrays = "1"
> XLSX = "0.8, 0.9"
> julia = "1.6"
> 
> ```

> **KM620 Project.toml**
>
> ```julia
> name = "KM620"
> uuid = "0ccbab1c-04f8-4773-914b-89ad8e9d3a96"
> authors = ["nathanrboyer"]
> version = "0.1.0"
> 
> [deps]
> CSV = "336ed68f-0bac-5ca0-87d4-7b16caf5d00b"
> DataFrames = "a93c6f00-e57d-5684-b7b6-d8193f3e46c0"
> LaTeXStrings = "b964fa9f-0449-5b57-a5c2-d3ea65f4040f"
> Latexify = "23fbe1c1-3f47-55db-b15f-69d7ec21a316"
> 
> ```

---

<div class="post-metadata">

**Author:** ![pdeffebach](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/pdeffebach/32/10320_2.png) [@pdeffebach](https://discourse.julialang.org/u/pdeffebach)\
**Post date:** [March 9, 2023, 3:41pm UTC](https://discourse.julialang.org/t/unsatisfiable-requirements-error-between-my-personal-packages/95802/2 "2023-03-09T15:41:32Z")

</div>

Are you sure only the `Project.toml` files are being committed? If you have `Manifest.toml` files in the repo, it will use those.

---

<div class="post-metadata">

**Author:** ![GunnarFarneback](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/gunnarfarneback/32/1827_2.png) [@GunnarFarneback](https://discourse.julialang.org/u/GunnarFarneback)\
**Post date:** [March 9, 2023, 4:12pm UTC](https://discourse.julialang.org/t/unsatisfiable-requirements-error-between-my-personal-packages/95802/3 "2023-03-09T16:12:18Z")

</div>

> [@Nathan\_Boyer](#):
>
> However, it breaks when I try to work with the package in an external environment:

If you have unregistered dependencies you need to manually add them to your new environment.

> [@pdeffebach](#):
>
> Are you sure only the `Project.toml` files are being committed? If you have `Manifest.toml` files in the repo, it will use those.

That sounds backwards. The problem is rather that Pkg ignores the package manifests and thus won’t know about the local dependencies being developed from local paths.

---

<div class="post-metadata">

**Author:** ![Nathan\_Boyer](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/nathan_boyer/32/14825_2.png) [@Nathan\_Boyer](https://discourse.julialang.org/u/Nathan_Boyer)\
**Post date:** [March 9, 2023, 4:22pm UTC](https://discourse.julialang.org/t/unsatisfiable-requirements-error-between-my-personal-packages/95802/4 "2023-03-09T16:22:36Z")

</div>

Is there something I can do differently with Manifest files to make this work more smoothly i.e. without manually adding all dependency package locations to every environment that will use this main package?

> [@GunnarFarneback](#):
>
> If you have unregistered dependencies you need to manually add them to your new environment.

> **That did fix the problem.**
>
> ```julia
> (@Code2021) pkg> st
> Status `C:\Users\nboyer.AIP\.julia\environments\Code2021\Project.toml`
> [d29f79e6] ASME_SectionVIII_Division3_Edition2021 v0.1.0 `\\AIP-HQ-SRV1\Company Shared\Julia\ASME_SectionVIII_Division3_Edition2021#master`
> [41458dd0] KD232 v0.1.0 `https://github.com/nathanrboyer/KD232.jl.git#master`
> [0ccbab1c] KM620 v0.1.0 `https://github.com/nathanrboyer/KM620.jl.git#master`
> 
> (@Code2021) pkg> up
> Updating registry at `C:\Users\nboyer.AIP\.julia\registries\General.toml`
> Updating git-repo `https://github.com/nathanrboyer/KM620.jl.git`
> Updating git-repo `\\AIP-HQ-SRV1\Company Shared\Julia\ASME_SectionVIII_Division3_Edition2021`
> Updating git-repo `https://github.com/nathanrboyer/KD232.jl.git`
> No Changes to `C:\Users\nboyer.AIP\.julia\environments\Code2021\Project.toml`
> No Changes to `C:\Users\nboyer.AIP\.julia\environments\Code2021\Manifest.toml`
> 
> ```

---

<div class="post-metadata">

**Author:** ![GunnarFarneback](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/gunnarfarneback/32/1827_2.png) [@GunnarFarneback](https://discourse.julialang.org/u/GunnarFarneback)\
**Post date:** [March 9, 2023, 4:31pm UTC](https://discourse.julialang.org/t/unsatisfiable-requirements-error-between-my-personal-packages/95802/5 "2023-03-09T16:31:18Z")

</div>

> [@Nathan\_Boyer](#):
>
> Is there something I can do differently with Manifest files to make this work more smoothly i.e. without manually adding all dependency package locations to every environment that will use this main package?

The only recourse I know is to make the dependencies registered, so you may want to set up a local registry.

---

<div class="post-metadata">

**Author:** ![Nathan\_Boyer](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/nathan_boyer/32/14825_2.png) [@Nathan\_Boyer](https://discourse.julialang.org/u/Nathan_Boyer)\
**Post date:** [March 9, 2023, 4:32pm UTC](https://discourse.julialang.org/t/unsatisfiable-requirements-error-between-my-personal-packages/95802/6 "2023-03-09T16:32:42Z")

</div>

It was on my backlog to figure out at some point anyway …

Thank you!
