Contributing to IceCream
Contributions are welcome! Whether it's a bug report, a new feature, or documentation improvements, your help is appreciated.
Development Setup
To get started with development, you'll need to set up a local environment.
-
Fork and Clone the Repository
First, fork the repository on GitHub. Then, clone your fork locally:
git clone https://github.com/YOUR-USERNAME/icecream.git cd icecream -
Install
toxThis project uses
toxto manage test environments and dependencies. Install it using pip:pip install tox
Running Tests
icecream is tested against multiple versions of Python. tox automates the process of running tests in isolated virtual environments for each version.
To run the full test suite against all supported Python versions defined in tox.ini:
tox
To run tests for a specific environment (e.g., Python 3.9):
tox -e py39
To run the mypy static type checks:
tox -e mypy
The test environments defined in tox.ini include:
py38,py39,py310,py311,py312,py313pypy3mypy
Make sure all tests and checks pass before submitting a pull request.
Submitting a Pull Request
-
Create a new branch for your feature or bug fix:
git checkout -b my-awesome-feature -
Make your changes and add tests for them.
- Ensure the test suite passes:
tox -
Commit your changes and push them to your fork:
git commit -m "feat: Add awesome feature" git push origin my-awesome-feature -
Open a pull request from your fork to the
masterbranch of the originalicecreamrepository.