-
Notifications
You must be signed in to change notification settings - Fork 371
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Bump MSRV to rustc 1.63.0 #2681
Bump MSRV to rustc 1.63.0 #2681
Conversation
22caf96
to
50e765d
Compare
If LDK is bumping your MSRV to 1.63.0 with no objections from key users then I'll do the same for BDK. |
50e765d
to
ddee205
Compare
Codecov ReportAll modified and coverable lines are covered by tests ✅
❗ Your organization needs to install the Codecov GitHub app to enable full functionality. Additional details and impacted files@@ Coverage Diff @@
## main #2681 +/- ##
==========================================
- Coverage 88.52% 88.47% -0.06%
==========================================
Files 115 115
Lines 90996 91017 +21
Branches 90996 91017 +21
==========================================
- Hits 80557 80530 -27
- Misses 8012 8029 +17
- Partials 2427 2458 +31 ☔ View full report in Codecov by Sentry. |
ffa9ff8
to
ca62df4
Compare
Hey @tnull can you mention someone from |
Yes, thank you, excuse the omission. Currently we're still double-checking we can actually make the MSRV bump work for all users, but looking to get this in next version if nothing comes up. |
a8f9de2
to
eb8ab69
Compare
Is there a reason to go all the way to 1.63? Sure, that's Debian's current stable, but what are our requirements aside from "macOS users should be able to build with our MSRV for local testing"? |
Yes there are several reasons why I believe 1.63 to be a good candidate:
|
In addition to what @tnull wrote above I'd like to add that, at least for the BDK team, maintaining the 1.57 MSRV has become an almost weekly battle to trouble shoot and then pin dependencies in our CI. We're now pinning 17 dependencies, from only five three months ago. We should also have an easier time making the case for dependency maintainers to support 1.63 due to it shipping with Debian stable. |
Assigning myself. The next java release will use 1.63 and Debian stable's glibc, so as long as that doesn't cause problems we're good. |
27f827d
to
44d1d24
Compare
Rebased to resolve minor conflicts after #2685 landed. |
Seems I'll have some more pinning to do. Looking into it... |
f96881a
to
3e82357
Compare
.. which is a reasonable common ground, also supported by Debian stable.
Since we now have a consistent MSRV and edition, we can move `lightning-custom-message` to the main workspace.
3e82357
to
215cad6
Compare
Rebased on current main and addressed outstanding feedback. |
1dcb02d
to
9f2218f
Compare
Previously, we used the auto-download feature of the `electrsd`/`bitcoind` crates. While convenient, they unnecessarily introduced a lot of dependecies (`zip`, `zstd`, `time`, etc.) to our test environment which needed pinning for the MSRV of 1.63. Here, we introduce a new `no_download` config flag to the `lightning-transaction-sync` crate allowing us to disable this auto-download feature in CI, where we now opt to download the corresponding binaries manually. We keep the default-auto-download as a convenience feature for running tests locally though.
9f2218f
to
f368fac
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Other than what’s mentioned above I think there’s a few other warnings that we can finally clean up.
Hm, anything beside the |
Either way, warnings can always be cleaned up later! |
We still have some |
Lol, no, there are others left. Must have slipped in during rebase. Duh. Will open a warning-fix-pr. |
169385b ci: change MSRV to 1.63.0 (Steve Myers) Pull request description: ### Description fixes #331 ### Notes to the reviewers We won't merge this PR until LDK merges lightningdevkit/rust-lightning#2681. There are alot of clippy checks to fix at 1.63.0 so I left the clippy MSRV at 1.57.0 for now. ### Changelog notice Changed - MSRV is now 1.63.0 for bdk, chain, and bitcoind_rpc crates ### Checklists #### All Submissions: * [x] I've signed all my commits * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk/blob/master/CONTRIBUTING.md) * [x] I ran `cargo fmt` and `cargo clippy` before committing ACKs for top commit: evanlinjin: ACK 169385b Tree-SHA512: ad69038173b4f050b57f637fc06a4153cf76929992cfea77e3f25d1e66be102bd2f83a46401a7e3245e9cc54602210c95b75a578f18c5c8b55d1e7229e92197f
Closes #2455
We bump our MSRV to 1.63.0, which is a reasonable common ground, and also supported by Debian stable (bookworm).
Generally, supporting "Debian Stable MSRV" seems to be a reasonable middleground between the Rust ecosystem's "bump constantly, MSRV is stable" and keep supporting really old rustc versions that increase maintenance overhead.
Notably, this change reduces complexity of our CI scripts and will allow Mac users to run the CI scripts on MSRV locally on Apple Silicone chips.
(cc @notmandatory)