pyenv
for managing python versions- Install
python3.8
andpython3.11
- Install
pip install tox tox-pyenv
for running tests and discovering python versions frompyenv
poetry
for building, testing, and releasing
If this is your first time using poetry
, you'll need to configure your pypi credentials via:
- Configure pypi repository:
poetry config http-basic.pypi USERNAME PASSWORD
- Configure testpypi repository:
poetry config repositories.testpypi https://test.pypi.org/legacy
poetry config http-basic.testpypi USERNAME PASSWORD
NOTE: when running poetry
commands, particularly pylint
and black
, you must python3.6
You can just run tox
locally to test, lint, and check formatting in the supported python versions. This works by having tox
manage the virtualenvs, which poetry
then detects and uses.
Run individual commands can be run interactively in a poetry shell
session or directly via poetry run CMD
:
pytest
- run python testsruff check
- lint python coderuff format
- format python code
poetry build
- builds a pip-installable package intodist/
poetry version VERSION
- bump the project version (seepoetry version --help
for details)poetry publish -r testpypi
- publish to testpypipoetry publish
- publish to pypi