Skip to main content

Forces 'pip' commands to run via 'uv pip' transparently.

Project description

pip-uv

Forces 'pip' commands to run via 'uv pip' transparently.

This tool is designed to be installed in your Python virtual environment. It replaces the standard pip executable with a Go binary that transparently redirects all commands to uv pip.

Why?

If you want to ensure that pip install (and other pip commands) always use uv's optimized resolution and installation logic—even when running pip directly—this shim achieves that with virtually zero overhead.

Prerequisites

  • Go: Required to build the shim during installation.
  • uv: Must be installed and available in your system PATH.

Installation

You can install this package directly with pip. Because it compiles a native Go binary, you must have Go installed on your system.

# Install directly from source
pip install pip-uv

Or, if installing from a git repository:

pip install git+https://github.com/yourusername/pip-uv.git

Manual Installation (No pip)

If you prefer to build and copy the binary manually:

  1. Build the shim:
    make build
    
  2. Install into a venv:
    make install VENV_PATH=/path/to/your/.venv
    

How it works

  1. Installation: The setup.py script invokes go build to compile main.go into a binary named pip.
  2. Placement: Pip installs this binary into your environment's bin (or Scripts) directory, effectively shadowing the original pip.
  3. Execution: When you run pip, the shim:
    • Finds the uv executable in your PATH.
    • Constructs the command uv pip [arguments].
    • Executes uv using syscall.Exec, replacing the shim process entirely (ensuring correct signal handling and exit codes).

License

GPL-3.0 license

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pip_uv-0.1.5.tar.gz (16.6 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

pip_uv-0.1.5-py3-none-win_amd64.whl (1.5 MB view details)

Uploaded Python 3Windows x86-64

pip_uv-0.1.5-py3-none-musllinux_1_1_x86_64.whl (1.5 MB view details)

Uploaded Python 3musllinux: musl 1.1+ x86-64

pip_uv-0.1.5-py3-none-musllinux_1_1_aarch64.whl (1.4 MB view details)

Uploaded Python 3musllinux: musl 1.1+ ARM64

pip_uv-0.1.5-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.4 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ ARM64

pip_uv-0.1.5-py3-none-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.5 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ x86-64manylinux: glibc 2.5+ x86-64

pip_uv-0.1.5-py3-none-macosx_11_0_arm64.whl (1.4 MB view details)

Uploaded Python 3macOS 11.0+ ARM64

pip_uv-0.1.5-py3-none-macosx_10_9_x86_64.whl (1.4 MB view details)

Uploaded Python 3macOS 10.9+ x86-64

File details

Details for the file pip_uv-0.1.5.tar.gz.

File metadata

  • Download URL: pip_uv-0.1.5.tar.gz
  • Upload date:
  • Size: 16.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pip_uv-0.1.5.tar.gz
Algorithm Hash digest
SHA256 f230c43f5e8357f350395957f362cd660d7d0b142a71107f48f2660ed236bead
MD5 92a27e00f18b5e6c4c7d331e5d289dd4
BLAKE2b-256 d830212955754e68da434f56187f6576015336d87b0684a0308d85d494510292

See more details on using hashes here.

Provenance

The following attestation bundles were made for pip_uv-0.1.5.tar.gz:

Publisher: release.yml on guysoft/pip-uv

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pip_uv-0.1.5-py3-none-win_amd64.whl.

File metadata

  • Download URL: pip_uv-0.1.5-py3-none-win_amd64.whl
  • Upload date:
  • Size: 1.5 MB
  • Tags: Python 3, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pip_uv-0.1.5-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 77339f76a6b04bf041eb56a609d1e84039842e562330d6240737d995193bfc8a
MD5 d68840e872e9f8855fa63fff87e16790
BLAKE2b-256 1239a4a71baa7654d684da9e94d5604084ae765e27a064a7ddceaf17184ad74d

See more details on using hashes here.

Provenance

The following attestation bundles were made for pip_uv-0.1.5-py3-none-win_amd64.whl:

Publisher: release.yml on guysoft/pip-uv

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pip_uv-0.1.5-py3-none-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for pip_uv-0.1.5-py3-none-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 a33dd271308bae51493d66ff30b17616056101c4a93f572ab3f440dc5128ba60
MD5 e368e9bb6d485b0c1bfa3c501e02cf4d
BLAKE2b-256 7ad7a4ac33c5ea55f5887c78b7e4fed208a2bf5596a0635f6af28efe6c7b6074

See more details on using hashes here.

Provenance

The following attestation bundles were made for pip_uv-0.1.5-py3-none-musllinux_1_1_x86_64.whl:

Publisher: release.yml on guysoft/pip-uv

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pip_uv-0.1.5-py3-none-musllinux_1_1_aarch64.whl.

File metadata

File hashes

Hashes for pip_uv-0.1.5-py3-none-musllinux_1_1_aarch64.whl
Algorithm Hash digest
SHA256 02eb0dbebba86dd18da20dfd3e30b3ab6823c9f39e363139374b6fa8e274d6c1
MD5 d6b23e07b600f06874a1a7e54b75929f
BLAKE2b-256 f41eaccf0eb9675cbc2b05a474be02e4d4e142e84260bdf8b78def6f1a044b3b

See more details on using hashes here.

Provenance

The following attestation bundles were made for pip_uv-0.1.5-py3-none-musllinux_1_1_aarch64.whl:

Publisher: release.yml on guysoft/pip-uv

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pip_uv-0.1.5-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pip_uv-0.1.5-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 424c01ec089ed79872d460afc41179724f014c9dbae497582be0a0739a8f5239
MD5 f33c1367655028d2ec3cde89cdcbffa2
BLAKE2b-256 5643289c210119c49fe7bc29c324c1cc95b8520f177987870e2480bd3632191d

See more details on using hashes here.

Provenance

The following attestation bundles were made for pip_uv-0.1.5-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: release.yml on guysoft/pip-uv

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pip_uv-0.1.5-py3-none-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pip_uv-0.1.5-py3-none-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a8cd8e933f9743397393521abbf3bdd761bb85a20b56ee99c5e04507c5a22f89
MD5 6e07631c588421d312f9ffd952d643c0
BLAKE2b-256 44285ba7f7f5e5d0ca12913563918fbad160c73257eb39c2b5d2f01d7d255ec3

See more details on using hashes here.

Provenance

The following attestation bundles were made for pip_uv-0.1.5-py3-none-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on guysoft/pip-uv

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pip_uv-0.1.5-py3-none-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pip_uv-0.1.5-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 5a1348128ec9a02ce4bfe62431797c52f3685b5cacecabeae15be050b8842aaa
MD5 25fe704bf70380ddc98ed871518cd6cc
BLAKE2b-256 ec949d56a9ed4b24822a523ced2cc28c1efd1566481a55e2def13c09f9a63d53

See more details on using hashes here.

Provenance

The following attestation bundles were made for pip_uv-0.1.5-py3-none-macosx_11_0_arm64.whl:

Publisher: release.yml on guysoft/pip-uv

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pip_uv-0.1.5-py3-none-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for pip_uv-0.1.5-py3-none-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 4154f1727fb25022346c7de5ed3b0141ac8e42a60bff5f65044c61c07515a909
MD5 0960a199cfdcea5873d56534726a6707
BLAKE2b-256 2a651322a684ffd21fb675f0a65c4ede61aa502b0fed4f093a29e11aff1abb09

See more details on using hashes here.

Provenance

The following attestation bundles were made for pip_uv-0.1.5-py3-none-macosx_10_9_x86_64.whl:

Publisher: release.yml on guysoft/pip-uv

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page