The preferred way to contribute to pydiogment is to fork the main repository on GitHub:
-
Fork the project repository: click on the 'Fork' button near the top of the page. This creates a copy of the code under your account on the GitHub server.
-
Clone this copy to your local disk:
- Using SSH:
git clone git@github.com:YourLogin/pydiogment.git cd pydiogment
- Using HTTPS:
git clone https://github.com/YourLogin/pydiogment.git cd pydiogment
-
Remove any previously installed pydiogment versions, then install your local copy with testing dependencies:
pip uninstall pydiogment pip install .
-
Create a branch to hold your changes:
git checkout -b my-feature
-
Start making changes
- Please never work directly on the
master
branch!
- Please never work directly on the
-
Use Git for the to do the version controlling of this copy. When you're done editing, you know the drill
add
,commit
thenpush
:git add modified_files git commit
to record your changes in Git, push them to GitHub with:
git push -u origin my-feature
-
Finally, go to the web page of the your pydiogment fork repo, and click 'Pull request' button to send your changes to the maintainers for review.
It is recommended to check that your contribution complies with the following rules before submitting a pull request:
-
All public methods should have informative docstrings with sample usage presented.
You can also check for common programming errors with the following tools:
-
Code with good test coverage (at least 80%), check with:
pytest
-
No pyflakes warnings, check with:
pip install pyflakes pyflakes path/to/module.py
-
No PEP8 warnings, check with:
pip install pycodestyle pycodestyle path/to/module.py
-
AutoPEP8 and yapf can help you fix some of the easy redundant errors and linter your code:
pip install autopep8 pip install yapf autopep8 path/to/module.py yapf path/to/module.py
we use Github issues to track all bugs and feature requests. In the case of coming across a bug, having a question or a feature suggestion etc. please feel free to open an issue. However, please make sure that your issue comply with our rules/follows the provided templates:
-
In addition, please check that your issue complies with the following rules before submitting:
-
Verify that your issue is not being currently addressed by other inissues or pull requests.
-
Please ensure all code snippets and error messages are formatted appropriately. See Creating and highlighting code blocks.
-
Please include your operating system type and version number, as well as your Python, pydiogment, numpy, and scipy versions. This information can be found by running the following code snippet:
import sys import numpy import scipy import pydiogment import platform print(platform.platform()) print("Python", sys.version) print("NumPy", numpy.__version__) print("SciPy", scipy.__version__) print("pydiogment", pydiogment.__version__)
You can edit the documentation using any text editor and then generate the HTML output by typing make html
from the docs/ directory. The resulting HTML files will be placed in _build/html/
and are viewable in a web browser. See the README file in the doc/ directory for more information.
To build the documentation, you will need:
This document was based on the scikit-learn & librosa contribution guides.