X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=CONTRIBUTING.md;h=4b8e044d1d303c6d01daf4c4746e240ef4101283;hb=refs%2Fheads%2Fupstream%2Fmain;hp=e795ecb9fba7b3c48a5f7732ce96719b28d32c16;hpb=abbd29515707ac0f6bc497a2d8fce83684689343;p=rust-lightning diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index e795ecb9..4b8e044d 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -88,10 +88,11 @@ be covered by functional tests. When refactoring, structure your PR to make it easy to review and don't hesitate to split it into multiple small, focused PRs. -The Minimum Supported Rust Version (MSRV) currently is 1.41.1 (enforced by -our GitHub Actions). Also, the compatibility for LDK object serialization is -currently ensured back to and including crate version 0.0.99 (see the -[changelog](CHANGELOG.md)). +The Minimum Supported Rust Version (MSRV) currently is 1.63.0 (enforced by +our GitHub Actions). We support reading serialized LDK objects written by any +version of LDK 0.0.99 and above. We support LDK versions 0.0.113 and above +reading serialized LDK objects written by modern LDK. Any expected issues with +upgrades or downgrades should be mentioned in the [changelog](CHANGELOG.md). Commits should cover both the issue fixed and the solution's rationale. These [guidelines](https://chris.beams.io/posts/git-commit/) should be kept in mind. @@ -119,7 +120,15 @@ Coding Conventions ------------------ Use tabs. If you want to align lines, use spaces. Any desired alignment should -display fine at any tab-length display setting. +display fine at any tab-length display setting. We use `rustfmt` to establish +uniform coding standards throughout the codebase. Please run + +```bash +./ci/rustfmt.sh +``` + +before committing and pushing any changes, as compliance will also be checked +and enforced by our CI scripts. Our CI enforces [clippy's](https://github.com/rust-lang/rust-clippy) default linting @@ -147,7 +156,7 @@ Security -------- Security is the primary focus of `rust-lightning`; disclosure of security -vulnerabilites helps prevent user loss of funds. If you believe a vulnerability +vulnerabilities helps prevent user loss of funds. If you believe a vulnerability may affect other Lightning implementations, please inform them. You can find further information on submitting (possible) vulnerabilities in the