Use uv in contribution document (#13540)

This commit is contained in:
Zanie Blue 2024-09-30 14:42:59 -05:00 committed by GitHub
parent d86b73eb3d
commit e76f77d711
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 9 additions and 18 deletions

View File

@ -29,16 +29,14 @@ You'll also need [Insta](https://insta.rs/docs/) to update snapshot tests:
cargo install cargo-insta cargo install cargo-insta
``` ```
And you'll need pre-commit to run some validation checks: You'll need [uv](https://docs.astral.sh/uv/getting-started/installation/) (or `pipx` and `pip`) to
run Python utility commands.
```shell
pipx install pre-commit # or `pip install pre-commit` if you have a virtualenv
```
You can optionally install pre-commit hooks to automatically run the validation checks You can optionally install pre-commit hooks to automatically run the validation checks
when making a commit: when making a commit:
```shell ```shell
uv tool install pre-commit
pre-commit install pre-commit install
``` ```
@ -66,7 +64,7 @@ and that it passes both the lint and test validation checks:
```shell ```shell
cargo clippy --workspace --all-targets --all-features -- -D warnings # Rust linting cargo clippy --workspace --all-targets --all-features -- -D warnings # Rust linting
RUFF_UPDATE_SCHEMA=1 cargo test # Rust testing and updating ruff.schema.json RUFF_UPDATE_SCHEMA=1 cargo test # Rust testing and updating ruff.schema.json
pre-commit run --all-files --show-diff-on-failure # Rust and Python formatting, Markdown and Python linting, etc. uvx pre-commit run --all-files --show-diff-on-failure # Rust and Python formatting, Markdown and Python linting, etc.
``` ```
These checks will run on GitHub Actions when you open your pull request, but running them locally These checks will run on GitHub Actions when you open your pull request, but running them locally
@ -267,26 +265,20 @@ To preview any changes to the documentation locally:
1. Install the [Rust toolchain](https://www.rust-lang.org/tools/install). 1. Install the [Rust toolchain](https://www.rust-lang.org/tools/install).
1. Install MkDocs and Material for MkDocs with:
```shell
pip install -r docs/requirements.txt
```
1. Generate the MkDocs site with: 1. Generate the MkDocs site with:
```shell ```shell
python scripts/generate_mkdocs.py uv run --no-project --isolated --with-requirements docs/requirements.txt scripts/generate_mkdocs.py
``` ```
1. Run the development server with: 1. Run the development server with:
```shell ```shell
# For contributors. # For contributors.
mkdocs serve -f mkdocs.public.yml uvx --with-requirements docs/requirements.txt -- mkdocs serve -f mkdocs.public.yml
# For members of the Astral org, which has access to MkDocs Insiders via sponsorship. # For members of the Astral org, which has access to MkDocs Insiders via sponsorship.
mkdocs serve -f mkdocs.insiders.yml uvx --with-requirements docs/requirements-insiders.txt -- mkdocs serve -f mkdocs.insiders.yml
``` ```
The documentation should then be available locally at The documentation should then be available locally at
@ -368,9 +360,8 @@ GitHub Actions will run your changes against a number of real-world projects fro
report on any linter or formatter differences. You can also run those checks locally via: report on any linter or formatter differences. You can also run those checks locally via:
```shell ```shell
pip install -e ./python/ruff-ecosystem uvx --from ./python/ruff-ecosystem ruff-ecosystem check ruff "./target/debug/ruff"
ruff-ecosystem check ruff "./target/debug/ruff" uvx --from ./python/ruff-ecosystem ruff-ecosystem format ruff "./target/debug/ruff"
ruff-ecosystem format ruff "./target/debug/ruff"
``` ```
See the [ruff-ecosystem package](https://github.com/astral-sh/ruff/tree/main/python/ruff-ecosystem) for more details. See the [ruff-ecosystem package](https://github.com/astral-sh/ruff/tree/main/python/ruff-ecosystem) for more details.