From 65746b829b8247ab366182ea028dc1eb0d21522a Mon Sep 17 00:00:00 2001 From: Gus Power Date: Mon, 12 May 2025 15:59:16 +0100 Subject: add github template stuff as per https://rust-github.github.io/ --- CONTRIBUTING.md | 80 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 80 insertions(+) create mode 100644 CONTRIBUTING.md (limited to 'CONTRIBUTING.md') diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 0000000..2c9540d --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,80 @@ +# Contribution guidelines + +First off, thank you for considering contributing to multiwan-dyndns. + +If your contribution is not straightforward, please first discuss the change you +wish to make by creating a new issue before making the change. + +## Reporting issues + +Before reporting an issue on the +[issue tracker](https://github.com/guspower/multiwan-dyndns/issues), +please check that it has not already been reported by searching for some related +keywords. + +## Pull requests + +Try to do one pull request per change. + +### Updating the changelog + +Update the changes you have made in +[CHANGELOG](https://github.com/guspower/multiwan-dyndns/blob/main/CHANGELOG.md) +file under the **Unreleased** section. + +Add the changes of your pull request to one of the following subsections, +depending on the types of changes defined by +[Keep a changelog](https://keepachangelog.com/en/1.0.0/): + +- `Added` for new features. +- `Changed` for changes in existing functionality. +- `Deprecated` for soon-to-be removed features. +- `Removed` for now removed features. +- `Fixed` for any bug fixes. +- `Security` in case of vulnerabilities. + +If the required subsection does not exist yet under **Unreleased**, create it! + +## Developing + +### Set up + +This is no different than other Rust projects. + +```shell +git clone https://github.com/guspower/multiwan-dyndns +cd multiwan-dyndns +cargo test +``` + +### Useful Commands + +- Build and run release version: + + ```shell + cargo build --release && cargo run --release + ``` + +- Run Clippy: + + ```shell + cargo clippy --all-targets --all-features --workspace + ``` + +- Run all tests: + + ```shell + cargo test --all-features --workspace + ``` + +- Check to see if there are code formatting issues + + ```shell + cargo fmt --all -- --check + ``` + +- Format the code in the project + + ```shell + cargo fmt --all + ``` -- cgit v1.2.3