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

Update notify dependency to 8.0.0, bumping MSRV to 1.77 #327

Open
wants to merge 4 commits into
base: main
Choose a base branch
from

Conversation

musicinmybrain
Copy link
Contributor

This isn’t really urgent, but notify 8.0.0 was just released (changelog), and it does look like the dependency in watchfiles could be updated without code changes. Everything still compiles, and the tests still pass. However, this does bring an MSRV increase from 1.63 to 1.77.

@samuelcolvin
Copy link
Owner

samuelcolvin commented Jan 10, 2025

Thanks so much.

I was 6 months ago, but see pydantic/pydantic-core#1315 - @tiran generally knows what he's talking about:

Motivation: The latest versions of RHEL 8 (8.10) and RHEL 9 (9.4) as well as UBI 8 and UBI 9 container images have Rust 1.75. I would like to build pydantic-core from sources without patching.

Since AFAIK there's no advantage to users of notify 8.0.0 (I admit I haven't looked at the release notes), I suspect we should continue to support Rust 1.75 for now.

@samuelcolvin
Copy link
Owner

Advantages I see from 8:

@musicinmybrain
Copy link
Contributor Author

I was 6 months ago, but see pydantic/pydantic-core#1315 - @tiran generally knows what he's talking about:

Motivation: The latest versions of RHEL 8 (8.10) and RHEL 9 (9.4) as well as UBI 8 and UBI 9 container images have Rust 1.75. I would like to build pydantic-core from sources without patching.

Yes, this is a reasonable motivation for keeping a somewhat older MSRV if possible. The situation has changed a little, though: RHEL 9.5 and RHEL8.10 both shipped with Rust 1.79. I don’t know much about the UBI images, but since they’re Red Hat products, I assume they’ve been updated too.

It’s possible, then, that MSRV 1.77 would now be fine for @tiran and those with similar needs.

Full disclosure and context:

  • In Fedora, we’ll probably patch Cargo.toml to allow notify 8.0.0 in order to avoid carrying rust-notify7/rust-notify-types1 compat packages, but this doesn’t mean you have to require notify 8.0.0 upstream.
  • I am working on bringing a python-pydantic package to EPEL10 with the latest version of Pydantic. It will probably take another week or two to get the last dependencies in order.
  • I also co-maintain the python-pydantic package in EPEL9, but it’s not useful for @tiran because it was branched before the Pydantic v2 release, so we’re stuck on Pydantic v1.

@tiran
Copy link

tiran commented Jan 13, 2025

Thanks for pinging me.

In general I aiming for a fair balance between upstream progress and downstream packaging. Downstream should not hold upstream back. As a downstream maintainer, I want upstream to innovate, improve, and evolve. I also appreciate it when upstream developers keep downstream into mind. @samuelcolvin's reaction is a great example. Thanks!

If a newer Rust version helps the project, then please update. Downstream has means to work around the problem. In worst case, we package a slightly older versions until we can update.

UBI are Red Hat's universal base images. Simply speaking they provide a public subset of RHEL including Rust. They always track the latest y-stream releases. The latest ubi9 images are based on RHEL 9.5 with Rust 1.79.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants