-
Notifications
You must be signed in to change notification settings - Fork 172
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
Remove linux-raw-sys and libc from public API #956
Merged
sunfishcode
merged 2 commits into
bytecodealliance:1.0-staging
from
forkgull:no-pub-deps
Jan 16, 2024
Merged
Remove linux-raw-sys and libc from public API #956
sunfishcode
merged 2 commits into
bytecodealliance:1.0-staging
from
forkgull:no-pub-deps
Jan 16, 2024
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This prevents libc and linux-raw-sys from affecting the semver status of this crate. Signed-off-by: John Nunley <[email protected]>
Signed-off-by: John Nunley <[email protected]>
sunfishcode
added
the
semver bump
Issues that will require a semver-incompatible fix
label
Dec 7, 2023
The CI has a few errors here, but I think it makes sense to merge this and iterate from here. |
sunfishcode
merged commit Jan 16, 2024
6decc5f
into
bytecodealliance:1.0-staging
10 of 85 checks passed
sunfishcode
pushed a commit
that referenced
this pull request
Jan 16, 2024
* Remove linux-raw-sys and libc from public API This prevents libc and linux-raw-sys from affecting the semver status of this crate. Signed-off-by: John Nunley <[email protected]> * Fix compile errors Signed-off-by: John Nunley <[email protected]> --------- Signed-off-by: John Nunley <[email protected]>
sunfishcode
pushed a commit
that referenced
this pull request
Jan 16, 2024
* Remove linux-raw-sys and libc from public API This prevents libc and linux-raw-sys from affecting the semver status of this crate. Signed-off-by: John Nunley <[email protected]> * Fix compile errors Signed-off-by: John Nunley <[email protected]> --------- Signed-off-by: John Nunley <[email protected]>
sunfishcode
pushed a commit
that referenced
this pull request
Jun 5, 2024
* Remove linux-raw-sys and libc from public API This prevents libc and linux-raw-sys from affecting the semver status of this crate. Signed-off-by: John Nunley <[email protected]> * Fix compile errors Signed-off-by: John Nunley <[email protected]> --------- Signed-off-by: John Nunley <[email protected]>
sunfishcode
pushed a commit
that referenced
this pull request
Jun 11, 2024
* Remove linux-raw-sys and libc from public API This prevents libc and linux-raw-sys from affecting the semver status of this crate. Signed-off-by: John Nunley <[email protected]> * Fix compile errors Signed-off-by: John Nunley <[email protected]> --------- Signed-off-by: John Nunley <[email protected]>
sunfishcode
pushed a commit
that referenced
this pull request
Aug 15, 2024
* Remove linux-raw-sys and libc from public API This prevents libc and linux-raw-sys from affecting the semver status of this crate. Signed-off-by: John Nunley <[email protected]> * Fix compile errors Signed-off-by: John Nunley <[email protected]> --------- Signed-off-by: John Nunley <[email protected]>
sunfishcode
pushed a commit
that referenced
this pull request
Aug 26, 2024
* Remove linux-raw-sys and libc from public API This prevents libc and linux-raw-sys from affecting the semver status of this crate. Signed-off-by: John Nunley <[email protected]> * Fix compile errors Signed-off-by: John Nunley <[email protected]> --------- Signed-off-by: John Nunley <[email protected]>
sunfishcode
pushed a commit
that referenced
this pull request
Sep 5, 2024
* Remove linux-raw-sys and libc from public API This prevents libc and linux-raw-sys from affecting the semver status of this crate. Signed-off-by: John Nunley <[email protected]> * Fix compile errors Signed-off-by: John Nunley <[email protected]> --------- Signed-off-by: John Nunley <[email protected]>
sunfishcode
pushed a commit
that referenced
this pull request
Sep 5, 2024
* Remove linux-raw-sys and libc from public API This prevents libc and linux-raw-sys from affecting the semver status of this crate. Signed-off-by: John Nunley <[email protected]> * Fix compile errors Signed-off-by: John Nunley <[email protected]> --------- Signed-off-by: John Nunley <[email protected]>
notgull
added a commit
to forkgull/rustix
that referenced
this pull request
Sep 27, 2024
* Remove linux-raw-sys and libc from public API This prevents libc and linux-raw-sys from affecting the semver status of this crate. Signed-off-by: John Nunley <[email protected]> * Fix compile errors Signed-off-by: John Nunley <[email protected]> --------- Signed-off-by: John Nunley <[email protected]>
sunfishcode
pushed a commit
that referenced
this pull request
Jan 22, 2025
* Remove linux-raw-sys and libc from public API This prevents libc and linux-raw-sys from affecting the semver status of this crate. Signed-off-by: John Nunley <[email protected]> * Fix compile errors Signed-off-by: John Nunley <[email protected]> --------- Signed-off-by: John Nunley <[email protected]>
sunfishcode
added a commit
that referenced
this pull request
Jan 22, 2025
* Remove linux-raw-sys and libc from public API (#956) * Remove linux-raw-sys and libc from public API This prevents libc and linux-raw-sys from affecting the semver status of this crate. Signed-off-by: John Nunley <[email protected]> --------- Signed-off-by: John Nunley <[email protected]> * Patch low-hanging fruit semver removals for libc and linux-raw-sys (#1063) * break: Remove low-hanging fruit for linux-raw-sys exposure linux-raw-sys is exposed as a public dependency. This commit removes many of the instances where it is publicly exposed. There are a few places that are more difficult and require greater discussion. I've left these in for now. This is checked using this command: $ cargo public-api --features all-apis | grep -i linux_raw_sys The remaining APIs that expose linux_raw_sys are as follows: pub type rustix::fs::FsWord = linux_raw_sys::general::__fsword_t pub type rustix::fs::RawMode = linux_raw_sys::general::__kernel_mode_t pub type rustix::fs::Stat = linux_raw_sys::general::stat pub type rustix::fs::StatFs = linux_raw_sys::general::statfs64 pub type rustix::fs::Statx = linux_raw_sys::general::statx pub type rustix::fs::StatxTimestamp = linux_raw_sys::general::statx_timestamp pub rustix::io_uring::io_uring_cqe::big_cqe: linux_raw_sys::io_uring::__IncompleteArrayField<u64> pub rustix::io_uring::io_uring_probe::ops: linux_raw_sys::io_uring::__IncompleteArrayField<rustix::io_uring::io_uring_probe_op> pub type rustix::io_uring::Statx = linux_raw_sys::general::statx pub type rustix::net::SocketAddrStorage = linux_raw_sys::net::sockaddr pub const fn rustix::process::WaitidStatus::as_raw(&self) -> &linux_raw_sys::general::siginfo_t pub type rustix::system::Sysinfo = linux_raw_sys::system::sysinfo pub type rustix::termios::Winsize = linux_raw_sys::general::winsize Signed-off-by: John Nunley <[email protected]> * break: Low-hanging fruit for removing libc from public API Similarly to the last commit, this one removes libc types from the public API. Again there are libc types that are harder to remove so I've skipped them for now. This can be checked with: $ cargo public-api --features all-apis,use-libc | grep -i libc The remaining API's are: pub type rustix::fs::Dev = libc::unix::linux_like::linux::dev_t pub type rustix::fs::FsWord = libc::unix::linux_like::linux::gnu::b64::__fsword_t pub type rustix::fs::RawMode = libc::unix::linux_like::linux::mode_t pub type rustix::fs::Stat = libc::unix::linux_like::linux::gnu::b64::x86_64::stat64 pub type rustix::fs::StatFs = libc::unix::linux_like::linux::gnu::b64::x86_64::statfs64 pub type rustix::fs::Statx = libc::unix::linux_like::linux::gnu::statx pub type rustix::fs::StatxTimestamp = libc::unix::linux_like::linux::gnu::statx pub type rustix::io_uring::Statx = libc::unix::linux_like::linux::gnu::statx pub type rustix::net::SocketAddrStorage = libc::unix::linux_like::sockaddr_storage pub const fn rustix::process::WaitidStatus::as_raw(&self) -> &libc::unix::linux_like::linux::gnu::b64::x86_64::siginfo_t pub type rustix::system::Sysinfo = libc::unix::linux_like::linux::gnu::b64::sysinfo pub type rustix::termios::Winsize = libc::unix::winsize Signed-off-by: John Nunley <[email protected]> --------- Signed-off-by: John Nunley <[email protected]> * Fix compile errors. * Fix a warning. * Fix a warning. * Add `c_ulonglong`/`c_longlong` to the ffi module. * Fix a warning. * Add `ffi::c_void` on Windows. * bugfix: Fix unused type in WASI (#1177) Signed-off-by: John Nunley <[email protected]> * Use `as_ptr` and `.cast` to avoid `as` casts. * Add some more libc type layout tests. * Make `Secs` always be `i64`. * Add casting helpers for timespec types. --------- Signed-off-by: John Nunley <[email protected]> Co-authored-by: John Nunley <[email protected]>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This prevents libc and linux-raw-sys from affecting the semver status of this crate.
Version of #951 targeting the
1.0-staging
branch