# Contributing to *varj* **Thank you very much for considering to contribute to this project!** We welcome any form of contribution: - New issues (feature requests, bug reports, questions, ideas, ...) - Pull requests (documentation improvements, code improvements, new features, ...) **Note**: Before you take the time to open a pull request, please open an issue first. ## CI Our continuous integration workflow checks all pull requests to ensure: - All tests pass on stable and [MSRV] - No [clippy](https://github.com/rust-lang/rust-clippy) errors or warnings - [Rustfmt](https://github.com/rust-lang/rustfmt) is adhered to - [Rustdoc](https://doc.rust-lang.org/rustdoc/write-documentation/linking-to-items-by-name.html) links work. To check this on your own machine run `cargo test`, `cargo clippy`, `cargo doc` and `cargo fmt --check`. ### MSRV Please see the [readme][MSRV] for the current minimum supported rust version. If your change requires a newer version we are open to upgrading. ## Commit messages Please try to keep your git commit messages in line with [Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/). For example: ```gitcommit feat: non-allocating editor ``` ## Add an entry to the changelog If your contribution changes the behavior of `varj` (as opposed to a typo-fix in the documentation), please update the [`CHANGELOG.md`](CHANGELOG.md) file and describe your changes. This makes the release process much easier and therefore helps to get your changes into a new `varj` release faster. The top of the `CHANGELOG` contains an *"unreleased"* section with a few subsections (Added, Changed, Testing, …). Please add your entry to the subsection that best describes your change. If a relevant subsection does not yet exist, please create it. Entries follow this format: ```md ### Changed - Short description of what has been changed, see #123 (@user). - [**BREAKING**] Please prefix any breaking changes. ``` Here, `#123` is the number of the original issue and/or your pull request. Please replace `@user` by your GitHub username. [MSRV]: README.md#msrv-policy