Build Information
Failed to build SeaTouch, reference 1.1.1 (16ad94), with Swift 6.4 for watchOS using Xcode 27.0 on 18 Sep 2026 05:49:44 UTC.
Build Command
env DEVELOPER_DIR=/Applications/Xcode-27.0.0-Release.Candidate.app xcrun xcodebuild -IDEClonedSourcePackagesDirPathOverride=$PWD/.dependencies -skipMacroValidation -skipPackagePluginValidation -derivedDataPath $PWD/.derivedData build -scheme SeaTouch -destination generic/platform=watchOSBuild Log
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile TouchCatcher.swift
SwiftCompile normal arm64 Compiling\ UIWindow+touches.swift /Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/UIWindow+touches.swift (in target 'SeaTouch' from project 'SeaTouch')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/UIWindow+touches.swift (in target 'SeaTouch' from project 'SeaTouch')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile UIWindow+touches.swift
SwiftCompile normal arm64 Compiling\ SeaTouch.swift /Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/SeaTouch.swift (in target 'SeaTouch' from project 'SeaTouch')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/SeaTouch.swift (in target 'SeaTouch' from project 'SeaTouch')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile SeaTouch.swift
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/SeaTouch.swift:7:32: error: 'UIWindow' is unavailable in watchOS
5 | static let shared = SeaTouch()
6 |
7 | private var trackedWindows = [UIWindow: (touches: TouchCatcher, layer: RippleShapeLayer)]()
| `- error: 'UIWindow' is unavailable in watchOS
8 | private var trackedLayers = [TouchCatcher: RippleShapeLayer]()
9 | private var trackedCatchers = [TouchCatcher: UIWindow]()
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIWindow.h:22:12: note: 'UIWindow' has been explicitly marked unavailable here
20 |
21 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
22 | @interface UIWindow : UIView
| `- note: 'UIWindow' has been explicitly marked unavailable here
23 |
24 | // instantiate a UIWindow already associated with a given UIWindowScene instance, with matching frame & interface orientations.
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/SeaTouch.swift:9:47: error: 'UIWindow' is unavailable in watchOS
7 | private var trackedWindows = [UIWindow: (touches: TouchCatcher, layer: RippleShapeLayer)]()
8 | private var trackedLayers = [TouchCatcher: RippleShapeLayer]()
9 | private var trackedCatchers = [TouchCatcher: UIWindow]()
| `- error: 'UIWindow' is unavailable in watchOS
10 |
11 | let radius: CGFloat = 25
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIWindow.h:22:12: note: 'UIWindow' has been explicitly marked unavailable here
20 |
21 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
22 | @interface UIWindow : UIView
| `- note: 'UIWindow' has been explicitly marked unavailable here
23 |
24 | // instantiate a UIWindow already associated with a given UIWindowScene instance, with matching frame & interface orientations.
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/SeaTouch.swift:19:31: error: 'UIWindow' is unavailable in watchOS
17 |
18 | /// Initiates touch tracking on a given window, also caching important references to speed up future execution.
19 | func trackTouches(on window: UIWindow) {
| `- error: 'UIWindow' is unavailable in watchOS
20 | guard trackedWindows[window] == nil else { return }
21 | let catcher = TouchCatcher(target: self, action: #selector(touchesUpdated(_:)))
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIWindow.h:22:12: note: 'UIWindow' has been explicitly marked unavailable here
20 |
21 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
22 | @interface UIWindow : UIView
| `- note: 'UIWindow' has been explicitly marked unavailable here
23 |
24 | // instantiate a UIWindow already associated with a given UIWindowScene instance, with matching frame & interface orientations.
SwiftCompile normal arm64_32 Compiling\ SeaTouch.swift /Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/SeaTouch.swift (in target 'SeaTouch' from project 'SeaTouch')
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/SeaTouch.swift:7:32: error: 'UIWindow' is unavailable in watchOS
5 | static let shared = SeaTouch()
6 |
7 | private var trackedWindows = [UIWindow: (touches: TouchCatcher, layer: RippleShapeLayer)]()
| `- error: 'UIWindow' is unavailable in watchOS
8 | private var trackedLayers = [TouchCatcher: RippleShapeLayer]()
9 | private var trackedCatchers = [TouchCatcher: UIWindow]()
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIWindow.h:22:12: note: 'UIWindow' has been explicitly marked unavailable here
20 |
21 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
22 | @interface UIWindow : UIView
| `- note: 'UIWindow' has been explicitly marked unavailable here
23 |
24 | // instantiate a UIWindow already associated with a given UIWindowScene instance, with matching frame & interface orientations.
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/SeaTouch.swift:9:47: error: 'UIWindow' is unavailable in watchOS
7 | private var trackedWindows = [UIWindow: (touches: TouchCatcher, layer: RippleShapeLayer)]()
8 | private var trackedLayers = [TouchCatcher: RippleShapeLayer]()
9 | private var trackedCatchers = [TouchCatcher: UIWindow]()
| `- error: 'UIWindow' is unavailable in watchOS
10 |
11 | let radius: CGFloat = 25
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIWindow.h:22:12: note: 'UIWindow' has been explicitly marked unavailable here
20 |
21 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
22 | @interface UIWindow : UIView
| `- note: 'UIWindow' has been explicitly marked unavailable here
23 |
24 | // instantiate a UIWindow already associated with a given UIWindowScene instance, with matching frame & interface orientations.
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/SeaTouch.swift:19:31: error: 'UIWindow' is unavailable in watchOS
17 |
18 | /// Initiates touch tracking on a given window, also caching important references to speed up future execution.
19 | func trackTouches(on window: UIWindow) {
| `- error: 'UIWindow' is unavailable in watchOS
20 | guard trackedWindows[window] == nil else { return }
21 | let catcher = TouchCatcher(target: self, action: #selector(touchesUpdated(_:)))
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIWindow.h:22:12: note: 'UIWindow' has been explicitly marked unavailable here
20 |
21 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
22 | @interface UIWindow : UIView
| `- note: 'UIWindow' has been explicitly marked unavailable here
23 |
24 | // instantiate a UIWindow already associated with a given UIWindowScene instance, with matching frame & interface orientations.
SwiftCompile normal arm64_32 /Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/SeaTouch.swift (in target 'SeaTouch' from project 'SeaTouch')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile SeaTouch.swift
SwiftEmitModule normal arm64_32 Emitting\ module\ for\ SeaTouch (in target 'SeaTouch' from project 'SeaTouch')
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/RippleShapeLayer.swift:13:38: error: 'CAShapeLayer' is unavailable in watchOS
11 | class RippleShapeLayer: CAShapeLayer {
12 |
13 | private var animatingSublayers: Set<CAShapeLayer> = []
| `- error: 'CAShapeLayer' is unavailable in watchOS
14 | private var availableSublayers: Set<CAShapeLayer> = []
15 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAShapeLayer.h:40:12: note: 'CAShapeLayer' has been explicitly marked unavailable here
38 |
39 | API_AVAILABLE(macos(10.6), ios(3.0), tvos(9.0)) API_UNAVAILABLE(watchos)
40 | @interface CAShapeLayer : CALayer
| `- note: 'CAShapeLayer' has been explicitly marked unavailable here
41 |
42 | /* The path defining the shape to be rendered. If the path extends
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/RippleShapeLayer.swift:14:38: error: 'CAShapeLayer' is unavailable in watchOS
12 |
13 | private var animatingSublayers: Set<CAShapeLayer> = []
14 | private var availableSublayers: Set<CAShapeLayer> = []
| `- error: 'CAShapeLayer' is unavailable in watchOS
15 |
16 | func dequeueRippleSublayer() -> CAShapeLayer {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAShapeLayer.h:40:12: note: 'CAShapeLayer' has been explicitly marked unavailable here
38 |
39 | API_AVAILABLE(macos(10.6), ios(3.0), tvos(9.0)) API_UNAVAILABLE(watchos)
40 | @interface CAShapeLayer : CALayer
| `- note: 'CAShapeLayer' has been explicitly marked unavailable here
41 |
42 | /* The path defining the shape to be rendered. If the path extends
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/RippleShapeLayer.swift:16:34: error: 'CAShapeLayer' is unavailable in watchOS
14 | private var availableSublayers: Set<CAShapeLayer> = []
15 |
16 | func dequeueRippleSublayer() -> CAShapeLayer {
| `- error: 'CAShapeLayer' is unavailable in watchOS
17 | let layer: CAShapeLayer
18 | if let available = availableSublayers.first {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAShapeLayer.h:40:12: note: 'CAShapeLayer' has been explicitly marked unavailable here
38 |
39 | API_AVAILABLE(macos(10.6), ios(3.0), tvos(9.0)) API_UNAVAILABLE(watchos)
40 | @interface CAShapeLayer : CALayer
| `- note: 'CAShapeLayer' has been explicitly marked unavailable here
41 |
42 | /* The path defining the shape to be rendered. If the path extends
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/RippleShapeLayer.swift:11:25: error: 'CAShapeLayer' is unavailable in watchOS
9 | import UIKit
10 |
11 | class RippleShapeLayer: CAShapeLayer {
| `- error: 'CAShapeLayer' is unavailable in watchOS
12 |
13 | private var animatingSublayers: Set<CAShapeLayer> = []
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAShapeLayer.h:40:12: note: 'CAShapeLayer' has been explicitly marked unavailable here
38 |
39 | API_AVAILABLE(macos(10.6), ios(3.0), tvos(9.0)) API_UNAVAILABLE(watchos)
40 | @interface CAShapeLayer : CALayer
| `- note: 'CAShapeLayer' has been explicitly marked unavailable here
41 |
42 | /* The path defining the shape to be rendered. If the path extends
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/RippleShapeLayer.swift:36:32: error: 'CAAnimation' is unavailable in watchOS
34 |
35 | extension RippleShapeLayer: CAAnimationDelegate {
36 | func animationDidStop(_ anim: CAAnimation, finished flag: Bool) {
| `- error: 'CAAnimation' is unavailable in watchOS
37 | for layer in animatingSublayers {
38 | if (layer.animationKeys() ?? []).isEmpty {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAAnimation.h:25:12: note: 'CAAnimation' has been explicitly marked unavailable here
23 |
24 | API_AVAILABLE(macos(10.5), ios(2.0), tvos(9.0)) API_UNAVAILABLE(watchos)
25 | @interface CAAnimation : NSObject
| `- note: 'CAAnimation' has been explicitly marked unavailable here
26 | <NSSecureCoding, NSCopying, CAMediaTiming, CAAction>
27 | {
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/RippleShapeLayer.swift:35:29: error: 'CAAnimationDelegate' is unavailable in watchOS
33 | }
34 |
35 | extension RippleShapeLayer: CAAnimationDelegate {
| `- error: 'CAAnimationDelegate' is unavailable in watchOS
36 | func animationDidStop(_ anim: CAAnimation, finished flag: Bool) {
37 | for layer in animatingSublayers {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAAnimation.h:71:11: note: 'CAAnimationDelegate' has been explicitly marked unavailable here
69 |
70 | API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0)) API_UNAVAILABLE(watchos)
71 | @protocol CAAnimationDelegate <NSObject>
| `- note: 'CAAnimationDelegate' has been explicitly marked unavailable here
72 | @optional
73 |
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/SeaTouch.swift:7:32: error: 'UIWindow' is unavailable in watchOS
5 | static let shared = SeaTouch()
6 |
7 | private var trackedWindows = [UIWindow: (touches: TouchCatcher, layer: RippleShapeLayer)]()
| `- error: 'UIWindow' is unavailable in watchOS
8 | private var trackedLayers = [TouchCatcher: RippleShapeLayer]()
9 | private var trackedCatchers = [TouchCatcher: UIWindow]()
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIWindow.h:22:12: note: 'UIWindow' has been explicitly marked unavailable here
20 |
21 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
22 | @interface UIWindow : UIView
| `- note: 'UIWindow' has been explicitly marked unavailable here
23 |
24 | // instantiate a UIWindow already associated with a given UIWindowScene instance, with matching frame & interface orientations.
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/SeaTouch.swift:9:47: error: 'UIWindow' is unavailable in watchOS
7 | private var trackedWindows = [UIWindow: (touches: TouchCatcher, layer: RippleShapeLayer)]()
8 | private var trackedLayers = [TouchCatcher: RippleShapeLayer]()
9 | private var trackedCatchers = [TouchCatcher: UIWindow]()
| `- error: 'UIWindow' is unavailable in watchOS
10 |
11 | let radius: CGFloat = 25
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIWindow.h:22:12: note: 'UIWindow' has been explicitly marked unavailable here
20 |
21 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
22 | @interface UIWindow : UIView
| `- note: 'UIWindow' has been explicitly marked unavailable here
23 |
24 | // instantiate a UIWindow already associated with a given UIWindowScene instance, with matching frame & interface orientations.
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/SeaTouch.swift:19:31: error: 'UIWindow' is unavailable in watchOS
17 |
18 | /// Initiates touch tracking on a given window, also caching important references to speed up future execution.
19 | func trackTouches(on window: UIWindow) {
| `- error: 'UIWindow' is unavailable in watchOS
20 | guard trackedWindows[window] == nil else { return }
21 | let catcher = TouchCatcher(target: self, action: #selector(touchesUpdated(_:)))
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIWindow.h:22:12: note: 'UIWindow' has been explicitly marked unavailable here
20 |
21 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
22 | @interface UIWindow : UIView
| `- note: 'UIWindow' has been explicitly marked unavailable here
23 |
24 | // instantiate a UIWindow already associated with a given UIWindowScene instance, with matching frame & interface orientations.
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/SeaTouch.swift:39:38: error: 'UIWindow' is unavailable in watchOS
37 |
38 | /// Ceases touch tracking on a given window, releasing previously cached references.
39 | func stopTrackingTouches(on window: UIWindow) {
| `- error: 'UIWindow' is unavailable in watchOS
40 | guard let (catcher, shapeLayer) = trackedWindows[window] else { return }
41 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIWindow.h:22:12: note: 'UIWindow' has been explicitly marked unavailable here
20 |
21 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
22 | @interface UIWindow : UIView
| `- note: 'UIWindow' has been explicitly marked unavailable here
23 |
24 | // instantiate a UIWindow already associated with a given UIWindowScene instance, with matching frame & interface orientations.
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:14:35: error: 'UITouch' is unavailable in watchOS
12 |
13 | /// Keeps track of all touches throughout their lifetime
14 | private(set) var allTouches: Set<UITouch> = []
| `- error: 'UITouch' is unavailable in watchOS
15 |
16 | private var _newTouches: Set<UITouch> = []
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITouch.h:51:12: note: 'UITouch' has been explicitly marked unavailable here
49 |
50 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
51 | @interface UITouch : NSObject
| `- note: 'UITouch' has been explicitly marked unavailable here
52 |
53 | @property(nonatomic,readonly) NSTimeInterval timestamp;
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:16:31: error: 'UITouch' is unavailable in watchOS
14 | private(set) var allTouches: Set<UITouch> = []
15 |
16 | private var _newTouches: Set<UITouch> = []
| `- error: 'UITouch' is unavailable in watchOS
17 | private(set) var newTouches: Set<UITouch> {
18 | get {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITouch.h:51:12: note: 'UITouch' has been explicitly marked unavailable here
49 |
50 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
51 | @interface UITouch : NSObject
| `- note: 'UITouch' has been explicitly marked unavailable here
52 |
53 | @property(nonatomic,readonly) NSTimeInterval timestamp;
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:17:35: error: 'UITouch' is unavailable in watchOS
15 |
16 | private var _newTouches: Set<UITouch> = []
17 | private(set) var newTouches: Set<UITouch> {
| `- error: 'UITouch' is unavailable in watchOS
18 | get {
19 | let touches = _newTouches
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITouch.h:51:12: note: 'UITouch' has been explicitly marked unavailable here
49 |
50 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
51 | @interface UITouch : NSObject
| `- note: 'UITouch' has been explicitly marked unavailable here
52 |
53 | @property(nonatomic,readonly) NSTimeInterval timestamp;
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:39:44: error: 'UITouch' is unavailable in watchOS
37 | }
38 |
39 | override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent) {
| `- error: 'UITouch' is unavailable in watchOS
40 | super.touchesBegan(touches, with: event)
41 | newTouches = newTouches.union(touches)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITouch.h:51:12: note: 'UITouch' has been explicitly marked unavailable here
49 |
50 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
51 | @interface UITouch : NSObject
| `- note: 'UITouch' has been explicitly marked unavailable here
52 |
53 | @property(nonatomic,readonly) NSTimeInterval timestamp;
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:39:66: error: 'UIEvent' is unavailable in watchOS
37 | }
38 |
39 | override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent) {
| `- error: 'UIEvent' is unavailable in watchOS
40 | super.touchesBegan(touches, with: event)
41 | newTouches = newTouches.union(touches)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIEvent.h:62:12: note: 'UIEvent' has been explicitly marked unavailable here
60 |
61 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
62 | @interface UIEvent : NSObject
| `- note: 'UIEvent' has been explicitly marked unavailable here
63 |
64 | @property(nonatomic,readonly) UIEventType type API_AVAILABLE(ios(3.0));
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:45:44: error: 'UITouch' is unavailable in watchOS
43 | }
44 |
45 | override func touchesMoved(_ touches: Set<UITouch>, with event: UIEvent) {
| `- error: 'UITouch' is unavailable in watchOS
46 | super.touchesMoved(touches, with: event)
47 | allTouches = allTouches.union(touches)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITouch.h:51:12: note: 'UITouch' has been explicitly marked unavailable here
49 |
50 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
51 | @interface UITouch : NSObject
| `- note: 'UITouch' has been explicitly marked unavailable here
52 |
53 | @property(nonatomic,readonly) NSTimeInterval timestamp;
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:45:66: error: 'UIEvent' is unavailable in watchOS
43 | }
44 |
45 | override func touchesMoved(_ touches: Set<UITouch>, with event: UIEvent) {
| `- error: 'UIEvent' is unavailable in watchOS
46 | super.touchesMoved(touches, with: event)
47 | allTouches = allTouches.union(touches)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIEvent.h:62:12: note: 'UIEvent' has been explicitly marked unavailable here
60 |
61 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
62 | @interface UIEvent : NSObject
| `- note: 'UIEvent' has been explicitly marked unavailable here
63 |
64 | @property(nonatomic,readonly) UIEventType type API_AVAILABLE(ios(3.0));
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:51:44: error: 'UITouch' is unavailable in watchOS
49 | }
50 |
51 | override func touchesEnded(_ touches: Set<UITouch>, with event: UIEvent) {
| `- error: 'UITouch' is unavailable in watchOS
52 | super.touchesEnded(touches, with: event)
53 | allTouches = allTouches.subtracting(touches)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITouch.h:51:12: note: 'UITouch' has been explicitly marked unavailable here
49 |
50 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
51 | @interface UITouch : NSObject
| `- note: 'UITouch' has been explicitly marked unavailable here
52 |
53 | @property(nonatomic,readonly) NSTimeInterval timestamp;
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:51:66: error: 'UIEvent' is unavailable in watchOS
49 | }
50 |
51 | override func touchesEnded(_ touches: Set<UITouch>, with event: UIEvent) {
| `- error: 'UIEvent' is unavailable in watchOS
52 | super.touchesEnded(touches, with: event)
53 | allTouches = allTouches.subtracting(touches)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIEvent.h:62:12: note: 'UIEvent' has been explicitly marked unavailable here
60 |
61 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
62 | @interface UIEvent : NSObject
| `- note: 'UIEvent' has been explicitly marked unavailable here
63 |
64 | @property(nonatomic,readonly) UIEventType type API_AVAILABLE(ios(3.0));
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:61:48: error: 'UITouch' is unavailable in watchOS
59 | }
60 |
61 | override func touchesCancelled(_ touches: Set<UITouch>, with event: UIEvent) {
| `- error: 'UITouch' is unavailable in watchOS
62 | super.touchesCancelled(touches, with: event)
63 | allTouches = allTouches.subtracting(touches)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITouch.h:51:12: note: 'UITouch' has been explicitly marked unavailable here
49 |
50 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
51 | @interface UITouch : NSObject
| `- note: 'UITouch' has been explicitly marked unavailable here
52 |
53 | @property(nonatomic,readonly) NSTimeInterval timestamp;
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:61:70: error: 'UIEvent' is unavailable in watchOS
59 | }
60 |
61 | override func touchesCancelled(_ touches: Set<UITouch>, with event: UIEvent) {
| `- error: 'UIEvent' is unavailable in watchOS
62 | super.touchesCancelled(touches, with: event)
63 | allTouches = allTouches.subtracting(touches)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIEvent.h:62:12: note: 'UIEvent' has been explicitly marked unavailable here
60 |
61 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
62 | @interface UIEvent : NSObject
| `- note: 'UIEvent' has been explicitly marked unavailable here
63 |
64 | @property(nonatomic,readonly) UIEventType type API_AVAILABLE(ios(3.0));
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:72:63: error: 'UIGestureRecognizer' is unavailable in watchOS
70 |
71 | /// Nothing should prevent this gesture recognizer from activating for as long as it's enabled.
72 | override func canBePrevented(by preventingGestureRecognizer: UIGestureRecognizer) -> Bool {
| `- error: 'UIGestureRecognizer' is unavailable in watchOS
73 | false
74 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIGestureRecognizer.h:35:12: note: 'UIGestureRecognizer' has been explicitly marked unavailable here
33 |
34 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
35 | @interface UIGestureRecognizer : NSObject
| `- note: 'UIGestureRecognizer' has been explicitly marked unavailable here
36 |
37 | // Valid action method signatures:
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:11:27: error: 'UIGestureRecognizer' is unavailable in watchOS
9 |
10 | /// This recognizer is configured to detect and forward *every* touch, but also passes through to any following recognizers/touch input.
11 | final class TouchCatcher: UIGestureRecognizer {
| `- error: 'UIGestureRecognizer' is unavailable in watchOS
12 |
13 | /// Keeps track of all touches throughout their lifetime
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIGestureRecognizer.h:35:12: note: 'UIGestureRecognizer' has been explicitly marked unavailable here
33 |
34 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
35 | @interface UIGestureRecognizer : NSObject
| `- note: 'UIGestureRecognizer' has been explicitly marked unavailable here
36 |
37 | // Valid action method signatures:
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:79:46: error: 'UIGestureRecognizer' is unavailable in watchOS
77 | extension TouchCatcher: UIGestureRecognizerDelegate {
78 | /// No touch events should be consumed by this gesture recognizer alone.
79 | func gestureRecognizer(_ gestureRecognizer: UIGestureRecognizer, shouldRecognizeSimultaneouslyWith otherGestureRecognizer: UIGestureRecognizer) -> Bool {
| `- error: 'UIGestureRecognizer' is unavailable in watchOS
80 | true
81 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIGestureRecognizer.h:35:12: note: 'UIGestureRecognizer' has been explicitly marked unavailable here
33 |
34 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
35 | @interface UIGestureRecognizer : NSObject
| `- note: 'UIGestureRecognizer' has been explicitly marked unavailable here
36 |
37 | // Valid action method signatures:
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:79:125: error: 'UIGestureRecognizer' is unavailable in watchOS
77 | extension TouchCatcher: UIGestureRecognizerDelegate {
78 | /// No touch events should be consumed by this gesture recognizer alone.
79 | func gestureRecognizer(_ gestureRecognizer: UIGestureRecognizer, shouldRecognizeSimultaneouslyWith otherGestureRecognizer: UIGestureRecognizer) -> Bool {
| `- error: 'UIGestureRecognizer' is unavailable in watchOS
80 | true
81 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIGestureRecognizer.h:35:12: note: 'UIGestureRecognizer' has been explicitly marked unavailable here
33 |
34 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
35 | @interface UIGestureRecognizer : NSObject
| `- note: 'UIGestureRecognizer' has been explicitly marked unavailable here
36 |
37 | // Valid action method signatures:
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:77:25: error: 'UIGestureRecognizerDelegate' is unavailable in watchOS
75 | }
76 |
77 | extension TouchCatcher: UIGestureRecognizerDelegate {
| `- error: 'UIGestureRecognizerDelegate' is unavailable in watchOS
78 | /// No touch events should be consumed by this gesture recognizer alone.
79 | func gestureRecognizer(_ gestureRecognizer: UIGestureRecognizer, shouldRecognizeSimultaneouslyWith otherGestureRecognizer: UIGestureRecognizer) -> Bool {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIGestureRecognizer.h:91:11: note: 'UIGestureRecognizerDelegate' has been explicitly marked unavailable here
89 |
90 | API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
91 | @protocol UIGestureRecognizerDelegate <NSObject>
| `- note: 'UIGestureRecognizerDelegate' has been explicitly marked unavailable here
92 | @optional
93 | // called when a gesture recognizer attempts to transition out of UIGestureRecognizerStatePossible. returning NO causes it to transition to UIGestureRecognizerStateFailed
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/UIWindow+touches.swift:10:11: error: 'UIWindow' is unavailable in watchOS
8 | import UIKit
9 |
10 | extension UIWindow {
| `- error: 'UIWindow' is unavailable in watchOS
11 | /// After running this function, the app's UIWindow layer will draw at the areas of touches at the highest possible layer on screen.
12 | public func showTouches() {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIWindow.h:22:12: note: 'UIWindow' has been explicitly marked unavailable here
20 |
21 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
22 | @interface UIWindow : UIView
| `- note: 'UIWindow' has been explicitly marked unavailable here
23 |
24 | // instantiate a UIWindow already associated with a given UIWindowScene instance, with matching frame & interface orientations.
Failed frontend command:
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift-frontend -frontend -emit-module -experimental-skip-non-inlinable-function-bodies-without-types /Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/RippleShapeLayer.swift /Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/SeaTouch.swift /Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift /Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/UIWindow+touches.swift -target arm64_32-apple-watchos9.0 -disable-cross-import-overlay-search -load-resolved-plugin /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/lib/swift/host/plugins/libFoundationMacros.dylib\#/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/bin/swift-plugin-server\#FoundationMacros -load-resolved-plugin /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/lib/swift/host/plugins/libObservationMacros.dylib\#/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/bin/swift-plugin-server\#ObservationMacros -load-resolved-plugin /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/lib/swift/host/plugins/libSwiftMacros.dylib\#/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/bin/swift-plugin-server\#SwiftMacros -load-resolved-plugin /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/lib/swift/host/plugins/libSwiftUIMacros.dylib\#/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/bin/swift-plugin-server\#SwiftUIMacros -disable-implicit-swift-modules -Xcc -fno-implicit-modules -Xcc -fno-implicit-module-maps -explicit-swift-module-map-file /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SeaTouch.build/Debug-watchos/SeaTouch-t.build/Objects-normal/arm64_32/SeaTouch-dependencies-2.json -enable-objc-interop -sdk /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk -I /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-watchos -Isystem /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/lib -F /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-watchos -F /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/Library/Frameworks -F /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/Developer/Library/Frameworks -module-cache-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SwiftExplicitPrecompiledModules -no-color-diagnostics -Xcc -fno-color-diagnostics -enable-testing -g -debug-info-format\=dwarf -dwarf-version\=4 -profile-generate -profile-coverage-mapping -swift-version 5 -Onone -D SWIFT_PACKAGE -D DEBUG -D SWIFT_MODULE_RESOURCE_BUNDLE_UNAVAILABLE -D Xcode -serialize-debugging-options -enable-experimental-feature DebugDescriptionMacro -empty-abi-descriptor -validate-clang-modules-once -clang-build-session-file /Users/admin/builder/spi-builder-workspace/.derivedData/ModuleCache.noindex/Session.modulevalidation -Xcc -working-directory -Xcc /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode -enable-anonymous-context-mangled-names -file-compilation-dir /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode -Xcc -D_LIBCPP_HARDENING_MODE\=_LIBCPP_HARDENING_MODE_DEBUG -Xcc -ivfsstatcache -Xcc /Users/admin/builder/spi-builder-workspace/.derivedData/SDKStatCaches.noindex/watchos27.0-24R360-e829b21a6f8c9b70876ba0858053c04477534ef55a1706bf4c1112bbb242f0a2.sdkstatcache -Xcc -fmodules-prune-interval\=86400 -Xcc -fmodules-prune-after\=345600 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-watchos/include -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SeaTouch.build/Debug-watchos/SeaTouch-t.build/DerivedSources-normal/arm64_32 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SeaTouch.build/Debug-watchos/SeaTouch-t.build/DerivedSources/arm64_32 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SeaTouch.build/Debug-watchos/SeaTouch-t.build/DerivedSources -Xcc -DSWIFT_PACKAGE -Xcc -DDEBUG\=1 -no-auto-bridging-header-chaining -module-name SeaTouch -const-gather-protocols-file /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SeaTouch.build/Debug-watchos/SeaTouch-t.build/Objects-normal/arm64_32/SeaTouch_const_extract_protocols.json -disable-clang-spi -clang-target arm64_32-apple-watchos27.0 -target-sdk-version 27.0 -target-sdk-name watchos27.0 -in-process-plugin-server-path /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/host/libSwiftInProcPluginServer.dylib -emit-module-doc-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SeaTouch.build/Debug-watchos/SeaTouch-t.build/Objects-normal/arm64_32/SeaTouch.swiftdoc -emit-module-source-info-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SeaTouch.build/Debug-watchos/SeaTouch-t.build/Objects-normal/arm64_32/SeaTouch.swiftsourceinfo -emit-objc-header-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SeaTouch.build/Debug-watchos/SeaTouch-t.build/Objects-normal/arm64_32/SeaTouch-Swift.h -serialize-diagnostics-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SeaTouch.build/Debug-watchos/SeaTouch-t.build/Objects-normal/arm64_32/SeaTouch-primary-emit-module.dia -emit-dependencies-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SeaTouch.build/Debug-watchos/SeaTouch-t.build/Objects-normal/arm64_32/SeaTouch-primary-emit-module.d -parse-as-library -o /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SeaTouch.build/Debug-watchos/SeaTouch-t.build/Objects-normal/arm64_32/SeaTouch.swiftmodule -emit-abi-descriptor-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SeaTouch.build/Debug-watchos/SeaTouch-t.build/Objects-normal/arm64_32/SeaTouch.abi.json
SwiftCompile normal arm64_32 (in target 'SeaTouch' from project 'SeaTouch')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
SwiftCompile normal arm64_32 Compiling\ RippleShapeLayer.swift /Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/RippleShapeLayer.swift (in target 'SeaTouch' from project 'SeaTouch')
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/RippleShapeLayer.swift:13:38: error: 'CAShapeLayer' is unavailable in watchOS
11 | class RippleShapeLayer: CAShapeLayer {
12 |
13 | private var animatingSublayers: Set<CAShapeLayer> = []
| `- error: 'CAShapeLayer' is unavailable in watchOS
14 | private var availableSublayers: Set<CAShapeLayer> = []
15 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAShapeLayer.h:40:12: note: 'CAShapeLayer' has been explicitly marked unavailable here
38 |
39 | API_AVAILABLE(macos(10.6), ios(3.0), tvos(9.0)) API_UNAVAILABLE(watchos)
40 | @interface CAShapeLayer : CALayer
| `- note: 'CAShapeLayer' has been explicitly marked unavailable here
41 |
42 | /* The path defining the shape to be rendered. If the path extends
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/RippleShapeLayer.swift:14:38: error: 'CAShapeLayer' is unavailable in watchOS
12 |
13 | private var animatingSublayers: Set<CAShapeLayer> = []
14 | private var availableSublayers: Set<CAShapeLayer> = []
| `- error: 'CAShapeLayer' is unavailable in watchOS
15 |
16 | func dequeueRippleSublayer() -> CAShapeLayer {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAShapeLayer.h:40:12: note: 'CAShapeLayer' has been explicitly marked unavailable here
38 |
39 | API_AVAILABLE(macos(10.6), ios(3.0), tvos(9.0)) API_UNAVAILABLE(watchos)
40 | @interface CAShapeLayer : CALayer
| `- note: 'CAShapeLayer' has been explicitly marked unavailable here
41 |
42 | /* The path defining the shape to be rendered. If the path extends
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/RippleShapeLayer.swift:16:34: error: 'CAShapeLayer' is unavailable in watchOS
14 | private var availableSublayers: Set<CAShapeLayer> = []
15 |
16 | func dequeueRippleSublayer() -> CAShapeLayer {
| `- error: 'CAShapeLayer' is unavailable in watchOS
17 | let layer: CAShapeLayer
18 | if let available = availableSublayers.first {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAShapeLayer.h:40:12: note: 'CAShapeLayer' has been explicitly marked unavailable here
38 |
39 | API_AVAILABLE(macos(10.6), ios(3.0), tvos(9.0)) API_UNAVAILABLE(watchos)
40 | @interface CAShapeLayer : CALayer
| `- note: 'CAShapeLayer' has been explicitly marked unavailable here
41 |
42 | /* The path defining the shape to be rendered. If the path extends
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/RippleShapeLayer.swift:11:25: error: 'CAShapeLayer' is unavailable in watchOS
9 | import UIKit
10 |
11 | class RippleShapeLayer: CAShapeLayer {
| `- error: 'CAShapeLayer' is unavailable in watchOS
12 |
13 | private var animatingSublayers: Set<CAShapeLayer> = []
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAShapeLayer.h:40:12: note: 'CAShapeLayer' has been explicitly marked unavailable here
38 |
39 | API_AVAILABLE(macos(10.6), ios(3.0), tvos(9.0)) API_UNAVAILABLE(watchos)
40 | @interface CAShapeLayer : CALayer
| `- note: 'CAShapeLayer' has been explicitly marked unavailable here
41 |
42 | /* The path defining the shape to be rendered. If the path extends
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/RippleShapeLayer.swift:36:32: error: 'CAAnimation' is unavailable in watchOS
34 |
35 | extension RippleShapeLayer: CAAnimationDelegate {
36 | func animationDidStop(_ anim: CAAnimation, finished flag: Bool) {
| `- error: 'CAAnimation' is unavailable in watchOS
37 | for layer in animatingSublayers {
38 | if (layer.animationKeys() ?? []).isEmpty {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAAnimation.h:25:12: note: 'CAAnimation' has been explicitly marked unavailable here
23 |
24 | API_AVAILABLE(macos(10.5), ios(2.0), tvos(9.0)) API_UNAVAILABLE(watchos)
25 | @interface CAAnimation : NSObject
| `- note: 'CAAnimation' has been explicitly marked unavailable here
26 | <NSSecureCoding, NSCopying, CAMediaTiming, CAAction>
27 | {
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/RippleShapeLayer.swift:35:29: error: 'CAAnimationDelegate' is unavailable in watchOS
33 | }
34 |
35 | extension RippleShapeLayer: CAAnimationDelegate {
| `- error: 'CAAnimationDelegate' is unavailable in watchOS
36 | func animationDidStop(_ anim: CAAnimation, finished flag: Bool) {
37 | for layer in animatingSublayers {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAAnimation.h:71:11: note: 'CAAnimationDelegate' has been explicitly marked unavailable here
69 |
70 | API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0)) API_UNAVAILABLE(watchos)
71 | @protocol CAAnimationDelegate <NSObject>
| `- note: 'CAAnimationDelegate' has been explicitly marked unavailable here
72 | @optional
73 |
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/RippleShapeLayer.swift:17:14: error: 'CAShapeLayer' is unavailable in watchOS
15 |
16 | func dequeueRippleSublayer() -> CAShapeLayer {
17 | let layer: CAShapeLayer
| `- error: 'CAShapeLayer' is unavailable in watchOS
18 | if let available = availableSublayers.first {
19 | layer = available
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAShapeLayer.h:40:12: note: 'CAShapeLayer' has been explicitly marked unavailable here
38 |
39 | API_AVAILABLE(macos(10.6), ios(3.0), tvos(9.0)) API_UNAVAILABLE(watchos)
40 | @interface CAShapeLayer : CALayer
| `- note: 'CAShapeLayer' has been explicitly marked unavailable here
41 |
42 | /* The path defining the shape to be rendered. If the path extends
SwiftCompile normal arm64_32 /Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/RippleShapeLayer.swift (in target 'SeaTouch' from project 'SeaTouch')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile RippleShapeLayer.swift
SwiftCompile normal arm64_32 Compiling\ UIWindow+touches.swift /Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/UIWindow+touches.swift (in target 'SeaTouch' from project 'SeaTouch')
SwiftCompile normal arm64_32 /Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/UIWindow+touches.swift (in target 'SeaTouch' from project 'SeaTouch')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile UIWindow+touches.swift
SwiftCompile normal arm64_32 Compiling\ TouchCatcher.swift /Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift (in target 'SeaTouch' from project 'SeaTouch')
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:14:35: error: 'UITouch' is unavailable in watchOS
12 |
13 | /// Keeps track of all touches throughout their lifetime
14 | private(set) var allTouches: Set<UITouch> = []
| `- error: 'UITouch' is unavailable in watchOS
15 |
16 | private var _newTouches: Set<UITouch> = []
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITouch.h:51:12: note: 'UITouch' has been explicitly marked unavailable here
49 |
50 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
51 | @interface UITouch : NSObject
| `- note: 'UITouch' has been explicitly marked unavailable here
52 |
53 | @property(nonatomic,readonly) NSTimeInterval timestamp;
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:16:31: error: 'UITouch' is unavailable in watchOS
14 | private(set) var allTouches: Set<UITouch> = []
15 |
16 | private var _newTouches: Set<UITouch> = []
| `- error: 'UITouch' is unavailable in watchOS
17 | private(set) var newTouches: Set<UITouch> {
18 | get {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITouch.h:51:12: note: 'UITouch' has been explicitly marked unavailable here
49 |
50 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
51 | @interface UITouch : NSObject
| `- note: 'UITouch' has been explicitly marked unavailable here
52 |
53 | @property(nonatomic,readonly) NSTimeInterval timestamp;
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:17:35: error: 'UITouch' is unavailable in watchOS
15 |
16 | private var _newTouches: Set<UITouch> = []
17 | private(set) var newTouches: Set<UITouch> {
| `- error: 'UITouch' is unavailable in watchOS
18 | get {
19 | let touches = _newTouches
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITouch.h:51:12: note: 'UITouch' has been explicitly marked unavailable here
49 |
50 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
51 | @interface UITouch : NSObject
| `- note: 'UITouch' has been explicitly marked unavailable here
52 |
53 | @property(nonatomic,readonly) NSTimeInterval timestamp;
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:39:44: error: 'UITouch' is unavailable in watchOS
37 | }
38 |
39 | override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent) {
| `- error: 'UITouch' is unavailable in watchOS
40 | super.touchesBegan(touches, with: event)
41 | newTouches = newTouches.union(touches)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITouch.h:51:12: note: 'UITouch' has been explicitly marked unavailable here
49 |
50 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
51 | @interface UITouch : NSObject
| `- note: 'UITouch' has been explicitly marked unavailable here
52 |
53 | @property(nonatomic,readonly) NSTimeInterval timestamp;
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:39:66: error: 'UIEvent' is unavailable in watchOS
37 | }
38 |
39 | override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent) {
| `- error: 'UIEvent' is unavailable in watchOS
40 | super.touchesBegan(touches, with: event)
41 | newTouches = newTouches.union(touches)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIEvent.h:62:12: note: 'UIEvent' has been explicitly marked unavailable here
60 |
61 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
62 | @interface UIEvent : NSObject
| `- note: 'UIEvent' has been explicitly marked unavailable here
63 |
64 | @property(nonatomic,readonly) UIEventType type API_AVAILABLE(ios(3.0));
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:45:44: error: 'UITouch' is unavailable in watchOS
43 | }
44 |
45 | override func touchesMoved(_ touches: Set<UITouch>, with event: UIEvent) {
| `- error: 'UITouch' is unavailable in watchOS
46 | super.touchesMoved(touches, with: event)
47 | allTouches = allTouches.union(touches)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITouch.h:51:12: note: 'UITouch' has been explicitly marked unavailable here
49 |
50 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
51 | @interface UITouch : NSObject
| `- note: 'UITouch' has been explicitly marked unavailable here
52 |
53 | @property(nonatomic,readonly) NSTimeInterval timestamp;
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:45:66: error: 'UIEvent' is unavailable in watchOS
43 | }
44 |
45 | override func touchesMoved(_ touches: Set<UITouch>, with event: UIEvent) {
| `- error: 'UIEvent' is unavailable in watchOS
46 | super.touchesMoved(touches, with: event)
47 | allTouches = allTouches.union(touches)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIEvent.h:62:12: note: 'UIEvent' has been explicitly marked unavailable here
60 |
61 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
62 | @interface UIEvent : NSObject
| `- note: 'UIEvent' has been explicitly marked unavailable here
63 |
64 | @property(nonatomic,readonly) UIEventType type API_AVAILABLE(ios(3.0));
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:51:44: error: 'UITouch' is unavailable in watchOS
49 | }
50 |
51 | override func touchesEnded(_ touches: Set<UITouch>, with event: UIEvent) {
| `- error: 'UITouch' is unavailable in watchOS
52 | super.touchesEnded(touches, with: event)
53 | allTouches = allTouches.subtracting(touches)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITouch.h:51:12: note: 'UITouch' has been explicitly marked unavailable here
49 |
50 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
51 | @interface UITouch : NSObject
| `- note: 'UITouch' has been explicitly marked unavailable here
52 |
53 | @property(nonatomic,readonly) NSTimeInterval timestamp;
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:51:66: error: 'UIEvent' is unavailable in watchOS
49 | }
50 |
51 | override func touchesEnded(_ touches: Set<UITouch>, with event: UIEvent) {
| `- error: 'UIEvent' is unavailable in watchOS
52 | super.touchesEnded(touches, with: event)
53 | allTouches = allTouches.subtracting(touches)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIEvent.h:62:12: note: 'UIEvent' has been explicitly marked unavailable here
60 |
61 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
62 | @interface UIEvent : NSObject
| `- note: 'UIEvent' has been explicitly marked unavailable here
63 |
64 | @property(nonatomic,readonly) UIEventType type API_AVAILABLE(ios(3.0));
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:61:48: error: 'UITouch' is unavailable in watchOS
59 | }
60 |
61 | override func touchesCancelled(_ touches: Set<UITouch>, with event: UIEvent) {
| `- error: 'UITouch' is unavailable in watchOS
62 | super.touchesCancelled(touches, with: event)
63 | allTouches = allTouches.subtracting(touches)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITouch.h:51:12: note: 'UITouch' has been explicitly marked unavailable here
49 |
50 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
51 | @interface UITouch : NSObject
| `- note: 'UITouch' has been explicitly marked unavailable here
52 |
53 | @property(nonatomic,readonly) NSTimeInterval timestamp;
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:61:70: error: 'UIEvent' is unavailable in watchOS
59 | }
60 |
61 | override func touchesCancelled(_ touches: Set<UITouch>, with event: UIEvent) {
| `- error: 'UIEvent' is unavailable in watchOS
62 | super.touchesCancelled(touches, with: event)
63 | allTouches = allTouches.subtracting(touches)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIEvent.h:62:12: note: 'UIEvent' has been explicitly marked unavailable here
60 |
61 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
62 | @interface UIEvent : NSObject
| `- note: 'UIEvent' has been explicitly marked unavailable here
63 |
64 | @property(nonatomic,readonly) UIEventType type API_AVAILABLE(ios(3.0));
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:72:63: error: 'UIGestureRecognizer' is unavailable in watchOS
70 |
71 | /// Nothing should prevent this gesture recognizer from activating for as long as it's enabled.
72 | override func canBePrevented(by preventingGestureRecognizer: UIGestureRecognizer) -> Bool {
| `- error: 'UIGestureRecognizer' is unavailable in watchOS
73 | false
74 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIGestureRecognizer.h:35:12: note: 'UIGestureRecognizer' has been explicitly marked unavailable here
33 |
34 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
35 | @interface UIGestureRecognizer : NSObject
| `- note: 'UIGestureRecognizer' has been explicitly marked unavailable here
36 |
37 | // Valid action method signatures:
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:11:27: error: 'UIGestureRecognizer' is unavailable in watchOS
9 |
10 | /// This recognizer is configured to detect and forward *every* touch, but also passes through to any following recognizers/touch input.
11 | final class TouchCatcher: UIGestureRecognizer {
| `- error: 'UIGestureRecognizer' is unavailable in watchOS
12 |
13 | /// Keeps track of all touches throughout their lifetime
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIGestureRecognizer.h:35:12: note: 'UIGestureRecognizer' has been explicitly marked unavailable here
33 |
34 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
35 | @interface UIGestureRecognizer : NSObject
| `- note: 'UIGestureRecognizer' has been explicitly marked unavailable here
36 |
37 | // Valid action method signatures:
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:79:46: error: 'UIGestureRecognizer' is unavailable in watchOS
77 | extension TouchCatcher: UIGestureRecognizerDelegate {
78 | /// No touch events should be consumed by this gesture recognizer alone.
79 | func gestureRecognizer(_ gestureRecognizer: UIGestureRecognizer, shouldRecognizeSimultaneouslyWith otherGestureRecognizer: UIGestureRecognizer) -> Bool {
| `- error: 'UIGestureRecognizer' is unavailable in watchOS
80 | true
81 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIGestureRecognizer.h:35:12: note: 'UIGestureRecognizer' has been explicitly marked unavailable here
33 |
34 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
35 | @interface UIGestureRecognizer : NSObject
| `- note: 'UIGestureRecognizer' has been explicitly marked unavailable here
36 |
37 | // Valid action method signatures:
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:79:125: error: 'UIGestureRecognizer' is unavailable in watchOS
77 | extension TouchCatcher: UIGestureRecognizerDelegate {
78 | /// No touch events should be consumed by this gesture recognizer alone.
79 | func gestureRecognizer(_ gestureRecognizer: UIGestureRecognizer, shouldRecognizeSimultaneouslyWith otherGestureRecognizer: UIGestureRecognizer) -> Bool {
| `- error: 'UIGestureRecognizer' is unavailable in watchOS
80 | true
81 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIGestureRecognizer.h:35:12: note: 'UIGestureRecognizer' has been explicitly marked unavailable here
33 |
34 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
35 | @interface UIGestureRecognizer : NSObject
| `- note: 'UIGestureRecognizer' has been explicitly marked unavailable here
36 |
37 | // Valid action method signatures:
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:77:25: error: 'UIGestureRecognizerDelegate' is unavailable in watchOS
75 | }
76 |
77 | extension TouchCatcher: UIGestureRecognizerDelegate {
| `- error: 'UIGestureRecognizerDelegate' is unavailable in watchOS
78 | /// No touch events should be consumed by this gesture recognizer alone.
79 | func gestureRecognizer(_ gestureRecognizer: UIGestureRecognizer, shouldRecognizeSimultaneouslyWith otherGestureRecognizer: UIGestureRecognizer) -> Bool {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIGestureRecognizer.h:91:11: note: 'UIGestureRecognizerDelegate' has been explicitly marked unavailable here
89 |
90 | API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
91 | @protocol UIGestureRecognizerDelegate <NSObject>
| `- note: 'UIGestureRecognizerDelegate' has been explicitly marked unavailable here
92 | @optional
93 | // called when a gesture recognizer attempts to transition out of UIGestureRecognizerStatePossible. returning NO causes it to transition to UIGestureRecognizerStateFailed
SwiftCompile normal arm64_32 /Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift (in target 'SeaTouch' from project 'SeaTouch')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile TouchCatcher.swift
PruneExplicitPrecompiledModules /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SwiftExplicitPrecompiledModules
PruneExplicitPrecompiledModules /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/ExplicitPrecompiledModules
PruneExplicitPrecompiledModules /Users/admin/builder/spi-builder-workspace/.derivedData/SDKExplicitPrecompiledModules
2026-09-18 01:49:35.054 xcodebuild[643:4101] [MT] IDERunDestination: Supported platforms for the buildables in the current scheme is empty.
** BUILD FAILED **
The following build commands failed:
SwiftCompile normal arm64 (in target 'SeaTouch' from project 'SeaTouch')
SwiftEmitModule normal arm64 Emitting\ module\ for\ SeaTouch (in target 'SeaTouch' from project 'SeaTouch')
SwiftEmitModule normal arm64_32 Emitting\ module\ for\ SeaTouch (in target 'SeaTouch' from project 'SeaTouch')
SwiftCompile normal arm64_32 (in target 'SeaTouch' from project 'SeaTouch')
Building workspace SeaTouch with scheme SeaTouch
(5 failures)
Command line invocation:
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/usr/bin/xcodebuild -IDEClonedSourcePackagesDirPathOverride=/Users/admin/builder/spi-builder-workspace/.dependencies -resolvePackageDependencies
Resolve Package Graph
Resolved source packages:
SeaTouch: /Users/admin/builder/spi-builder-workspace
resolved source packages: SeaTouch
2026-09-18 01:49:41.011 xcodebuild[773:4605] [MT] IDERunDestination: Supported platforms for the buildables in the current scheme is empty.
{
"dependencies" : [
],
"manifest_display_name" : "SeaTouch",
"name" : "SeaTouch",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "ios",
"version" : "10.0"
}
],
"products" : [
{
"name" : "SeaTouch",
"targets" : [
"SeaTouch"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "SeaTouchTests",
"module_type" : "SwiftTarget",
"name" : "SeaTouchTests",
"path" : "Tests/SeaTouchTests",
"sources" : [
"SeaTouchTests.swift",
"XCTestManifests.swift"
],
"target_dependencies" : [
"SeaTouch"
],
"type" : "test"
},
{
"c99name" : "SeaTouch",
"module_type" : "SwiftTarget",
"name" : "SeaTouch",
"path" : "Sources/SeaTouch",
"product_memberships" : [
"SeaTouch"
],
"sources" : [
"RippleShapeLayer.swift",
"SeaTouch.swift",
"TouchCatcher.swift",
"UIWindow+touches.swift"
],
"type" : "library"
}
],
"tools_version" : "5.2"
}
{
"workspace" : {
"name" : "SeaTouch",
"schemes" : [
"SeaTouch"
]
}
}
2026-09-18 01:49:42.242 xcodebuild[781:4678] [MT] IDERunDestination: Supported platforms for the buildables in the current scheme is empty.
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-27.0.0-Release.Candidate.app xcrun xcodebuild -IDEClonedSourcePackagesDirPathOverride=$PWD/.dependencies -skipMacroValidation -skipPackagePluginValidation -derivedDataPath $PWD/.derivedData build -scheme SeaTouch -destination generic/platform=watchOS
Command line invocation:
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/usr/bin/xcodebuild -IDEClonedSourcePackagesDirPathOverride=/Users/admin/builder/spi-builder-workspace/.dependencies -skipMacroValidation -skipPackagePluginValidation -derivedDataPath /Users/admin/builder/spi-builder-workspace/.derivedData build -scheme SeaTouch -destination generic/platform=watchOS
Resolve Package Graph
Resolved source packages:
SeaTouch: /Users/admin/builder/spi-builder-workspace
ComputePackagePrebuildTargetDependencyGraph
Prepare packages
CreateBuildRequest
SendProjectDescription
CreateBuildOperation
ComputeTargetDependencyGraph
note: Building targets in dependency order
note: Target dependency graph (2 targets)
Target 'SeaTouch-product' in project 'SeaTouch'
➜ Explicit dependency on target 'SeaTouch' in project 'SeaTouch'
Target 'SeaTouch' in project 'SeaTouch' (no dependencies)
GatherProvisioningInputs
CreateBuildDescription
ClangStatCache /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang-stat-cache /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk /Users/admin/builder/spi-builder-workspace/.derivedData/SDKStatCaches.noindex/watchos27.0-24R360-e829b21a6f8c9b70876ba0858053c04477534ef55a1706bf4c1112bbb242f0a2.sdkstatcache
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang-stat-cache /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk -o /Users/admin/builder/spi-builder-workspace/.derivedData/SDKStatCaches.noindex/watchos27.0-24R360-e829b21a6f8c9b70876ba0858053c04477534ef55a1706bf4c1112bbb242f0a2.sdkstatcache
SwiftDriver SeaTouch normal arm64_32 com.apple.xcode.tools.swift.compiler (in target 'SeaTouch' from project 'SeaTouch')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftDriver -- /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swiftc -parse-as-library -module-name SeaTouch -Onone @/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SeaTouch.build/Debug-watchos/SeaTouch-t.build/Objects-normal/arm64_32/SeaTouch.SwiftFileList -DSWIFT_PACKAGE -DDEBUG -DSWIFT_MODULE_RESOURCE_BUNDLE_UNAVAILABLE -DXcode -plugin-path /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/host/plugins/testing -enable-experimental-feature DebugDescriptionMacro -sdk /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk -target arm64_32-apple-watchos9.0 -g -module-cache-path /Users/admin/builder/spi-builder-workspace/.derivedData/ModuleCache.noindex -Xfrontend -serialize-debugging-options -profile-coverage-mapping -profile-generate -enable-testing -index-store-path /Users/admin/builder/spi-builder-workspace/.derivedData/Index.noindex/DataStore -Xcc -D_LIBCPP_HARDENING_MODE\=_LIBCPP_HARDENING_MODE_DEBUG -swift-version 5 -I /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-watchos -Isystem /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/lib -F /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-watchos -F /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/Library/Frameworks -F /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/Developer/Library/Frameworks -c -j10 -enable-batch-mode -incremental -Xcc -ivfsstatcache -Xcc /Users/admin/builder/spi-builder-workspace/.derivedData/SDKStatCaches.noindex/watchos27.0-24R360-e829b21a6f8c9b70876ba0858053c04477534ef55a1706bf4c1112bbb242f0a2.sdkstatcache -output-file-map /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SeaTouch.build/Debug-watchos/SeaTouch-t.build/Objects-normal/arm64_32/SeaTouch-OutputFileMap.json -save-temps -no-color-diagnostics -explicit-module-build -module-cache-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SwiftExplicitPrecompiledModules -clang-scanner-module-cache-path /Users/admin/builder/spi-builder-workspace/.derivedData/ModuleCache.noindex -sdk-module-cache-path /Users/admin/builder/spi-builder-workspace/.derivedData/SDKExplicitPrecompiledModules -emit-dependencies -emit-module -emit-module-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SeaTouch.build/Debug-watchos/SeaTouch-t.build/Objects-normal/arm64_32/SeaTouch.swiftmodule -serialize-diagnostics -dependency-scan-serialize-diagnostics-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SeaTouch.build/Debug-watchos/SeaTouch-t.build/Objects-normal/arm64_32/SeaTouch-dependency-scan.dia -validate-clang-modules-once -clang-build-session-file /Users/admin/builder/spi-builder-workspace/.derivedData/ModuleCache.noindex/Session.modulevalidation -Xcc -fmodules-prune-interval\=86400 -Xcc -fmodules-prune-after\=345600 -emit-const-values -const-gather-protocols-list /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SeaTouch.build/Debug-watchos/SeaTouch-t.build/Objects-normal/arm64_32/SeaTouch_const_extract_protocols.json -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-watchos/include -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SeaTouch.build/Debug-watchos/SeaTouch-t.build/DerivedSources-normal/arm64_32 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SeaTouch.build/Debug-watchos/SeaTouch-t.build/DerivedSources/arm64_32 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SeaTouch.build/Debug-watchos/SeaTouch-t.build/DerivedSources -Xcc -DSWIFT_PACKAGE -Xcc -DDEBUG\=1 -emit-objc-header -emit-objc-header-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SeaTouch.build/Debug-watchos/SeaTouch-t.build/Objects-normal/arm64_32/SeaTouch-Swift.h -working-directory /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode -experimental-emit-module-separately -disable-cmo
SwiftDriver SeaTouch normal arm64 com.apple.xcode.tools.swift.compiler (in target 'SeaTouch' from project 'SeaTouch')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftDriver -- /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swiftc -parse-as-library -module-name SeaTouch -Onone @/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SeaTouch.build/Debug-watchos/SeaTouch-t.build/Objects-normal/arm64/SeaTouch.SwiftFileList -DSWIFT_PACKAGE -DDEBUG -DSWIFT_MODULE_RESOURCE_BUNDLE_UNAVAILABLE -DXcode -plugin-path /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/host/plugins/testing -enable-experimental-feature DebugDescriptionMacro -sdk /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk -target arm64-apple-watchos9.0 -g -module-cache-path /Users/admin/builder/spi-builder-workspace/.derivedData/ModuleCache.noindex -Xfrontend -serialize-debugging-options -profile-coverage-mapping -profile-generate -enable-testing -index-store-path /Users/admin/builder/spi-builder-workspace/.derivedData/Index.noindex/DataStore -Xcc -D_LIBCPP_HARDENING_MODE\=_LIBCPP_HARDENING_MODE_DEBUG -swift-version 5 -I /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-watchos -Isystem /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/lib -F /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-watchos -F /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/Library/Frameworks -F /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/Developer/Library/Frameworks -c -j10 -enable-batch-mode -incremental -Xcc -ivfsstatcache -Xcc /Users/admin/builder/spi-builder-workspace/.derivedData/SDKStatCaches.noindex/watchos27.0-24R360-e829b21a6f8c9b70876ba0858053c04477534ef55a1706bf4c1112bbb242f0a2.sdkstatcache -output-file-map /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SeaTouch.build/Debug-watchos/SeaTouch-t.build/Objects-normal/arm64/SeaTouch-OutputFileMap.json -save-temps -no-color-diagnostics -explicit-module-build -module-cache-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SwiftExplicitPrecompiledModules -clang-scanner-module-cache-path /Users/admin/builder/spi-builder-workspace/.derivedData/ModuleCache.noindex -sdk-module-cache-path /Users/admin/builder/spi-builder-workspace/.derivedData/SDKExplicitPrecompiledModules -emit-dependencies -emit-module -emit-module-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SeaTouch.build/Debug-watchos/SeaTouch-t.build/Objects-normal/arm64/SeaTouch.swiftmodule -serialize-diagnostics -dependency-scan-serialize-diagnostics-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SeaTouch.build/Debug-watchos/SeaTouch-t.build/Objects-normal/arm64/SeaTouch-dependency-scan.dia -validate-clang-modules-once -clang-build-session-file /Users/admin/builder/spi-builder-workspace/.derivedData/ModuleCache.noindex/Session.modulevalidation -Xcc -fmodules-prune-interval\=86400 -Xcc -fmodules-prune-after\=345600 -emit-const-values -const-gather-protocols-list /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SeaTouch.build/Debug-watchos/SeaTouch-t.build/Objects-normal/arm64/SeaTouch_const_extract_protocols.json -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-watchos/include -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SeaTouch.build/Debug-watchos/SeaTouch-t.build/DerivedSources-normal/arm64 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SeaTouch.build/Debug-watchos/SeaTouch-t.build/DerivedSources/arm64 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SeaTouch.build/Debug-watchos/SeaTouch-t.build/DerivedSources -Xcc -DSWIFT_PACKAGE -Xcc -DDEBUG\=1 -emit-objc-header -emit-objc-header-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SeaTouch.build/Debug-watchos/SeaTouch-t.build/Objects-normal/arm64/SeaTouch-Swift.h -working-directory /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode -experimental-emit-module-separately -disable-cmo
SwiftEmitModule normal arm64_32 Emitting\ module\ for\ SeaTouch (in target 'SeaTouch' from project 'SeaTouch')
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/RippleShapeLayer.swift:13:38: error: 'CAShapeLayer' is unavailable in watchOS
11 | class RippleShapeLayer: CAShapeLayer {
12 |
13 | private var animatingSublayers: Set<CAShapeLayer> = []
| `- error: 'CAShapeLayer' is unavailable in watchOS
14 | private var availableSublayers: Set<CAShapeLayer> = []
15 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAShapeLayer.h:40:12: note: 'CAShapeLayer' has been explicitly marked unavailable here
38 |
39 | API_AVAILABLE(macos(10.6), ios(3.0), tvos(9.0)) API_UNAVAILABLE(watchos)
40 | @interface CAShapeLayer : CALayer
| `- note: 'CAShapeLayer' has been explicitly marked unavailable here
41 |
42 | /* The path defining the shape to be rendered. If the path extends
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/RippleShapeLayer.swift:14:38: error: 'CAShapeLayer' is unavailable in watchOS
12 |
13 | private var animatingSublayers: Set<CAShapeLayer> = []
14 | private var availableSublayers: Set<CAShapeLayer> = []
| `- error: 'CAShapeLayer' is unavailable in watchOS
15 |
16 | func dequeueRippleSublayer() -> CAShapeLayer {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAShapeLayer.h:40:12: note: 'CAShapeLayer' has been explicitly marked unavailable here
38 |
39 | API_AVAILABLE(macos(10.6), ios(3.0), tvos(9.0)) API_UNAVAILABLE(watchos)
40 | @interface CAShapeLayer : CALayer
| `- note: 'CAShapeLayer' has been explicitly marked unavailable here
41 |
42 | /* The path defining the shape to be rendered. If the path extends
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/RippleShapeLayer.swift:16:34: error: 'CAShapeLayer' is unavailable in watchOS
14 | private var availableSublayers: Set<CAShapeLayer> = []
15 |
16 | func dequeueRippleSublayer() -> CAShapeLayer {
| `- error: 'CAShapeLayer' is unavailable in watchOS
17 | let layer: CAShapeLayer
18 | if let available = availableSublayers.first {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAShapeLayer.h:40:12: note: 'CAShapeLayer' has been explicitly marked unavailable here
38 |
39 | API_AVAILABLE(macos(10.6), ios(3.0), tvos(9.0)) API_UNAVAILABLE(watchos)
40 | @interface CAShapeLayer : CALayer
| `- note: 'CAShapeLayer' has been explicitly marked unavailable here
41 |
42 | /* The path defining the shape to be rendered. If the path extends
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/RippleShapeLayer.swift:11:25: error: 'CAShapeLayer' is unavailable in watchOS
9 | import UIKit
10 |
11 | class RippleShapeLayer: CAShapeLayer {
| `- error: 'CAShapeLayer' is unavailable in watchOS
12 |
13 | private var animatingSublayers: Set<CAShapeLayer> = []
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAShapeLayer.h:40:12: note: 'CAShapeLayer' has been explicitly marked unavailable here
38 |
39 | API_AVAILABLE(macos(10.6), ios(3.0), tvos(9.0)) API_UNAVAILABLE(watchos)
40 | @interface CAShapeLayer : CALayer
| `- note: 'CAShapeLayer' has been explicitly marked unavailable here
41 |
42 | /* The path defining the shape to be rendered. If the path extends
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/RippleShapeLayer.swift:36:32: error: 'CAAnimation' is unavailable in watchOS
34 |
35 | extension RippleShapeLayer: CAAnimationDelegate {
36 | func animationDidStop(_ anim: CAAnimation, finished flag: Bool) {
| `- error: 'CAAnimation' is unavailable in watchOS
37 | for layer in animatingSublayers {
38 | if (layer.animationKeys() ?? []).isEmpty {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAAnimation.h:25:12: note: 'CAAnimation' has been explicitly marked unavailable here
23 |
24 | API_AVAILABLE(macos(10.5), ios(2.0), tvos(9.0)) API_UNAVAILABLE(watchos)
25 | @interface CAAnimation : NSObject
| `- note: 'CAAnimation' has been explicitly marked unavailable here
26 | <NSSecureCoding, NSCopying, CAMediaTiming, CAAction>
27 | {
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/RippleShapeLayer.swift:35:29: error: 'CAAnimationDelegate' is unavailable in watchOS
33 | }
34 |
35 | extension RippleShapeLayer: CAAnimationDelegate {
| `- error: 'CAAnimationDelegate' is unavailable in watchOS
36 | func animationDidStop(_ anim: CAAnimation, finished flag: Bool) {
37 | for layer in animatingSublayers {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAAnimation.h:71:11: note: 'CAAnimationDelegate' has been explicitly marked unavailable here
69 |
70 | API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0)) API_UNAVAILABLE(watchos)
71 | @protocol CAAnimationDelegate <NSObject>
| `- note: 'CAAnimationDelegate' has been explicitly marked unavailable here
72 | @optional
73 |
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/SeaTouch.swift:7:32: error: 'UIWindow' is unavailable in watchOS
5 | static let shared = SeaTouch()
6 |
7 | private var trackedWindows = [UIWindow: (touches: TouchCatcher, layer: RippleShapeLayer)]()
| `- error: 'UIWindow' is unavailable in watchOS
8 | private var trackedLayers = [TouchCatcher: RippleShapeLayer]()
9 | private var trackedCatchers = [TouchCatcher: UIWindow]()
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIWindow.h:22:12: note: 'UIWindow' has been explicitly marked unavailable here
20 |
21 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
22 | @interface UIWindow : UIView
| `- note: 'UIWindow' has been explicitly marked unavailable here
23 |
24 | // instantiate a UIWindow already associated with a given UIWindowScene instance, with matching frame & interface orientations.
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/SeaTouch.swift:9:47: error: 'UIWindow' is unavailable in watchOS
7 | private var trackedWindows = [UIWindow: (touches: TouchCatcher, layer: RippleShapeLayer)]()
8 | private var trackedLayers = [TouchCatcher: RippleShapeLayer]()
9 | private var trackedCatchers = [TouchCatcher: UIWindow]()
| `- error: 'UIWindow' is unavailable in watchOS
10 |
11 | let radius: CGFloat = 25
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIWindow.h:22:12: note: 'UIWindow' has been explicitly marked unavailable here
20 |
21 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
22 | @interface UIWindow : UIView
| `- note: 'UIWindow' has been explicitly marked unavailable here
23 |
24 | // instantiate a UIWindow already associated with a given UIWindowScene instance, with matching frame & interface orientations.
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/SeaTouch.swift:19:31: error: 'UIWindow' is unavailable in watchOS
17 |
18 | /// Initiates touch tracking on a given window, also caching important references to speed up future execution.
19 | func trackTouches(on window: UIWindow) {
| `- error: 'UIWindow' is unavailable in watchOS
20 | guard trackedWindows[window] == nil else { return }
21 | let catcher = TouchCatcher(target: self, action: #selector(touchesUpdated(_:)))
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIWindow.h:22:12: note: 'UIWindow' has been explicitly marked unavailable here
20 |
21 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
22 | @interface UIWindow : UIView
| `- note: 'UIWindow' has been explicitly marked unavailable here
23 |
24 | // instantiate a UIWindow already associated with a given UIWindowScene instance, with matching frame & interface orientations.
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/SeaTouch.swift:39:38: error: 'UIWindow' is unavailable in watchOS
37 |
38 | /// Ceases touch tracking on a given window, releasing previously cached references.
39 | func stopTrackingTouches(on window: UIWindow) {
| `- error: 'UIWindow' is unavailable in watchOS
40 | guard let (catcher, shapeLayer) = trackedWindows[window] else { return }
41 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIWindow.h:22:12: note: 'UIWindow' has been explicitly marked unavailable here
20 |
21 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
22 | @interface UIWindow : UIView
| `- note: 'UIWindow' has been explicitly marked unavailable here
23 |
24 | // instantiate a UIWindow already associated with a given UIWindowScene instance, with matching frame & interface orientations.
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:14:35: error: 'UITouch' is unavailable in watchOS
12 |
13 | /// Keeps track of all touches throughout their lifetime
14 | private(set) var allTouches: Set<UITouch> = []
| `- error: 'UITouch' is unavailable in watchOS
15 |
16 | private var _newTouches: Set<UITouch> = []
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITouch.h:51:12: note: 'UITouch' has been explicitly marked unavailable here
49 |
50 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
51 | @interface UITouch : NSObject
| `- note: 'UITouch' has been explicitly marked unavailable here
52 |
53 | @property(nonatomic,readonly) NSTimeInterval timestamp;
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:16:31: error: 'UITouch' is unavailable in watchOS
14 | private(set) var allTouches: Set<UITouch> = []
15 |
16 | private var _newTouches: Set<UITouch> = []
| `- error: 'UITouch' is unavailable in watchOS
17 | private(set) var newTouches: Set<UITouch> {
18 | get {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITouch.h:51:12: note: 'UITouch' has been explicitly marked unavailable here
49 |
50 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
51 | @interface UITouch : NSObject
| `- note: 'UITouch' has been explicitly marked unavailable here
52 |
53 | @property(nonatomic,readonly) NSTimeInterval timestamp;
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:17:35: error: 'UITouch' is unavailable in watchOS
15 |
16 | private var _newTouches: Set<UITouch> = []
17 | private(set) var newTouches: Set<UITouch> {
| `- error: 'UITouch' is unavailable in watchOS
18 | get {
19 | let touches = _newTouches
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITouch.h:51:12: note: 'UITouch' has been explicitly marked unavailable here
49 |
50 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
51 | @interface UITouch : NSObject
| `- note: 'UITouch' has been explicitly marked unavailable here
52 |
53 | @property(nonatomic,readonly) NSTimeInterval timestamp;
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:39:44: error: 'UITouch' is unavailable in watchOS
37 | }
38 |
39 | override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent) {
| `- error: 'UITouch' is unavailable in watchOS
40 | super.touchesBegan(touches, with: event)
41 | newTouches = newTouches.union(touches)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITouch.h:51:12: note: 'UITouch' has been explicitly marked unavailable here
49 |
50 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
51 | @interface UITouch : NSObject
| `- note: 'UITouch' has been explicitly marked unavailable here
52 |
53 | @property(nonatomic,readonly) NSTimeInterval timestamp;
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:39:66: error: 'UIEvent' is unavailable in watchOS
37 | }
38 |
39 | override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent) {
| `- error: 'UIEvent' is unavailable in watchOS
40 | super.touchesBegan(touches, with: event)
41 | newTouches = newTouches.union(touches)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIEvent.h:62:12: note: 'UIEvent' has been explicitly marked unavailable here
60 |
61 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
62 | @interface UIEvent : NSObject
| `- note: 'UIEvent' has been explicitly marked unavailable here
63 |
64 | @property(nonatomic,readonly) UIEventType type API_AVAILABLE(ios(3.0));
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:45:44: error: 'UITouch' is unavailable in watchOS
43 | }
44 |
45 | override func touchesMoved(_ touches: Set<UITouch>, with event: UIEvent) {
| `- error: 'UITouch' is unavailable in watchOS
46 | super.touchesMoved(touches, with: event)
47 | allTouches = allTouches.union(touches)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITouch.h:51:12: note: 'UITouch' has been explicitly marked unavailable here
49 |
50 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
51 | @interface UITouch : NSObject
| `- note: 'UITouch' has been explicitly marked unavailable here
52 |
53 | @property(nonatomic,readonly) NSTimeInterval timestamp;
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:45:66: error: 'UIEvent' is unavailable in watchOS
43 | }
44 |
45 | override func touchesMoved(_ touches: Set<UITouch>, with event: UIEvent) {
| `- error: 'UIEvent' is unavailable in watchOS
46 | super.touchesMoved(touches, with: event)
47 | allTouches = allTouches.union(touches)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIEvent.h:62:12: note: 'UIEvent' has been explicitly marked unavailable here
60 |
61 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
62 | @interface UIEvent : NSObject
| `- note: 'UIEvent' has been explicitly marked unavailable here
63 |
64 | @property(nonatomic,readonly) UIEventType type API_AVAILABLE(ios(3.0));
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:51:44: error: 'UITouch' is unavailable in watchOS
49 | }
50 |
51 | override func touchesEnded(_ touches: Set<UITouch>, with event: UIEvent) {
| `- error: 'UITouch' is unavailable in watchOS
52 | super.touchesEnded(touches, with: event)
53 | allTouches = allTouches.subtracting(touches)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITouch.h:51:12: note: 'UITouch' has been explicitly marked unavailable here
49 |
50 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
51 | @interface UITouch : NSObject
| `- note: 'UITouch' has been explicitly marked unavailable here
52 |
53 | @property(nonatomic,readonly) NSTimeInterval timestamp;
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:51:66: error: 'UIEvent' is unavailable in watchOS
49 | }
50 |
51 | override func touchesEnded(_ touches: Set<UITouch>, with event: UIEvent) {
| `- error: 'UIEvent' is unavailable in watchOS
52 | super.touchesEnded(touches, with: event)
53 | allTouches = allTouches.subtracting(touches)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIEvent.h:62:12: note: 'UIEvent' has been explicitly marked unavailable here
60 |
61 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
62 | @interface UIEvent : NSObject
| `- note: 'UIEvent' has been explicitly marked unavailable here
63 |
64 | @property(nonatomic,readonly) UIEventType type API_AVAILABLE(ios(3.0));
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:61:48: error: 'UITouch' is unavailable in watchOS
59 | }
60 |
61 | override func touchesCancelled(_ touches: Set<UITouch>, with event: UIEvent) {
| `- error: 'UITouch' is unavailable in watchOS
62 | super.touchesCancelled(touches, with: event)
63 | allTouches = allTouches.subtracting(touches)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITouch.h:51:12: note: 'UITouch' has been explicitly marked unavailable here
49 |
50 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
51 | @interface UITouch : NSObject
| `- note: 'UITouch' has been explicitly marked unavailable here
52 |
53 | @property(nonatomic,readonly) NSTimeInterval timestamp;
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:61:70: error: 'UIEvent' is unavailable in watchOS
59 | }
60 |
61 | override func touchesCancelled(_ touches: Set<UITouch>, with event: UIEvent) {
| `- error: 'UIEvent' is unavailable in watchOS
62 | super.touchesCancelled(touches, with: event)
63 | allTouches = allTouches.subtracting(touches)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIEvent.h:62:12: note: 'UIEvent' has been explicitly marked unavailable here
60 |
61 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
62 | @interface UIEvent : NSObject
| `- note: 'UIEvent' has been explicitly marked unavailable here
63 |
64 | @property(nonatomic,readonly) UIEventType type API_AVAILABLE(ios(3.0));
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:72:63: error: 'UIGestureRecognizer' is unavailable in watchOS
70 |
71 | /// Nothing should prevent this gesture recognizer from activating for as long as it's enabled.
72 | override func canBePrevented(by preventingGestureRecognizer: UIGestureRecognizer) -> Bool {
| `- error: 'UIGestureRecognizer' is unavailable in watchOS
73 | false
74 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIGestureRecognizer.h:35:12: note: 'UIGestureRecognizer' has been explicitly marked unavailable here
33 |
34 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
35 | @interface UIGestureRecognizer : NSObject
| `- note: 'UIGestureRecognizer' has been explicitly marked unavailable here
36 |
37 | // Valid action method signatures:
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:11:27: error: 'UIGestureRecognizer' is unavailable in watchOS
9 |
10 | /// This recognizer is configured to detect and forward *every* touch, but also passes through to any following recognizers/touch input.
11 | final class TouchCatcher: UIGestureRecognizer {
| `- error: 'UIGestureRecognizer' is unavailable in watchOS
12 |
13 | /// Keeps track of all touches throughout their lifetime
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIGestureRecognizer.h:35:12: note: 'UIGestureRecognizer' has been explicitly marked unavailable here
33 |
34 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
35 | @interface UIGestureRecognizer : NSObject
| `- note: 'UIGestureRecognizer' has been explicitly marked unavailable here
36 |
37 | // Valid action method signatures:
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:79:46: error: 'UIGestureRecognizer' is unavailable in watchOS
77 | extension TouchCatcher: UIGestureRecognizerDelegate {
78 | /// No touch events should be consumed by this gesture recognizer alone.
79 | func gestureRecognizer(_ gestureRecognizer: UIGestureRecognizer, shouldRecognizeSimultaneouslyWith otherGestureRecognizer: UIGestureRecognizer) -> Bool {
| `- error: 'UIGestureRecognizer' is unavailable in watchOS
80 | true
81 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIGestureRecognizer.h:35:12: note: 'UIGestureRecognizer' has been explicitly marked unavailable here
33 |
34 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
35 | @interface UIGestureRecognizer : NSObject
| `- note: 'UIGestureRecognizer' has been explicitly marked unavailable here
36 |
37 | // Valid action method signatures:
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:79:125: error: 'UIGestureRecognizer' is unavailable in watchOS
77 | extension TouchCatcher: UIGestureRecognizerDelegate {
78 | /// No touch events should be consumed by this gesture recognizer alone.
79 | func gestureRecognizer(_ gestureRecognizer: UIGestureRecognizer, shouldRecognizeSimultaneouslyWith otherGestureRecognizer: UIGestureRecognizer) -> Bool {
| `- error: 'UIGestureRecognizer' is unavailable in watchOS
80 | true
81 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIGestureRecognizer.h:35:12: note: 'UIGestureRecognizer' has been explicitly marked unavailable here
33 |
34 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
35 | @interface UIGestureRecognizer : NSObject
| `- note: 'UIGestureRecognizer' has been explicitly marked unavailable here
36 |
37 | // Valid action method signatures:
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:77:25: error: 'UIGestureRecognizerDelegate' is unavailable in watchOS
75 | }
76 |
77 | extension TouchCatcher: UIGestureRecognizerDelegate {
| `- error: 'UIGestureRecognizerDelegate' is unavailable in watchOS
78 | /// No touch events should be consumed by this gesture recognizer alone.
79 | func gestureRecognizer(_ gestureRecognizer: UIGestureRecognizer, shouldRecognizeSimultaneouslyWith otherGestureRecognizer: UIGestureRecognizer) -> Bool {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIGestureRecognizer.h:91:11: note: 'UIGestureRecognizerDelegate' has been explicitly marked unavailable here
89 |
90 | API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
91 | @protocol UIGestureRecognizerDelegate <NSObject>
| `- note: 'UIGestureRecognizerDelegate' has been explicitly marked unavailable here
92 | @optional
93 | // called when a gesture recognizer attempts to transition out of UIGestureRecognizerStatePossible. returning NO causes it to transition to UIGestureRecognizerStateFailed
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/UIWindow+touches.swift:10:11: error: 'UIWindow' is unavailable in watchOS
8 | import UIKit
9 |
10 | extension UIWindow {
| `- error: 'UIWindow' is unavailable in watchOS
11 | /// After running this function, the app's UIWindow layer will draw at the areas of touches at the highest possible layer on screen.
12 | public func showTouches() {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIWindow.h:22:12: note: 'UIWindow' has been explicitly marked unavailable here
20 |
21 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
22 | @interface UIWindow : UIView
| `- note: 'UIWindow' has been explicitly marked unavailable here
23 |
24 | // instantiate a UIWindow already associated with a given UIWindowScene instance, with matching frame & interface orientations.
Failed frontend command:
SwiftCompile normal arm64_32 (in target 'SeaTouch' from project 'SeaTouch')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift-frontend -frontend -emit-module -experimental-skip-non-inlinable-function-bodies-without-types /Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/RippleShapeLayer.swift /Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/SeaTouch.swift /Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift /Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/UIWindow+touches.swift -target arm64_32-apple-watchos9.0 -disable-cross-import-overlay-search -load-resolved-plugin /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/lib/swift/host/plugins/libFoundationMacros.dylib\#/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/bin/swift-plugin-server\#FoundationMacros -load-resolved-plugin /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/lib/swift/host/plugins/libObservationMacros.dylib\#/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/bin/swift-plugin-server\#ObservationMacros -load-resolved-plugin /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/lib/swift/host/plugins/libSwiftMacros.dylib\#/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/bin/swift-plugin-server\#SwiftMacros -load-resolved-plugin /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/lib/swift/host/plugins/libSwiftUIMacros.dylib\#/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/bin/swift-plugin-server\#SwiftUIMacros -disable-implicit-swift-modules -Xcc -fno-implicit-modules -Xcc -fno-implicit-module-maps -explicit-swift-module-map-file /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SeaTouch.build/Debug-watchos/SeaTouch-t.build/Objects-normal/arm64_32/SeaTouch-dependencies-1.json -enable-objc-interop -sdk /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk -I /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-watchos -Isystem /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/lib -F /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-watchos -F /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/Library/Frameworks -F /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/Developer/Library/Frameworks -module-cache-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SwiftExplicitPrecompiledModules -no-color-diagnostics -Xcc -fno-color-diagnostics -enable-testing -g -debug-info-format\=dwarf -dwarf-version\=4 -profile-generate -profile-coverage-mapping -swift-version 5 -Onone -D SWIFT_PACKAGE -D DEBUG -D SWIFT_MODULE_RESOURCE_BUNDLE_UNAVAILABLE -D Xcode -serialize-debugging-options -enable-experimental-feature DebugDescriptionMacro -empty-abi-descriptor -validate-clang-modules-once -clang-build-session-file /Users/admin/builder/spi-builder-workspace/.derivedData/ModuleCache.noindex/Session.modulevalidation -Xcc -working-directory -Xcc /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode -enable-anonymous-context-mangled-names -file-compilation-dir /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode -Xcc -D_LIBCPP_HARDENING_MODE\=_LIBCPP_HARDENING_MODE_DEBUG -Xcc -ivfsstatcache -Xcc /Users/admin/builder/spi-builder-workspace/.derivedData/SDKStatCaches.noindex/watchos27.0-24R360-e829b21a6f8c9b70876ba0858053c04477534ef55a1706bf4c1112bbb242f0a2.sdkstatcache -Xcc -fmodules-prune-interval\=86400 -Xcc -fmodules-prune-after\=345600 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-watchos/include -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SeaTouch.build/Debug-watchos/SeaTouch-t.build/DerivedSources-normal/arm64_32 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SeaTouch.build/Debug-watchos/SeaTouch-t.build/DerivedSources/arm64_32 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SeaTouch.build/Debug-watchos/SeaTouch-t.build/DerivedSources -Xcc -DSWIFT_PACKAGE -Xcc -DDEBUG\=1 -no-auto-bridging-header-chaining -module-name SeaTouch -const-gather-protocols-file /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SeaTouch.build/Debug-watchos/SeaTouch-t.build/Objects-normal/arm64_32/SeaTouch_const_extract_protocols.json -disable-clang-spi -clang-target arm64_32-apple-watchos27.0 -target-sdk-version 27.0 -target-sdk-name watchos27.0 -in-process-plugin-server-path /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/host/libSwiftInProcPluginServer.dylib -emit-module-doc-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SeaTouch.build/Debug-watchos/SeaTouch-t.build/Objects-normal/arm64_32/SeaTouch.swiftdoc -emit-module-source-info-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SeaTouch.build/Debug-watchos/SeaTouch-t.build/Objects-normal/arm64_32/SeaTouch.swiftsourceinfo -emit-objc-header-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SeaTouch.build/Debug-watchos/SeaTouch-t.build/Objects-normal/arm64_32/SeaTouch-Swift.h -serialize-diagnostics-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SeaTouch.build/Debug-watchos/SeaTouch-t.build/Objects-normal/arm64_32/SeaTouch-primary-emit-module.dia -emit-dependencies-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SeaTouch.build/Debug-watchos/SeaTouch-t.build/Objects-normal/arm64_32/SeaTouch-primary-emit-module.d -parse-as-library -o /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SeaTouch.build/Debug-watchos/SeaTouch-t.build/Objects-normal/arm64_32/SeaTouch.swiftmodule -emit-abi-descriptor-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SeaTouch.build/Debug-watchos/SeaTouch-t.build/Objects-normal/arm64_32/SeaTouch.abi.json
SwiftCompile normal arm64_32 Compiling\ SeaTouch.swift /Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/SeaTouch.swift (in target 'SeaTouch' from project 'SeaTouch')
SwiftCompile normal arm64_32 /Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/SeaTouch.swift (in target 'SeaTouch' from project 'SeaTouch')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile SeaTouch.swift
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/SeaTouch.swift:7:32: error: 'UIWindow' is unavailable in watchOS
5 | static let shared = SeaTouch()
6 |
7 | private var trackedWindows = [UIWindow: (touches: TouchCatcher, layer: RippleShapeLayer)]()
| `- error: 'UIWindow' is unavailable in watchOS
8 | private var trackedLayers = [TouchCatcher: RippleShapeLayer]()
9 | private var trackedCatchers = [TouchCatcher: UIWindow]()
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIWindow.h:22:12: note: 'UIWindow' has been explicitly marked unavailable here
20 |
21 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
22 | @interface UIWindow : UIView
| `- note: 'UIWindow' has been explicitly marked unavailable here
23 |
24 | // instantiate a UIWindow already associated with a given UIWindowScene instance, with matching frame & interface orientations.
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/SeaTouch.swift:9:47: error: 'UIWindow' is unavailable in watchOS
7 | private var trackedWindows = [UIWindow: (touches: TouchCatcher, layer: RippleShapeLayer)]()
8 | private var trackedLayers = [TouchCatcher: RippleShapeLayer]()
9 | private var trackedCatchers = [TouchCatcher: UIWindow]()
| `- error: 'UIWindow' is unavailable in watchOS
10 |
11 | let radius: CGFloat = 25
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIWindow.h:22:12: note: 'UIWindow' has been explicitly marked unavailable here
20 |
21 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
22 | @interface UIWindow : UIView
| `- note: 'UIWindow' has been explicitly marked unavailable here
23 |
24 | // instantiate a UIWindow already associated with a given UIWindowScene instance, with matching frame & interface orientations.
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/SeaTouch.swift:19:31: error: 'UIWindow' is unavailable in watchOS
17 |
18 | /// Initiates touch tracking on a given window, also caching important references to speed up future execution.
19 | func trackTouches(on window: UIWindow) {
| `- error: 'UIWindow' is unavailable in watchOS
20 | guard trackedWindows[window] == nil else { return }
21 | let catcher = TouchCatcher(target: self, action: #selector(touchesUpdated(_:)))
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIWindow.h:22:12: note: 'UIWindow' has been explicitly marked unavailable here
20 |
21 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
22 | @interface UIWindow : UIView
| `- note: 'UIWindow' has been explicitly marked unavailable here
23 |
24 | // instantiate a UIWindow already associated with a given UIWindowScene instance, with matching frame & interface orientations.
SwiftCompile normal arm64_32 Compiling\ RippleShapeLayer.swift /Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/RippleShapeLayer.swift (in target 'SeaTouch' from project 'SeaTouch')
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/RippleShapeLayer.swift:13:38: error: 'CAShapeLayer' is unavailable in watchOS
11 | class RippleShapeLayer: CAShapeLayer {
12 |
13 | private var animatingSublayers: Set<CAShapeLayer> = []
| `- error: 'CAShapeLayer' is unavailable in watchOS
14 | private var availableSublayers: Set<CAShapeLayer> = []
15 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAShapeLayer.h:40:12: note: 'CAShapeLayer' has been explicitly marked unavailable here
38 |
39 | API_AVAILABLE(macos(10.6), ios(3.0), tvos(9.0)) API_UNAVAILABLE(watchos)
40 | @interface CAShapeLayer : CALayer
| `- note: 'CAShapeLayer' has been explicitly marked unavailable here
41 |
42 | /* The path defining the shape to be rendered. If the path extends
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/RippleShapeLayer.swift:14:38: error: 'CAShapeLayer' is unavailable in watchOS
12 |
13 | private var animatingSublayers: Set<CAShapeLayer> = []
14 | private var availableSublayers: Set<CAShapeLayer> = []
| `- error: 'CAShapeLayer' is unavailable in watchOS
15 |
16 | func dequeueRippleSublayer() -> CAShapeLayer {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAShapeLayer.h:40:12: note: 'CAShapeLayer' has been explicitly marked unavailable here
38 |
39 | API_AVAILABLE(macos(10.6), ios(3.0), tvos(9.0)) API_UNAVAILABLE(watchos)
40 | @interface CAShapeLayer : CALayer
| `- note: 'CAShapeLayer' has been explicitly marked unavailable here
41 |
42 | /* The path defining the shape to be rendered. If the path extends
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/RippleShapeLayer.swift:16:34: error: 'CAShapeLayer' is unavailable in watchOS
14 | private var availableSublayers: Set<CAShapeLayer> = []
15 |
16 | func dequeueRippleSublayer() -> CAShapeLayer {
| `- error: 'CAShapeLayer' is unavailable in watchOS
17 | let layer: CAShapeLayer
18 | if let available = availableSublayers.first {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAShapeLayer.h:40:12: note: 'CAShapeLayer' has been explicitly marked unavailable here
38 |
39 | API_AVAILABLE(macos(10.6), ios(3.0), tvos(9.0)) API_UNAVAILABLE(watchos)
40 | @interface CAShapeLayer : CALayer
| `- note: 'CAShapeLayer' has been explicitly marked unavailable here
41 |
42 | /* The path defining the shape to be rendered. If the path extends
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/RippleShapeLayer.swift:11:25: error: 'CAShapeLayer' is unavailable in watchOS
9 | import UIKit
10 |
11 | class RippleShapeLayer: CAShapeLayer {
| `- error: 'CAShapeLayer' is unavailable in watchOS
12 |
13 | private var animatingSublayers: Set<CAShapeLayer> = []
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAShapeLayer.h:40:12: note: 'CAShapeLayer' has been explicitly marked unavailable here
38 |
39 | API_AVAILABLE(macos(10.6), ios(3.0), tvos(9.0)) API_UNAVAILABLE(watchos)
40 | @interface CAShapeLayer : CALayer
| `- note: 'CAShapeLayer' has been explicitly marked unavailable here
41 |
42 | /* The path defining the shape to be rendered. If the path extends
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/RippleShapeLayer.swift:36:32: error: 'CAAnimation' is unavailable in watchOS
34 |
35 | extension RippleShapeLayer: CAAnimationDelegate {
36 | func animationDidStop(_ anim: CAAnimation, finished flag: Bool) {
| `- error: 'CAAnimation' is unavailable in watchOS
37 | for layer in animatingSublayers {
38 | if (layer.animationKeys() ?? []).isEmpty {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAAnimation.h:25:12: note: 'CAAnimation' has been explicitly marked unavailable here
23 |
24 | API_AVAILABLE(macos(10.5), ios(2.0), tvos(9.0)) API_UNAVAILABLE(watchos)
25 | @interface CAAnimation : NSObject
| `- note: 'CAAnimation' has been explicitly marked unavailable here
26 | <NSSecureCoding, NSCopying, CAMediaTiming, CAAction>
27 | {
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/RippleShapeLayer.swift:35:29: error: 'CAAnimationDelegate' is unavailable in watchOS
33 | }
34 |
35 | extension RippleShapeLayer: CAAnimationDelegate {
| `- error: 'CAAnimationDelegate' is unavailable in watchOS
36 | func animationDidStop(_ anim: CAAnimation, finished flag: Bool) {
37 | for layer in animatingSublayers {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAAnimation.h:71:11: note: 'CAAnimationDelegate' has been explicitly marked unavailable here
69 |
70 | API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0)) API_UNAVAILABLE(watchos)
71 | @protocol CAAnimationDelegate <NSObject>
| `- note: 'CAAnimationDelegate' has been explicitly marked unavailable here
72 | @optional
73 |
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/RippleShapeLayer.swift:17:14: error: 'CAShapeLayer' is unavailable in watchOS
15 |
16 | func dequeueRippleSublayer() -> CAShapeLayer {
17 | let layer: CAShapeLayer
| `- error: 'CAShapeLayer' is unavailable in watchOS
18 | if let available = availableSublayers.first {
19 | layer = available
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAShapeLayer.h:40:12: note: 'CAShapeLayer' has been explicitly marked unavailable here
38 |
39 | API_AVAILABLE(macos(10.6), ios(3.0), tvos(9.0)) API_UNAVAILABLE(watchos)
40 | @interface CAShapeLayer : CALayer
| `- note: 'CAShapeLayer' has been explicitly marked unavailable here
41 |
42 | /* The path defining the shape to be rendered. If the path extends
SwiftCompile normal arm64_32 /Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/RippleShapeLayer.swift (in target 'SeaTouch' from project 'SeaTouch')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile RippleShapeLayer.swift
SwiftCompile normal arm64_32 Compiling\ UIWindow+touches.swift /Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/UIWindow+touches.swift (in target 'SeaTouch' from project 'SeaTouch')
SwiftCompile normal arm64_32 /Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/UIWindow+touches.swift (in target 'SeaTouch' from project 'SeaTouch')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile UIWindow+touches.swift
SwiftEmitModule normal arm64 Emitting\ module\ for\ SeaTouch (in target 'SeaTouch' from project 'SeaTouch')
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/RippleShapeLayer.swift:13:38: error: 'CAShapeLayer' is unavailable in watchOS
11 | class RippleShapeLayer: CAShapeLayer {
12 |
13 | private var animatingSublayers: Set<CAShapeLayer> = []
| `- error: 'CAShapeLayer' is unavailable in watchOS
14 | private var availableSublayers: Set<CAShapeLayer> = []
15 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAShapeLayer.h:40:12: note: 'CAShapeLayer' has been explicitly marked unavailable here
38 |
39 | API_AVAILABLE(macos(10.6), ios(3.0), tvos(9.0)) API_UNAVAILABLE(watchos)
40 | @interface CAShapeLayer : CALayer
| `- note: 'CAShapeLayer' has been explicitly marked unavailable here
41 |
42 | /* The path defining the shape to be rendered. If the path extends
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/RippleShapeLayer.swift:14:38: error: 'CAShapeLayer' is unavailable in watchOS
12 |
13 | private var animatingSublayers: Set<CAShapeLayer> = []
14 | private var availableSublayers: Set<CAShapeLayer> = []
| `- error: 'CAShapeLayer' is unavailable in watchOS
15 |
16 | func dequeueRippleSublayer() -> CAShapeLayer {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAShapeLayer.h:40:12: note: 'CAShapeLayer' has been explicitly marked unavailable here
38 |
39 | API_AVAILABLE(macos(10.6), ios(3.0), tvos(9.0)) API_UNAVAILABLE(watchos)
40 | @interface CAShapeLayer : CALayer
| `- note: 'CAShapeLayer' has been explicitly marked unavailable here
41 |
42 | /* The path defining the shape to be rendered. If the path extends
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/RippleShapeLayer.swift:16:34: error: 'CAShapeLayer' is unavailable in watchOS
14 | private var availableSublayers: Set<CAShapeLayer> = []
15 |
16 | func dequeueRippleSublayer() -> CAShapeLayer {
| `- error: 'CAShapeLayer' is unavailable in watchOS
17 | let layer: CAShapeLayer
18 | if let available = availableSublayers.first {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAShapeLayer.h:40:12: note: 'CAShapeLayer' has been explicitly marked unavailable here
38 |
39 | API_AVAILABLE(macos(10.6), ios(3.0), tvos(9.0)) API_UNAVAILABLE(watchos)
40 | @interface CAShapeLayer : CALayer
| `- note: 'CAShapeLayer' has been explicitly marked unavailable here
41 |
42 | /* The path defining the shape to be rendered. If the path extends
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/RippleShapeLayer.swift:11:25: error: 'CAShapeLayer' is unavailable in watchOS
9 | import UIKit
10 |
11 | class RippleShapeLayer: CAShapeLayer {
| `- error: 'CAShapeLayer' is unavailable in watchOS
12 |
13 | private var animatingSublayers: Set<CAShapeLayer> = []
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAShapeLayer.h:40:12: note: 'CAShapeLayer' has been explicitly marked unavailable here
38 |
39 | API_AVAILABLE(macos(10.6), ios(3.0), tvos(9.0)) API_UNAVAILABLE(watchos)
40 | @interface CAShapeLayer : CALayer
| `- note: 'CAShapeLayer' has been explicitly marked unavailable here
41 |
42 | /* The path defining the shape to be rendered. If the path extends
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/RippleShapeLayer.swift:36:32: error: 'CAAnimation' is unavailable in watchOS
34 |
35 | extension RippleShapeLayer: CAAnimationDelegate {
36 | func animationDidStop(_ anim: CAAnimation, finished flag: Bool) {
| `- error: 'CAAnimation' is unavailable in watchOS
37 | for layer in animatingSublayers {
38 | if (layer.animationKeys() ?? []).isEmpty {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAAnimation.h:25:12: note: 'CAAnimation' has been explicitly marked unavailable here
23 |
24 | API_AVAILABLE(macos(10.5), ios(2.0), tvos(9.0)) API_UNAVAILABLE(watchos)
25 | @interface CAAnimation : NSObject
| `- note: 'CAAnimation' has been explicitly marked unavailable here
26 | <NSSecureCoding, NSCopying, CAMediaTiming, CAAction>
27 | {
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/RippleShapeLayer.swift:35:29: error: 'CAAnimationDelegate' is unavailable in watchOS
33 | }
34 |
35 | extension RippleShapeLayer: CAAnimationDelegate {
| `- error: 'CAAnimationDelegate' is unavailable in watchOS
36 | func animationDidStop(_ anim: CAAnimation, finished flag: Bool) {
37 | for layer in animatingSublayers {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAAnimation.h:71:11: note: 'CAAnimationDelegate' has been explicitly marked unavailable here
69 |
70 | API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0)) API_UNAVAILABLE(watchos)
71 | @protocol CAAnimationDelegate <NSObject>
| `- note: 'CAAnimationDelegate' has been explicitly marked unavailable here
72 | @optional
73 |
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/SeaTouch.swift:7:32: error: 'UIWindow' is unavailable in watchOS
5 | static let shared = SeaTouch()
6 |
7 | private var trackedWindows = [UIWindow: (touches: TouchCatcher, layer: RippleShapeLayer)]()
| `- error: 'UIWindow' is unavailable in watchOS
8 | private var trackedLayers = [TouchCatcher: RippleShapeLayer]()
9 | private var trackedCatchers = [TouchCatcher: UIWindow]()
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIWindow.h:22:12: note: 'UIWindow' has been explicitly marked unavailable here
20 |
21 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
22 | @interface UIWindow : UIView
| `- note: 'UIWindow' has been explicitly marked unavailable here
23 |
24 | // instantiate a UIWindow already associated with a given UIWindowScene instance, with matching frame & interface orientations.
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/SeaTouch.swift:9:47: error: 'UIWindow' is unavailable in watchOS
7 | private var trackedWindows = [UIWindow: (touches: TouchCatcher, layer: RippleShapeLayer)]()
8 | private var trackedLayers = [TouchCatcher: RippleShapeLayer]()
9 | private var trackedCatchers = [TouchCatcher: UIWindow]()
| `- error: 'UIWindow' is unavailable in watchOS
10 |
11 | let radius: CGFloat = 25
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIWindow.h:22:12: note: 'UIWindow' has been explicitly marked unavailable here
20 |
21 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
22 | @interface UIWindow : UIView
| `- note: 'UIWindow' has been explicitly marked unavailable here
23 |
24 | // instantiate a UIWindow already associated with a given UIWindowScene instance, with matching frame & interface orientations.
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/SeaTouch.swift:19:31: error: 'UIWindow' is unavailable in watchOS
17 |
18 | /// Initiates touch tracking on a given window, also caching important references to speed up future execution.
19 | func trackTouches(on window: UIWindow) {
| `- error: 'UIWindow' is unavailable in watchOS
20 | guard trackedWindows[window] == nil else { return }
21 | let catcher = TouchCatcher(target: self, action: #selector(touchesUpdated(_:)))
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIWindow.h:22:12: note: 'UIWindow' has been explicitly marked unavailable here
20 |
21 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
22 | @interface UIWindow : UIView
| `- note: 'UIWindow' has been explicitly marked unavailable here
23 |
24 | // instantiate a UIWindow already associated with a given UIWindowScene instance, with matching frame & interface orientations.
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/SeaTouch.swift:39:38: error: 'UIWindow' is unavailable in watchOS
37 |
38 | /// Ceases touch tracking on a given window, releasing previously cached references.
39 | func stopTrackingTouches(on window: UIWindow) {
| `- error: 'UIWindow' is unavailable in watchOS
40 | guard let (catcher, shapeLayer) = trackedWindows[window] else { return }
41 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIWindow.h:22:12: note: 'UIWindow' has been explicitly marked unavailable here
20 |
21 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
22 | @interface UIWindow : UIView
| `- note: 'UIWindow' has been explicitly marked unavailable here
23 |
24 | // instantiate a UIWindow already associated with a given UIWindowScene instance, with matching frame & interface orientations.
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:14:35: error: 'UITouch' is unavailable in watchOS
12 |
13 | /// Keeps track of all touches throughout their lifetime
14 | private(set) var allTouches: Set<UITouch> = []
| `- error: 'UITouch' is unavailable in watchOS
15 |
16 | private var _newTouches: Set<UITouch> = []
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITouch.h:51:12: note: 'UITouch' has been explicitly marked unavailable here
49 |
50 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
51 | @interface UITouch : NSObject
| `- note: 'UITouch' has been explicitly marked unavailable here
52 |
53 | @property(nonatomic,readonly) NSTimeInterval timestamp;
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:16:31: error: 'UITouch' is unavailable in watchOS
14 | private(set) var allTouches: Set<UITouch> = []
15 |
16 | private var _newTouches: Set<UITouch> = []
| `- error: 'UITouch' is unavailable in watchOS
17 | private(set) var newTouches: Set<UITouch> {
18 | get {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITouch.h:51:12: note: 'UITouch' has been explicitly marked unavailable here
49 |
50 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
51 | @interface UITouch : NSObject
| `- note: 'UITouch' has been explicitly marked unavailable here
52 |
53 | @property(nonatomic,readonly) NSTimeInterval timestamp;
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:17:35: error: 'UITouch' is unavailable in watchOS
15 |
16 | private var _newTouches: Set<UITouch> = []
17 | private(set) var newTouches: Set<UITouch> {
| `- error: 'UITouch' is unavailable in watchOS
18 | get {
19 | let touches = _newTouches
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITouch.h:51:12: note: 'UITouch' has been explicitly marked unavailable here
49 |
50 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
51 | @interface UITouch : NSObject
| `- note: 'UITouch' has been explicitly marked unavailable here
52 |
53 | @property(nonatomic,readonly) NSTimeInterval timestamp;
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:39:44: error: 'UITouch' is unavailable in watchOS
37 | }
38 |
39 | override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent) {
| `- error: 'UITouch' is unavailable in watchOS
40 | super.touchesBegan(touches, with: event)
41 | newTouches = newTouches.union(touches)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITouch.h:51:12: note: 'UITouch' has been explicitly marked unavailable here
49 |
50 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
51 | @interface UITouch : NSObject
| `- note: 'UITouch' has been explicitly marked unavailable here
52 |
53 | @property(nonatomic,readonly) NSTimeInterval timestamp;
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:39:66: error: 'UIEvent' is unavailable in watchOS
37 | }
38 |
39 | override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent) {
| `- error: 'UIEvent' is unavailable in watchOS
40 | super.touchesBegan(touches, with: event)
41 | newTouches = newTouches.union(touches)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIEvent.h:62:12: note: 'UIEvent' has been explicitly marked unavailable here
60 |
61 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
62 | @interface UIEvent : NSObject
| `- note: 'UIEvent' has been explicitly marked unavailable here
63 |
64 | @property(nonatomic,readonly) UIEventType type API_AVAILABLE(ios(3.0));
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:45:44: error: 'UITouch' is unavailable in watchOS
43 | }
44 |
45 | override func touchesMoved(_ touches: Set<UITouch>, with event: UIEvent) {
| `- error: 'UITouch' is unavailable in watchOS
46 | super.touchesMoved(touches, with: event)
47 | allTouches = allTouches.union(touches)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITouch.h:51:12: note: 'UITouch' has been explicitly marked unavailable here
49 |
50 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
51 | @interface UITouch : NSObject
| `- note: 'UITouch' has been explicitly marked unavailable here
52 |
53 | @property(nonatomic,readonly) NSTimeInterval timestamp;
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:45:66: error: 'UIEvent' is unavailable in watchOS
43 | }
44 |
45 | override func touchesMoved(_ touches: Set<UITouch>, with event: UIEvent) {
| `- error: 'UIEvent' is unavailable in watchOS
46 | super.touchesMoved(touches, with: event)
47 | allTouches = allTouches.union(touches)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIEvent.h:62:12: note: 'UIEvent' has been explicitly marked unavailable here
60 |
61 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
62 | @interface UIEvent : NSObject
| `- note: 'UIEvent' has been explicitly marked unavailable here
63 |
64 | @property(nonatomic,readonly) UIEventType type API_AVAILABLE(ios(3.0));
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:51:44: error: 'UITouch' is unavailable in watchOS
49 | }
50 |
51 | override func touchesEnded(_ touches: Set<UITouch>, with event: UIEvent) {
| `- error: 'UITouch' is unavailable in watchOS
52 | super.touchesEnded(touches, with: event)
53 | allTouches = allTouches.subtracting(touches)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITouch.h:51:12: note: 'UITouch' has been explicitly marked unavailable here
49 |
50 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
51 | @interface UITouch : NSObject
| `- note: 'UITouch' has been explicitly marked unavailable here
52 |
53 | @property(nonatomic,readonly) NSTimeInterval timestamp;
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:51:66: error: 'UIEvent' is unavailable in watchOS
49 | }
50 |
51 | override func touchesEnded(_ touches: Set<UITouch>, with event: UIEvent) {
| `- error: 'UIEvent' is unavailable in watchOS
52 | super.touchesEnded(touches, with: event)
53 | allTouches = allTouches.subtracting(touches)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIEvent.h:62:12: note: 'UIEvent' has been explicitly marked unavailable here
60 |
61 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
62 | @interface UIEvent : NSObject
| `- note: 'UIEvent' has been explicitly marked unavailable here
63 |
64 | @property(nonatomic,readonly) UIEventType type API_AVAILABLE(ios(3.0));
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:61:48: error: 'UITouch' is unavailable in watchOS
59 | }
60 |
61 | override func touchesCancelled(_ touches: Set<UITouch>, with event: UIEvent) {
| `- error: 'UITouch' is unavailable in watchOS
62 | super.touchesCancelled(touches, with: event)
63 | allTouches = allTouches.subtracting(touches)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITouch.h:51:12: note: 'UITouch' has been explicitly marked unavailable here
49 |
50 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
51 | @interface UITouch : NSObject
| `- note: 'UITouch' has been explicitly marked unavailable here
52 |
53 | @property(nonatomic,readonly) NSTimeInterval timestamp;
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:61:70: error: 'UIEvent' is unavailable in watchOS
59 | }
60 |
61 | override func touchesCancelled(_ touches: Set<UITouch>, with event: UIEvent) {
| `- error: 'UIEvent' is unavailable in watchOS
62 | super.touchesCancelled(touches, with: event)
63 | allTouches = allTouches.subtracting(touches)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIEvent.h:62:12: note: 'UIEvent' has been explicitly marked unavailable here
60 |
61 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
62 | @interface UIEvent : NSObject
| `- note: 'UIEvent' has been explicitly marked unavailable here
63 |
64 | @property(nonatomic,readonly) UIEventType type API_AVAILABLE(ios(3.0));
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:72:63: error: 'UIGestureRecognizer' is unavailable in watchOS
70 |
71 | /// Nothing should prevent this gesture recognizer from activating for as long as it's enabled.
72 | override func canBePrevented(by preventingGestureRecognizer: UIGestureRecognizer) -> Bool {
| `- error: 'UIGestureRecognizer' is unavailable in watchOS
73 | false
74 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIGestureRecognizer.h:35:12: note: 'UIGestureRecognizer' has been explicitly marked unavailable here
33 |
34 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
35 | @interface UIGestureRecognizer : NSObject
| `- note: 'UIGestureRecognizer' has been explicitly marked unavailable here
36 |
37 | // Valid action method signatures:
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:11:27: error: 'UIGestureRecognizer' is unavailable in watchOS
9 |
10 | /// This recognizer is configured to detect and forward *every* touch, but also passes through to any following recognizers/touch input.
11 | final class TouchCatcher: UIGestureRecognizer {
| `- error: 'UIGestureRecognizer' is unavailable in watchOS
12 |
13 | /// Keeps track of all touches throughout their lifetime
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIGestureRecognizer.h:35:12: note: 'UIGestureRecognizer' has been explicitly marked unavailable here
33 |
34 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
35 | @interface UIGestureRecognizer : NSObject
| `- note: 'UIGestureRecognizer' has been explicitly marked unavailable here
36 |
37 | // Valid action method signatures:
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:79:46: error: 'UIGestureRecognizer' is unavailable in watchOS
77 | extension TouchCatcher: UIGestureRecognizerDelegate {
78 | /// No touch events should be consumed by this gesture recognizer alone.
79 | func gestureRecognizer(_ gestureRecognizer: UIGestureRecognizer, shouldRecognizeSimultaneouslyWith otherGestureRecognizer: UIGestureRecognizer) -> Bool {
| `- error: 'UIGestureRecognizer' is unavailable in watchOS
80 | true
81 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIGestureRecognizer.h:35:12: note: 'UIGestureRecognizer' has been explicitly marked unavailable here
33 |
34 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
35 | @interface UIGestureRecognizer : NSObject
| `- note: 'UIGestureRecognizer' has been explicitly marked unavailable here
36 |
37 | // Valid action method signatures:
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:79:125: error: 'UIGestureRecognizer' is unavailable in watchOS
77 | extension TouchCatcher: UIGestureRecognizerDelegate {
78 | /// No touch events should be consumed by this gesture recognizer alone.
79 | func gestureRecognizer(_ gestureRecognizer: UIGestureRecognizer, shouldRecognizeSimultaneouslyWith otherGestureRecognizer: UIGestureRecognizer) -> Bool {
| `- error: 'UIGestureRecognizer' is unavailable in watchOS
80 | true
81 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIGestureRecognizer.h:35:12: note: 'UIGestureRecognizer' has been explicitly marked unavailable here
33 |
34 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
35 | @interface UIGestureRecognizer : NSObject
| `- note: 'UIGestureRecognizer' has been explicitly marked unavailable here
36 |
37 | // Valid action method signatures:
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:77:25: error: 'UIGestureRecognizerDelegate' is unavailable in watchOS
75 | }
76 |
77 | extension TouchCatcher: UIGestureRecognizerDelegate {
| `- error: 'UIGestureRecognizerDelegate' is unavailable in watchOS
78 | /// No touch events should be consumed by this gesture recognizer alone.
79 | func gestureRecognizer(_ gestureRecognizer: UIGestureRecognizer, shouldRecognizeSimultaneouslyWith otherGestureRecognizer: UIGestureRecognizer) -> Bool {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIGestureRecognizer.h:91:11: note: 'UIGestureRecognizerDelegate' has been explicitly marked unavailable here
89 |
90 | API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
91 | @protocol UIGestureRecognizerDelegate <NSObject>
| `- note: 'UIGestureRecognizerDelegate' has been explicitly marked unavailable here
92 | @optional
93 | // called when a gesture recognizer attempts to transition out of UIGestureRecognizerStatePossible. returning NO causes it to transition to UIGestureRecognizerStateFailed
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/UIWindow+touches.swift:10:11: error: 'UIWindow' is unavailable in watchOS
8 | import UIKit
9 |
10 | extension UIWindow {
| `- error: 'UIWindow' is unavailable in watchOS
11 | /// After running this function, the app's UIWindow layer will draw at the areas of touches at the highest possible layer on screen.
12 | public func showTouches() {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIWindow.h:22:12: note: 'UIWindow' has been explicitly marked unavailable here
20 |
21 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
22 | @interface UIWindow : UIView
| `- note: 'UIWindow' has been explicitly marked unavailable here
23 |
24 | // instantiate a UIWindow already associated with a given UIWindowScene instance, with matching frame & interface orientations.
SwiftCompile normal arm64 (in target 'SeaTouch' from project 'SeaTouch')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
SwiftCompile normal arm64 Compiling\ RippleShapeLayer.swift /Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/RippleShapeLayer.swift (in target 'SeaTouch' from project 'SeaTouch')
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/RippleShapeLayer.swift:13:38: error: 'CAShapeLayer' is unavailable in watchOS
11 | class RippleShapeLayer: CAShapeLayer {
12 |
13 | private var animatingSublayers: Set<CAShapeLayer> = []
| `- error: 'CAShapeLayer' is unavailable in watchOS
14 | private var availableSublayers: Set<CAShapeLayer> = []
15 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAShapeLayer.h:40:12: note: 'CAShapeLayer' has been explicitly marked unavailable here
38 |
39 | API_AVAILABLE(macos(10.6), ios(3.0), tvos(9.0)) API_UNAVAILABLE(watchos)
40 | @interface CAShapeLayer : CALayer
| `- note: 'CAShapeLayer' has been explicitly marked unavailable here
41 |
42 | /* The path defining the shape to be rendered. If the path extends
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/RippleShapeLayer.swift:14:38: error: 'CAShapeLayer' is unavailable in watchOS
12 |
13 | private var animatingSublayers: Set<CAShapeLayer> = []
14 | private var availableSublayers: Set<CAShapeLayer> = []
| `- error: 'CAShapeLayer' is unavailable in watchOS
15 |
16 | func dequeueRippleSublayer() -> CAShapeLayer {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAShapeLayer.h:40:12: note: 'CAShapeLayer' has been explicitly marked unavailable here
38 |
39 | API_AVAILABLE(macos(10.6), ios(3.0), tvos(9.0)) API_UNAVAILABLE(watchos)
40 | @interface CAShapeLayer : CALayer
| `- note: 'CAShapeLayer' has been explicitly marked unavailable here
41 |
42 | /* The path defining the shape to be rendered. If the path extends
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/RippleShapeLayer.swift:16:34: error: 'CAShapeLayer' is unavailable in watchOS
14 | private var availableSublayers: Set<CAShapeLayer> = []
15 |
16 | func dequeueRippleSublayer() -> CAShapeLayer {
| `- error: 'CAShapeLayer' is unavailable in watchOS
17 | let layer: CAShapeLayer
18 | if let available = availableSublayers.first {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAShapeLayer.h:40:12: note: 'CAShapeLayer' has been explicitly marked unavailable here
38 |
39 | API_AVAILABLE(macos(10.6), ios(3.0), tvos(9.0)) API_UNAVAILABLE(watchos)
40 | @interface CAShapeLayer : CALayer
| `- note: 'CAShapeLayer' has been explicitly marked unavailable here
41 |
42 | /* The path defining the shape to be rendered. If the path extends
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/RippleShapeLayer.swift:11:25: error: 'CAShapeLayer' is unavailable in watchOS
9 | import UIKit
10 |
11 | class RippleShapeLayer: CAShapeLayer {
| `- error: 'CAShapeLayer' is unavailable in watchOS
12 |
13 | private var animatingSublayers: Set<CAShapeLayer> = []
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAShapeLayer.h:40:12: note: 'CAShapeLayer' has been explicitly marked unavailable here
38 |
39 | API_AVAILABLE(macos(10.6), ios(3.0), tvos(9.0)) API_UNAVAILABLE(watchos)
40 | @interface CAShapeLayer : CALayer
| `- note: 'CAShapeLayer' has been explicitly marked unavailable here
41 |
42 | /* The path defining the shape to be rendered. If the path extends
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/RippleShapeLayer.swift:36:32: error: 'CAAnimation' is unavailable in watchOS
34 |
35 | extension RippleShapeLayer: CAAnimationDelegate {
36 | func animationDidStop(_ anim: CAAnimation, finished flag: Bool) {
| `- error: 'CAAnimation' is unavailable in watchOS
37 | for layer in animatingSublayers {
38 | if (layer.animationKeys() ?? []).isEmpty {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAAnimation.h:25:12: note: 'CAAnimation' has been explicitly marked unavailable here
23 |
24 | API_AVAILABLE(macos(10.5), ios(2.0), tvos(9.0)) API_UNAVAILABLE(watchos)
25 | @interface CAAnimation : NSObject
| `- note: 'CAAnimation' has been explicitly marked unavailable here
26 | <NSSecureCoding, NSCopying, CAMediaTiming, CAAction>
27 | {
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/RippleShapeLayer.swift:35:29: error: 'CAAnimationDelegate' is unavailable in watchOS
33 | }
34 |
35 | extension RippleShapeLayer: CAAnimationDelegate {
| `- error: 'CAAnimationDelegate' is unavailable in watchOS
36 | func animationDidStop(_ anim: CAAnimation, finished flag: Bool) {
37 | for layer in animatingSublayers {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAAnimation.h:71:11: note: 'CAAnimationDelegate' has been explicitly marked unavailable here
69 |
70 | API_AVAILABLE(macos(10.12), ios(10.0), tvos(10.0)) API_UNAVAILABLE(watchos)
71 | @protocol CAAnimationDelegate <NSObject>
| `- note: 'CAAnimationDelegate' has been explicitly marked unavailable here
72 | @optional
73 |
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/RippleShapeLayer.swift:17:14: error: 'CAShapeLayer' is unavailable in watchOS
15 |
16 | func dequeueRippleSublayer() -> CAShapeLayer {
17 | let layer: CAShapeLayer
| `- error: 'CAShapeLayer' is unavailable in watchOS
18 | if let available = availableSublayers.first {
19 | layer = available
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAShapeLayer.h:40:12: note: 'CAShapeLayer' has been explicitly marked unavailable here
38 |
39 | API_AVAILABLE(macos(10.6), ios(3.0), tvos(9.0)) API_UNAVAILABLE(watchos)
40 | @interface CAShapeLayer : CALayer
| `- note: 'CAShapeLayer' has been explicitly marked unavailable here
41 |
42 | /* The path defining the shape to be rendered. If the path extends
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/RippleShapeLayer.swift (in target 'SeaTouch' from project 'SeaTouch')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile RippleShapeLayer.swift
SwiftCompile normal arm64 Compiling\ TouchCatcher.swift /Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift (in target 'SeaTouch' from project 'SeaTouch')
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:14:35: error: 'UITouch' is unavailable in watchOS
12 |
13 | /// Keeps track of all touches throughout their lifetime
14 | private(set) var allTouches: Set<UITouch> = []
| `- error: 'UITouch' is unavailable in watchOS
15 |
16 | private var _newTouches: Set<UITouch> = []
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITouch.h:51:12: note: 'UITouch' has been explicitly marked unavailable here
49 |
50 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
51 | @interface UITouch : NSObject
| `- note: 'UITouch' has been explicitly marked unavailable here
52 |
53 | @property(nonatomic,readonly) NSTimeInterval timestamp;
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:16:31: error: 'UITouch' is unavailable in watchOS
14 | private(set) var allTouches: Set<UITouch> = []
15 |
16 | private var _newTouches: Set<UITouch> = []
| `- error: 'UITouch' is unavailable in watchOS
17 | private(set) var newTouches: Set<UITouch> {
18 | get {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITouch.h:51:12: note: 'UITouch' has been explicitly marked unavailable here
49 |
50 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
51 | @interface UITouch : NSObject
| `- note: 'UITouch' has been explicitly marked unavailable here
52 |
53 | @property(nonatomic,readonly) NSTimeInterval timestamp;
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:17:35: error: 'UITouch' is unavailable in watchOS
15 |
16 | private var _newTouches: Set<UITouch> = []
17 | private(set) var newTouches: Set<UITouch> {
| `- error: 'UITouch' is unavailable in watchOS
18 | get {
19 | let touches = _newTouches
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITouch.h:51:12: note: 'UITouch' has been explicitly marked unavailable here
49 |
50 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
51 | @interface UITouch : NSObject
| `- note: 'UITouch' has been explicitly marked unavailable here
52 |
53 | @property(nonatomic,readonly) NSTimeInterval timestamp;
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:39:44: error: 'UITouch' is unavailable in watchOS
37 | }
38 |
39 | override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent) {
| `- error: 'UITouch' is unavailable in watchOS
40 | super.touchesBegan(touches, with: event)
41 | newTouches = newTouches.union(touches)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITouch.h:51:12: note: 'UITouch' has been explicitly marked unavailable here
49 |
50 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
51 | @interface UITouch : NSObject
| `- note: 'UITouch' has been explicitly marked unavailable here
52 |
53 | @property(nonatomic,readonly) NSTimeInterval timestamp;
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:39:66: error: 'UIEvent' is unavailable in watchOS
37 | }
38 |
39 | override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent) {
| `- error: 'UIEvent' is unavailable in watchOS
40 | super.touchesBegan(touches, with: event)
41 | newTouches = newTouches.union(touches)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIEvent.h:62:12: note: 'UIEvent' has been explicitly marked unavailable here
60 |
61 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
62 | @interface UIEvent : NSObject
| `- note: 'UIEvent' has been explicitly marked unavailable here
63 |
64 | @property(nonatomic,readonly) UIEventType type API_AVAILABLE(ios(3.0));
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:45:44: error: 'UITouch' is unavailable in watchOS
43 | }
44 |
45 | override func touchesMoved(_ touches: Set<UITouch>, with event: UIEvent) {
| `- error: 'UITouch' is unavailable in watchOS
46 | super.touchesMoved(touches, with: event)
47 | allTouches = allTouches.union(touches)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITouch.h:51:12: note: 'UITouch' has been explicitly marked unavailable here
49 |
50 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
51 | @interface UITouch : NSObject
| `- note: 'UITouch' has been explicitly marked unavailable here
52 |
53 | @property(nonatomic,readonly) NSTimeInterval timestamp;
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:45:66: error: 'UIEvent' is unavailable in watchOS
43 | }
44 |
45 | override func touchesMoved(_ touches: Set<UITouch>, with event: UIEvent) {
| `- error: 'UIEvent' is unavailable in watchOS
46 | super.touchesMoved(touches, with: event)
47 | allTouches = allTouches.union(touches)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIEvent.h:62:12: note: 'UIEvent' has been explicitly marked unavailable here
60 |
61 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
62 | @interface UIEvent : NSObject
| `- note: 'UIEvent' has been explicitly marked unavailable here
63 |
64 | @property(nonatomic,readonly) UIEventType type API_AVAILABLE(ios(3.0));
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:51:44: error: 'UITouch' is unavailable in watchOS
49 | }
50 |
51 | override func touchesEnded(_ touches: Set<UITouch>, with event: UIEvent) {
| `- error: 'UITouch' is unavailable in watchOS
52 | super.touchesEnded(touches, with: event)
53 | allTouches = allTouches.subtracting(touches)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITouch.h:51:12: note: 'UITouch' has been explicitly marked unavailable here
49 |
50 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
51 | @interface UITouch : NSObject
| `- note: 'UITouch' has been explicitly marked unavailable here
52 |
53 | @property(nonatomic,readonly) NSTimeInterval timestamp;
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:51:66: error: 'UIEvent' is unavailable in watchOS
49 | }
50 |
51 | override func touchesEnded(_ touches: Set<UITouch>, with event: UIEvent) {
| `- error: 'UIEvent' is unavailable in watchOS
52 | super.touchesEnded(touches, with: event)
53 | allTouches = allTouches.subtracting(touches)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIEvent.h:62:12: note: 'UIEvent' has been explicitly marked unavailable here
60 |
61 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
62 | @interface UIEvent : NSObject
| `- note: 'UIEvent' has been explicitly marked unavailable here
63 |
64 | @property(nonatomic,readonly) UIEventType type API_AVAILABLE(ios(3.0));
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:61:48: error: 'UITouch' is unavailable in watchOS
59 | }
60 |
61 | override func touchesCancelled(_ touches: Set<UITouch>, with event: UIEvent) {
| `- error: 'UITouch' is unavailable in watchOS
62 | super.touchesCancelled(touches, with: event)
63 | allTouches = allTouches.subtracting(touches)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITouch.h:51:12: note: 'UITouch' has been explicitly marked unavailable here
49 |
50 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
51 | @interface UITouch : NSObject
| `- note: 'UITouch' has been explicitly marked unavailable here
52 |
53 | @property(nonatomic,readonly) NSTimeInterval timestamp;
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:61:70: error: 'UIEvent' is unavailable in watchOS
59 | }
60 |
61 | override func touchesCancelled(_ touches: Set<UITouch>, with event: UIEvent) {
| `- error: 'UIEvent' is unavailable in watchOS
62 | super.touchesCancelled(touches, with: event)
63 | allTouches = allTouches.subtracting(touches)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIEvent.h:62:12: note: 'UIEvent' has been explicitly marked unavailable here
60 |
61 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
62 | @interface UIEvent : NSObject
| `- note: 'UIEvent' has been explicitly marked unavailable here
63 |
64 | @property(nonatomic,readonly) UIEventType type API_AVAILABLE(ios(3.0));
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:72:63: error: 'UIGestureRecognizer' is unavailable in watchOS
70 |
71 | /// Nothing should prevent this gesture recognizer from activating for as long as it's enabled.
72 | override func canBePrevented(by preventingGestureRecognizer: UIGestureRecognizer) -> Bool {
| `- error: 'UIGestureRecognizer' is unavailable in watchOS
73 | false
74 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIGestureRecognizer.h:35:12: note: 'UIGestureRecognizer' has been explicitly marked unavailable here
33 |
34 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
35 | @interface UIGestureRecognizer : NSObject
| `- note: 'UIGestureRecognizer' has been explicitly marked unavailable here
36 |
37 | // Valid action method signatures:
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:11:27: error: 'UIGestureRecognizer' is unavailable in watchOS
9 |
10 | /// This recognizer is configured to detect and forward *every* touch, but also passes through to any following recognizers/touch input.
11 | final class TouchCatcher: UIGestureRecognizer {
| `- error: 'UIGestureRecognizer' is unavailable in watchOS
12 |
13 | /// Keeps track of all touches throughout their lifetime
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIGestureRecognizer.h:35:12: note: 'UIGestureRecognizer' has been explicitly marked unavailable here
33 |
34 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
35 | @interface UIGestureRecognizer : NSObject
| `- note: 'UIGestureRecognizer' has been explicitly marked unavailable here
36 |
37 | // Valid action method signatures:
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:79:46: error: 'UIGestureRecognizer' is unavailable in watchOS
77 | extension TouchCatcher: UIGestureRecognizerDelegate {
78 | /// No touch events should be consumed by this gesture recognizer alone.
79 | func gestureRecognizer(_ gestureRecognizer: UIGestureRecognizer, shouldRecognizeSimultaneouslyWith otherGestureRecognizer: UIGestureRecognizer) -> Bool {
| `- error: 'UIGestureRecognizer' is unavailable in watchOS
80 | true
81 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIGestureRecognizer.h:35:12: note: 'UIGestureRecognizer' has been explicitly marked unavailable here
33 |
34 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
35 | @interface UIGestureRecognizer : NSObject
| `- note: 'UIGestureRecognizer' has been explicitly marked unavailable here
36 |
37 | // Valid action method signatures:
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:79:125: error: 'UIGestureRecognizer' is unavailable in watchOS
77 | extension TouchCatcher: UIGestureRecognizerDelegate {
78 | /// No touch events should be consumed by this gesture recognizer alone.
79 | func gestureRecognizer(_ gestureRecognizer: UIGestureRecognizer, shouldRecognizeSimultaneouslyWith otherGestureRecognizer: UIGestureRecognizer) -> Bool {
| `- error: 'UIGestureRecognizer' is unavailable in watchOS
80 | true
81 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIGestureRecognizer.h:35:12: note: 'UIGestureRecognizer' has been explicitly marked unavailable here
33 |
34 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
35 | @interface UIGestureRecognizer : NSObject
| `- note: 'UIGestureRecognizer' has been explicitly marked unavailable here
36 |
37 | // Valid action method signatures:
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:77:25: error: 'UIGestureRecognizerDelegate' is unavailable in watchOS
75 | }
76 |
77 | extension TouchCatcher: UIGestureRecognizerDelegate {
| `- error: 'UIGestureRecognizerDelegate' is unavailable in watchOS
78 | /// No touch events should be consumed by this gesture recognizer alone.
79 | func gestureRecognizer(_ gestureRecognizer: UIGestureRecognizer, shouldRecognizeSimultaneouslyWith otherGestureRecognizer: UIGestureRecognizer) -> Bool {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIGestureRecognizer.h:91:11: note: 'UIGestureRecognizerDelegate' has been explicitly marked unavailable here
89 |
90 | API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
91 | @protocol UIGestureRecognizerDelegate <NSObject>
| `- note: 'UIGestureRecognizerDelegate' has been explicitly marked unavailable here
92 | @optional
93 | // called when a gesture recognizer attempts to transition out of UIGestureRecognizerStatePossible. returning NO causes it to transition to UIGestureRecognizerStateFailed
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift (in target 'SeaTouch' from project 'SeaTouch')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile TouchCatcher.swift
SwiftCompile normal arm64 Compiling\ SeaTouch.swift /Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/SeaTouch.swift (in target 'SeaTouch' from project 'SeaTouch')
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/SeaTouch.swift:7:32: error: 'UIWindow' is unavailable in watchOS
5 | static let shared = SeaTouch()
6 |
7 | private var trackedWindows = [UIWindow: (touches: TouchCatcher, layer: RippleShapeLayer)]()
| `- error: 'UIWindow' is unavailable in watchOS
8 | private var trackedLayers = [TouchCatcher: RippleShapeLayer]()
9 | private var trackedCatchers = [TouchCatcher: UIWindow]()
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIWindow.h:22:12: note: 'UIWindow' has been explicitly marked unavailable here
20 |
21 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
22 | @interface UIWindow : UIView
| `- note: 'UIWindow' has been explicitly marked unavailable here
23 |
24 | // instantiate a UIWindow already associated with a given UIWindowScene instance, with matching frame & interface orientations.
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/SeaTouch.swift:9:47: error: 'UIWindow' is unavailable in watchOS
7 | private var trackedWindows = [UIWindow: (touches: TouchCatcher, layer: RippleShapeLayer)]()
8 | private var trackedLayers = [TouchCatcher: RippleShapeLayer]()
9 | private var trackedCatchers = [TouchCatcher: UIWindow]()
| `- error: 'UIWindow' is unavailable in watchOS
10 |
11 | let radius: CGFloat = 25
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIWindow.h:22:12: note: 'UIWindow' has been explicitly marked unavailable here
20 |
21 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
22 | @interface UIWindow : UIView
| `- note: 'UIWindow' has been explicitly marked unavailable here
23 |
24 | // instantiate a UIWindow already associated with a given UIWindowScene instance, with matching frame & interface orientations.
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/SeaTouch.swift:19:31: error: 'UIWindow' is unavailable in watchOS
17 |
18 | /// Initiates touch tracking on a given window, also caching important references to speed up future execution.
19 | func trackTouches(on window: UIWindow) {
| `- error: 'UIWindow' is unavailable in watchOS
20 | guard trackedWindows[window] == nil else { return }
21 | let catcher = TouchCatcher(target: self, action: #selector(touchesUpdated(_:)))
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIWindow.h:22:12: note: 'UIWindow' has been explicitly marked unavailable here
20 |
21 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
22 | @interface UIWindow : UIView
| `- note: 'UIWindow' has been explicitly marked unavailable here
23 |
24 | // instantiate a UIWindow already associated with a given UIWindowScene instance, with matching frame & interface orientations.
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/SeaTouch.swift (in target 'SeaTouch' from project 'SeaTouch')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile SeaTouch.swift
SwiftCompile normal arm64 Compiling\ UIWindow+touches.swift /Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/UIWindow+touches.swift (in target 'SeaTouch' from project 'SeaTouch')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/UIWindow+touches.swift (in target 'SeaTouch' from project 'SeaTouch')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile UIWindow+touches.swift
SwiftCompile normal arm64_32 Compiling\ TouchCatcher.swift /Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift (in target 'SeaTouch' from project 'SeaTouch')
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:14:35: error: 'UITouch' is unavailable in watchOS
12 |
13 | /// Keeps track of all touches throughout their lifetime
14 | private(set) var allTouches: Set<UITouch> = []
| `- error: 'UITouch' is unavailable in watchOS
15 |
16 | private var _newTouches: Set<UITouch> = []
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITouch.h:51:12: note: 'UITouch' has been explicitly marked unavailable here
49 |
50 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
51 | @interface UITouch : NSObject
| `- note: 'UITouch' has been explicitly marked unavailable here
52 |
53 | @property(nonatomic,readonly) NSTimeInterval timestamp;
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:16:31: error: 'UITouch' is unavailable in watchOS
14 | private(set) var allTouches: Set<UITouch> = []
15 |
16 | private var _newTouches: Set<UITouch> = []
| `- error: 'UITouch' is unavailable in watchOS
17 | private(set) var newTouches: Set<UITouch> {
18 | get {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITouch.h:51:12: note: 'UITouch' has been explicitly marked unavailable here
49 |
50 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
51 | @interface UITouch : NSObject
| `- note: 'UITouch' has been explicitly marked unavailable here
52 |
53 | @property(nonatomic,readonly) NSTimeInterval timestamp;
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:17:35: error: 'UITouch' is unavailable in watchOS
15 |
16 | private var _newTouches: Set<UITouch> = []
17 | private(set) var newTouches: Set<UITouch> {
| `- error: 'UITouch' is unavailable in watchOS
18 | get {
19 | let touches = _newTouches
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITouch.h:51:12: note: 'UITouch' has been explicitly marked unavailable here
49 |
50 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
51 | @interface UITouch : NSObject
| `- note: 'UITouch' has been explicitly marked unavailable here
52 |
53 | @property(nonatomic,readonly) NSTimeInterval timestamp;
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:39:44: error: 'UITouch' is unavailable in watchOS
37 | }
38 |
39 | override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent) {
| `- error: 'UITouch' is unavailable in watchOS
40 | super.touchesBegan(touches, with: event)
41 | newTouches = newTouches.union(touches)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITouch.h:51:12: note: 'UITouch' has been explicitly marked unavailable here
49 |
50 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
51 | @interface UITouch : NSObject
| `- note: 'UITouch' has been explicitly marked unavailable here
52 |
53 | @property(nonatomic,readonly) NSTimeInterval timestamp;
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:39:66: error: 'UIEvent' is unavailable in watchOS
37 | }
38 |
39 | override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent) {
| `- error: 'UIEvent' is unavailable in watchOS
40 | super.touchesBegan(touches, with: event)
41 | newTouches = newTouches.union(touches)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIEvent.h:62:12: note: 'UIEvent' has been explicitly marked unavailable here
60 |
61 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
62 | @interface UIEvent : NSObject
| `- note: 'UIEvent' has been explicitly marked unavailable here
63 |
64 | @property(nonatomic,readonly) UIEventType type API_AVAILABLE(ios(3.0));
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:45:44: error: 'UITouch' is unavailable in watchOS
43 | }
44 |
45 | override func touchesMoved(_ touches: Set<UITouch>, with event: UIEvent) {
| `- error: 'UITouch' is unavailable in watchOS
46 | super.touchesMoved(touches, with: event)
47 | allTouches = allTouches.union(touches)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITouch.h:51:12: note: 'UITouch' has been explicitly marked unavailable here
49 |
50 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
51 | @interface UITouch : NSObject
| `- note: 'UITouch' has been explicitly marked unavailable here
52 |
53 | @property(nonatomic,readonly) NSTimeInterval timestamp;
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:45:66: error: 'UIEvent' is unavailable in watchOS
43 | }
44 |
45 | override func touchesMoved(_ touches: Set<UITouch>, with event: UIEvent) {
| `- error: 'UIEvent' is unavailable in watchOS
46 | super.touchesMoved(touches, with: event)
47 | allTouches = allTouches.union(touches)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIEvent.h:62:12: note: 'UIEvent' has been explicitly marked unavailable here
60 |
61 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
62 | @interface UIEvent : NSObject
| `- note: 'UIEvent' has been explicitly marked unavailable here
63 |
64 | @property(nonatomic,readonly) UIEventType type API_AVAILABLE(ios(3.0));
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:51:44: error: 'UITouch' is unavailable in watchOS
49 | }
50 |
51 | override func touchesEnded(_ touches: Set<UITouch>, with event: UIEvent) {
| `- error: 'UITouch' is unavailable in watchOS
52 | super.touchesEnded(touches, with: event)
53 | allTouches = allTouches.subtracting(touches)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITouch.h:51:12: note: 'UITouch' has been explicitly marked unavailable here
49 |
50 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
51 | @interface UITouch : NSObject
| `- note: 'UITouch' has been explicitly marked unavailable here
52 |
53 | @property(nonatomic,readonly) NSTimeInterval timestamp;
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:51:66: error: 'UIEvent' is unavailable in watchOS
49 | }
50 |
51 | override func touchesEnded(_ touches: Set<UITouch>, with event: UIEvent) {
| `- error: 'UIEvent' is unavailable in watchOS
52 | super.touchesEnded(touches, with: event)
53 | allTouches = allTouches.subtracting(touches)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIEvent.h:62:12: note: 'UIEvent' has been explicitly marked unavailable here
60 |
61 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
62 | @interface UIEvent : NSObject
| `- note: 'UIEvent' has been explicitly marked unavailable here
63 |
64 | @property(nonatomic,readonly) UIEventType type API_AVAILABLE(ios(3.0));
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:61:48: error: 'UITouch' is unavailable in watchOS
59 | }
60 |
61 | override func touchesCancelled(_ touches: Set<UITouch>, with event: UIEvent) {
| `- error: 'UITouch' is unavailable in watchOS
62 | super.touchesCancelled(touches, with: event)
63 | allTouches = allTouches.subtracting(touches)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITouch.h:51:12: note: 'UITouch' has been explicitly marked unavailable here
49 |
50 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
51 | @interface UITouch : NSObject
| `- note: 'UITouch' has been explicitly marked unavailable here
52 |
53 | @property(nonatomic,readonly) NSTimeInterval timestamp;
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:61:70: error: 'UIEvent' is unavailable in watchOS
59 | }
60 |
61 | override func touchesCancelled(_ touches: Set<UITouch>, with event: UIEvent) {
| `- error: 'UIEvent' is unavailable in watchOS
62 | super.touchesCancelled(touches, with: event)
63 | allTouches = allTouches.subtracting(touches)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIEvent.h:62:12: note: 'UIEvent' has been explicitly marked unavailable here
60 |
61 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
62 | @interface UIEvent : NSObject
| `- note: 'UIEvent' has been explicitly marked unavailable here
63 |
64 | @property(nonatomic,readonly) UIEventType type API_AVAILABLE(ios(3.0));
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:72:63: error: 'UIGestureRecognizer' is unavailable in watchOS
70 |
71 | /// Nothing should prevent this gesture recognizer from activating for as long as it's enabled.
72 | override func canBePrevented(by preventingGestureRecognizer: UIGestureRecognizer) -> Bool {
| `- error: 'UIGestureRecognizer' is unavailable in watchOS
73 | false
74 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIGestureRecognizer.h:35:12: note: 'UIGestureRecognizer' has been explicitly marked unavailable here
33 |
34 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
35 | @interface UIGestureRecognizer : NSObject
| `- note: 'UIGestureRecognizer' has been explicitly marked unavailable here
36 |
37 | // Valid action method signatures:
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:11:27: error: 'UIGestureRecognizer' is unavailable in watchOS
9 |
10 | /// This recognizer is configured to detect and forward *every* touch, but also passes through to any following recognizers/touch input.
11 | final class TouchCatcher: UIGestureRecognizer {
| `- error: 'UIGestureRecognizer' is unavailable in watchOS
12 |
13 | /// Keeps track of all touches throughout their lifetime
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIGestureRecognizer.h:35:12: note: 'UIGestureRecognizer' has been explicitly marked unavailable here
33 |
34 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
35 | @interface UIGestureRecognizer : NSObject
| `- note: 'UIGestureRecognizer' has been explicitly marked unavailable here
36 |
37 | // Valid action method signatures:
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:79:46: error: 'UIGestureRecognizer' is unavailable in watchOS
77 | extension TouchCatcher: UIGestureRecognizerDelegate {
78 | /// No touch events should be consumed by this gesture recognizer alone.
79 | func gestureRecognizer(_ gestureRecognizer: UIGestureRecognizer, shouldRecognizeSimultaneouslyWith otherGestureRecognizer: UIGestureRecognizer) -> Bool {
| `- error: 'UIGestureRecognizer' is unavailable in watchOS
80 | true
81 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIGestureRecognizer.h:35:12: note: 'UIGestureRecognizer' has been explicitly marked unavailable here
33 |
34 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
35 | @interface UIGestureRecognizer : NSObject
| `- note: 'UIGestureRecognizer' has been explicitly marked unavailable here
36 |
37 | // Valid action method signatures:
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:79:125: error: 'UIGestureRecognizer' is unavailable in watchOS
77 | extension TouchCatcher: UIGestureRecognizerDelegate {
78 | /// No touch events should be consumed by this gesture recognizer alone.
79 | func gestureRecognizer(_ gestureRecognizer: UIGestureRecognizer, shouldRecognizeSimultaneouslyWith otherGestureRecognizer: UIGestureRecognizer) -> Bool {
| `- error: 'UIGestureRecognizer' is unavailable in watchOS
80 | true
81 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIGestureRecognizer.h:35:12: note: 'UIGestureRecognizer' has been explicitly marked unavailable here
33 |
34 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
35 | @interface UIGestureRecognizer : NSObject
| `- note: 'UIGestureRecognizer' has been explicitly marked unavailable here
36 |
37 | // Valid action method signatures:
/Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift:77:25: error: 'UIGestureRecognizerDelegate' is unavailable in watchOS
75 | }
76 |
77 | extension TouchCatcher: UIGestureRecognizerDelegate {
| `- error: 'UIGestureRecognizerDelegate' is unavailable in watchOS
78 | /// No touch events should be consumed by this gesture recognizer alone.
79 | func gestureRecognizer(_ gestureRecognizer: UIGestureRecognizer, shouldRecognizeSimultaneouslyWith otherGestureRecognizer: UIGestureRecognizer) -> Bool {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIGestureRecognizer.h:91:11: note: 'UIGestureRecognizerDelegate' has been explicitly marked unavailable here
89 |
90 | API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
91 | @protocol UIGestureRecognizerDelegate <NSObject>
| `- note: 'UIGestureRecognizerDelegate' has been explicitly marked unavailable here
92 | @optional
93 | // called when a gesture recognizer attempts to transition out of UIGestureRecognizerStatePossible. returning NO causes it to transition to UIGestureRecognizerStateFailed
SwiftCompile normal arm64_32 /Users/admin/builder/spi-builder-workspace/Sources/SeaTouch/TouchCatcher.swift (in target 'SeaTouch' from project 'SeaTouch')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile TouchCatcher.swift
PruneExplicitPrecompiledModules /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/ExplicitPrecompiledModules
PruneExplicitPrecompiledModules /Users/admin/builder/spi-builder-workspace/.derivedData/SDKExplicitPrecompiledModules
PruneExplicitPrecompiledModules /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SwiftExplicitPrecompiledModules
2026-09-18 01:49:43.216 xcodebuild[782:4706] [MT] IDERunDestination: Supported platforms for the buildables in the current scheme is empty.
** BUILD FAILED **
The following build commands failed:
SwiftCompile normal arm64_32 (in target 'SeaTouch' from project 'SeaTouch')
SwiftEmitModule normal arm64_32 Emitting\ module\ for\ SeaTouch (in target 'SeaTouch' from project 'SeaTouch')
Building workspace SeaTouch with scheme SeaTouch
(3 failures)
BUILD FAILURE 6.4 watchOS