Contributions are welcome, and they are greatly appreciated! Every little bit helps, and credit will always be given.
When reporting a bug please include:
- All known details about used dust sensor (vendor, model, revision, sn when available)
- Environment informations: Operating system name and version, python version where you are using the module or the cli.
- Detailed steps to reproduce the bug indicating your expected behaviour
pysds011 could always use more documentation, whether as part of the official pysds011 docs or in docstrings.
In order to build the documentation locally
Create once a developement environment (here a Windows procedure, but linux one is almost the same):
virtualenv venv_doc venv_doc\Script\activate.bat pip install -r docs\requirements.txt
Build the documentation:
cd docs make clean make html start _build\html\index.html
The best way to send feedback is to file an issue at https://github.com/michelepagot/pysds011/issues.
If you are proposing a feature:
- Explain in detail how it would work.
- Keep the scope as narrow as possible, to make it easier to implement.
- Remember that this is a volunteer-driven project, and that code contributions are welcome :)
This repo uses main in place of master as primary branch name. This repo uses git flow, so developement mostly take place on develope branch. To set up pysds011 for local development:
Fork pysds011 (look for the "Fork" button).
Clone your fork locally:
git clone git@github.com:yourfork/pysds011.git
Create a branch for local development (maybe from develope branch):
git checkout -b name-of-your-bugfix-or-feature
Now you can make your changes locally.
When you're done making changes and run all :ref:`tests<Run unit testing>` and checks.
Commit your changes and push your branch to GitHub:
git add . git commit -m "Your detailed description of your changes." git push origin name-of-your-bugfix-or-feature
Submit a pull request through the GitHub website.
If you need some code review or feedback while you're developing the code just make the pull request.
For merging, you should:
- Include passing tests (
tox
will come soon) [1]. - Update documentation when there's new API, functionality etc.
- Add a note to
CHANGELOG.rst
about the changes. - Add yourself to
AUTHORS.rst
.
[1] | If you don't have all the necessary python versions available locally you can rely on Travis - it will run the tests for each change you add in the pull request. It will be slower though ... |
This project uses pytest. Tests are in tests/ folder. This project is virtualenv friendly. To create the test environment, run once:
virtualenv venv source venv/bin/activate pip install -e . pip install -r tests/requirements.txt
To run tests:
pytest tests/