Project.toml [sources] section not working?

Now that sources are enabled in Project.toml files, I expected to be able to define my package dependency source once and have that be know to all users of my package, but that does not seem to be working. I think Julia is looking at my environment Project.toml for the source rather than my package’s Project.toml?

Environment Project.toml
[deps]
ASME_Materials = "e596c8da-274e-4954-bc0b-801dea4796a4"
Package Project.toml
name = "ASME_Materials"
uuid = "e596c8da-274e-4954-bc0b-801dea4796a4"
version = "0.1.0"

[deps]
ColorSchemes = "35d6a980-a343-548e-a6ea-1d62b119f2f4"
DataFrames = "a93c6f00-e57d-5684-b7b6-d8193f3e46c0"
GLMakie = "e9467ef8-e4e7-5192-8a1a-b1aee30e663a"
Interpolations = "a98d9a8b-a2ab-59e6-89dd-64a1c18fca59"
KM620 = "0ccbab1c-04f8-4773-914b-89ad8e9d3a96"
NativeFileDialog = "e1fe445b-aa65-4df4-81c1-2041507f0fd4"
OrderedCollections = "bac558e1-5e72-5ebc-8fee-abe8a469f55d"
SimpleNonlinearSolve = "727e6d20-b764-4bd8-a329-72de5adea6c7"
Term = "22787eb5-b846-44ae-b979-8e399b8463ab"
XLSX = "fdbf4ff8-1666-58a4-91e7-1b58723a45e0"

[compat]
ColorSchemes = "3"
DataFrames = "1"
GLMakie = "0.5 - 0.10"
Interpolations = "0.13 - 0.15"
NativeFileDialog = "0.2"
OrderedCollections = "1.6"
SimpleNonlinearSolve = "1.6"
Term = "1 - 2"
XLSX = "0.8 - 0.10"

[sources]
KM620 = {url = "https://github.com/nathanrboyer/KM620.jl"}
(@ASMEMaterials) pkg> st
Status `C:\Users\nboyer.AIP\.julia\environments\ASMEMaterials\Project.toml`
  [e596c8da] ASME_Materials v0.1.0 `\\Company Shared\Julia\ASME_Materials#master`

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

Cf. the comment Support a `[sources]` section in Project.toml for specifying paths and repo locations for dependencies by KristofferC · Pull Request #3783 · JuliaLang/Pkg.jl · GitHub :

Will it handle the case where the local dependency has itself a [sources] section that points to another local “sub-dependency”?

At least for now, I didn’t plan on making it “recursive”. It’s possible but it also has many failure modes where you encounter conflicting information and you may also have to keep downloading stuff as you “discover” more and more URL sources. As a first cut I don’t think that will be enabled but it can be further discussed later of course.

My gut feeling is that the described failure modes are understating the complexity of making[sources] work recursively.

I see. I wasn’t thinking of this as a recursive scenario since I only have one package and one subpackage, but I guess involving other environments makes it recursive. :face_with_diagonal_mouth: