Did you just clone this repository? Here is a checklist of things you should change before you start developing!
- Determine whether to delete the
Cargo.lock
file and add an entry for it to the.gitignore
. The decision to do this will depend on your project's dependency management needs. Refer to this section of the Rust FAQs for more information about the benefits and drawbacks of making this change. - Rename
src/main.rs
tosrc/lib.rs
(and remove themain
function) if your project will not be an executable binary. Likewise, be sure to remove all mentions ofrun
command(s) from theCONTRIBUTING.md
andMakefile.toml
files. - Update other files according to your project's needs (e.g.
Cargo.toml
,README.md
,CODEOWNERS
, etc).
This is a template repository. It comes with support for the following:
- Support for all the items below on both Windows and Linux
- Linting via rust-clippy
- Formatting via rustfmt
- Unit testing
- Code coverage analysis and "pretty" coverage reporting via cargo-llvm-cov
- Orchestration of all of the above via cargo-make (see CONTRIBUTING.md for details)
This repository also includes other features which are not necessarily specific to Rust, but they have been added for demonstrative purposes:
- Sample Codecov configuration
- Execution of unit testing-, code coverage-, and Codecov-oriented tasks in an automated fashion via GitHub Actions workflows
See CONTRIBUTING.md for developer-oriented information.