Skip to content

Commit f7eddb9

Browse files
committed
chore: remove nox
1 parent 145288a commit f7eddb9

4 files changed

Lines changed: 37 additions & 222 deletions

File tree

‎CONTRIBUTING.md‎

Lines changed: 25 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ We value community input and look forward to opening up for contributions once w
66

77
## Setup environment
88

9-
We use [Poetry](https://python-poetry.org) for dependency management and [Nox](https://nox.thea.codes/) for task automation. Please follow the instructions to install `poetry` on your system: https://python-poetry.org/docs/#installing-with-pipx. We recommend to install poetry using `pipx`.
9+
We use [Poetry](https://python-poetry.org) for dependency management and task execution. Please follow the instructions to install `poetry` on your system: https://python-poetry.org/docs/#installing-with-pipx. We recommend to install poetry using `pipx`.
1010

1111
For notebook execution in tutorials, we also support [Pixi](https://pixi.sh/) environments for isolated execution per tutorial directory.
1212

@@ -139,13 +139,6 @@ We use `pytest` for running our automated tests. You can run tests in several wa
139139
poetry run pytest
140140
```
141141

142-
### Using Nox (recommended):
143-
```bash
144-
poetry run nox -s tests
145-
```
146-
147-
The nox approach is recommended as it creates an isolated environment and ensures consistent testing across different setups. Nox is our primary task runner that provides standardized environments for testing, linting, formatting, and documentation building.
148-
149142
This command will run all test files in your project that follow the `test_*.py` naming convention, as recognized by `pytest`.
150143

151144
### Writing Tests
@@ -162,47 +155,22 @@ def test_calculate_division():
162155
calculate_division(5, 0)
163156
```
164157

165-
## Code Quality and Testing with Nox
166-
167-
We use [Nox](https://nox.thea.codes/) to standardize testing, linting, and documentation building across different environments. Nox provides isolated virtual environments for running different tasks and supports multiple Python versions.
168-
169-
### Available Nox Sessions
170-
171-
- **Testing**: Run unit tests across supported Python versions (3.10, 3.11, 3.12)
172-
```bash
173-
poetry run nox -s tests # Uses your current Python version
174-
# Or specify a version if you have multiple:
175-
poetry run nox -s "tests-3.10" # Python 3.10
176-
poetry run nox -s "tests-3.11" # Python 3.11
177-
poetry run nox -s "tests-3.12" # Python 3.12
178-
```
179-
180-
- **Linting**: Check code style and quality with ruff
181-
```bash
182-
poetry run nox -s lint
183-
```
184-
185-
- **Formatting**: Auto-fix code formatting issues
186-
```bash
187-
poetry run nox -s format
188-
```
189-
190-
- **Type Checking**: Run static type analysis with pyrefly
191-
```bash
192-
poetry run nox -s typing
193-
```
194-
195-
- **Documentation**: Build HTML documentation
196-
```bash
197-
poetry run nox -s docs
198-
```
158+
## Code Quality and Testing
199159

160+
### Linting
161+
```bash
162+
poetry run ruff check corneto --exclude tests
163+
```
200164

201-
### Running All Quality Checks
165+
### Formatting
166+
```bash
167+
poetry run ruff check corneto --exclude tests --fix
168+
poetry run ruff format corneto --exclude tests
169+
```
202170

203-
To run all quality checks (linting, formatting, typing, and tests) at once:
171+
### Type Checking
204172
```bash
205-
poetry run nox -s lint format typing tests
173+
poetry run pyrefly check corneto
206174
```
207175

208176
## Generating the documentation
@@ -211,51 +179,52 @@ This project uses Sphinx along with the PyData Sphinx theme to generate HTML doc
211179

212180
### Documentation for the current version
213181

214-
To generate the HTML documentation for the current version of the project using nox:
182+
To generate the HTML documentation for the current version of the project using pixi:
215183

216184
```bash
217-
poetry run nox -s docs
185+
pixi run docs
218186
```
219187

220188
This command will build the documentation in the `docs/_build/html` directory, which you can open in a browser to view.
221189

222190
### Additional Documentation Options
223191

224-
We provide several nox sessions for different documentation needs:
192+
We provide several pixi tasks for different documentation needs:
225193

226194
- **Clean build**: Remove previous builds and rebuild documentation
227195
```bash
228-
poetry run nox -s docs_clean
196+
pixi run docs-force
229197
```
230198

231199
- **Force notebook execution**: Build docs with forced notebook execution
232200
```bash
233-
poetry run nox -s docs_force
201+
pixi run docs-force
234202
```
235203

236204
- **Strict mode**: Build docs treating warnings as errors
237205
```bash
238-
poetry run nox -s docs_werror
206+
pixi run python -m sphinx-build -b html -W docs docs/_build/html
239207
```
240208

241209
- **Complete build**: Clean, force notebook execution, and build with warnings as errors
242210
```bash
243-
poetry run nox -s docs_all
211+
pixi run docs-force
212+
pixi run python -m sphinx-build -b html -W docs docs/_build/html
244213
```
245214

246215
- **Link checking**: Verify all external links in documentation
247216
```bash
248-
poetry run nox -s docs_linkcheck
217+
pixi run python -m sphinx-build -b linkcheck docs docs/_build/linkcheck
249218
```
250219

251220
- **Serve locally**: Build and serve documentation at http://localhost:8000
252221
```bash
253-
poetry run nox -s docs_serve
222+
pixi run docs-serve
254223
```
255224

256225
- **Full local check**: Build HTML documentation
257226
```bash
258-
poetry run nox -s docs_full
227+
pixi run docs
259228
```
260229

261230
### Notebook Execution with Pixi
@@ -269,7 +238,7 @@ poetry run python docs/tutorials/run_notebooks.py
269238

270239
### Additional notes
271240

272-
- **Task automation**: All documentation, testing, and quality assurance tasks are standardized through nox sessions defined in `noxfile.py`.
241+
- **Task automation**: Testing and code quality are run via poetry commands; documentation tasks use pixi tasks defined in `pixi.toml`.
273242
- **`myst-nb`**: We use `myst-nb` to handle the conversion of Jupyter notebooks (`.ipynb` files) into HTML. If your contribution involves notebooks, make sure they render correctly in the generated documentation.
274243
- **Pixi integration**: Tutorial notebooks can use individual `pixi.toml` files for isolated execution environments with specific dependencies.
275244
- **Poetry and PEP 621**: The project uses both Poetry (legacy) and modern PEP 621 project configuration in `pyproject.toml`.

‎RELEASE.md‎

Lines changed: 12 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,6 @@ Before creating a release, ensure the development environment and code quality s
8383
All maintainers should have the development environment properly configured as described in [CONTRIBUTING.md](CONTRIBUTING.md), including:
8484
- Poetry for dependency management
8585
- Pre-commit hooks installed and active
86-
- Nox for running quality checks
8786

8887
### Pre-commit Requirements
8988
**Critical**: Pre-commit hooks must be installed and passing for all commits that will be included in the release. The pre-commit configuration ensures:
@@ -111,14 +110,18 @@ poetry run pre-commit install --hook-type pre-commit --hook-type commit-msg
111110
### Code Quality Validation
112111
Before releasing, run comprehensive quality checks:
113112
```bash
114-
# Run all quality checks
115-
poetry run nox -s lint format typing tests
116-
117-
# Or individual checks
118-
poetry run nox -s tests # Run test suite
119-
poetry run nox -s lint # Check code style
120-
poetry run nox -s format # Auto-fix formatting
121-
poetry run nox -s typing # Type checking
113+
# Tests
114+
poetry run pytest
115+
116+
# Linting
117+
poetry run ruff check corneto --exclude tests
118+
119+
# Formatting
120+
poetry run ruff check corneto --exclude tests --fix
121+
poetry run ruff format corneto --exclude tests
122+
123+
# Type checking
124+
poetry run pyrefly check corneto
122125
```
123126

124127
## Development Workflow

‎noxfile.py‎

Lines changed: 0 additions & 156 deletions
This file was deleted.

‎pyproject.toml‎

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -131,7 +131,6 @@ pcst-fast = "^1.0.10"
131131
jax = "^0.6.1"
132132
omnipath = "^1.0.10"
133133
decoupler = "^2.0.2"
134-
nox = { version = "^2025.5.1", extras = ["pbs"] }
135134
papermill = "^2.6.0"
136135
pyrefly = "^0.26.0"
137136

0 commit comments

Comments
 (0)