All configuration for the project should be put into pyproject.toml.
- Create a virtualenv using whatever method you like ( eg, virtualenvwrapper)
uv venv- Sync venv
uv sync --all-extras --all-packages --all-groupsTo run a subset of the required tests, run the smoke test script
./scripts/smoke.bash
If on Windows, you should be able to just run the 'tox' commands in that file.
-
Add or update the dependency in pyproject.toml
-
Update lock file
uv lock --upgrade- Sync venv
uv sync --all-extras --all-packages --all-groups- Run tests as above
Basic checks (formatting, import order) are done with pre-commit and are controlled by the yaml file.
After installing dependencies, Run
# check it works
pre-commit run --all-files
pre-commit installRun every so often to update the pre-commit hooks
pre-commit autoupdateruff format tavern/ tests/
ruff --fix tavern/ tests/pre-commit run --all-files-
Setup
~/.pypircaccording to the official instructions -
Tag and push to git with
tbump <new-tag> --tag-message "<tag-message>" -
Upload to pypi with
flit publish
Run this standalone for now: jupyter-book/mystmd#2082
uv tool run --from mystmd myst build --htmlTo automatically rebuild when files in the docs/ folder change:
uv tool run watchfiles "uv tool run --from mystmd myst build --html" --filter all docs myst.yml