Skip to content

[release-1.12] Backports for 1.12#4563

Merged
IanButterworth merged 14 commits intorelease-1.12from
backports-release-1.12
Dec 16, 2025
Merged

[release-1.12] Backports for 1.12#4563
IanButterworth merged 14 commits intorelease-1.12from
backports-release-1.12

Conversation

Keno and others added 2 commits December 10, 2025 19:57
The code here appeared to be untested and broke whenever something actually used it.
Example backtrace:

```
julia> JLLPrefixes.collect_artifact_paths(["ripgrep_jll"])
ERROR: MethodError: no method matching haskey(::Vector{Base.UUID}, ::String)
The function `haskey` exists, but no method is defined for this combination of argument types.

Closest candidates are:
  haskey(::Pkg.Types.Manifest, ::Any)
   @ Pkg ~/.julia/juliaup/julia-nightly/share/julia/stdlib/v1.13/Pkg/src/Types.jl:323
  haskey(::REPL.Terminals.TTYTerminal, ::Any)
   @ REPL ~/.julia/juliaup/julia-nightly/share/julia/stdlib/v1.13/REPL/src/Terminals.jl:155
  haskey(::LibGit2.CachedCredentials, ::Any)
   @ LibGit2 ~/.julia/juliaup/julia-nightly/share/julia/stdlib/v1.13/LibGit2/src/types.jl:1357
  ...

Stacktrace:
  [1] fixups_from_projectfile!(ctx::Pkg.Types.Context)
    @ Pkg.Operations ~/.julia/juliaup/julia-nightly/share/julia/stdlib/v1.13/Pkg/src/Operations.jl:238
  [2] add(ctx::Pkg.Types.Context, pkgs::Vector{…}, new_git::Set{…}; allow_autoprecomp::Bool, preserve::Pkg.Types.PreserveLevel, platform::Base.BinaryPlatforms.Platform, target::Symbol)
    @ Pkg.Operations ~/.julia/juliaup/julia-nightly/share/julia/stdlib/v1.13/Pkg/src/Operations.jl:1710
  [3] add
    @ ~/.julia/juliaup/julia-nightly/share/julia/stdlib/v1.13/Pkg/src/Operations.jl:1680 [inlined]
  [4] add(ctx::Pkg.Types.Context, pkgs::Vector{…}; preserve::Pkg.Types.PreserveLevel, platform::Base.BinaryPlatforms.Platform, target::Symbol, allow_autoprecomp::Bool, kwargs::@kwargs{…})
    @ Pkg.API ~/.julia/juliaup/julia-nightly/share/julia/stdlib/v1.13/Pkg/src/API.jl:328
```

(cherry picked from commit cae9ce0)
Comment on lines -198 to +200
Pkg.Types.PackageSpec(name = "GMP_jll", uuid = Base.UUID("781609d7-10c4-51f6-84f2-b8444358ff6d"), version = v"6.2.0"),
Pkg.Types.PackageSpec(name = "GMP_jll", uuid = Base.UUID("781609d7-10c4-51f6-84f2-b8444358ff6d"), version = v"6.2.0+0"),
# This version of MPFR only works on Julia v1.5
Pkg.Types.PackageSpec(name = "MPFR_jll", uuid = Base.UUID("3a97d323-0669-5f0c-9066-3539efd106a3"), version = v"4.0.2"),
Pkg.Types.PackageSpec(name = "MPFR_jll", uuid = Base.UUID("3a97d323-0669-5f0c-9066-3539efd106a3"), version = v"4.0.2+0"),
Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I had to add these build numbers to make these pass. I'm a bit confused about why these used to pass before this PR though.. specific VersionNumbers for JLLs that are missing the build shouldn't be found... Claude thinks it's something todo with #4470 not being on 1.12 but I'm a bit lost. Any idea @KristofferC ?

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't really know, to me, it seems a build number should be required...

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Agreed. This seems correct, just not clear why it didn't fail before.

KristofferC and others added 8 commits December 16, 2025 10:17
Co-authored-by: KristofferC <kristoffer.carlsson@juliacomputing.com>
(cherry picked from commit 7302e19)
(cherry picked from commit 1ec6996)
(cherry picked from commit 1e90f07)
(cherry picked from commit 861187f)
(cherry picked from commit 831f8db)
visr and others added 4 commits December 16, 2025 10:17
Tests that workspace child projects with [sources] entries pointing to the
parent package (e.g., path = "..") can be instantiated without errors.

(cherry picked from commit d73efb1)
Commit 35c5f5b removed the code that syncs sources from manifest entries
but kept the assertions checking that sources match manifest. This causes
AssertionError when instantiating workspace projects with [sources] entries
(e.g., path = "..") since the assertions check invariants that are no
longer maintained.

Fixes the error:
ERROR: AssertionError: normpath(entry.path) == normpath(path)

(cherry picked from commit 869d8f5)
@IanButterworth IanButterworth merged commit 1dad5c5 into release-1.12 Dec 16, 2025
11 checks passed
@IanButterworth IanButterworth deleted the backports-release-1.12 branch December 16, 2025 20:21
@github-project-automation github-project-automation Bot moved this from New to Done in Pkg.jl Dec 16, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

5 participants