Development¶
If you wish to contribute to this project, then you should fork the repository found here:
https://github.com/simplistix/testfixtures/
Once that has been done and you have a checkout, you can follow the instructions below to perform various development tasks.
For detailed development guidelines, code style requirements, and additional commands,
see AGENTS.md in the repository root.
Setting up a development environment¶
The recommended way to set up a development environment is to use uv to install all groups and extras:
uv sync --all-groups --all-extras
Running the tests¶
Once you’ve set up the environment, the tests can be run from the root of a source checkout as follows:
uv run pytest
Building the documentation¶
The Sphinx documentation is built by doing the following from the repository root:
cd docs
make html
To check that the description that will be used on PyPI renders properly, do the following:
uv run python -c "from docutils.core import publish_file; publish_file(source_path='README.rst', destination_path='desc.html', writer_name='html')"
The resulting desc.html should be checked by opening in a browser.
Making a release¶
To make a release, just update the version in pyproject.toml, update the change log in
CHANGELOG.rst and push to https://github.com/simplistix/testfixtures.
Carthorse should take care of the rest.