Skip to content

Carried: libc 0.2.190+ breaks the iOS check through netdev 0.46.3 (in6_ifreq) #668

Open

Description

@Tryanks

Dependency problem, carried per CONTRIBUTING (Problems that may be a dependency's).

Localize. The dependabot bump #665 (libc 0.2.189 → 0.2.190) fails only the iOS check (cargo check -p tcode-ios --target aarch64-apple-ios-sim). Reproduced locally on the branch.

Impact. The iOS build of Tcode cannot compile with libc 0.2.190. Desktop, Android, Web are unaffected.

Cause (confirmed in the dependency sources). libc 0.2.190 moves AF_SYS_CONTROL, SYSPROTO_EVENT, SYSPROTO_CONTROL and the _dyld_get_image_header / _dyld_get_image_vmaddr_slide declarations inside cfg(target_os = "macos") (src/unix/bsd/apple/mod.rs:3075 and :5047–5050 in 0.2.190; unconditional in 0.2.189). Two consumers still reference them on every Apple target:

Status (2026-10-25). backtrace no longer blocks: libc 0.2.191 restores the Mach/dyld API on non-macOS Apple targets (rust-lang/libc #5612, #5636), and backtrace 0.3.76 + libc 0.2.191 checks clean for aarch64-apple-ios-sim. The remaining blocker is netdev 0.46.3 (latest), reached through tcode-traverse → iroh → netwatch/portmapper: src/os/darwin/ipv6_addr_flags.rs:19 uses libc::in6_ifreq on every Apple target, while libc 0.2.191 and libc main still define it only for macOS (error[E0425]: cannot find type in6_ifreq in crate libc). The fix exists only as an open upstream PR (shellrow/netdev#192); iroh 1.4.1 / netwatch 0.20.0 still require netdev ^0.46.3.

Carry. crates/platform/gpui-ios/Cargo.toml holds libc = ">=0.2, <0.2.190" with a comment naming both consumers. Remove the hold, and the backtrace half of its comment, when a netdev release no longer needs libc::in6_ifreq on iOS and iroh's netwatch resolves to it; libc can then move to 0.2.191 or later.

Activity

  1. changed the title [-]Carried: libc 0.2.190 breaks the iOS check through backtrace 0.3.76[/-] [+]Carried: libc 0.2.190+ breaks the iOS check through netdev 0.46.3 (in6_ifreq)[/+] on Oct 24, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions