# Certbot Contributing Guide Hi! Welcome to the Certbot project. We look forward to collaborating with you. If you're reporting a bug in Certbot, please make sure to include: - The version of Certbot you're running. - The operating system you're running it on. - The commands you ran. - What you expected to happen, and - What actually happened. If you're a developer, we have some helpful information in our [Developer's Guide](https://certbot.eff.org/docs/contributing.html) to get you started. In particular, we recommend you read these sections - [Finding issues to work on](https://certbot.eff.org/docs/contributing.html#find-issues-to-work-on) - [Coding style](https://certbot.eff.org/docs/contributing.html#coding-style) - [Submitting a pull request](https://certbot.eff.org/docs/contributing.html#submitting-a-pull-request) # Specific instructions for Josepy ## Configure a development environment 1) Install Poetry: https://python-poetry.org/docs/#installation 2) Setup a Python virtual environment ```bash $ poetry install -E docs ``` 3) Activate the Python virtual environment ```bash # (On Linux) $ source .venv/bin/activate # (On Windows Powershell) $ .\.venv\Script\activate ``` 4) Optionally set up [pre-commit](https://pre-commit.com/) which will cause simple tests to be automatically run on your changes when you commit them ```bash $ pre-commit install ``` ## Run the tests and quality checks 1) Configure a development environment ([see above](#configure-a-development-environment)) 2) Run the tests ```bash $ tox ``` 3) You can also run specific tests ```bash $ tox -e py ``` You can get a listing of the available tests by running ```bash $ tox -l ```