-
Notifications
You must be signed in to change notification settings - Fork 51
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
Fix Redox MSRV CI #228
Fix Redox MSRV CI #228
Conversation
@@ -90,6 +90,7 @@ jobs: | |||
run: | | |||
cargo update -p ahash --precise 0.8.7 | |||
cargo update -p bumpalo --precise 3.14.0 | |||
cargo update -p redox_syscall@0.5.3 --precise 0.5.2 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is all very unfortunate, newer versions of Cargo support redox_syscall@0.5
.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Truth be told this is somewhat appalling to me. Why would such a foundational crate be bumped to such a relatively recent version of Rust?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
AFAIK they don't have a MSRV policy at all.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Poke @jackpot51, would you consider bringing a more conservative MSRV policy into the foundational Redox crates?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What is the desired MSRV?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Softbuffer currently requires v1.70.
But the problem is rather that we need some sort of MSRV policy.
E.g. don't increase the MSRV without a minor version update or something (the policy most crates I know have).
@notgull on that note, I know that all crates in rust-windowing
have the same MSRV policy as the one described in Winit, but we should still add that to the README here.
EDIT: Following the MSRV policy of Winit, the next version could be updated to v1.77. But we aren't there yet.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Worth noting that redox_syscall is only useful for compiling for Redox, and Redox is only supporting a specific nightly toolchain at this point in time, nightly-2024-05-11
, which identifies itself as rustc 1.80.0-nightly (6e1d94708 2024-05-10)
.
It is strange to call it "appalling", for a crate that is only designed for use on an operating system that only supports a toolchain newer than Rust 1.77 to use features available in that toolchain.
Can I get some more background on why this was a problem?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It is strange to call it "appalling", for a crate that is only designed for use on an operating system that only supports a toolchain newer than Rust 1.77 to use features available in that toolchain.
I believe that @notgull is terribly passionate about this specific problem. The word "appalling" is a bit strong worded imo.
Can I get some more background on why this was a problem?
The problem is that it breaks our CI and also breaks any promises we make to the user. I entirely forgot that Redox requires nightly, so I agree adding an MSRV policy to redox_syscall
really doesn't make any sense.
I think what we need to do is:
- Don't check MSRV for Redox in our CI.
- Document en exception for Redox in our MSRV policy, exactly like we do for Android as well.
Thanks @jackpot51.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, please do not check MSRV on Redox, at least until we are able to use a stable compiler.
If redox_syscall is causing MSRV checks to fail on other Operating Systems, that is not desired behavior so please let me know!
Side-question: it seems |
By default it inserts one, I just deleted it on purpose for this commit. |
For |
Apparently
redox_syscall
v0.5.3 now requires Rust v1.77.