uv/crates
konsti 43c837f7bb
Show enum defaults in --help output (#693)
With `Option<T>` and `.unwrap_or_default()` later, the default of `T`
isn't shown in the help output.

Old:

```
      --link-mode <LINK_MODE>
          The method to use when installing packages from the global cache

          Possible values:
          - clone:    Clone (i.e., copy-on-write) packages from the wheel into the site packages
          - copy:     Copy packages from the wheel into the site packages
          - hardlink: Hard link packages from the wheel into the site packages

      -q, --quiet
      Do not print any output

      --resolution <RESOLUTION>
          Possible values:
          - highest:       Resolve the highest compatible version of each package
          - lowest:        Resolve the lowest compatible version of each package
          - lowest-direct: Resolve the lowest compatible version of any direct dependencies, and the highest compatible version of any transitive dependencies

      --prerelease <PRERELEASE>
          Possible values:
          - disallow:                 Disallow all pre-release versions
          - allow:                    Allow all pre-release versions
          - if-necessary:             Allow pre-release versions if all versions of a package are pre-release
          - explicit:                 Allow pre-release versions for first-party packages with explicit pre-release markers in their version requirements
          - if-necessary-or-explicit: Allow pre-release versions if all versions of a package are pre-release, or if the package has an explicit pre-release marker in its version requirements
```

![Screenshot from 2023-12-18
21-04-16](6b3cb47a-f224-408a-8d7a-186ebeb88ecd)

New:

```
      --link-mode <LINK_MODE>
          The method to use when installing packages from the global cache

          [default: hardlink]

          Possible values:
          - clone:    Clone (i.e., copy-on-write) packages from the wheel into the site packages
          - copy:     Copy packages from the wheel into the site packages
          - hardlink: Hard link packages from the wheel into the site packages

  -q, --quiet
          Do not print any output

      --resolution <RESOLUTION>
          [default: highest]

          Possible values:
          - highest:       Resolve the highest compatible version of each package
          - lowest:        Resolve the lowest compatible version of each package
          - lowest-direct: Resolve the lowest compatible version of any direct dependencies, and the highest compatible version of any transitive dependencies

      --prerelease <PRERELEASE>
          [default: if-necessary-or-explicit]

          Possible values:
          - disallow:                 Disallow all pre-release versions
          - allow:                    Allow all pre-release versions
          - if-necessary:             Allow pre-release versions if all versions of a package are pre-release
          - explicit:                 Allow pre-release versions for first-party packages with explicit pre-release markers in their version requirements
          - if-necessary-or-explicit: Allow pre-release versions if all versions of a package are pre-release, or if the package has an explicit pre-release marker in its version requirements
```


![image](26c2c391-d959-4769-999d-481b3f179502)
2023-12-18 21:50:47 +00:00
..
bench Use Clippy lint table over Cargo config (#490) 2023-11-22 15:10:27 +00:00
distribution-filename Impl Version debug as display (#606) 2023-12-11 16:38:14 +01:00
distribution-types Add support for file:// URLs in editable requirements (#680) 2023-12-18 14:55:37 +00:00
gourgeist Activate venv before source dist build (#567) 2023-12-12 15:46:37 +01:00
install-wheel-rs Support editable in pip-sync and pip-compile (#587) 2023-12-16 22:37:34 +00:00
pep440-rs Speed up version parsing for a 1.27±0.03 speedup in transformers-extras with conservative changes (#660) 2023-12-15 14:03:35 -05:00
pep508-rs Support editable in pip-sync and pip-compile (#587) 2023-12-16 22:37:34 +00:00
platform-host Error when ldd is not in path (#506) 2023-11-28 05:55:04 +00:00
platform-tags Use rustc-hash instead of fxhash crate (#594) 2023-12-08 20:27:49 +00:00
puffin-build Support editable in pip-sync and pip-compile (#587) 2023-12-16 22:37:34 +00:00
puffin-cache Switch to msgpack in the cached client (#662) 2023-12-16 21:01:35 +00:00
puffin-cli Show enum defaults in --help output (#693) 2023-12-18 21:50:47 +00:00
puffin-client Rebase: Uninstall existing non-editable versions when installing editable requirements bug (#682) 2023-12-18 09:28:14 +00:00
puffin-dev Re-add tf-models-nightly filter in resolve_many.rs (#688) 2023-12-18 16:56:04 +00:00
puffin-dispatch Use borrowed data in BuildDispatch (#679) 2023-12-18 16:43:03 +00:00
puffin-distribution Lock entire virtualenv during modifying commands (#695) 2023-12-18 16:44:45 -05:00
puffin-extract Move source dist extraction into extract crate (#649) 2023-12-14 05:56:49 +00:00
puffin-fs Lock entire virtualenv during modifying commands (#695) 2023-12-18 16:44:45 -05:00
puffin-git Restructure Git cache to include package name (#588) 2023-12-07 20:17:41 -05:00
puffin-installer Rebase: Uninstall existing non-editable versions when installing editable requirements bug (#682) 2023-12-18 09:28:14 +00:00
puffin-interpreter Lock entire virtualenv during modifying commands (#695) 2023-12-18 16:44:45 -05:00
puffin-normalize Add dedicated ID types to avoid opaque strings (#642) 2023-12-14 00:53:33 +00:00
puffin-resolver Rename puffin-warnings macros to avoid tracing collision (#694) 2023-12-18 21:33:21 +00:00
puffin-traits Support editable in pip-sync and pip-compile (#587) 2023-12-16 22:37:34 +00:00
puffin-warnings Rename puffin-warnings macros to avoid tracing collision (#694) 2023-12-18 21:33:21 +00:00
puffin-workspace Use Clippy lint table over Cargo config (#490) 2023-11-22 15:10:27 +00:00
pypi-types Rename puffin-warnings macros to avoid tracing collision (#694) 2023-12-18 21:33:21 +00:00
requirements-txt Add support for file:// URLs in editable requirements (#680) 2023-12-18 14:55:37 +00:00
README.md Move archive extraction into its own crate (#647) 2023-12-14 04:49:09 +00:00

Crates

bench

Functionality for benchmarking Puffin.

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.

gourgeist

A venv replacement to create virtual environments in Rust.

install-wheel-rs

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

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.

puffin-build

A PEP 517-compatible build frontend for Puffin.

puffin-cache

Functionality for caching Python packages and associated metadata.

puffin-cli

Command-line interface for the Puffin package manager.

puffin-client

Client for interacting with PyPI-compatible HTTP APIs.

puffin-dev

Development utilities for Puffin.

puffin-dispatch

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

puffin-distribution

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

puffin-extract

Utilities for extracting files from archives.

puffin-fs

Utilities for interacting with the filesystem.

puffin-git

Functionality for interacting with Git repositories.

puffin-installer

Functionality for installing Python packages into a virtual environment.

puffin-interpreter

Functionality for detecting and leveraging the current Python interpreter.

puffin-normalize

Normalize package and extra names as per Python specifications.

puffin-package

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

puffin-resolver

Functionality for resolving Python packages and their dependencies.

puffin-traits

Shared traits for Puffin, to avoid circular dependencies.

pypi-types

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

puffin-warnings

User-facing warnings for Puffin.

requirements-txt

Functionality for parsing requirements.txt files.