mirror of https://github.com/astral-sh/uv
## Summary
Given `uv tool install {name}@latest`, we make revalidation requests for
`{name}`, but we don't actually add a "latest" constraint when resolving
-- we just assume that since the package is unpinned, and we're fetching
the latest available versions, the resolver will select the latest
version.
However, imagine a package in which the latest version requires Python
3.13 or later, but prior versions support Python 3.9 and up. If we
happen to select Python 3.9 ahead of resolution, and the user requests
`{name}@latest`, we would backtrack to the non-latest version due to the
Python mismatch.
This PR modifies `uv tool install` and `uv tool run` to first determine
the latest version, then provide it as a constraint when resolving.
|
||
|---|---|---|
| .. | ||
| src | ||
| tests/it | ||
| Cargo.toml | ||
| README.md | ||
| build.rs | ||
README.md
uv
uv is a Python package and project manager.
See the documentation or repository for more information.
This crate is the entry point to the uv command-line interface. The Rust API exposed here is not considered public interface.
This is version 0.9.17. The source can be found here.
The following uv workspace members are also available:
- uv-auth
- uv-bin-install
- uv-build
- uv-build-backend
- uv-build-frontend
- uv-cache
- uv-cache-info
- uv-cache-key
- uv-cli
- uv-client
- uv-configuration
- uv-console
- uv-dirs
- uv-dispatch
- uv-distribution
- uv-distribution-filename
- uv-distribution-types
- uv-extract
- uv-flags
- uv-fs
- uv-git
- uv-git-types
- uv-globfilter
- uv-install-wheel
- uv-installer
- uv-keyring
- uv-logging
- uv-macros
- uv-metadata
- uv-normalize
- uv-once-map
- uv-options-metadata
- uv-pep440
- uv-pep508
- uv-performance-memory-allocator
- uv-platform
- uv-platform-tags
- uv-preview
- uv-publish
- uv-pypi-types
- uv-python
- uv-redacted
- uv-requirements
- uv-requirements-txt
- uv-resolver
- uv-scripts
- uv-settings
- uv-shell
- uv-small-str
- uv-state
- uv-static
- uv-tool
- uv-torch
- uv-trampoline-builder
- uv-types
- uv-version
- uv-virtualenv
- uv-warnings
- uv-workspace
uv's workspace members are considered internal and will have frequent breaking changes.
See uv's crate versioning policy for details on versioning.