Patch mio 0.8.11 with visionOS support for Apple XCFramework build
tqdm -> crossterm 0.25 pulls mio 0.8.11, which hits compile_error!("unsupported target") on visionOS and broke the Swift XCFramework build and the visionOS CI checks. Point it at the fork that adds target_os = "visionos" to the existing tvos/watchos cfg gates. tokio's mio 1.x already supports visionOS, so only the 0.8.x line needs patching. Build-infra only: [patch.crates-io] is stripped on publish, so the crates.io onde crate is unchanged.
keypair34 committed
Jul 20, 2026 at 22:26 UTC
98922ea44ee9d8ae80148eef8ca2538c832fb2f6
2 files changed
+7
-2
Cargo.lock
+1
-2
@@ -3049,8 +3049,7 @@ dependencies = [
3049
[[package]]
3050
name = "mio"
3051
version = "0.8.11"
3052
-source = "registry+https://github.com/rust-lang/crates.io-index"
3053
-checksum = "a4a650543ca06a924e8b371db273b2756685faae30f8487da1b56505a8f78b0c"
3052
+source = "git+https://github.com/setoelkahfi/mio.git?branch=feature%2Fvisionos#925e3fde24eac3b95b3989fa6c531eb0d792bbaf"
3053
dependencies = [
3054
"libc",
3055
"log",
Cargo.toml
+6
@@ -114,5 +114,11 @@ uniffi = { version = "=0.31.0", features = ["build"] }
114
# Patch sysctl with watchOS support until upstream merges it.
115
# PR: https://github.com/johalun/sysctl-rs/pull/74
116
# NOTE: [patch.crates-io] is ignored by crates.io consumers — safe to keep.
117
+#
118
+# mio 0.8.11 (pulled by tqdm -> crossterm 0.25) lacks visionOS support and hits
119
+# `compile_error!("unsupported target")` when building the Apple XCFramework.
120
+# The fork adds target_os = "visionos" to the existing tvos/watchos cfg gates.
121
+# tokio's mio 1.x already supports visionOS, so only the 0.8.x line needs it.
122
[patch.crates-io]
123
sysctl = { git = "https://github.com/setoelkahfi/sysctl-rs.git", branch = "feature/watchos" }
124
+mio = { git = "https://github.com/setoelkahfi/mio.git", branch = "feature/visionos" }