Contributions (pull requests) are very welcome! Here's how to get started.
Getting started
First fork the library on GitHub.
Then clone and install the library in development mode:
git clone https://github.com/your-username-here/optimistix.git
cd optimistix
pip install -e .
Then install the pre-commit hook:
pip install pre-commit
pre-commit install
These hooks use Black and isort to format the code, and flake8 to lint it.
If you're making changes to the code:
Now make your changes. Make sure to include additional tests if necessary.
Next verify the tests all pass:
pip install pytest
pytest
Then push your changes back to your fork of the repository:
git push
Finally, open a pull request on GitHub!
If you're making changes to the documentation:
Make your changes. You can then build the documentation by doing
pip install -r docs/requirements.txt
mkdocs serve
Then doing Control-C
, and running:
mkdocs serve
(So you run mkdocs serve
twice.)
You can then see your local copy of the documentation by navigating to localhost:8000
in a web browser.
Contributions to this project must be accompanied by a Contributor License Agreement (CLA). You (or your employer) retain the copyright to your contribution; this simply gives us permission to use and redistribute your contributions as part of the project. Head over to https://cla.developers.google.com/ to see your current agreements on file or to sign a new one.
You generally only need to submit a CLA once, so if you've already submitted one (even if it was for a different project), you probably don't need to do it again.