From 1e9c3bce4a6bc8c13aa37365e73e54b8afc1d23d Mon Sep 17 00:00:00 2001 From: Scott-Simmons <52365471+Scott-Simmons@users.noreply.github.com> Date: Tue, 12 Nov 2024 18:57:10 +1100 Subject: [PATCH] Add a comment about multi-version local testing Adds a comment about how to run tests locally on multiple versions of python. Ensures it is clear that it only works if particular version of python is installed on the users machine. Recommends `pytest` as a possible way to manage multiple local versions of python. Note the hyperlink out to `setup.cfg` is pinned to commit sha 1297c8ca5bd6f8f23b4de50e3f052fb4ec1307f8 instead of pinning to main branch. --- docs/text/how_to_contribute.rst | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/docs/text/how_to_contribute.rst b/docs/text/how_to_contribute.rst index a6a5cdc6..0633784f 100644 --- a/docs/text/how_to_contribute.rst +++ b/docs/text/how_to_contribute.rst @@ -67,6 +67,18 @@ you have to: pytest +To test changes across multiple versions of Python, run: + + +.. code:: + + tox -r + + +`tox -r` will execute tests for the Python versions specified in `setup.cfg `_ using the `envlist` variable. For example, if `envlist` is set to `py37, py38`, the test suite will run for Python 3.7 and 3.8 on the local development platform, assuming the binaries for those versions are available locally. The exact Python microversions (e.g. `3.7.1` vs `3.7.2`) depend on what is installed on the local development machine. + +A recommended way to manage multiple Python versions when testing locally is with `pyenv`, which enables organized installation and switching between versions. + Documentation '''''''''''''