chore: use dependency-groups (#2064)

* chore: use dependency-groups

Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>

* ci: use dep groups in other CIs

Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>

* Apply suggestions from code review

* chore: read dep groups in noxfile

Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>

* Apply suggestions from code review

Co-authored-by: Matthieu Darbois <mayeut@users.noreply.github.com>

* Add dev environment instructions

---------

Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
Co-authored-by: Matthieu Darbois <mayeut@users.noreply.github.com>
Co-authored-by: Joe Rickerby <joerick@mac.com>
This commit is contained in:
Henry Schreiner
2024-11-19 19:30:06 +01:00
committed by GitHub
co-authored by Matthieu Darbois Joe Rickerby
parent aac31ae2fb
commit 8f21eb17be
10 changed files with 74 additions and 45 deletions
+22 -5
View File
@@ -82,14 +82,11 @@ A few notes-
- Running the macOS integration tests requires _system installs_ of Python from python.org for all the versions that are tested. We won't attempt to install these when running locally, but you can do so manually using the URL in the error message that is printed when the install is not found.
#### Making a venv
#### Running pytest directly
More advanced users might prefer to invoke pytest directly-
More advanced users might prefer to invoke pytest directly. Set up a [dev environment](#setting-up-a-dev-environment), then,
```bash
python3 -m venv .venv
source .venv/bin/activate
pip install -e .[dev]
# run the unit tests
pytest unit_test
# run the whole integration test suite
@@ -120,6 +117,26 @@ nox -s update_constraints # update all constraints files in cibuildwheel/resourc
nox -s update_pins # update tools, python interpreters & docker images used by cibuildwheel
```
### Setting up a dev environment
A dev environment isn't required for any of the `nox` tasks above. However, a dev environment is still useful, to be able to point an editor at, and a few other jobs.
cibuildwheel uses dependency groups. Set up a dev environment with UV by doing
```bash
uv sync
```
Or, if you're not using `uv`, you can do:
```bash
python3 -m venv .venv
source .venv/bin/activate
pipx run dependency-groups dev | xargs pip install -e.
```
Your virtualenv is at `.venv`.
## Maintainer notes
### Testing sample configs