time-rs / time

The most used Rust library for date and time handling.
https://time-rs.github.io
Apache License 2.0
1.13k stars 281 forks source link

Update rstest and rstest_reuse; bump MSRV to 1.67.1 #716

Open musicinmybrain opened 2 weeks ago

musicinmybrain commented 2 weeks ago

These two updates aren’t inherently linked, but I thought it made sense to do them together.

I confirmed that cargo test still works in the time/ directory (the only crate that currently uses these workspace crates).

musicinmybrain commented 2 weeks ago
error: package `rstest_macros v0.23.0` cannot be built because it requires rustc 1.67.1 or newer, while the currently active rustc version is 1.67.0

The README advertises at least the current stable Rust (now 1.82) and two prior minor releases, which would be 1.80. I’m assuming it should be OK to bump the MSRV to 1.67.1, since even 1.68 would mean supporting 14 prior minor releases. I’m going to attempt that in a follow-up commit.

jhpratt commented 2 weeks ago

What is the benefit to bumping the dependency version?

musicinmybrain commented 2 weeks ago

My motivation is that I am updating the rust-rstest package in Fedora, and that required patching our rust-time package to allow the latest version. (We can use parallel-installable compat packages to maintain older versions of crate library packages in the distribution as needed, but these are a maintenance burden when they proliferate too much, so we try to only create compat packages when they are really necessary.) Since we have a policy of offering patches upstream, I opened this PR.

From an upstream perspective, I think it’s usually easier to update dev dependencies periodically in smallish steps rather than keep the same versions indefinitely until something breaks, but that’s a matter of opinion. I’m not aware of any concrete reason these dependencies need to be updated right now, so you can certainly just close this PR and move on if you don’t find it useful.

jhpratt commented 2 weeks ago

I'm not necessarily opposed to this; I'll almost certainly end up merging it given the minimal impact. I'm asking all of this out of curiosity more than anything. What does Fedora need rust-rstest for, given that it's a dev dependency? Shouldn't crates be able to do all of this themselves?

decathorpe commented 2 weeks ago

What does Fedora need rust-rstest for, given that it's a dev dependency?

Because we - when possible - run tests for the crates we package.