Skip to content
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

chore: bump MSRV to 1.73 #4692

Merged
merged 10 commits into from
Oct 24, 2023
Merged

chore: bump MSRV to 1.73 #4692

merged 10 commits into from
Oct 24, 2023

Conversation

thomaseizinger
Copy link
Contributor

Description

With the upcoming v0.53 release, I'd suggest we also bump the MSRV. This will allows to make use of new things like:

  • let else
  • std::pin::pin!
  • OnceCell

For now, this PR doesn't make us of any of these. We can always ship them as internal improvements later and enforce certain things via lints (like let else).

Notes & open questions

Should we not bump to the latest version but something before that? Do we know of any users that might be constrained by MSRV requirements from updating?

Change checklist

  • I have performed a self-review of my own code
  • I have made corresponding changes to the documentation
  • I have added tests that prove my fix is effective or that my feature works
  • A changelog entry has been made in the appropriate crates

@mergify
Copy link
Contributor

mergify bot commented Oct 20, 2023

This pull request has merge conflicts. Could you please resolve them @thomaseizinger? 🙏

Copy link
Member

@mxinden mxinden left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should we not bump to the latest version but something before that? Do we know of any users that might be constrained by MSRV requirements from updating?

Not aware of any. I suggest bumping to the latest version.

libp2p/CHANGELOG.md Outdated Show resolved Hide resolved
Cargo.toml Outdated Show resolved Hide resolved
@thomaseizinger
Copy link
Contributor Author

@mxinden I had to modify the interop-tests docker image to statically link glibc because the 1.73 image comes with a different version from what is within the chromium image.

@mergify mergify bot merged commit 26e2d50 into master Oct 24, 2023
71 checks passed
@mergify mergify bot deleted the deps/bump-rust-1.75 branch October 24, 2023 06:18
Copy link
Member

@mxinden mxinden left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for finishing this up.

@@ -14,13 +14,13 @@ FROM chef AS builder
COPY --from=planner /app/recipe.json recipe.json
# Build dependencies - this is the caching Docker layer!
RUN cargo chef cook --release --package interop-tests --target wasm32-unknown-unknown --recipe-path recipe.json
RUN cargo chef cook --release --package interop-tests --bin wasm_ping --recipe-path recipe.json
RUN RUSTFLAGS='-C target-feature=+crt-static' cargo chef cook --release --package interop-tests --target x86_64-unknown-linux-gnu --bin wasm_ping --recipe-path recipe.json
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you add a short comment why this is needed? For future us to eventually go back to the provided glibc?

@SuperFluffy
Copy link

SuperFluffy commented Nov 15, 2023

We are using libp2p transitively through one of our deps, and this change requires us to bump our entire msrv to 1.73.

I am trying to understand the motivation behind using latest stable as msrv - from the 3 listed newer rust features I believe once cell is the newest in 1.70. let ... else and pin! were stabilized some time in the 1.60s. Is there a feature I am missing?

It's not a big issue for us (other than being a chore), but we are trying to be as loose as possible with msrv's.

@thomaseizinger
Copy link
Contributor Author

Personally, one of the more exciting features in Rust that I am looking forward to is async-fn-in-traits which will stabilize in 1.75.

I'd like to bump to that with the next minor release.

In regards to the v0.53 release, we could have probably gotten away with a more conservative bump. Frankly, not that much thought went into it. We don't have a strict MSRV policy other than considering them breaking changes and hence only bumping them in minor releases.

@jxs jxs mentioned this pull request Mar 25, 2024
mergify bot pushed a commit that referenced this pull request Mar 29, 2024
To allow merging #5232
CC @SuperFluffy since you commented on #4692

Pull-Request: #5266.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants