We welcome contributions in the form of issues or pull requests!
We want this to be a place where all are welcome to discuss and contribute, so please note that this project is released with a Contributor Code of Conduct. By participating in this project you agree to abide by its terms. Find the Code of Conduct in the CONDUCT.md
file on GitHub or in the Code of Conduct section of read the docs.
If you have a problem using Collie or see a possible improvement, open an issue in the GitHub issue tracker. Please be as specific as you can.
If you see an open issue you'd like to be fixed, take a stab at it and open a PR!
To create a PR against this library, please fork the project and work from there.
Steps ++++++
-
Fork the project via the
Fork
button on GitHub. -
Clone the repo to your local disk.
-
Create a new branch for your PR.
git checkout -b my-awesome-new-feature
-
Install requirements (either in a virtual environment like below or the Docker container).
virtualenv venv source venv/bin/activate pip install -r requirements-dev.txt pip install -r requirements.txt
-
Develop your feature
-
Submit a PR to
main
! Someone will review your code and merge your code intomain
when it is approved.
PR Checklist +++++++++++++
-
Ensure your code has followed the Style Guidelines listed below.
-
Run the
flake8
linter on your code.source venv/bin/activate flake8 collie tests
-
Make sure you have written unit-tests where appropriate.
-
Make sure the unit-tests all pass.
source venv/bin/activate pytest -v
-
Update the docs where appropriate. You can rebuild them with the commands below.
cd docs make html
-
Update the
CHANGELOG.md
andversion.py
files.
Style Guidelines ++++++++++++++++++++++++++
For the most part, this library follows PEP8 with a couple of exceptions.
- Lines can be up to 100 characters long.
- Docstrings should be numpy style docstrings.
- Your code should be Python 3 compatible.
- We prefer single quotes for one-line strings unless using double quotes allows us to avoid escaping internal single quotes.
- When in doubt, follow the style of the existing code.