mirror of
https://github.com/astral-sh/uv.git
synced 2025-08-28 14:34:09 +00:00

Some checks are pending
CI / integration test | determine publish changes (push) Blocked by required conditions
CI / integration test | uv publish (push) Blocked by required conditions
CI / check cache | ubuntu (push) Blocked by required conditions
CI / check cache | macos aarch64 (push) Blocked by required conditions
CI / check system | python on debian (push) Blocked by required conditions
CI / check system | python on fedora (push) Blocked by required conditions
CI / check system | python on ubuntu (push) Blocked by required conditions
CI / check system | python on opensuse (push) Blocked by required conditions
CI / check system | python on rocky linux 8 (push) Blocked by required conditions
CI / check system | python on rocky linux 9 (push) Blocked by required conditions
CI / check system | pypy on ubuntu (push) Blocked by required conditions
CI / check system | pyston (push) Blocked by required conditions
CI / check system | alpine (push) Blocked by required conditions
CI / check system | python on macos aarch64 (push) Blocked by required conditions
CI / check system | homebrew python on macos aarch64 (push) Blocked by required conditions
CI / check system | python on macos x86_64 (push) Blocked by required conditions
CI / check system | python3.10 on windows (push) Blocked by required conditions
CI / check system | python3.10 on windows x86 (push) Blocked by required conditions
CI / check system | python3.13 on windows (push) Blocked by required conditions
CI / check system | python3.12 via chocolatey (push) Blocked by required conditions
CI / check system | python3.9 via pyenv (push) Blocked by required conditions
CI / check system | python3.13 (push) Blocked by required conditions
CI / check system | conda3.11 on linux (push) Blocked by required conditions
CI / check system | conda3.8 on linux (push) Blocked by required conditions
CI / check system | conda3.11 on macos (push) Blocked by required conditions
CI / check system | conda3.8 on macos (push) Blocked by required conditions
CI / check system | conda3.11 on windows (push) Blocked by required conditions
CI / check system | conda3.8 on windows (push) Blocked by required conditions
CI / check system | amazonlinux (push) Blocked by required conditions
CI / check system | embedded python3.10 on windows (push) Blocked by required conditions
CI / Determine changes (push) Waiting to run
CI / lint (push) Waiting to run
CI / cargo clippy | ubuntu (push) Blocked by required conditions
CI / cargo clippy | windows (push) Blocked by required conditions
CI / cargo dev generate-all (push) Blocked by required conditions
CI / cargo shear (push) Waiting to run
CI / cargo test | ubuntu (push) Blocked by required conditions
CI / cargo test | macos (push) Blocked by required conditions
CI / cargo test | windows (push) Blocked by required conditions
CI / check windows trampoline | aarch64 (push) Blocked by required conditions
CI / check windows trampoline | i686 (push) Blocked by required conditions
CI / check windows trampoline | x86_64 (push) Blocked by required conditions
CI / test windows trampoline | i686 (push) Blocked by required conditions
CI / test windows trampoline | x86_64 (push) Blocked by required conditions
CI / typos (push) Waiting to run
CI / mkdocs (push) Waiting to run
CI / build binary | linux (push) Blocked by required conditions
CI / build binary | macos aarch64 (push) Blocked by required conditions
CI / build binary | macos x86_64 (push) Blocked by required conditions
CI / build binary | windows (push) Blocked by required conditions
CI / cargo build (msrv) (push) Blocked by required conditions
CI / build binary | freebsd (push) Blocked by required conditions
CI / ecosystem test | prefecthq/prefect (push) Blocked by required conditions
CI / ecosystem test | pallets/flask (push) Blocked by required conditions
CI / integration test | conda on ubuntu (push) Blocked by required conditions
CI / integration test | free-threaded on linux (push) Blocked by required conditions
CI / integration test | github actions (push) Blocked by required conditions
CI / integration test | free-threaded on windows (push) Blocked by required conditions
CI / integration test | pypy on ubuntu (push) Blocked by required conditions
CI / integration test | pypy on windows (push) Blocked by required conditions
CI / integration test | graalpy on ubuntu (push) Blocked by required conditions
CI / integration test | graalpy on windows (push) Blocked by required conditions
CI / benchmarks (push) Blocked by required conditions
67 lines
1.8 KiB
Markdown
67 lines
1.8 KiB
Markdown
# Using uv in pre-commit
|
|
|
|
An official pre-commit hook is provided at
|
|
[`astral-sh/uv-pre-commit`](https://github.com/astral-sh/uv-pre-commit).
|
|
|
|
To make sure your `uv.lock` file is up to date even if your `pyproject.toml` file was changed via
|
|
pre-commit, add the following to the `.pre-commit-config.yaml`:
|
|
|
|
```yaml title=".pre-commit-config.yaml"
|
|
- repo: https://github.com/astral-sh/uv-pre-commit
|
|
# uv version.
|
|
rev: 0.5.8
|
|
hooks:
|
|
- id: uv-lock
|
|
```
|
|
|
|
To keep your `requirements.txt` file updated using pre-commit:
|
|
|
|
```yaml title=".pre-commit-config.yaml"
|
|
- repo: https://github.com/astral-sh/uv-pre-commit
|
|
# uv version.
|
|
rev: 0.5.8
|
|
hooks:
|
|
- id: uv-export
|
|
```
|
|
|
|
To compile requirements via pre-commit, add the following to the `.pre-commit-config.yaml`:
|
|
|
|
```yaml title=".pre-commit-config.yaml"
|
|
- repo: https://github.com/astral-sh/uv-pre-commit
|
|
# uv version.
|
|
rev: 0.5.11
|
|
hooks:
|
|
# Compile requirements
|
|
- id: pip-compile
|
|
args: [requirements.in, -o, requirements.txt]
|
|
```
|
|
|
|
To compile alternative files, modify `args` and `files`:
|
|
|
|
```yaml title=".pre-commit-config.yaml"
|
|
- repo: https://github.com/astral-sh/uv-pre-commit
|
|
# uv version.
|
|
rev: 0.5.11
|
|
hooks:
|
|
# Compile requirements
|
|
- id: pip-compile
|
|
args: [requirements-dev.in, -o, requirements-dev.txt]
|
|
files: ^requirements-dev\.(in|txt)$
|
|
```
|
|
|
|
To run the hook over multiple files at the same time:
|
|
|
|
```yaml title=".pre-commit-config.yaml"
|
|
- repo: https://github.com/astral-sh/uv-pre-commit
|
|
# uv version.
|
|
rev: 0.5.11
|
|
hooks:
|
|
# Compile requirements
|
|
- id: pip-compile
|
|
name: pip-compile requirements.in
|
|
args: [requirements.in, -o, requirements.txt]
|
|
- id: pip-compile
|
|
name: pip-compile requirements-dev.in
|
|
args: [requirements-dev.in, -o, requirements-dev.txt]
|
|
files: ^requirements-dev\.(in|txt)$
|
|
```
|