Skip to content

Latest commit

 

History

History
76 lines (51 loc) · 1.82 KB

File metadata and controls

76 lines (51 loc) · 1.82 KB

Contributing

Thank you for taking an interest in the project! Described below is what you need to get up to speed with this program.

Table of contents

Expand

Build

Building the project locally is as easy as cargo build, and you can just as easily run the project via cargo run (ctrl+c to exit).

Test

Testing the entire project can be done via cargo test --all-features from the repo root.

Documentation

You can generate and open this repo's full documentation via:

cargo +nightly doc --all-features --document-private-items --open

NOTE: You must have a nightly toolchain installed (rustup install nightly).

Style

Format

This project uses rustfmt for code formatting. You can format your code via:

cargo +nightly fmt --all

Linting

This project uses clippy for linting, and it's enforced by CI. You can run it locally via:

cargo clippy

Code documentation

All of a crate's public items are expected to be properly documented via Rust doc comments. Private items are more flexible, but should still be documented unless the item's purpose is obvious.

Git hygiene

This repo expects expressive commits where 1 commit = 1 logical change, with a clear status message and body explaining the purpose of the commit.

We use conventional commits.