uv/crates
Charlie Marsh d31b995511
Pin named indexes in uv add (#7747)
## Summary

This PR adds an index pin with `uv add` when the user provides exactly
one named index. We don't pin if the user provides an unnamed index, or
if they provide multiple indexes.

We probably _could_ pin on multiple indexes by writing the sources
_after_ resolution, if that's desirable. But we have no idea which index
the user _expects_ each package to come from.

Possible extensions:

- `uv add --no-pin` to avoid this pinning.
- Warn if they provide a single, unnamed index? I'm not sure if that's
worth a warn. Open to input.
2024-10-15 23:22:45 +00:00
..
uv Pin named indexes in uv add (#7747) 2024-10-15 23:22:45 +00:00
uv-auth Enable environment variable authentication for named indexes (#7741) 2024-10-15 22:35:07 +00:00
uv-bench chore: Move all integration tests to a single binary (#8093) 2024-10-11 16:41:35 +02:00
uv-build-backend Mock uv version in build backend tests (#8205) 2024-10-15 09:27:33 +00:00
uv-build-frontend Respect [tool.uv.sources] in build requirements (#7172) 2024-10-15 15:31:04 +00:00
uv-cache Run uv build builds in the source distribution bucket (#8220) 2024-10-15 13:29:50 -04:00
uv-cache-info chore: Move all integration tests to a single binary (#8093) 2024-10-11 16:41:35 +02:00
uv-cache-key chore: Move all integration tests to a single binary (#8093) 2024-10-11 16:41:35 +02:00
uv-cli Add index URLs when provided via uv add --index or --default-index (#7746) 2024-10-15 22:57:26 +00:00
uv-client Add support for named and explicit indexes (#7481) 2024-10-15 18:24:23 -04:00
uv-configuration chore: unify all env vars used (#8151) 2024-10-14 16:48:13 -05:00
uv-console Support interactive input in uv publish (#8158) 2024-10-15 10:00:43 +02:00
uv-dev chore: unify all env vars used (#8151) 2024-10-14 16:48:13 -05:00
uv-dispatch Respect [tool.uv.sources] in build requirements (#7172) 2024-10-15 15:31:04 +00:00
uv-distribution Enable environment variable authentication for named indexes (#7741) 2024-10-15 22:35:07 +00:00
uv-distribution-filename chore: Move all integration tests to a single binary (#8093) 2024-10-11 16:41:35 +02:00
uv-distribution-types Enable environment variable authentication for named indexes (#7741) 2024-10-15 22:35:07 +00:00
uv-extract chore: Move all integration tests to a single binary (#8093) 2024-10-11 16:41:35 +02:00
uv-fs chore: Move all integration tests to a single binary (#8093) 2024-10-11 16:41:35 +02:00
uv-git Reuse the result of which git (#8224) 2024-10-15 13:50:43 -04:00
uv-install-wheel Fix error message consistency for broken virtual environments due to pyvenv.cfg (#8180) 2024-10-14 13:22:30 -05:00
uv-installer Add support for named and explicit indexes (#7481) 2024-10-15 18:24:23 -04:00
uv-macros chore: Move all integration tests to a single binary (#8093) 2024-10-11 16:41:35 +02:00
uv-metadata chore: Move all integration tests to a single binary (#8093) 2024-10-11 16:41:35 +02:00
uv-normalize chore: Move all integration tests to a single binary (#8093) 2024-10-11 16:41:35 +02:00
uv-once-map Use shared resolver state between add and lock (#8146) 2024-10-12 14:58:07 +00:00
uv-options-metadata chore: Move all integration tests to a single binary (#8093) 2024-10-11 16:41:35 +02:00
uv-pep440 chore: Move all integration tests to a single binary (#8093) 2024-10-11 16:41:35 +02:00
uv-pep508 Add support for named and explicit indexes (#7481) 2024-10-15 18:24:23 -04:00
uv-performance-flate2-backend chore: Move all integration tests to a single binary (#8093) 2024-10-11 16:41:35 +02:00
uv-performance-memory-allocator chore: Move all integration tests to a single binary (#8093) 2024-10-11 16:41:35 +02:00
uv-platform-tags chore: Move all integration tests to a single binary (#8093) 2024-10-11 16:41:35 +02:00
uv-pubgrub chore: Move all integration tests to a single binary (#8093) 2024-10-11 16:41:35 +02:00
uv-publish Publish: Workaround using raw filename (#8204) 2024-10-15 14:22:52 +02:00
uv-pypi-types Add support for named and explicit indexes (#7481) 2024-10-15 18:24:23 -04:00
uv-python Retain old python-build-standalone releases (#8216) 2024-10-15 11:08:46 -05:00
uv-requirements chore: Move all integration tests to a single binary (#8093) 2024-10-11 16:41:35 +02:00
uv-requirements-txt chore: Move all integration tests to a single binary (#8093) 2024-10-11 16:41:35 +02:00
uv-resolver Allow multiple pinned indexes in tool.uv.sources (#7769) 2024-10-15 22:58:15 +00:00
uv-scripts Add support for named and explicit indexes (#7481) 2024-10-15 18:24:23 -04:00
uv-settings Add support for named and explicit indexes (#7481) 2024-10-15 18:24:23 -04:00
uv-shell chore: unify all env vars used (#8151) 2024-10-14 16:48:13 -05:00
uv-state chore: Move all integration tests to a single binary (#8093) 2024-10-11 16:41:35 +02:00
uv-static chore: unify all env vars used (#8151) 2024-10-14 16:48:13 -05:00
uv-tool chore: unify all env vars used (#8151) 2024-10-14 16:48:13 -05:00
uv-trampoline chore: Move all integration tests to a single binary (#8093) 2024-10-11 16:41:35 +02:00
uv-types Respect [tool.uv.sources] in build requirements (#7172) 2024-10-15 15:31:04 +00:00
uv-version Bump version to v0.4.22 (#8227) 2024-10-15 16:05:49 -04:00
uv-virtualenv chore: Move all integration tests to a single binary (#8093) 2024-10-11 16:41:35 +02:00
uv-warnings chore: Move all integration tests to a single binary (#8093) 2024-10-11 16:41:35 +02:00
uv-workspace Pin named indexes in uv add (#7747) 2024-10-15 23:22:45 +00:00
README.md Rename uv-build to uv-build-frontend (#7688) 2024-09-25 14:17:54 -04:00

Crates

bench

Functionality for benchmarking uv.

cache-key

Generic functionality for caching paths, URLs, and other resources across platforms.

distribution-filename

Parse built distribution (wheel) and source distribution (sdist) filenames to extract structured metadata.

distribution-types

Abstractions for representing built distributions (wheels) and source distributions (sdists), and the sources from which they can be downloaded.

install-wheel-rs

Install built distributions (wheels) into a virtual environment.]

once-map

A waitmap-like concurrent hash map for executing tasks exactly once.

pep440-rs

Utilities for interacting with Python version numbers and specifiers.

pep508-rs

Utilities for interacting with PEP 508 dependency specifiers.

platform-host

Functionality for detecting the current platform (operating system, architecture, etc.).

platform-tags

Functionality for parsing and inferring Python platform tags as per PEP 425.

uv

Command-line interface for the uv package manager.

uv-build-frontend

A PEP 517-compatible build frontend for uv.

uv-cache

Functionality for caching Python packages and associated metadata.

uv-client

Client for interacting with PyPI-compatible HTTP APIs.

uv-dev

Development utilities for uv.

uv-dispatch

A centralized struct for resolving and building source distributions in isolated environments. Implements the traits defined in uv-types.

uv-distribution

Client for interacting with built distributions (wheels) and source distributions (sdists). Capable of fetching metadata, distribution contents, etc.

uv-extract

Utilities for extracting files from archives.

uv-fs

Utilities for interacting with the filesystem.

uv-git

Functionality for interacting with Git repositories.

uv-installer

Functionality for installing Python packages into a virtual environment.

uv-python

Functionality for detecting and leveraging the current Python interpreter.

uv-normalize

Normalize package and extra names as per Python specifications.

uv-package

Types and functionality for working with Python packages, e.g., parsing wheel files.

uv-requirements

Utilities for reading package requirements from pyproject.toml and requirements.txt files.

uv-resolver

Functionality for resolving Python packages and their dependencies.

uv-shell

Utilities for detecting and manipulating shell environments.

uv-types

Shared traits for uv, to avoid circular dependencies.

pypi-types

General-purpose type definitions for types used in PyPI-compatible APIs.

uv-virtualenv

A venv replacement to create virtual environments in Rust.

uv-warnings

User-facing warnings for uv.

uv-workspace

Workspace abstractions for uv.

requirements-txt

Functionality for parsing requirements.txt files.