uv/crates
konsti ae659c8bfe
Stable order for virtual packages (#10024)
uv gives priorities to packages by package name, not by virtual package
(`PubGrubPackage`). pubgrub otoh when prioritizing order the virtual
packages. When the order of virtual packages changes, uv changes its
resolutions and error messages. This means uv was depending on
implementation details of pubgrub's prioritization caching.

This broke with https://github.com/pubgrub-rs/pubgrub/pull/299, which
added a tiebreaker term that made pubgrub's sorting deterministic given
a deterministic ordering of allocating the packages (which happens the
first time pubgrub sees a package).

The new custom tiebreaker decreases the difference to upstream pubgrub.
2024-12-20 09:28:46 +00:00
..
uv Stable order for virtual packages (#10024) 2024-12-20 09:28:46 +00:00
uv-auth Publish: Warn when keyring has no password (#8827) 2024-11-27 20:54:49 +01:00
uv-bench Avoid `liblzma-dev` system dep in uv-dev and uv-bench (#9933) 2024-12-17 16:12:33 +01:00
uv-build-backend Build backend: Preserve executable bit (#10027) 2024-12-19 17:54:44 +01:00
uv-build-frontend Better build error messages (#9660) 2024-12-17 09:44:32 -06:00
uv-cache Avoid reusing interpreter metadata when running under Rosetta (#9846) 2024-12-12 13:21:35 -05:00
uv-cache-info Improve error message for cache info serialization (#8500) 2024-10-23 13:17:31 +00:00
uv-cache-key Remove separate test files in favor of same-file `mod tests` (#9199) 2024-11-18 20:11:46 +00:00
uv-cli Remove references to deprecated `first-match` (#10036) 2024-12-19 12:40:14 -05:00
uv-client Upgrade minimum Rust version to 1.83 (#9815) 2024-12-11 10:06:19 -06:00
uv-configuration Upgrade minimum Rust version to 1.83 (#9815) 2024-12-11 10:06:19 -06:00
uv-console Support interactive input in `uv publish` (#8158) 2024-10-15 10:00:43 +02:00
uv-dev Avoid `liblzma-dev` system dep in uv-dev and uv-bench (#9933) 2024-12-17 16:12:33 +01:00
uv-dirs Eliminate dependencies on `directores` and `dirs-sys` (#8048) 2024-11-07 14:29:54 -06:00
uv-dispatch Use the build options value to improve hints for no wheel / source distribution errors (#9950) 2024-12-17 14:08:22 -06:00
uv-distribution Better build error messages (#9660) 2024-12-17 09:44:32 -06:00
uv-distribution-filename Add test coverage for build tag prioritization (#9680) 2024-12-06 09:32:19 -05:00
uv-distribution-types Better build error messages (#9660) 2024-12-17 09:44:32 -06:00
uv-extract Upgrade minimum Rust version to 1.83 (#9815) 2024-12-11 10:06:19 -06:00
uv-fs Retry mechanisms on Windows for copy_atomic and write_atomic (#10026) 2024-12-19 08:43:57 -05:00
uv-git Remove separate test files in favor of same-file `mod tests` (#9199) 2024-11-18 20:11:46 +00:00
uv-globfilter Build backend: Revamp include/exclude (#9525) 2024-12-01 11:32:35 +00:00
uv-install-wheel Upgrade minimum Rust version to 1.83 (#9815) 2024-12-11 10:06:19 -06:00
uv-installer Better build error messages (#9660) 2024-12-17 09:44:32 -06:00
uv-macros Generate environment variables doc from code (#8493) 2024-11-03 08:31:38 -06:00
uv-metadata chore: Move all integration tests to a single binary (#8093) 2024-10-11 16:41:35 +02:00
uv-normalize Remove separate test files in favor of same-file `mod tests` (#9199) 2024-11-18 20:11:46 +00:00
uv-once-map Use shared resolver state between add and lock (#8146) 2024-10-12 14:58:07 +00:00
uv-options-metadata Upgrade minimum Rust version to 1.83 (#9815) 2024-12-11 10:06:19 -06:00
uv-pep440 Omit trailing zeros on Python requirements inferred from versions (#9952) 2024-12-17 08:18:27 -06:00
uv-pep508 Normalize `platform_system` to `sys_platform` (#9949) 2024-12-18 10:29:34 -05:00
uv-performance-flate2-backend Use `zlib-rs` on all platforms (#9264) 2024-11-20 00:01:58 -05:00
uv-performance-memory-allocator Run `cargo update` (#8703) 2024-11-01 10:26:21 -04:00
uv-platform-tags Fix Python interpreter discovery on non-glibc hosts (#9005) 2024-11-21 12:35:02 +01:00
uv-publish Upload: All metadata incl. PEP 639 (#9442) 2024-11-27 00:25:08 +01:00
uv-pypi-types Show a concise error message for missing version field (#9912) 2024-12-15 10:27:43 -05:00
uv-python Sync latest Python releases (#10045) 2024-12-19 17:58:25 -06:00
uv-requirements Better build error messages (#9660) 2024-12-17 09:44:32 -06:00
uv-requirements-txt Normalize `platform_system` to `sys_platform` (#9949) 2024-12-18 10:29:34 -05:00
uv-resolver Stable order for virtual packages (#10024) 2024-12-20 09:28:46 +00:00
uv-scripts Upgrade minimum Rust version to 1.83 (#9815) 2024-12-11 10:06:19 -06:00
uv-settings Remove references to deprecated `first-match` (#10036) 2024-12-19 12:40:14 -05:00
uv-shell Refactor shell quoting (#9055) 2024-11-15 09:06:54 +00:00
uv-state Add `uv-dirs` to consolidate directory lookup methods (#8453) 2024-10-22 11:33:25 -05:00
uv-static Sync env vars with uv-static crate 🧹 (#10016) 2024-12-18 22:10:27 -05:00
uv-tool Enable `uv tool uninstall uv` on Windows (#8963) 2024-12-10 13:13:22 -05:00
uv-trampoline Update Rust crate thiserror to v2.0.7 (#9926) 2024-12-15 20:12:08 -05:00
uv-trampoline-builder Add support for installing versioned Python executables on Windows (#8663) 2024-10-31 15:58:35 +00:00
uv-types Better build error messages (#9660) 2024-12-17 09:44:32 -06:00
uv-version Bump version to 0.5.11 (#10044) 2024-12-19 18:01:45 -06:00
uv-virtualenv Patch `sysconfig` data at install time (#9857) 2024-12-13 14:36:22 -05:00
uv-warnings chore: Move all integration tests to a single binary (#8093) 2024-10-11 16:41:35 +02:00
uv-workspace Show a concise error message for missing version field (#9912) 2024-12-15 10:27:43 -05:00
README.md Link to Dependency specifiers instead of PEP 508 (#8411) 2024-10-21 14:43:38 -04:00

README.md

Crates

uv-bench

Functionality for benchmarking uv.

uv-cache-key

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

uv-distribution-filename

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

uv-distribution-types

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

uv-install-wheel-rs

Install built distributions (wheels) into a virtual environment.

uv-once-map

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

uv-pep440-rs

Utilities for interacting with Python version numbers and specifiers.

uv-pep508-rs

Utilities for parsing and evaluating dependency specifiers, previously known as PEP 508.

uv-platform-tags

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

uv-cli

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-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.

uv-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.

uv-requirements-txt

Functionality for parsing requirements.txt files.