Skip to content

allow finding stdlibs that are normal packages in the manifest but are now stdlibs#60061

Merged
fingolfin merged 4 commits intomasterfrom
kc/locate_stdlib
Nov 10, 2025
Merged

allow finding stdlibs that are normal packages in the manifest but are now stdlibs#60061
fingolfin merged 4 commits intomasterfrom
kc/locate_stdlib

Conversation

@KristofferC
Copy link
Copy Markdown
Member

@KristofferC KristofferC commented Nov 6, 2025

This helps handling manifest from earlier julia versions. This is kind of the locate version of the identify fallback in #56148.

Need to write a test when this happens (and verify that this fix works).

Noted in a slack #gripes comment.

this helps handling manifest from earlier julia versions
@KristofferC KristofferC added packages Package management and loading backport 1.10 Change should be backported to the 1.10 release backport 1.12 Change should be backported to release-1.12 backport 1.13 Change should be backported to release-1.13 labels Nov 6, 2025
@kescobo
Copy link
Copy Markdown
Contributor

kescobo commented Nov 6, 2025

Adding context from a gripe on slack that kicked this off, when I freshly cloned https://github.com/kescobo/audiommunity.org/tree/abab70896694f6ea7563fed6c460c66d892293ea and then started julia with julia --project, entering the Pkg REPL with ] immediately triggered a bunch of precompilation and throwing errors.

I was able to start julia without --project and then to ] activate ., but the user experience of being thrown into a bunch of exceptions when activating the Pkg REPL is not ideal.

@KristofferC
Copy link
Copy Markdown
Member Author

KristofferC commented Nov 6, 2025

This happens when we have a manifest with what is now an stdlib but in the julia version of that manifest it was not (OpenSSL).

@KristofferC KristofferC changed the title allow finding stdlibs that are not in the manifest as a fallback allow finding stdlibs that are normal packages in the manifest but are now stdlibs Nov 6, 2025
@KristofferC
Copy link
Copy Markdown
Member Author

Added test, also corrected the test from #56148 (cc @IanButterworth)

Copy link
Copy Markdown
Member

@IanButterworth IanButterworth left a comment

Choose a reason for hiding this comment

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

Makes sense. So the test erroneously passed before because the projecf path was set incorrectly?

@KristofferC
Copy link
Copy Markdown
Member Author

So the test erroneously passed before because the projecf path was set incorrectly?

No, that test actually worked (but it failed to test the thing it was trying to test). The change here is not fixing that, it is fixing another failure mode where we have a manifest with a package that was not an stdlib in an earlier Julia versions but now is an stdlib (e.g. OpenSSL_jl).

@KristofferC KristofferC mentioned this pull request Nov 7, 2025
35 tasks
@fingolfin fingolfin added the merge me PR is reviewed. Merge when all tests are passing label Nov 10, 2025
@KristofferC
Copy link
Copy Markdown
Member Author

I tried this on the example in #60061 (comment) and it seems to work fine.

@fingolfin fingolfin merged commit 6fddac8 into master Nov 10, 2025
8 checks passed
@fingolfin fingolfin deleted the kc/locate_stdlib branch November 10, 2025 21:32
@giordano
Copy link
Copy Markdown
Member

Somehow CI passed in https://buildkite.com/julialang/julia-master/builds/52007, but it's failing consistently since the merge commit: https://buildkite.com/julialang/julia-master/builds/52023

Error in testset loading:
Test Failed at /Users/julia/.julia/scratchspaces/a66863c6-20e8-4ff4-8a62-49f30b1f605e/agent-cache/default-macmini-x64-4.0/build/default-macmini-x64-4-0/julialang/julia-master/julia-6fddac850a/share/julia/test/loading.jl:1541
  Expression: success(addenv(`$(Base.julia_cmd()) --project=$badmanifest_test_dir --startup-file=no -e 'using LibGit2'`, "JULIA_DEPOT_PATH" => depot * Base.Filesystem.pathsep()))
   Evaluated: success(setenv(`/Users/julia/.julia/scratchspaces/a66863c6-20e8-4ff4-8a62-49f30b1f605e/agent-cache/default-macmini-x64-4.0/build/default-macmini-x64-4-0/julialang/julia-master/julia-6fddac850a/bin/julia -C native -J/Users/julia/.julia/scratchspaces/a66863c6-20e8-4ff4-8a62-49f30b1f605e/agent-cache/default-macmini-x64-4.0/build/default-macmini-x64-4-0/julialang/julia-master/julia-6fddac850a/lib/julia/sys.dylib --depwarn=error --check-bounds=yes -g1 --color=yes --startup-file=no --project=/Users/julia/.julia/scratchspaces/a66863c6-20e8-4ff4-8a62-49f30b1f605e/agent-cache/default-macmini-x64-4.0/build/default-macmini-x64-4-0/julialang/julia-master/julia-6fddac850a/share/julia/test/project/deps/BadStdlibDeps --startup-file=no -e 'using LibGit2'`,["BUILDKITE_STEP_IDENTIFIER=test_x86_64-apple-darwin", "BUILDKITE_AGENT_ENDPOINT=https://agent.buildkite.com/v3", "BUILDKITE_AGENT_NAME=default-macmini-x64-4.0", "TERM=xterm-256color", "BUILDKITE_PLUGIN_JULIA_CACHE_DIR=/Users/julia/.julia/scratchspaces/a66863c6-20e8-4ff4-8a62-49f30b1f605e/agent-cache/default-macmini-x64-4.0", "BUILDKITE_BUILD_AUTHOR=Kristoffer Carlsson", "BUILDKITE_BUILD_CREATOR_EMAIL=kcarlsson89@gmail.com", "BUILDKITE_GIT_MIRRORS_PATH=/Users/julia/.julia/scratchspaces/a66863c6-20e8-4ff4-8a62-49f30b1f605e/agent-cache/default-macmini-x64-4.0/repos", "BUILDKITE_AGENT_ID=019a6ff0-d8a0-44f5-8d92-917b3c7f1bbe", "BUILDKITE_GIT_MIRRORS_SKIP_UPDATE=false"  …  "HOME=/private/var/tmp/agent-tempdirs/default-macmini-x64-4.0/home", "BUILDKITE_SOURCE=webhook", "BUILDKITE_ARTIFACT_PATHS=", "SHORT_COMMIT=6fddac850a", "JULIA_NUM_THREADS=1", "BUILDKITE_SSH_KEYSCAN=true", "MAJMINPAT=1.14.0", "BUILDKITE_GROUP_LABEL=Test", "BUILDKITE_REPO=https://github.com/JuliaLang/julia.git", "LONG_COMMIT=6fddac850a00441cc5d3833cc3c441132cd49a5f"]))
Error in testset loading:
Test Failed at /Users/julia/.julia/scratchspaces/a66863c6-20e8-4ff4-8a62-49f30b1f605e/agent-cache/default-macmini-x64-4.0/build/default-macmini-x64-4-0/julialang/julia-master/julia-6fddac850a/share/julia/test/loading.jl:1550
  Expression: success(addenv(`$(Base.julia_cmd()) --project=$badmanifest_test_dir2 --startup-file=no -e 'using LibGit2'`, "JULIA_DEPOT_PATH" => depot * Base.Filesystem.pathsep()))
   Evaluated: success(setenv(`/Users/julia/.julia/scratchspaces/a66863c6-20e8-4ff4-8a62-49f30b1f605e/agent-cache/default-macmini-x64-4.0/build/default-macmini-x64-4-0/julialang/julia-master/julia-6fddac850a/bin/julia -C native -J/Users/julia/.julia/scratchspaces/a66863c6-20e8-4ff4-8a62-49f30b1f605e/agent-cache/default-macmini-x64-4.0/build/default-macmini-x64-4-0/julialang/julia-master/julia-6fddac850a/lib/julia/sys.dylib --depwarn=error --check-bounds=yes -g1 --color=yes --startup-file=no --project=/Users/julia/.julia/scratchspaces/a66863c6-20e8-4ff4-8a62-49f30b1f605e/agent-cache/default-macmini-x64-4.0/build/default-macmini-x64-4-0/julialang/julia-master/julia-6fddac850a/share/julia/test/project/deps/BadStdlibDeps2 --startup-file=no -e 'using LibGit2'`,["BUILDKITE_STEP_IDENTIFIER=test_x86_64-apple-darwin", "BUILDKITE_AGENT_ENDPOINT=https://agent.buildkite.com/v3", "BUILDKITE_AGENT_NAME=default-macmini-x64-4.0", "TERM=xterm-256color", "BUILDKITE_PLUGIN_JULIA_CACHE_DIR=/Users/julia/.julia/scratchspaces/a66863c6-20e8-4ff4-8a62-49f30b1f605e/agent-cache/default-macmini-x64-4.0", "BUILDKITE_BUILD_AUTHOR=Kristoffer Carlsson", "BUILDKITE_BUILD_CREATOR_EMAIL=kcarlsson89@gmail.com", "BUILDKITE_GIT_MIRRORS_PATH=/Users/julia/.julia/scratchspaces/a66863c6-20e8-4ff4-8a62-49f30b1f605e/agent-cache/default-macmini-x64-4.0/repos", "BUILDKITE_AGENT_ID=019a6ff0-d8a0-44f5-8d92-917b3c7f1bbe", "BUILDKITE_GIT_MIRRORS_SKIP_UPDATE=false"  …  "HOME=/private/var/tmp/agent-tempdirs/default-macmini-x64-4.0/home", "BUILDKITE_SOURCE=webhook", "BUILDKITE_ARTIFACT_PATHS=", "SHORT_COMMIT=6fddac850a", "JULIA_NUM_THREADS=1", "BUILDKITE_SSH_KEYSCAN=true", "MAJMINPAT=1.14.0", "BUILDKITE_GROUP_LABEL=Test", "BUILDKITE_REPO=https://github.com/JuliaLang/julia.git", "LONG_COMMIT=6fddac850a00441cc5d3833cc3c441132cd49a5f"]))

This is making all tests fail everywhere. Bad interaction with previously merged PRs?

@KristofferC
Copy link
Copy Markdown
Member Author

#60101

KristofferC added a commit that referenced this pull request Nov 11, 2025
…e now stdlibs (#60061)

This helps handling manifest from earlier julia versions. This is kind
of the `locate` version of the `identify` fallback in
#56148.

Need to write a test when this happens (and verify that this fix works).

Noted in a slack #gripes comment.

---------

Co-authored-by: KristofferC <kristoffer.carlsson@juliacomputing.com>
Co-authored-by: Max Horn <max@quendi.de>
@DilumAluthge DilumAluthge removed the merge me PR is reviewed. Merge when all tests are passing label Nov 15, 2025
KristofferC added a commit that referenced this pull request Nov 24, 2025
…e now stdlibs (#60061)

This helps handling manifest from earlier julia versions. This is kind
of the `locate` version of the `identify` fallback in
#56148.

Need to write a test when this happens (and verify that this fix works).

Noted in a slack #gripes comment.

---------

Co-authored-by: KristofferC <kristoffer.carlsson@juliacomputing.com>
Co-authored-by: Max Horn <max@quendi.de>
(cherry picked from commit 6fddac8)
KristofferC added a commit that referenced this pull request Nov 24, 2025
…e now stdlibs (#60061)

This helps handling manifest from earlier julia versions. This is kind
of the `locate` version of the `identify` fallback in
#56148.

Need to write a test when this happens (and verify that this fix works).

Noted in a slack #gripes comment.

---------

Co-authored-by: KristofferC <kristoffer.carlsson@juliacomputing.com>
Co-authored-by: Max Horn <max@quendi.de>
(cherry picked from commit 6fddac8)
@KristofferC KristofferC mentioned this pull request Nov 24, 2025
22 tasks
KristofferC added a commit that referenced this pull request Nov 28, 2025
…e now stdlibs (#60061)

This helps handling manifest from earlier julia versions. This is kind
of the `locate` version of the `identify` fallback in
#56148.

Need to write a test when this happens (and verify that this fix works).

Noted in a slack #gripes comment.

---------

Co-authored-by: KristofferC <kristoffer.carlsson@juliacomputing.com>
Co-authored-by: Max Horn <max@quendi.de>
(cherry picked from commit 6fddac8)
KristofferC added a commit that referenced this pull request Nov 28, 2025
…e now stdlibs (#60061)

This helps handling manifest from earlier julia versions. This is kind
of the `locate` version of the `identify` fallback in
#56148.

Need to write a test when this happens (and verify that this fix works).

Noted in a slack #gripes comment.

---------

Co-authored-by: KristofferC <kristoffer.carlsson@juliacomputing.com>
Co-authored-by: Max Horn <max@quendi.de>
(cherry picked from commit 6fddac8)
@KristofferC KristofferC removed the backport 1.13 Change should be backported to release-1.13 label Dec 3, 2025
KristofferC added a commit that referenced this pull request Dec 4, 2025
…e now stdlibs (#60061)

This helps handling manifest from earlier julia versions. This is kind
of the `locate` version of the `identify` fallback in
#56148.

Need to write a test when this happens (and verify that this fix works).

Noted in a slack #gripes comment.

---------

Co-authored-by: KristofferC <kristoffer.carlsson@juliacomputing.com>
Co-authored-by: Max Horn <max@quendi.de>
(cherry picked from commit 6fddac8)
@KristofferC KristofferC mentioned this pull request Dec 16, 2025
21 tasks
@KristofferC KristofferC removed the backport 1.12 Change should be backported to release-1.12 label Dec 17, 2025
DilumAluthge pushed a commit that referenced this pull request Jan 19, 2026
…e now stdlibs (#60061)

This helps handling manifest from earlier julia versions. This is kind
of the `locate` version of the `identify` fallback in
#56148.

Need to write a test when this happens (and verify that this fix works).

Noted in a slack #gripes comment.

---------

Co-authored-by: KristofferC <kristoffer.carlsson@juliacomputing.com>
Co-authored-by: Max Horn <max@quendi.de>
(cherry picked from commit 6fddac8)
@DilumAluthge DilumAluthge mentioned this pull request Jan 19, 2026
71 tasks
DilumAluthge pushed a commit that referenced this pull request Jan 20, 2026
…e now stdlibs (#60061)

This helps handling manifest from earlier julia versions. This is kind
of the `locate` version of the `identify` fallback in
#56148.

Need to write a test when this happens (and verify that this fix works).

Noted in a slack #gripes comment.

---------

Co-authored-by: KristofferC <kristoffer.carlsson@juliacomputing.com>
Co-authored-by: Max Horn <max@quendi.de>
(cherry picked from commit 6fddac8)
kpamnany pushed a commit to RelationalAI/julia that referenced this pull request Jan 21, 2026
…e now stdlibs (JuliaLang#60061)

This helps handling manifest from earlier julia versions. This is kind
of the `locate` version of the `identify` fallback in
JuliaLang#56148.

Need to write a test when this happens (and verify that this fix works).

Noted in a slack #gripes comment.

---------

Co-authored-by: KristofferC <kristoffer.carlsson@juliacomputing.com>
Co-authored-by: Max Horn <max@quendi.de>
(cherry picked from commit 6fddac8)
DilumAluthge pushed a commit that referenced this pull request Jan 29, 2026
…e now stdlibs (#60061)

This helps handling manifest from earlier julia versions. This is kind
of the `locate` version of the `identify` fallback in
#56148.

Need to write a test when this happens (and verify that this fix works).

Noted in a slack #gripes comment.

---------

Co-authored-by: KristofferC <kristoffer.carlsson@juliacomputing.com>
Co-authored-by: Max Horn <max@quendi.de>
(cherry picked from commit 6fddac8)
@KristofferC KristofferC removed the backport 1.10 Change should be backported to the 1.10 release label Feb 20, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

packages Package management and loading

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants