cloudflare / pingora

A library for building fast, reliable and evolvable network services.
Apache License 2.0
20.25k stars 1.1k forks source link

doc: Version update from 1.72.0 to 1.74.0 (released 2023-11-16) #244

Closed NathanielPrescott closed 1 month ago

NathanielPrescott commented 1 month ago

After reviewing the documentation I found that 1.72.0 is still listed as the MSRV, which is 3 months behind the latest version within the 6 month MSRV limit. Updating will keep the rolling MSRV statement true, add stabilized features from 1.73 + 1.74, and add internal Rust changes from 1.73.

https://doc.rust-lang.org/beta/releases.html#version-1740-2023-11-16

After updating the version I ran: cargo clean cargo build cargo fix cargo test

I found no further changes or issues that I could see needed to be made.

drcaramelsyrup commented 1 month ago

Wondering if there is a particular issue that motivates this change?

The MSRV policy is simply stating that we will accept new MSRVs as long as they are at least 6 months old. We're usually happy to bump the MSRV if new features or fixes need the new Rust updates, however we try not to do so eagerly in the spirit of minimizing breaking changes.

NathanielPrescott commented 1 month ago

I was mostly updating this to keep the MSRV up to date with the latest acceptable Rust version. As far as I am aware the Rust language has great backwards compatibility support which should allow for easy version updates without much if any code changes. My goal was just to push the versioning forward, if anything I could pivot this PR to change the wording of the 'Rust Version' section to better state that the "MSRV should not be changed unless a version provides necessary upgrades and/or performance improvements".

After running through the benches the version update doesn't noticeably improve any performance. There was a LLVM update in 1.73.0 which may affect some minor performance (not that I see any from the benches). If anything it may help build times by a couple seconds, though this will likely be actually improved later this year with the multi-threaded frontend changes coming to the compiler.

NathanielPrescott commented 1 month ago

After reading more about the MSRV and how it is used for libraries I understand its purposed better. That being said I believe that the version shouldn't be changed from 1.72.0 and I'll close this PR. Sorry for any wasted time on this @drcaramelsyrup

drcaramelsyrup commented 1 month ago

Not a problem, we appreciate the enthusiasm!