Update CONTRIBUTING.md with code guidelines (#1134)

This commit is contained in:
Sylvain Benner 2024-01-12 09:29:57 -05:00 committed by GitHub
parent 76c1632b8e
commit 6983cede31
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 19 additions and 0 deletions

View File

@ -119,6 +119,25 @@ Run `scripts/publish` using this command
where `crate_name` is the name of the crate to publish where `crate_name` is the name of the crate to publish
## Code Guidelines
We believe in clean and efficient code. While we don't enforce strict coding guidelines, we trust
and use tools like `cargo fmt` and `cargo clippy` to maintain code quality. These are integrated
into our `run-checks` script, ensuring consistency across our codebase.
### Writing Expect Messages
In Rust, the `expect()` function is a crucial tool for handling errors. However, the power of
`expect()` lies in its ability to convey clear, actionable messages. When you use `expect()`, your
message should describe the successful outcome of the function rather than focusing on the error.
Here's a helpful tip from the [Rust documentation](https://doc.rust-lang.org/std/result/enum.Result.html#recommended-message-style):
_Think of `expect()` messages as guidelines for future you and other developers. Frame them with the word “should” like “The ENV variable should be set by X function” or “The binary should be accessible and executable by the current user.”_
This approach ensures that `expect()` messages are informative and aligned with the intended
function outcomes, making debugging and maintenance more straightforward for everyone.
## Others ## Others
To bump for the next version, use this command: To bump for the next version, use this command: