Keeping Up With Cupertino
SwiftUI Introspect is now adopting a yearly versioning scheme that aligns with Apple’s OS releases (iOS, iPadOS, macOS, tvOS, visionOS). Starting with v26.0.0, the major version number will match the corresponding OS release. This makes it immediately clear which OS versions are supported without needing to consult the changelog.
.package(url: "https://github.com/siteline/swiftui-introspect", from: "26.0.0"),
For library authors
If your library depends on SwiftUI Introspect, declare a version range that spans at least the last two major versions instead of jumping straight to the latest. This avoids conflicts when apps pull the library directly or through multiple dependencies. For example:
.package(url: "https://github.com/siteline/swiftui-introspect", "1.3.0"..<"27.0.0"),
A wider range is safe because SwiftUI Introspect is essentially “finished”: no new features will be added, only newer platform versions and view types. Thanks to @_spi(Advanced)
imports, library authors can future proof without needing to jump onto the latest major version right away.
Over time, Introspect is expected to become less necessary — and eventually obsolete — as SwiftUI matures, more views move away from UIKit/AppKit underpinnings, and additional SwiftUI modifiers cover many of the common use cases for introspection.
What's Changed
- Added:
WebView
introspection by @davdroman in #460 - Changed: bumped to Swift 6.0 by @davdroman in #466
- Infra: enabled upcoming Swift 7 features by @davdroman in #467
- Fixed: concurrency warnings by @davdroman in #473
- Fixed: archiving error for XCFrameworks linking this library by @davdroman in #476
- CI: adopted Swift Testing by @davdroman in #472
- CI: dropped iOS 13-14 testing by @davdroman in #455
- CI: run tests on 2026 platforms by @davdroman in #474
- CI: ensure required simulators exist by @davdroman in #482
- CI: fix
create_simulators
dedup logic by @davdroman in #483 - CD: disabled CD workflow and added manual CocoaPods release script by @davdroman in #464
- Infra: switched to tabs for indentation by @davdroman in #486
- Infra: specified explicit 2 space indentation for yml and json files by @davdroman in #487
Full Changelog: 1.3.0...26.0.0