When contributing to this repository, please first discuss the change you wish to make via issue, email, or any other method with the owners of this repository before making a change.
Please note we have a code of conduct, please follow it in all your interactions with the project.
- Open a PR following the template.
- Update the CHANGELOG.md with details of changes to the interface if they are breaking changes, this includes new environment variables, exposed ports useful file locations and container parameters.
- Pull Request can be merged in once you have the sign-off of one other developer, or if you do not have permission to do that you may request the reviewer to merge it for you.
- Go to the project's issues.
- Select the template that better fits your issue.
- Read carefully the instructions and write within the template guidelines.
- Submit it and wait for support.
- After a PR is opened maintainers are notified
- Probably changes will be required to comply with the workflow, these commands are run automatically and all tests shall pass:
- Coverage (optional):
tarpaulin
is used with commandcargo tarpaulin --out Lcov --all-features -- --test-threads 1
- Linting:
clippy
is used with commandcargo clippy --all-features -- -Drust-2018-idioms -Dwarnings
- Testing: multiple test pipelines are run for different targets
- Coverage (optional):
- When everything is OK, code is merged.
-
Read this how-to about Github workflow here if you are not familiar with.
-
Read all the texts related to contributing for an OS community.
-
Read this how-to about writing a PR and this other how-to about writing a issue
-
read history: search past open or closed issues for your problem before opening a new issue.
-
PRs on develop: any change should be PRed first in
development
-
testing: everything should work and be tested as defined in the workflow. If any is failing for non-related reasons, annotate the test failure in the PR comment.