Conversation
Also remove the spurious dev-dependency copy of rust-secp, which should've been updated to remove the "recovery" feature in https://www.github.com/rust-bitcoin/rust-bitcoin/pull/545 and then been removed entirely in https://www.github.com/rust-bitcoin/rust-bitcoin/pull/1387
|
CI is breaking because
I will add a commit to this PR which whitelists the dupe check, and updates the README to instruct users how to downgrade serde. |
|
Looks like we need to pin serde/syn for Rust 1.47 as well in |
|
I pushed a commit to your branch @apoelstra to pin for 1.47 (I mimicked the current one pinning 1.41) |
|
And one to update the readme. |
We now require pinning for `serde` and `syn` if building with toolchain 1.47. Document this in the README.
4424686 to
bef7992
Compare
|
Force push to write the commit log without typos. |
|
bef7992 looks good to me. @tcharding you need to ack even though they're your commits -- I cannot ACK my own PR :). |
Kixunil
left a comment
There was a problem hiding this comment.
ACK bef7992
Deferring the decision about all tests passing for MSRV to @apoelstra
README can be fixed up later.
| # whitelist the 'syn' crate which is duplicated but it's not our fault. | ||
| cargo tree --target=all --all-features --duplicates \ | ||
| | grep '^[0-9A-Za-z]' \ | ||
| | grep -v 'syn' \ |
There was a problem hiding this comment.
I think this should be something like '[^a-z_-]syn[^a-z_-]' to not filter-out things like foo-syntax. It's fine for now.
But still I think we should pin the crate instead.
| # Pin dependencies as required if we are using MSRV toolchain. | ||
| if cargo --version | grep "1\.41"; then | ||
| # 1.0.157 uses syn 2.0 which requires edition 2018 | ||
| cargo update -p serde --precise 1.0.156 |
There was a problem hiding this comment.
Should this be the first commit or we don't care about tests passing MSRV for the purpose of bisecting?
There was a problem hiding this comment.
No, we don't care, on multiple levels :)
- We don't care about MSRV for non-tip commits
- We don't care about contrib/test.sh passing for any commits, since this file is really for CI and is a PITA to run locally
- We can't care about pins working in old commits. Literally every commit in the repo, up to this one, now fail with 1.41, because the dependency changed from under us. So moving it back one or two commits wouldn't change that situation much.
| if cargo --version | grep "1\.47"; then | ||
| cargo update -p serde --precise 1.0.156 | ||
| cargo update -p syn --precise 1.0.107 | ||
| fi |
There was a problem hiding this comment.
Squash with the previous change into first commit?
There was a problem hiding this comment.
I'll leave it for you to squash if wanted @apoelstra since it's your branch - I only pushed to it yesterday because I thought it was a trifling matter and I could save you some time, seems not :(
There was a problem hiding this comment.
Since we have two ACKs I won't bother squashing.
| `no-std`) on **Rust 1.41.1** or **Rust 1.47** with `no-std`. | ||
|
|
||
| To build with the MSRV you will need to pin some dependencies: | ||
| To build with the MSRV you will need to pin some dependencies (also for `no-std`): |
There was a problem hiding this comment.
Sounds like we don't support no_std with those higher versions. Should say "also for 1.47"
There was a problem hiding this comment.
I agree this sentence is awkwardly worded. We can fix it later. But we do say in the above line that the MSRV for no_std is 1.47, so I think this does say the correct thing.
ffee8ad Bump version to v0.30.0 (Tobin C. Harding) Pull request description: Add changelog notes and bump the version number to v0.30.0. ## TODO - pre-merge - [x] Release `bitcoin_hashes` 0.12: #1694 - [x] Release secp 0.27: rust-bitcoin/rust-secp256k1#588 - rust-bitcoin/rust-secp256k1#590 - [x] Update `secp256k1` dependency to use newly released v0.27: #1714 - [x] Merge - ~#1696 - #1695 - #1111 - [x] If time permits merge these: - #1710 - #1705 - #1713 - [x] Set the release date in changelog header - [x] And merge these: - #1721 - #1720 - #1719 - #1717 ## TODO - post release - [ ] Release the blogpost: rust-bitcoin/www.rust-bitcoin.org#2 - ~Set the date in the blog post to match the date 0.30 is released~ ACKs for top commit: sanket1729: reACK ffee8ad Kixunil: ACK ffee8ad apoelstra: ACK ffee8ad Tree-SHA512: b0ea113ee1726fd9b263d0e01fe14bd544c007c05a9ac43b6c2d4edbeef3bb3ad456b061ef086626e1e1b27a0cda49cb6bc28aac3ad1691d72ffe00400ed5b45
Also remove the spurious dev-dependency copy of rust-secp, which should've been updated to remove the "recovery" feature in https://www.github.com/rust-bitcoin/rust-bitcoin/pull/545 and then been removed entirely in https://www.github.com/rust-bitcoin/rust-bitcoin/pull/1387