uv/crates
Andrew Gallant 67d8805ca8
uv-toolchain: use colocated temporary directory (#3240)
Previously, this would use the "system" temporary directory.
Because we rename the resulting directory to its final destination,
and because renaming is implemented via hardlinking, and because
hardlinking doesn't work across mount points, and because /tmp is
commonly on a different mount point than where `uv` is checked out,
we "fix" this by putting the temporary directory somewhere close to
the final destination of the fetched artifact.

There are alternatives we might consider pursuing. For example,
if the `rename` fails, then we should probably do a recursive
directory copy. But this is a quick fix for now and it also
consistent with colocation of other temporary directories in `uv`.

The main downside of this change is that if a user does ^C while
`uv-dev fetch-python` is running, then there is no mechanism for
cleaning up temporary directories.
2024-04-24 10:56:03 -04:00
..
bench Avoid repeating paths of workspace packages (#2573) 2024-03-20 16:16:02 -04:00
cache-key Avoid cache invalidation on credentials renewal (#3010) 2024-04-13 23:38:24 +00:00
distribution-filename Add support for .tar.bz2 source distributions (#3069) 2024-04-16 18:34:55 +00:00
distribution-types Rename ancillary direct url types to parsed url (#3211) 2024-04-23 14:51:23 +00:00
install-wheel-rs Update Rust crate zip to v1 (#3175) 2024-04-22 22:17:44 -04:00
once-map Remove unused deps (#1273) 2024-02-11 18:53:58 +00:00
pep440-rs Update Rust crate pyo3 to 0.21.0 (#2911) 2024-04-22 18:27:22 +00:00
pep508-rs Update Rust crate pyo3 to 0.21.0 (#2911) 2024-04-22 18:27:22 +00:00
platform-tags Add ticks around error messages more consistently (#3004) 2024-04-22 23:58:36 +00:00
pypi-types Avoid Removing Quotes From Requirement Markers (#3214) 2024-04-23 14:07:51 -04:00
requirements-txt Move RequirementsTxtRequirement to its own module (#3235) 2024-04-24 11:16:10 +00:00
uv Unroll self-dependencies via extras (#3230) 2024-04-24 07:51:56 -04:00
uv-auth Only perform fetches of credentials for a realm once (#3237) 2024-04-24 09:53:44 -05:00
uv-build Remove unused dependencies (#3236) 2024-04-24 11:18:24 +00:00
uv-cache Remove Option<bool> for --no-cache (#3129) 2024-04-18 22:56:46 +00:00
uv-client Fix single crate tokio features (#3234) 2024-04-24 08:55:15 +00:00
uv-configuration Add alternate manylinux targets to --python-platform (#3229) 2024-04-24 07:53:25 -04:00
uv-dev Remove unused dependencies (#3236) 2024-04-24 11:18:24 +00:00
uv-dispatch Use link mode for builds, in uv pip compile and for uv venv seed packages (#3016) 2024-04-15 08:49:41 +00:00
uv-distribution Remove unused dependencies (#3236) 2024-04-24 11:18:24 +00:00
uv-extract Fix single crate tokio features (#3234) 2024-04-24 08:55:15 +00:00
uv-fs Make the junction crate dependency Windows-only (#3043) 2024-04-15 16:01:24 -05:00
uv-git Dedicated error type for direct url parsing (#3181) 2024-04-22 11:57:36 +00:00
uv-installer Remove unused dependencies (#3236) 2024-04-24 11:18:24 +00:00
uv-interpreter Allow --python and --system on pip compile (#3115) 2024-04-18 04:55:49 +00:00
uv-normalize Add JSON Schema support (#3046) 2024-04-17 17:24:41 +00:00
uv-requirements An enum and backticks for lookahead error (#3216) 2024-04-23 17:28:10 +00:00
uv-resolver Unroll self-dependencies via extras (#3230) 2024-04-24 07:51:56 -04:00
uv-toolchain uv-toolchain: use colocated temporary directory (#3240) 2024-04-24 10:56:03 -04:00
uv-trampoline Use c-string literals and update trampolines (#2590) 2024-03-21 15:36:00 +00:00
uv-types Remove unused dependencies (#3236) 2024-04-24 11:18:24 +00:00
uv-version Bump version to 0.1.37 (#3208) 2024-04-23 14:35:27 +00:00
uv-virtualenv chore: use uv-version in uv-virtualenv (#3221) 2024-04-23 16:18:40 -04:00
uv-warnings Rename to uv (#1302) 2024-02-15 11:19:46 -06:00
uv-workspace Remove unused dependencies (#3236) 2024-04-24 11:18:24 +00:00
README.md Rename uv-traits and split into separate modules (#2674) 2024-03-26 15:39:43 -05: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

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

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

requirements-txt

Functionality for parsing requirements.txt files.