-
-
Notifications
You must be signed in to change notification settings - Fork 2.6k
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
feat: Use the zbus-backed of notify-rust #6332
Conversation
While zbus used to have too new MSRV, that is no longer the case for several months now and hence there is no good reason to avoid zbus dependency. The MSRV is tracked in the zbus CI even to avoid any accidental bumps. OTOH, using zbus eliminates dependency on a platform lib and hence enhances the portability and ease of building. Issues like these will be a thing of the past after this change: tauri-apps#4373 tauri-apps#5007 tauri-apps#5466
That unfortunately is too new. We are stuck with 1.59 on Tauri v1.X - i can't remember what we used to determine that version, maybe what some debian version used to build firefox(?) and even though they raised their version above 1.59 too we can't change our msrv policy in a minor release. or at least didn't want to the last time we talked about it. That said, this change would be fine on the Edit: Depending on how long we want to keep releasing 1.X version we should probably discuss the msrv again, but it looks like we will focus more on 2.0 than minor releases 🤔 |
Well to be fair, that was also quite new at some point so I'm sure there was a very good reason. :)
IMO that seems a bit too strict. Not bumping MSRV in a patch release (e.g what But it's your project so your rules. :)
I understand. It all depends on your project's priorities. I would only suggest humbly that you consider an MSRV bump. Perhaps bumping only by 1 version (1.60) for now then switch to the new MSRV policy after 2.0? |
I think it should be fine to bump the MSRV in a minor release and |
@amrbashir cool. Should I bump the MSRV as part of this PR? |
Fine by me but I'd rather wait for @lucasfernog to approve this first. |
MSRV 1.60 would also allow us to bump another dependency (serde-with IIRC) so it would be nice. But I'd like to hear from @chippers. |
i mean, i'm all for a msrv bump (my first message was not my opinion but a summary of our past 100 discussions about this), but we should at least clearly communicate this, preferably (long) before actually releasing a new tauri version with it and not just via a small mention in the release notes on release day. Just because we were super strict about this so far in 1.X 🤷 We could then also use this chance for a teaser about the MSRV policy changes in v2 to ease users into that. |
Fair enough. Anything I can help with? Should I bump the MSRV in the PR and then you folks handle the rest? |
One of the reasons why 1.59 is the magic number we settled on was that Debian packages Usually when a package maintainer commits to packaging an application, it would be up to them to freeze dependencies and create patches to satisfy the MSRV requirements, but we wanted it to be dead easy for a Tauri application to be able to be accepted. It's not a permanent solution, just our general goal to allow easier packaging and more likelihood a Tauri app would be packaged. If we can improve our Linux distribution stuff then this matters a lot less. Once we can have e.g. flatpaks working very well and perhaps an easier way for generating 3rd party repos (like how installing some packages will actually add their own apt repository and pull the packages from there) I think we would be in a much better spot to adopt a Since no new packages can make it into current or next stable, perhaps we just adopt |
Ping? |
Lucas is taking a break right now, so a decision will likely take a bit of time |
I feel like we should discuss the MSRV bump with the rest of the community. |
Tbh, I was hoping you'd just be the last approver to bumping and we can finally get this landed, but sure. Please let me know how I can help with that. |
How is that going? |
thanks @lucasfernog |
While zbus used to have too new MSRV, that is no longer the case for several months now and hence there is no good reason to avoid zbus dependency. The MSRV is tracked in the zbus CI even to avoid any accidental bumps. The MSRV of zbus is 1.60 currently, which is only 1 version above the MSRV of dbus-rs. Neither Rust 1.60 nor 1.59 is available in Ubuntu LTS or Debian unstable so this change doesn't introduce any distro issues AFAICT.
OTOH, using zbus eliminates dependency on a platform lib and hence enhances the portability and ease of building. Issues like these will be a thing of the past after this change:
#4373
#5007
#5466
Moreover, the latest release of notify-rust enables async APIs based on zbus' async support, in case that is useful for Tauri project in the future.
What kind of change does this PR introduce?
Does this PR introduce a breaking change?
Checklist
fix: remove a typo, closes #___, #___
)Other information