Dovi.xcframework now ships seven slices: xros-arm64 and xros-arm64-simulator join the existing five, and Package.swift declares .visionOS(.v1).
This is the same content as the withdrawn 1.1.0, released under the version number it should have carried in the first place. See "Why 2.0.0" below.
Added
-
visionOS device and simulator slices. No source or build changes were needed beyond two
build_slicerows and their staging.aarch64-apple-visionosandaarch64-apple-visionos-simare tier-2 Rust targets with prebuiltstdon stable, socargo-ccross-compiles them exactly the way it already does the tvOS pair: no nightly toolchain, no-Z build-std. The slices are verified asplatform VISIONOS minos 1.0, and the package builds for bothgeneric/platform=visionOSand the visionOS Simulator.The visionOS simulator slice is arm64-only for a simpler reason than the tvOS one: there is no Intel Vision Pro.
Changed
- The declared tvOS floor is 17.0, not 16.0. This landed in
3f8e6beand is a correction rather than a new requirement: the tvOS slices have always been compiled with-mtvos-version-min=17.0, while the manifest through 1.0.2 declared.tvOS(.v16). A consumer declaring tvOS 16 was therefore linking a binary that never supported it. Anything pinning this package on tvOS now needs a 17.0 floor of its own.
Why 2.0.0, and why 1.1.0 is gone
Raising a declared platform floor is a breaking change, so it belongs in a major. Publishing it as 1.1.0 broke every consumer that pinned from: "1.0.x" with a tvOS 16 floor of its own: SwiftPM resolved the new minor in, then failed the build on the floor mismatch rather than backing off to a version that fits. That is not a hypothetical, it was reported against AetherEngine 5.x within hours.
The 1.1.0 tag and release have therefore been deleted. Consumers on the 1.x line resolve back to 1.0.2 and build again; consumers that want the visionOS slices move to from: "2.0.0" and declare tvOS 17. A Package.resolved that pinned 1.1.0 needs one swift package update (or xcodebuild -resolvePackageDependencies) to re-pin.
Requirements to rebuild
./build.sh needs stable Rust and cargo-c. Both the tvOS and visionOS targets are tier-2 with prebuilt std:
rustup target add aarch64-apple-tvos aarch64-apple-tvos-sim \
aarch64-apple-ios aarch64-apple-ios-sim \
aarch64-apple-visionos aarch64-apple-visionos-sim \
x86_64-apple-ios x86_64-apple-darwin
cargo install cargo-c
./build.shThe prebuilt Dovi.xcframework stays committed, so consumers need no Rust toolchain.