X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=CONTRIBUTING.md;h=3cf463ba02e220b7f1e12605398c344fc3d79628;hb=6b0a97be21706f44c5f3e9d08dd84c8b62389686;hp=186ae274fdacfcb165e7c0a9227f2837e12778c8;hpb=b73e5fcf4c7d2a844a32bffc8314f1ec85cb0277;p=rust-lightning diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 186ae274..3cf463ba 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -75,8 +75,7 @@ be covered by functional tests. When refactoring, structure your PR to make it easy to review and don't hestitate to split it into multiple small, focused PRs. -The Minimal Supported Rust Version is 1.30.0 (enforced by our Travis and -GitHub Actions). +The Minimal Supported Rust Version is 1.36.0 (enforced by our GitHub Actions). 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. @@ -114,6 +113,14 @@ rustup component add clippy cargo clippy ``` +Significant structures that users persist should always have their serialization methods (usually +`Writeable::write` and `ReadableArgs::read`) begin with +`write_ver_prefix!()`/`read_ver_prefix!()` calls, and end with calls to +`write_tlv_fields!()`/`read_tlv_fields!()`. + +Updates to the serialized format which has implications for backwards or forwards compatibility +must be included in release notes. + Security --------