What's Changed
Important
To opt into beta releases, explicitly specify the beta version in your SPM manifest:
.package(url: "https://github.com/siteline/swiftui-introspect", from: "27.0.0-beta")-
Removed: watchOS support. SwiftUI Introspect supports iOS, Mac Catalyst, macOS, tvOS, and visionOS because those platforms expose UIKit or AppKit backing views that the library can inspect. watchOS is outside that model, so the package product should not be linked into watchOS builds.
For a Swift package target that also builds for watchOS, condition the dependency to the supported platforms:
.target( name: "AppFeature", dependencies: [ .product( name: "SwiftUIIntrospect", package: "swiftui-introspect", condition: .when(platforms: [.iOS, .macCatalyst, .macOS, .tvOS, .visionOS]) ), ] )
In shared Swift files, guard imports and usage so the file still compiles when the product is absent from the watchOS dependency graph:
#if canImport(SwiftUIIntrospect) import SwiftUIIntrospect #endif struct ContentView: View { var body: some View { ScrollView { Text("Item") } #if canImport(SwiftUIIntrospect) .introspect(.scrollView, on: .iOS(.v17, .v18, .v26, .v27)) { scrollView in scrollView.bounces = false } #endif } }
In an Xcode multiplatform target, select the
SwiftUIIntrospectpackage product dependency and enable its platform filter for iOS, Mac Catalyst, macOS, tvOS, and visionOS. Leave watchOS unchecked. -
Changed: bumped the macOS minimum deployment target to macOS 12. Xcode 27 requires macOS deployment targets to be 12.0 or newer.
-
Fixed: CI runtime checks for Xcode 27 and OS 26 runtimes.
-
Infra: updated CI to install Xcodes from the upstream tap.
Full Changelog: 27.0.0-beta.1...27.0.0-beta.2
