Skip to content

rustix 1.1.5 breaks the Linux attach build: rustix::runtime is no longer public #230

Open

Description

@Goldziher

Summary

rmux-client 0.10.0 fails to build on Linux against rustix 1.1.5. rustix 1.1.5 renamed the
runtime module to a mangled, private name (rustix::runtime_448b8ad740e2a26f) and re-exports it
only as pub(crate) (bytecodealliance/rustix#1633), so a downstream use rustix::runtime::… no
longer resolves.

src/attach/resize/linux.rs imports the module directly:

use rustix::runtime::{kernel_sigprocmask, kernel_sigwait, tkill, How, KernelSigSet};

Reproduction

[dependencies]
rustix = "1.1.5"
$ cargo check --target x86_64-unknown-linux-gnu
error[E0432]: unresolved import `rustix::runtime`
 --> src/attach/resize/linux.rs:8:18
  |
8 | use rustix::runtime::{kernel_sigprocmask, kernel_sigwait, tkill, How, KernelSigSet};
  |                  ^^^^^^^ could not find `runtime` in `rustix`

rustix 1.1.4 builds (its runtime module was public). macOS is unaffected because the file is
#[cfg(target_os = "linux")]-only.

Fix

Either pin rustix = "=1.1.4", or move the Linux signal handling off the now-private
rustix::runtime API (e.g. nix / libc), so the crate builds against current rustix.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions