Description
The main branch has several semver-incompatible changes, and a fair amount of overall code churn. Also, rustix has a lot of users that need stability. So here's the plan:
At some point, the I/O safety feature in Rust nightly will hopefully be stabilized. Once that happens, I plan to update io-lifetimes' API to match it, and also to switch to using the types and traits in std instead of its own copies, on Rust versions that support it. That will require a semver bump in io-lifetimes, which will also require a semver bump in rustix, so my plan is to do this in the rustix 0.35 release along with the other semver-incompatible changes, to minimize the number of semver bumps for users.
Before releasing 0.35, I'll also go through the test-users.yml script, figuring out what changes downstream users will need, and adding some of rustix's new users. I'll also do some testing on platforms not covered in CI, including old Linux versions and FreeBSD. This should help ensure stability before the release, and prepare patches to send to downstream users to help them with the API changes once the release is up.