First, thank you for contributing to testcontainers-rs
.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.
- Ensure you have an up-to-date Rust toolchain, with
clippy
andrustfmt
components installed - Install the cargo-hack subcommand (recommended)
- Fork this repository
We rely on rustfmt
(nightly
):
cargo +nightly fmt --all -- --check
Strive for creating atomic commits. That is, commits should capture a single feature, including its tests. Ideally, each commits passes all CI checks (builds, tests, formatting, linter, ...).
When in doubt, squashing everything into a single but larger commit is preferable over commits that don't compile or are otherwise incomplete.
For writing good commit messages, you may find this guide helpful.
Feel free to drop by in the testcontainers-rust channel of our Slack workspace.