# Problem with Julia1.12 sources section in Project.toml

**URL:** https://discourse.julialang.org/t/problem-with-julia1-12-sources-section-in-project-toml/134520
**Category:** General Usage
**Tags:** question, package
**Created:** [December 12, 2025, 4:15pm UTC](https://discourse.julialang.org/t/problem-with-julia1-12-sources-section-in-project-toml/134520 "2025-12-12T16:15:37Z")
**Posts on this page:** 2
**Page:** 1

<div class="post-metadata">

### Author: ![Mark\_Nahabedian](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/mark_nahabedian/32/16562_2.png) [@Mark\_Nahabedian](https://discourse.julialang.org/u/Mark_Nahabedian)
#### Post date: [December 12, 2025, 4:15pm UTC](https://discourse.julialang.org/t/problem-with-julia1-12-sources-section-in-project-toml/134520/1 "2025-12-12T16:15:37Z")

</div>

I’m trying to make use of the new `sources` section of `Project.toml` provided in Julia 1.12.

This is in my project `https://github.com/MarkNahabedian/PanelCutting.jl`.

The only mention of `WebScrapingTools` is in

```julia-auto
[sources]
NahaXMLUtils = {url = "https://github.com/MarkNahabedian/NahaXMLUtils.jl"}
WebScrapingTools = {url = "https://github.com/MarkNahabedian/WebScrapingTools.jl"}

```

When I start JUlia and use PanelCutting II get an error:

```julia-auto
julia
# Long Julia startup banner elided, except for
# Version 1.12.1 (2025-10-17)

┌ Warning: Terminal not fully functional
└ @ Base client.jl:463
julia> using Pkg
using Pkg

julia> Pkg.add(url="https://github.com/MarkNahabedian/PanelCutting.jl")
Pkg.add(url="https://github.com/MarkNahabedian/PanelCutting.jl")
    Updating git-repo `https://github.com/MarkNahabedian/PanelCutting.jl`
   Resolving package versions...
ERROR: Unsatisfiable requirements detected for package WebScrapingTools [8afffa6a]:
 WebScrapingTools [8afffa6a] log:
 ├─WebScrapingTools [8afffa6a] has no known versions!
 └─restricted to versions 1 by PanelCutting [c1372bff] — no versions left
   └─PanelCutting [c1372bff] log:
     ├─possible versions are: 0.1.0 or uninstalled
     └─PanelCutting [c1372bff] is fixed to version 0.1.0
Stacktrace:
  [1] check_constraints(graph::Pkg.Resolve.Graph)
    @ Pkg.Resolve ~/.julia/juliaup/julia-1.12.1+0.aarch64.apple.darwin14/share/julia/stdlib/v1.12/Pkg/src/Resolve/graphtype.jl:1046
  [2] Pkg.Resolve.Graph(compat::Dict{…}, compat_weak::Dict{…}, uuid_to_name::Dict{…}, reqs::Dict{…}, fixed::Dict{…}, verbose::Bool, julia_version::VersionNumber)
    @ Pkg.Resolve ~/.julia/juliaup/julia-1.12.1+0.aarch64.apple.darwin14/share/julia/stdlib/v1.12/Pkg/src/Resolve/graphtype.jl:350
  [3] deps_graph(env::Pkg.Types.EnvCache, registries::Vector{…}, uuid_to_name::Dict{…}, reqs::Dict{…}, fixed::Dict{…}, julia_version::VersionNumber, installed_only::Bool)
    @ Pkg.Operations ~/.julia/juliaup/julia-1.12.1+0.aarch64.apple.darwin14/share/julia/stdlib/v1.12/Pkg/src/Operations.jl:705
  [4] resolve_versions!(env::Pkg.Types.EnvCache, registries::Vector{…}, pkgs::Vector{…}, julia_version::VersionNumber, installed_only::Bool)
    @ Pkg.Operations ~/.julia/juliaup/julia-1.12.1+0.aarch64.apple.darwin14/share/julia/stdlib/v1.12/Pkg/src/Operations.jl:525
  [5] targeted_resolve
    @ ~/.julia/juliaup/julia-1.12.1+0.aarch64.apple.darwin14/share/julia/stdlib/v1.12/Pkg/src/Operations.jl:1669 [inlined]
  [6] tiered_resolve(env::Pkg.Types.EnvCache, registries::Vector{…}, pkgs::Vector{…}, julia_version::VersionNumber, try_all_installed::Bool)
    @ Pkg.Operations ~/.julia/juliaup/julia-1.12.1+0.aarch64.apple.darwin14/share/julia/stdlib/v1.12/Pkg/src/Operations.jl:1658
  [7] _resolve(io::IOContext{…}, env::Pkg.Types.EnvCache, registries::Vector{…}, pkgs::Vector{…}, preserve::PreserveLevel, julia_version::VersionNumber)
    @ Pkg.Operations ~/.julia/juliaup/julia-1.12.1+0.aarch64.apple.darwin14/share/julia/stdlib/v1.12/Pkg/src/Operations.jl:1679
  [8] add(ctx::Pkg.Types.Context, pkgs::Vector{…}, new_git::Set{…}; allow_autoprecomp::Bool, preserve::PreserveLevel, platform::Base.BinaryPlatforms.Platform, target::Symbol)
    @ Pkg.Operations ~/.julia/juliaup/julia-1.12.1+0.aarch64.apple.darwin14/share/julia/stdlib/v1.12/Pkg/src/Operations.jl:1712
  [9] add
    @ ~/.julia/juliaup/julia-1.12.1+0.aarch64.apple.darwin14/share/julia/stdlib/v1.12/Pkg/src/Operations.jl:1685 [inlined]
 [10] add(ctx::Pkg.Types.Context, pkgs::Vector{…}; preserve::PreserveLevel, platform::Base.BinaryPlatforms.Platform, target::Symbol, allow_autoprecomp::Bool, kwargs::@Kwargs{…})
    @ Pkg.API ~/.julia/juliaup/julia-1.12.1+0.aarch64.apple.darwin14/share/julia/stdlib/v1.12/Pkg/src/API.jl:313
 [11] add(pkgs::Vector{PackageSpec}; io::IOContext{IO}, kwargs::@Kwargs{})
    @ Pkg.API ~/.julia/juliaup/julia-1.12.1+0.aarch64.apple.darwin14/share/julia/stdlib/v1.12/Pkg/src/API.jl:164
 [12] add(pkgs::Vector{PackageSpec})
    @ Pkg.API ~/.julia/juliaup/julia-1.12.1+0.aarch64.apple.darwin14/share/julia/stdlib/v1.12/Pkg/src/API.jl:153
 [13] add(; name::Nothing, uuid::Nothing, version::Nothing, url::String, rev::Nothing, path::Nothing, mode::PackageMode, subdir::Nothing, kwargs::@Kwargs{})
    @ Pkg.API ./array.jl:0
 [14] top-level scope
    @ none:1
Some type information was truncated. Use `show(err)` to see complete types.

```

I don’t understand why I’m getting this error. WebScrapingTools is not used by PanelCutting.jl. It is only used by a supackage in `src/supplier_fetch/`. Why is its version compatibility being checked here?

How do I work around this?

Thanks.

---

<div class="post-metadata">

### Author: ![RoyW](https://avatars.discourse-cdn.com/v4/letter/r/e9bcb4/32.png) [@RoyW](https://discourse.julialang.org/u/RoyW)
#### Post date: [February 10, 2026, 10:51pm UTC](https://discourse.julialang.org/t/problem-with-julia1-12-sources-section-in-project-toml/134520/2 "2026-02-10T22:51:28Z")

</div>

I just ran into this problem too. Here is the last paragraph of the v1.12.0 [Pkg documentation](https://pkgdocs.julialang.org/v1/toml-files/#The-%5Bsources%5D-section),

> Note that this information is only used when this environment is active, i.e. it is not used if this project is a package that is being used as a dependency

I think this means don’t use a Julia project as a dependency if the packages listed under its `[sources]` section are unregistered in any of the registered the user’s Julia installation can see. Julia ships with the `General` registry, but you can add custom ones.

I had a lot of success with LocalRegistry.jl to create, add to my Julia installation, and manage multiple custom registries that host my packages that I don’t want to host on `General`. These packages can be private or public.

I think the `[sources]` feature is good for Julia projects that are intended to be user-facing applications, and other applications are not expected to use the project as a dependency.
