[pull] main from astral-sh:main#51
Merged
Merged
Conversation
## Summary Prior to this change, the lazy resolver copied every version from cached simple-index metadata into a `BTreeMap` and eagerly deserialized all per-version core metadata. This duplicated version-key storage and materialized metadata for versions the resolver might never inspect. This stores lazy entries in a compact immutable vector that preserves archive order. Exact lookups use binary search, ranges use partition points, sorted flat-index entries merge in one pass, and registry metadata is deserialized only when requested. `SimpleDetailMetadata` already constructs versions in sorted, unique order, and debug builds assert that invariant at the conversion boundary. ## Benchmark On the feature-disabled warm Jupyter resolver benchmark, the median improved from 15.702 ms to 14.953 ms (4.769% faster). All three paired treatment rounds were faster, with a paired bootstrap 95% interval of 3.822% to 5.976% faster. The universal benchmark improved by 1.476%, and canonical resolver output was identical throughout. --------- Co-authored-by: Charlie Marsh <charliemarsh@openai.com>
Automated update for Python releases. Co-authored-by: jjhelmus <1050278+jjhelmus@users.noreply.github.com>
## Summary Prior to this change, `uv tool install` removed a newly created tool environment when entrypoint finalization failed, but left executables that had already been installed from additional packages. A missing root distribution also surfaced as an internal context error without cleaning up the environment or those entrypoints. This tracks installed entrypoint paths independently of the final tool receipt and removes them on the affected fatal paths before deleting the environment. Missing root distributions now use the existing no-executables diagnostic and the same cleanup behavior. The regression coverage uses `exclude-dependencies` to trigger the missing-root path after installing executables from an additional package, then verifies that both the environment and executables are removed. This fix was split from #18937 because it is independent of tool locks.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
See Commits and Changes for more details.
Created by
pull[bot] (v2.0.0-alpha.4)
Can you help keep this open source service alive? 💖 Please sponsor : )