Build Information
Failed to build CameraButton, reference master (5d1091), with Swift 6.4 for watchOS using Xcode 27.0 on 23 Oct 2026 07:59:27 UTC.
Build Command
env DEVELOPER_DIR=/Applications/Xcode-27.0.0.app xcrun xcodebuild -IDEClonedSourcePackagesDirPathOverride=$PWD/.dependencies -skipMacroValidation -skipPackagePluginValidation -derivedDataPath $PWD/.derivedData build -scheme CameraButton -destination generic/platform=watchOSBuild Log
SwiftCompile normal arm64_32 Compiling\ CameraShutterButton.swift /Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift (in target 'CameraButton' from project 'CameraButton')
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:57:37: error: cannot find type 'Context' in scope
55 | // MARK: UIViewRepresentable
56 |
57 | public func makeUIView(context: Context) -> CameraButton {
| `- error: cannot find type 'Context' in scope
58 | let button = CameraButton()
59 | button.delegate = context.coordinator
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:66:63: error: cannot find type 'Context' in scope
64 | }
65 |
66 | public func updateUIView(_ button: CameraButton, context: Context) {
| `- error: cannot find type 'Context' in scope
67 | context.coordinator.parent = self
68 | configure(button)
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:28:36: error: cannot find type 'UIViewRepresentable' in scope
26 | /// }
27 | /// ```
28 | public struct CameraShutterButton: UIViewRepresentable {
| `- error: cannot find type 'UIViewRepresentable' in scope
29 |
30 | // MARK: Properties
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:60:43: error: 'required' is unavailable in watchOS
58 | let button = CameraButton()
59 | button.delegate = context.coordinator
60 | button.setContentHuggingPriority(.required, for: .horizontal)
| `- error: 'required' is unavailable in watchOS
61 | button.setContentHuggingPriority(.required, for: .vertical)
62 |
UIKit.UILayoutPriority.required:3:21: note: 'required' has been explicitly marked unavailable here
1 | struct UILayoutPriority {
2 | @available(watchOS, unavailable)
3 | public static var required: UILayoutPriority { get }}
| `- note: 'required' has been explicitly marked unavailable here
4 |
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:61:43: error: 'required' is unavailable in watchOS
59 | button.delegate = context.coordinator
60 | button.setContentHuggingPriority(.required, for: .horizontal)
61 | button.setContentHuggingPriority(.required, for: .vertical)
| `- error: 'required' is unavailable in watchOS
62 |
63 | return button
UIKit.UILayoutPriority.required:3:21: note: 'required' has been explicitly marked unavailable here
1 | struct UILayoutPriority {
2 | @available(watchOS, unavailable)
3 | public static var required: UILayoutPriority { get }}
| `- note: 'required' has been explicitly marked unavailable here
4 |
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:58:22: warning: call to main actor-isolated initializer 'init()' in a synchronous nonisolated context [#ActorIsolatedCall]
55 | // MARK: UIViewRepresentable
56 |
57 | public func makeUIView(context: Context) -> CameraButton {
| `- note: add '@MainActor' to make instance method 'makeUIView(context:)' part of global actor 'MainActor'
58 | let button = CameraButton()
| `- warning: call to main actor-isolated initializer 'init()' in a synchronous nonisolated context [#ActorIsolatedCall]
59 | button.delegate = context.coordinator
60 | button.setContentHuggingPriority(.required, for: .horizontal)
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:221:12: note: calls to initializer 'init()' from outside of its actor context are implicitly asynchronous
219 | // MARK: Life cycle
220 |
221 | public init() {
| |- note: calls to initializer 'init()' from outside of its actor context are implicitly asynchronous
| `- note: main actor isolation inferred from inheritance from class 'UIButton'
222 | super.init(frame: .zero)
223 |
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:60:16: warning: call to main actor-isolated instance method 'setContentHuggingPriority(_:for:)' in a synchronous nonisolated context [#ActorIsolatedCall]
55 | // MARK: UIViewRepresentable
56 |
57 | public func makeUIView(context: Context) -> CameraButton {
| `- note: add '@MainActor' to make instance method 'makeUIView(context:)' part of global actor 'MainActor'
58 | let button = CameraButton()
59 | button.delegate = context.coordinator
60 | button.setContentHuggingPriority(.required, for: .horizontal)
| `- warning: call to main actor-isolated instance method 'setContentHuggingPriority(_:for:)' in a synchronous nonisolated context [#ActorIsolatedCall]
61 | button.setContentHuggingPriority(.required, for: .vertical)
62 |
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:552:1: note: calls to instance method 'setContentHuggingPriority(_:for:)' from outside of its actor context are implicitly asynchronous
550 |
551 | - (UILayoutPriority)contentHuggingPriorityForAxis:(UILayoutConstraintAxis)axis API_AVAILABLE(ios(6.0));
552 | - (void)setContentHuggingPriority:(UILayoutPriority)priority forAxis:(UILayoutConstraintAxis)axis API_AVAILABLE(ios(6.0));
| `- note: calls to instance method 'setContentHuggingPriority(_:for:)' from outside of its actor context are implicitly asynchronous
553 |
554 | - (UILayoutPriority)contentCompressionResistancePriorityForAxis:(UILayoutConstraintAxis)axis API_AVAILABLE(ios(6.0));
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:61:16: warning: call to main actor-isolated instance method 'setContentHuggingPriority(_:for:)' in a synchronous nonisolated context [#ActorIsolatedCall]
55 | // MARK: UIViewRepresentable
56 |
57 | public func makeUIView(context: Context) -> CameraButton {
| `- note: add '@MainActor' to make instance method 'makeUIView(context:)' part of global actor 'MainActor'
58 | let button = CameraButton()
59 | button.delegate = context.coordinator
60 | button.setContentHuggingPriority(.required, for: .horizontal)
61 | button.setContentHuggingPriority(.required, for: .vertical)
| `- warning: call to main actor-isolated instance method 'setContentHuggingPriority(_:for:)' in a synchronous nonisolated context [#ActorIsolatedCall]
62 |
63 | return button
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:552:1: note: calls to instance method 'setContentHuggingPriority(_:for:)' from outside of its actor context are implicitly asynchronous
550 |
551 | - (UILayoutPriority)contentHuggingPriorityForAxis:(UILayoutConstraintAxis)axis API_AVAILABLE(ios(6.0));
552 | - (void)setContentHuggingPriority:(UILayoutPriority)priority forAxis:(UILayoutConstraintAxis)axis API_AVAILABLE(ios(6.0));
| `- note: calls to instance method 'setContentHuggingPriority(_:for:)' from outside of its actor context are implicitly asynchronous
553 |
554 | - (UILayoutPriority)contentCompressionResistancePriorityForAxis:(UILayoutConstraintAxis)axis API_AVAILABLE(ios(6.0));
SwiftCompile normal arm64_32 /Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift (in target 'CameraButton' from project 'CameraButton')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile CameraShutterButton.swift
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:69:16: warning: main actor-isolated property 'style' can not be mutated from a nonisolated context
64 | }
65 |
66 | public func updateUIView(_ button: CameraButton, context: Context) {
| `- note: add '@MainActor' to make instance method 'updateUIView(_:context:)' part of global actor 'MainActor'
67 | context.coordinator.parent = self
68 | configure(button)
69 | button.style = style
| `- warning: main actor-isolated property 'style' can not be mutated from a nonisolated context
70 | if button.type != type {
71 | button.type = type
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:39:16: note: mutation of this property is only permitted within the actor
37 | // MARK: Style
38 |
39 | public var style: Style = .classic {
| `- note: mutation of this property is only permitted within the actor
40 | didSet {
41 | guard oldValue != style else { return }
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:70:19: warning: main actor-isolated property 'type' can not be referenced from a nonisolated context
64 | }
65 |
66 | public func updateUIView(_ button: CameraButton, context: Context) {
| `- note: add '@MainActor' to make instance method 'updateUIView(_:context:)' part of global actor 'MainActor'
67 | context.coordinator.parent = self
68 | configure(button)
69 | button.style = style
70 | if button.type != type {
| `- warning: main actor-isolated property 'type' can not be referenced from a nonisolated context
71 | button.type = type
72 | }
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:182:16: note: property declared here
180 | // MARK: Public properties
181 |
182 | public var type: CameraType = .photo {
| `- note: property declared here
183 | didSet {
184 | pathLayer.removeAllAnimations()
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:71:20: warning: main actor-isolated property 'type' can not be mutated from a nonisolated context
64 | }
65 |
66 | public func updateUIView(_ button: CameraButton, context: Context) {
| `- note: add '@MainActor' to make instance method 'updateUIView(_:context:)' part of global actor 'MainActor'
67 | context.coordinator.parent = self
68 | configure(button)
69 | button.style = style
70 | if button.type != type {
71 | button.type = type
| `- warning: main actor-isolated property 'type' can not be mutated from a nonisolated context
72 | }
73 | if type == .video, button.isSelected != isRecording {
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:182:16: note: mutation of this property is only permitted within the actor
180 | // MARK: Public properties
181 |
182 | public var type: CameraType = .photo {
| `- note: mutation of this property is only permitted within the actor
183 | didSet {
184 | pathLayer.removeAllAnimations()
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:73:35: warning: main actor-isolated property 'isSelected' can not be referenced from a nonisolated context
64 | }
65 |
66 | public func updateUIView(_ button: CameraButton, context: Context) {
| `- note: add '@MainActor' to make instance method 'updateUIView(_:context:)' part of global actor 'MainActor'
67 | context.coordinator.parent = self
68 | configure(button)
:
71 | button.type = type
72 | }
73 | if type == .video, button.isSelected != isRecording {
| `- warning: main actor-isolated property 'isSelected' can not be referenced from a nonisolated context
74 | button.isSelected = isRecording
75 | }
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:164:23: note: property declared here
162 | // MARK: Properties
163 |
164 | override open var isSelected: Bool {
| `- note: property declared here
165 | didSet {
166 | guard oldValue != isSelected else { return }
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:74:20: warning: main actor-isolated property 'isSelected' can not be mutated from a nonisolated context
64 | }
65 |
66 | public func updateUIView(_ button: CameraButton, context: Context) {
| `- note: add '@MainActor' to make instance method 'updateUIView(_:context:)' part of global actor 'MainActor'
67 | context.coordinator.parent = self
68 | configure(button)
:
72 | }
73 | if type == .video, button.isSelected != isRecording {
74 | button.isSelected = isRecording
| `- warning: main actor-isolated property 'isSelected' can not be mutated from a nonisolated context
75 | }
76 | if recordingProgress != button.recordingProgress {
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:164:23: note: mutation of this property is only permitted within the actor
162 | // MARK: Properties
163 |
164 | override open var isSelected: Bool {
| `- note: mutation of this property is only permitted within the actor
165 | didSet {
166 | guard oldValue != isSelected else { return }
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:76:40: warning: main actor-isolated property 'recordingProgress' can not be referenced from a nonisolated context
64 | }
65 |
66 | public func updateUIView(_ button: CameraButton, context: Context) {
| `- note: add '@MainActor' to make instance method 'updateUIView(_:context:)' part of global actor 'MainActor'
67 | context.coordinator.parent = self
68 | configure(button)
:
74 | button.isSelected = isRecording
75 | }
76 | if recordingProgress != button.recordingProgress {
| `- warning: main actor-isolated property 'recordingProgress' can not be referenced from a nonisolated context
77 | button.recordingProgress = recordingProgress
78 | }
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:114:16: note: property declared here
112 |
113 | /// Progress of the recording ring, from 0 to 1. Resets when recording stops.
114 | public var recordingProgress: CGFloat {
| `- note: property declared here
115 | get { progressLayer.strokeEnd }
116 | set {
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:77:20: warning: main actor-isolated property 'recordingProgress' can not be mutated from a nonisolated context
64 | }
65 |
66 | public func updateUIView(_ button: CameraButton, context: Context) {
| `- note: add '@MainActor' to make instance method 'updateUIView(_:context:)' part of global actor 'MainActor'
67 | context.coordinator.parent = self
68 | configure(button)
:
75 | }
76 | if recordingProgress != button.recordingProgress {
77 | button.recordingProgress = recordingProgress
| `- warning: main actor-isolated property 'recordingProgress' can not be mutated from a nonisolated context
78 | }
79 | }
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:114:16: note: mutation of this property is only permitted within the actor
112 |
113 | /// Progress of the recording ring, from 0 to 1. Resets when recording stops.
114 | public var recordingProgress: CGFloat {
| `- note: mutation of this property is only permitted within the actor
115 | get { progressLayer.strokeEnd }
116 | set {
SwiftCompile normal arm64_32 Compiling\ CameraButtonDelegate.swift /Users/admin/builder/spi-builder-workspace/Sources/Protocols/CameraButtonDelegate.swift (in target 'CameraButton' from project 'CameraButton')
SwiftCompile normal arm64_32 /Users/admin/builder/spi-builder-workspace/Sources/Protocols/CameraButtonDelegate.swift (in target 'CameraButton' from project 'CameraButton')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile CameraButtonDelegate.swift
SwiftCompile normal arm64_32 Compiling\ CameraButton.swift /Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift (in target 'CameraButton' from project 'CameraButton')
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:105:42: error: 'systemRed' is unavailable in watchOS
103 | // MARK: Recording progress
104 |
105 | public var progressColor: UIColor = .systemRed {
| `- error: 'systemRed' is unavailable in watchOS
106 | didSet {
107 | guard oldValue != progressColor else { return }
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIInterface.h:121:49: note: 'systemRed' has been explicitly marked unavailable here
119 | * Do not make assumptions about the color spaces or actual colors used.
120 | */
121 | @property (class, nonatomic, readonly) UIColor *systemRedColor API_AVAILABLE(ios(7.0), tvos(9.0)) API_UNAVAILABLE(watchos);
| `- note: 'systemRed' has been explicitly marked unavailable here
122 | @property (class, nonatomic, readonly) UIColor *systemGreenColor API_AVAILABLE(ios(7.0), tvos(9.0)) API_UNAVAILABLE(watchos);
123 | @property (class, nonatomic, readonly) UIColor *systemBlueColor API_AVAILABLE(ios(7.0), tvos(9.0)) API_UNAVAILABLE(watchos);
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:194:29: error: 'CAShapeLayer' is unavailable in watchOS
192 | // MARK: Private properties
193 |
194 | private let pathLayer = CAShapeLayer()
| `- error: 'CAShapeLayer' is unavailable in watchOS
195 | private let progressLayer = CAShapeLayer()
196 | private var glassView: UIView?
/Applications/Xcode-27.0.0.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/CameraButton.swift:195:33: error: 'CAShapeLayer' is unavailable in watchOS
193 |
194 | private let pathLayer = CAShapeLayer()
195 | private let progressLayer = CAShapeLayer()
| `- error: 'CAShapeLayer' is unavailable in watchOS
196 | private var glassView: UIView?
197 | private let impactGenerator = UIImpactFeedbackGenerator(style: .medium)
/Applications/Xcode-27.0.0.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/CameraButton.swift:196:28: error: 'UIView' is unavailable in watchOS
194 | private let pathLayer = CAShapeLayer()
195 | private let progressLayer = CAShapeLayer()
196 | private var glassView: UIView?
| `- error: 'UIView' is unavailable in watchOS
197 | private let impactGenerator = UIImpactFeedbackGenerator(style: .medium)
198 | private let animateDuration = CATransaction.animationDuration()
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:152:12: note: 'UIView' has been explicitly marked unavailable here
150 |
151 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
152 | @interface UIView : UIResponder <NSCoding, UIAppearance, UIAppearanceContainer, UIDynamicItem, UITraitEnvironment, UICoordinateSpace, UIFocusItem, UIFocusItemContainer, CALayerDelegate>
| `- note: 'UIView' has been explicitly marked unavailable here
153 |
154 | @property(class, nonatomic, readonly) Class layerClass; // default is [CALayer class]. Used when creating the underlying layer for the view.
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:197:35: error: 'UIImpactFeedbackGenerator' is unavailable in watchOS
195 | private let progressLayer = CAShapeLayer()
196 | private var glassView: UIView?
197 | private let impactGenerator = UIImpactFeedbackGenerator(style: .medium)
| `- error: 'UIImpactFeedbackGenerator' is unavailable in watchOS
198 | private let animateDuration = CATransaction.animationDuration()
199 | private let shutterDuration: CFTimeInterval = 0.3
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIImpactFeedbackGenerator.h:25:12: note: 'UIImpactFeedbackGenerator' has been explicitly marked unavailable here
23 | // UIImpactFeedbackGenerator is used to give user feedback when an impact between UI elements occurs
24 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(visionos, tvos) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
25 | @interface UIImpactFeedbackGenerator : UIFeedbackGenerator
| `- note: 'UIImpactFeedbackGenerator' has been explicitly marked unavailable here
26 |
27 | /// set a style on the feedback generator and attach it to the provided view as an interaction.
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:198:35: error: 'CATransaction' is unavailable in watchOS
196 | private var glassView: UIView?
197 | private let impactGenerator = UIImpactFeedbackGenerator(style: .medium)
198 | private let animateDuration = CATransaction.animationDuration()
| `- error: 'CATransaction' is unavailable in watchOS
199 | private let shutterDuration: CFTimeInterval = 0.3
200 | private var lastLayoutSize: CGSize = .zero
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CATransaction.h:34:12: note: 'CATransaction' has been explicitly marked unavailable here
32 |
33 | API_AVAILABLE(macos(10.5), ios(2.0), tvos(9.0)) API_UNAVAILABLE(watchos)
34 | @interface CATransaction : NSObject
| `- note: 'CATransaction' has been explicitly marked unavailable here
35 |
36 | /* Begin a new transaction for the current thread; nests. */
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:205:23: error: cannot override 'accessibilityLabel' which has been marked unavailable
203 | // MARK: Accessibility
204 |
205 | override open var accessibilityLabel: String? {
| |- error: cannot override 'accessibilityLabel' which has been marked unavailable
| `- note: remove 'override' modifier to declare a new 'accessibilityLabel'
206 | get {
207 | if let customAccessibilityLabel { return customAccessibilityLabel }
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIAccessibility.h:64:49: note: 'accessibilityLabel' has been explicitly marked unavailable here
62 | Setting the property will change the label that is returned to the accessibility client.
63 | */
64 | @property (nullable, nonatomic, copy) NSString *accessibilityLabel API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR;
| `- note: 'accessibilityLabel' has been explicitly marked unavailable here
65 |
66 | /*
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:269:76: error: 'UITraitCollection' is unavailable in watchOS
267 | }
268 |
269 | override open func traitCollectionDidChange(_ previousTraitCollection: UITraitCollection?) {
| `- error: 'UITraitCollection' is unavailable in watchOS
270 | super.traitCollectionDidChange(previousTraitCollection)
271 |
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITraitCollection.h:23:12: note: 'UITraitCollection' has been explicitly marked unavailable here
21 |
22 | UIKIT_EXTERN API_AVAILABLE(ios(8.0)) API_UNAVAILABLE(watchos) NS_SWIFT_SENDABLE
23 | @interface UITraitCollection : NSObject <NSCopying, NSSecureCoding>
| `- note: 'UITraitCollection' has been explicitly marked unavailable here
24 |
25 | - (instancetype)init NS_DESIGNATED_INITIALIZER;
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:269:24: error: cannot override 'traitCollectionDidChange' which has been marked unavailable
267 | }
268 |
269 | override open func traitCollectionDidChange(_ previousTraitCollection: UITraitCollection?) {
| |- error: cannot override 'traitCollectionDidChange' which has been marked unavailable
| `- note: remove 'override' modifier to declare a new 'traitCollectionDidChange'
270 | super.traitCollectionDidChange(previousTraitCollection)
271 |
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITraitCollection.h:221:1: note: 'traitCollectionDidChange' has been explicitly marked unavailable here
219 |
220 | /*! To be overridden as needed to provide custom behavior when the environment's traits change. */
221 | - (void)traitCollectionDidChange:(nullable UITraitCollection *)previousTraitCollection API_DEPRECATED("Use the trait change registration APIs declared in the UITraitChangeObservable protocol", ios(8.0, 17.0), visionos(1.0, 1.0)) API_UNAVAILABLE(watchos);
| `- note: 'traitCollectionDidChange' has been explicitly marked unavailable here
222 | @end
223 |
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:331:37: error: 'UIView' is unavailable in watchOS
329 | }
330 |
331 | private func makeGlassView() -> UIView? {
| `- error: 'UIView' is unavailable in watchOS
332 | guard style == .glass else { return nil }
333 |
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:152:12: note: 'UIView' has been explicitly marked unavailable here
150 |
151 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
152 | @interface UIView : UIResponder <NSCoding, UIAppearance, UIAppearanceContainer, UIDynamicItem, UITraitEnvironment, UICoordinateSpace, UIFocusItem, UIFocusItemContainer, CALayerDelegate>
| `- note: 'UIView' has been explicitly marked unavailable here
153 |
154 | @property(class, nonatomic, readonly) Class layerClass; // default is [CALayer class]. Used when creating the underlying layer for the view.
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:27:26: error: 'UIButton' is unavailable in watchOS
25 | import UIKit
26 |
27 | open class CameraButton: UIButton {
| `- error: 'UIButton' is unavailable in watchOS
28 |
29 | /// Visual style of the button.
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIButton.h:49:12: note: 'UIButton' has been explicitly marked unavailable here
47 |
48 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
49 | @interface UIButton : UIControl <NSCoding>
| `- note: 'UIButton' has been explicitly marked unavailable here
50 |
51 | - (instancetype)initWithFrame:(CGRect)frame NS_DESIGNATED_INITIALIZER;
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:568:19: error: 'CATransaction' is unavailable in watchOS
566 | }
567 |
568 | private extension CATransaction {
| `- error: 'CATransaction' is unavailable in watchOS
569 |
570 | static func performWithoutAnimation(_ changes: () -> Void) {
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CATransaction.h:34:12: note: 'CATransaction' has been explicitly marked unavailable here
32 |
33 | API_AVAILABLE(macos(10.5), ios(2.0), tvos(9.0)) API_UNAVAILABLE(watchos)
34 | @interface CATransaction : NSObject
| `- note: 'CATransaction' has been explicitly marked unavailable here
35 |
36 | /* Begin a new transaction for the current thread; nests. */
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:118:13: error: 'CATransaction' is unavailable in watchOS
116 | set {
117 | progressLayer.removeAnimation(forKey: "strokeEnd")
118 | CATransaction.performWithoutAnimation {
| `- error: 'CATransaction' is unavailable in watchOS
119 | progressLayer.strokeEnd = min(max(newValue, 0), 1)
120 | }
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CATransaction.h:34:12: note: 'CATransaction' has been explicitly marked unavailable here
32 |
33 | API_AVAILABLE(macos(10.5), ios(2.0), tvos(9.0)) API_UNAVAILABLE(watchos)
34 | @interface CATransaction : NSObject
| `- note: 'CATransaction' has been explicitly marked unavailable here
35 |
36 | /* Begin a new transaction for the current thread; nests. */
SwiftCompile normal arm64_32 /Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift (in target 'CameraButton' from project 'CameraButton')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile CameraButton.swift
SwiftCompile normal arm64_32 Compiling\ CameraType.swift /Users/admin/builder/spi-builder-workspace/Sources/CameraType.swift (in target 'CameraButton' from project 'CameraButton')
SwiftCompile normal arm64_32 /Users/admin/builder/spi-builder-workspace/Sources/CameraType.swift (in target 'CameraButton' from project 'CameraButton')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile CameraType.swift
SwiftEmitModule normal arm64 Emitting\ module\ for\ CameraButton (in target 'CameraButton' from project 'CameraButton')
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:105:42: error: 'systemRed' is unavailable in watchOS
103 | // MARK: Recording progress
104 |
105 | public var progressColor: UIColor = .systemRed {
| `- error: 'systemRed' is unavailable in watchOS
106 | didSet {
107 | guard oldValue != progressColor else { return }
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIInterface.h:121:49: note: 'systemRed' has been explicitly marked unavailable here
119 | * Do not make assumptions about the color spaces or actual colors used.
120 | */
121 | @property (class, nonatomic, readonly) UIColor *systemRedColor API_AVAILABLE(ios(7.0), tvos(9.0)) API_UNAVAILABLE(watchos);
| `- note: 'systemRed' has been explicitly marked unavailable here
122 | @property (class, nonatomic, readonly) UIColor *systemGreenColor API_AVAILABLE(ios(7.0), tvos(9.0)) API_UNAVAILABLE(watchos);
123 | @property (class, nonatomic, readonly) UIColor *systemBlueColor API_AVAILABLE(ios(7.0), tvos(9.0)) API_UNAVAILABLE(watchos);
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:194:29: error: 'CAShapeLayer' is unavailable in watchOS
192 | // MARK: Private properties
193 |
194 | private let pathLayer = CAShapeLayer()
| `- error: 'CAShapeLayer' is unavailable in watchOS
195 | private let progressLayer = CAShapeLayer()
196 | private var glassView: UIView?
/Applications/Xcode-27.0.0.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/CameraButton.swift:195:33: error: 'CAShapeLayer' is unavailable in watchOS
193 |
194 | private let pathLayer = CAShapeLayer()
195 | private let progressLayer = CAShapeLayer()
| `- error: 'CAShapeLayer' is unavailable in watchOS
196 | private var glassView: UIView?
197 | private let impactGenerator = UIImpactFeedbackGenerator(style: .medium)
/Applications/Xcode-27.0.0.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/CameraButton.swift:196:28: error: 'UIView' is unavailable in watchOS
194 | private let pathLayer = CAShapeLayer()
195 | private let progressLayer = CAShapeLayer()
196 | private var glassView: UIView?
| `- error: 'UIView' is unavailable in watchOS
197 | private let impactGenerator = UIImpactFeedbackGenerator(style: .medium)
198 | private let animateDuration = CATransaction.animationDuration()
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:152:12: note: 'UIView' has been explicitly marked unavailable here
150 |
151 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
152 | @interface UIView : UIResponder <NSCoding, UIAppearance, UIAppearanceContainer, UIDynamicItem, UITraitEnvironment, UICoordinateSpace, UIFocusItem, UIFocusItemContainer, CALayerDelegate>
| `- note: 'UIView' has been explicitly marked unavailable here
153 |
154 | @property(class, nonatomic, readonly) Class layerClass; // default is [CALayer class]. Used when creating the underlying layer for the view.
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:197:35: error: 'UIImpactFeedbackGenerator' is unavailable in watchOS
195 | private let progressLayer = CAShapeLayer()
196 | private var glassView: UIView?
197 | private let impactGenerator = UIImpactFeedbackGenerator(style: .medium)
| `- error: 'UIImpactFeedbackGenerator' is unavailable in watchOS
198 | private let animateDuration = CATransaction.animationDuration()
199 | private let shutterDuration: CFTimeInterval = 0.3
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIImpactFeedbackGenerator.h:25:12: note: 'UIImpactFeedbackGenerator' has been explicitly marked unavailable here
23 | // UIImpactFeedbackGenerator is used to give user feedback when an impact between UI elements occurs
24 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(visionos, tvos) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
25 | @interface UIImpactFeedbackGenerator : UIFeedbackGenerator
| `- note: 'UIImpactFeedbackGenerator' has been explicitly marked unavailable here
26 |
27 | /// set a style on the feedback generator and attach it to the provided view as an interaction.
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:198:35: error: 'CATransaction' is unavailable in watchOS
196 | private var glassView: UIView?
197 | private let impactGenerator = UIImpactFeedbackGenerator(style: .medium)
198 | private let animateDuration = CATransaction.animationDuration()
| `- error: 'CATransaction' is unavailable in watchOS
199 | private let shutterDuration: CFTimeInterval = 0.3
200 | private var lastLayoutSize: CGSize = .zero
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CATransaction.h:34:12: note: 'CATransaction' has been explicitly marked unavailable here
32 |
33 | API_AVAILABLE(macos(10.5), ios(2.0), tvos(9.0)) API_UNAVAILABLE(watchos)
34 | @interface CATransaction : NSObject
| `- note: 'CATransaction' has been explicitly marked unavailable here
35 |
36 | /* Begin a new transaction for the current thread; nests. */
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:205:23: error: cannot override 'accessibilityLabel' which has been marked unavailable
203 | // MARK: Accessibility
204 |
205 | override open var accessibilityLabel: String? {
| |- error: cannot override 'accessibilityLabel' which has been marked unavailable
| `- note: remove 'override' modifier to declare a new 'accessibilityLabel'
206 | get {
207 | if let customAccessibilityLabel { return customAccessibilityLabel }
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIAccessibility.h:64:49: note: 'accessibilityLabel' has been explicitly marked unavailable here
62 | Setting the property will change the label that is returned to the accessibility client.
63 | */
64 | @property (nullable, nonatomic, copy) NSString *accessibilityLabel API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR;
| `- note: 'accessibilityLabel' has been explicitly marked unavailable here
65 |
66 | /*
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:269:76: error: 'UITraitCollection' is unavailable in watchOS
267 | }
268 |
269 | override open func traitCollectionDidChange(_ previousTraitCollection: UITraitCollection?) {
| `- error: 'UITraitCollection' is unavailable in watchOS
270 | super.traitCollectionDidChange(previousTraitCollection)
271 |
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITraitCollection.h:23:12: note: 'UITraitCollection' has been explicitly marked unavailable here
21 |
22 | UIKIT_EXTERN API_AVAILABLE(ios(8.0)) API_UNAVAILABLE(watchos) NS_SWIFT_SENDABLE
23 | @interface UITraitCollection : NSObject <NSCopying, NSSecureCoding>
| `- note: 'UITraitCollection' has been explicitly marked unavailable here
24 |
25 | - (instancetype)init NS_DESIGNATED_INITIALIZER;
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:269:24: error: cannot override 'traitCollectionDidChange' which has been marked unavailable
267 | }
268 |
269 | override open func traitCollectionDidChange(_ previousTraitCollection: UITraitCollection?) {
| |- error: cannot override 'traitCollectionDidChange' which has been marked unavailable
| `- note: remove 'override' modifier to declare a new 'traitCollectionDidChange'
270 | super.traitCollectionDidChange(previousTraitCollection)
271 |
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITraitCollection.h:221:1: note: 'traitCollectionDidChange' has been explicitly marked unavailable here
219 |
220 | /*! To be overridden as needed to provide custom behavior when the environment's traits change. */
221 | - (void)traitCollectionDidChange:(nullable UITraitCollection *)previousTraitCollection API_DEPRECATED("Use the trait change registration APIs declared in the UITraitChangeObservable protocol", ios(8.0, 17.0), visionos(1.0, 1.0)) API_UNAVAILABLE(watchos);
| `- note: 'traitCollectionDidChange' has been explicitly marked unavailable here
222 | @end
223 |
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:331:37: error: 'UIView' is unavailable in watchOS
329 | }
330 |
331 | private func makeGlassView() -> UIView? {
| `- error: 'UIView' is unavailable in watchOS
332 | guard style == .glass else { return nil }
333 |
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:152:12: note: 'UIView' has been explicitly marked unavailable here
150 |
151 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
152 | @interface UIView : UIResponder <NSCoding, UIAppearance, UIAppearanceContainer, UIDynamicItem, UITraitEnvironment, UICoordinateSpace, UIFocusItem, UIFocusItemContainer, CALayerDelegate>
| `- note: 'UIView' has been explicitly marked unavailable here
153 |
154 | @property(class, nonatomic, readonly) Class layerClass; // default is [CALayer class]. Used when creating the underlying layer for the view.
SwiftCompile normal arm64 (in target 'CameraButton' from project 'CameraButton')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
SwiftCompile normal arm64 Compiling\ CameraButtonDelegate.swift /Users/admin/builder/spi-builder-workspace/Sources/Protocols/CameraButtonDelegate.swift (in target 'CameraButton' from project 'CameraButton')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Protocols/CameraButtonDelegate.swift (in target 'CameraButton' from project 'CameraButton')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile CameraButtonDelegate.swift
SwiftCompile normal arm64 Compiling\ CameraShutterButton.swift /Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift (in target 'CameraButton' from project 'CameraButton')
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:57:37: error: cannot find type 'Context' in scope
55 | // MARK: UIViewRepresentable
56 |
57 | public func makeUIView(context: Context) -> CameraButton {
| `- error: cannot find type 'Context' in scope
58 | let button = CameraButton()
59 | button.delegate = context.coordinator
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:66:63: error: cannot find type 'Context' in scope
64 | }
65 |
66 | public func updateUIView(_ button: CameraButton, context: Context) {
| `- error: cannot find type 'Context' in scope
67 | context.coordinator.parent = self
68 | configure(button)
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:28:36: error: cannot find type 'UIViewRepresentable' in scope
26 | /// }
27 | /// ```
28 | public struct CameraShutterButton: UIViewRepresentable {
| `- error: cannot find type 'UIViewRepresentable' in scope
29 |
30 | // MARK: Properties
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:60:43: error: 'required' is unavailable in watchOS
58 | let button = CameraButton()
59 | button.delegate = context.coordinator
60 | button.setContentHuggingPriority(.required, for: .horizontal)
| `- error: 'required' is unavailable in watchOS
61 | button.setContentHuggingPriority(.required, for: .vertical)
62 |
UIKit.UILayoutPriority.required:3:21: note: 'required' has been explicitly marked unavailable here
1 | struct UILayoutPriority {
2 | @available(watchOS, unavailable)
3 | public static var required: UILayoutPriority { get }}
| `- note: 'required' has been explicitly marked unavailable here
4 |
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:61:43: error: 'required' is unavailable in watchOS
59 | button.delegate = context.coordinator
60 | button.setContentHuggingPriority(.required, for: .horizontal)
61 | button.setContentHuggingPriority(.required, for: .vertical)
| `- error: 'required' is unavailable in watchOS
62 |
63 | return button
UIKit.UILayoutPriority.required:3:21: note: 'required' has been explicitly marked unavailable here
1 | struct UILayoutPriority {
2 | @available(watchOS, unavailable)
3 | public static var required: UILayoutPriority { get }}
| `- note: 'required' has been explicitly marked unavailable here
4 |
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:58:22: warning: call to main actor-isolated initializer 'init()' in a synchronous nonisolated context [#ActorIsolatedCall]
55 | // MARK: UIViewRepresentable
56 |
57 | public func makeUIView(context: Context) -> CameraButton {
| `- note: add '@MainActor' to make instance method 'makeUIView(context:)' part of global actor 'MainActor'
58 | let button = CameraButton()
| `- warning: call to main actor-isolated initializer 'init()' in a synchronous nonisolated context [#ActorIsolatedCall]
59 | button.delegate = context.coordinator
60 | button.setContentHuggingPriority(.required, for: .horizontal)
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:221:12: note: calls to initializer 'init()' from outside of its actor context are implicitly asynchronous
219 | // MARK: Life cycle
220 |
221 | public init() {
| |- note: calls to initializer 'init()' from outside of its actor context are implicitly asynchronous
| `- note: main actor isolation inferred from inheritance from class 'UIButton'
222 | super.init(frame: .zero)
223 |
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:60:16: warning: call to main actor-isolated instance method 'setContentHuggingPriority(_:for:)' in a synchronous nonisolated context [#ActorIsolatedCall]
55 | // MARK: UIViewRepresentable
56 |
57 | public func makeUIView(context: Context) -> CameraButton {
| `- note: add '@MainActor' to make instance method 'makeUIView(context:)' part of global actor 'MainActor'
58 | let button = CameraButton()
59 | button.delegate = context.coordinator
60 | button.setContentHuggingPriority(.required, for: .horizontal)
| `- warning: call to main actor-isolated instance method 'setContentHuggingPriority(_:for:)' in a synchronous nonisolated context [#ActorIsolatedCall]
61 | button.setContentHuggingPriority(.required, for: .vertical)
62 |
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:552:1: note: calls to instance method 'setContentHuggingPriority(_:for:)' from outside of its actor context are implicitly asynchronous
550 |
551 | - (UILayoutPriority)contentHuggingPriorityForAxis:(UILayoutConstraintAxis)axis API_AVAILABLE(ios(6.0));
552 | - (void)setContentHuggingPriority:(UILayoutPriority)priority forAxis:(UILayoutConstraintAxis)axis API_AVAILABLE(ios(6.0));
| `- note: calls to instance method 'setContentHuggingPriority(_:for:)' from outside of its actor context are implicitly asynchronous
553 |
554 | - (UILayoutPriority)contentCompressionResistancePriorityForAxis:(UILayoutConstraintAxis)axis API_AVAILABLE(ios(6.0));
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:61:16: warning: call to main actor-isolated instance method 'setContentHuggingPriority(_:for:)' in a synchronous nonisolated context [#ActorIsolatedCall]
55 | // MARK: UIViewRepresentable
56 |
57 | public func makeUIView(context: Context) -> CameraButton {
| `- note: add '@MainActor' to make instance method 'makeUIView(context:)' part of global actor 'MainActor'
58 | let button = CameraButton()
59 | button.delegate = context.coordinator
60 | button.setContentHuggingPriority(.required, for: .horizontal)
61 | button.setContentHuggingPriority(.required, for: .vertical)
| `- warning: call to main actor-isolated instance method 'setContentHuggingPriority(_:for:)' in a synchronous nonisolated context [#ActorIsolatedCall]
62 |
63 | return button
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:552:1: note: calls to instance method 'setContentHuggingPriority(_:for:)' from outside of its actor context are implicitly asynchronous
550 |
551 | - (UILayoutPriority)contentHuggingPriorityForAxis:(UILayoutConstraintAxis)axis API_AVAILABLE(ios(6.0));
552 | - (void)setContentHuggingPriority:(UILayoutPriority)priority forAxis:(UILayoutConstraintAxis)axis API_AVAILABLE(ios(6.0));
| `- note: calls to instance method 'setContentHuggingPriority(_:for:)' from outside of its actor context are implicitly asynchronous
553 |
554 | - (UILayoutPriority)contentCompressionResistancePriorityForAxis:(UILayoutConstraintAxis)axis API_AVAILABLE(ios(6.0));
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:69:16: warning: main actor-isolated property 'style' can not be mutated from a nonisolated context
64 | }
65 |
66 | public func updateUIView(_ button: CameraButton, context: Context) {
| `- note: add '@MainActor' to make instance method 'updateUIView(_:context:)' part of global actor 'MainActor'
67 | context.coordinator.parent = self
68 | configure(button)
69 | button.style = style
| `- warning: main actor-isolated property 'style' can not be mutated from a nonisolated context
70 | if button.type != type {
71 | button.type = type
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:39:16: note: mutation of this property is only permitted within the actor
37 | // MARK: Style
38 |
39 | public var style: Style = .classic {
| `- note: mutation of this property is only permitted within the actor
40 | didSet {
41 | guard oldValue != style else { return }
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:70:19: warning: main actor-isolated property 'type' can not be referenced from a nonisolated context
64 | }
65 |
66 | public func updateUIView(_ button: CameraButton, context: Context) {
| `- note: add '@MainActor' to make instance method 'updateUIView(_:context:)' part of global actor 'MainActor'
67 | context.coordinator.parent = self
68 | configure(button)
69 | button.style = style
70 | if button.type != type {
| `- warning: main actor-isolated property 'type' can not be referenced from a nonisolated context
71 | button.type = type
72 | }
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:182:16: note: property declared here
180 | // MARK: Public properties
181 |
182 | public var type: CameraType = .photo {
| `- note: property declared here
183 | didSet {
184 | pathLayer.removeAllAnimations()
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:71:20: warning: main actor-isolated property 'type' can not be mutated from a nonisolated context
64 | }
65 |
66 | public func updateUIView(_ button: CameraButton, context: Context) {
| `- note: add '@MainActor' to make instance method 'updateUIView(_:context:)' part of global actor 'MainActor'
67 | context.coordinator.parent = self
68 | configure(button)
69 | button.style = style
70 | if button.type != type {
71 | button.type = type
| `- warning: main actor-isolated property 'type' can not be mutated from a nonisolated context
72 | }
73 | if type == .video, button.isSelected != isRecording {
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:182:16: note: mutation of this property is only permitted within the actor
180 | // MARK: Public properties
181 |
182 | public var type: CameraType = .photo {
| `- note: mutation of this property is only permitted within the actor
183 | didSet {
184 | pathLayer.removeAllAnimations()
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:73:35: warning: main actor-isolated property 'isSelected' can not be referenced from a nonisolated context
64 | }
65 |
66 | public func updateUIView(_ button: CameraButton, context: Context) {
| `- note: add '@MainActor' to make instance method 'updateUIView(_:context:)' part of global actor 'MainActor'
67 | context.coordinator.parent = self
68 | configure(button)
:
71 | button.type = type
72 | }
73 | if type == .video, button.isSelected != isRecording {
| `- warning: main actor-isolated property 'isSelected' can not be referenced from a nonisolated context
74 | button.isSelected = isRecording
75 | }
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:164:23: note: property declared here
162 | // MARK: Properties
163 |
164 | override open var isSelected: Bool {
| `- note: property declared here
165 | didSet {
166 | guard oldValue != isSelected else { return }
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:74:20: warning: main actor-isolated property 'isSelected' can not be mutated from a nonisolated context
64 | }
65 |
66 | public func updateUIView(_ button: CameraButton, context: Context) {
| `- note: add '@MainActor' to make instance method 'updateUIView(_:context:)' part of global actor 'MainActor'
67 | context.coordinator.parent = self
68 | configure(button)
:
72 | }
73 | if type == .video, button.isSelected != isRecording {
74 | button.isSelected = isRecording
| `- warning: main actor-isolated property 'isSelected' can not be mutated from a nonisolated context
75 | }
76 | if recordingProgress != button.recordingProgress {
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:164:23: note: mutation of this property is only permitted within the actor
162 | // MARK: Properties
163 |
164 | override open var isSelected: Bool {
| `- note: mutation of this property is only permitted within the actor
165 | didSet {
166 | guard oldValue != isSelected else { return }
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:76:40: warning: main actor-isolated property 'recordingProgress' can not be referenced from a nonisolated context
64 | }
65 |
66 | public func updateUIView(_ button: CameraButton, context: Context) {
| `- note: add '@MainActor' to make instance method 'updateUIView(_:context:)' part of global actor 'MainActor'
67 | context.coordinator.parent = self
68 | configure(button)
:
74 | button.isSelected = isRecording
75 | }
76 | if recordingProgress != button.recordingProgress {
| `- warning: main actor-isolated property 'recordingProgress' can not be referenced from a nonisolated context
77 | button.recordingProgress = recordingProgress
78 | }
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:114:16: note: property declared here
112 |
113 | /// Progress of the recording ring, from 0 to 1. Resets when recording stops.
114 | public var recordingProgress: CGFloat {
| `- note: property declared here
115 | get { progressLayer.strokeEnd }
116 | set {
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:77:20: warning: main actor-isolated property 'recordingProgress' can not be mutated from a nonisolated context
64 | }
65 |
66 | public func updateUIView(_ button: CameraButton, context: Context) {
| `- note: add '@MainActor' to make instance method 'updateUIView(_:context:)' part of global actor 'MainActor'
67 | context.coordinator.parent = self
68 | configure(button)
:
75 | }
76 | if recordingProgress != button.recordingProgress {
77 | button.recordingProgress = recordingProgress
| `- warning: main actor-isolated property 'recordingProgress' can not be mutated from a nonisolated context
78 | }
79 | }
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:114:16: note: mutation of this property is only permitted within the actor
112 |
113 | /// Progress of the recording ring, from 0 to 1. Resets when recording stops.
114 | public var recordingProgress: CGFloat {
| `- note: mutation of this property is only permitted within the actor
115 | get { progressLayer.strokeEnd }
116 | set {
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift (in target 'CameraButton' from project 'CameraButton')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile CameraShutterButton.swift
SwiftCompile normal arm64 Compiling\ CameraType.swift /Users/admin/builder/spi-builder-workspace/Sources/CameraType.swift (in target 'CameraButton' from project 'CameraButton')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/CameraType.swift (in target 'CameraButton' from project 'CameraButton')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile CameraType.swift
SwiftCompile normal arm64 Compiling\ CameraButton.swift /Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift (in target 'CameraButton' from project 'CameraButton')
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:105:42: error: 'systemRed' is unavailable in watchOS
103 | // MARK: Recording progress
104 |
105 | public var progressColor: UIColor = .systemRed {
| `- error: 'systemRed' is unavailable in watchOS
106 | didSet {
107 | guard oldValue != progressColor else { return }
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIInterface.h:121:49: note: 'systemRed' has been explicitly marked unavailable here
119 | * Do not make assumptions about the color spaces or actual colors used.
120 | */
121 | @property (class, nonatomic, readonly) UIColor *systemRedColor API_AVAILABLE(ios(7.0), tvos(9.0)) API_UNAVAILABLE(watchos);
| `- note: 'systemRed' has been explicitly marked unavailable here
122 | @property (class, nonatomic, readonly) UIColor *systemGreenColor API_AVAILABLE(ios(7.0), tvos(9.0)) API_UNAVAILABLE(watchos);
123 | @property (class, nonatomic, readonly) UIColor *systemBlueColor API_AVAILABLE(ios(7.0), tvos(9.0)) API_UNAVAILABLE(watchos);
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:194:29: error: 'CAShapeLayer' is unavailable in watchOS
192 | // MARK: Private properties
193 |
194 | private let pathLayer = CAShapeLayer()
| `- error: 'CAShapeLayer' is unavailable in watchOS
195 | private let progressLayer = CAShapeLayer()
196 | private var glassView: UIView?
/Applications/Xcode-27.0.0.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/CameraButton.swift:195:33: error: 'CAShapeLayer' is unavailable in watchOS
193 |
194 | private let pathLayer = CAShapeLayer()
195 | private let progressLayer = CAShapeLayer()
| `- error: 'CAShapeLayer' is unavailable in watchOS
196 | private var glassView: UIView?
197 | private let impactGenerator = UIImpactFeedbackGenerator(style: .medium)
/Applications/Xcode-27.0.0.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/CameraButton.swift:196:28: error: 'UIView' is unavailable in watchOS
194 | private let pathLayer = CAShapeLayer()
195 | private let progressLayer = CAShapeLayer()
196 | private var glassView: UIView?
| `- error: 'UIView' is unavailable in watchOS
197 | private let impactGenerator = UIImpactFeedbackGenerator(style: .medium)
198 | private let animateDuration = CATransaction.animationDuration()
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:152:12: note: 'UIView' has been explicitly marked unavailable here
150 |
151 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
152 | @interface UIView : UIResponder <NSCoding, UIAppearance, UIAppearanceContainer, UIDynamicItem, UITraitEnvironment, UICoordinateSpace, UIFocusItem, UIFocusItemContainer, CALayerDelegate>
| `- note: 'UIView' has been explicitly marked unavailable here
153 |
154 | @property(class, nonatomic, readonly) Class layerClass; // default is [CALayer class]. Used when creating the underlying layer for the view.
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:197:35: error: 'UIImpactFeedbackGenerator' is unavailable in watchOS
195 | private let progressLayer = CAShapeLayer()
196 | private var glassView: UIView?
197 | private let impactGenerator = UIImpactFeedbackGenerator(style: .medium)
| `- error: 'UIImpactFeedbackGenerator' is unavailable in watchOS
198 | private let animateDuration = CATransaction.animationDuration()
199 | private let shutterDuration: CFTimeInterval = 0.3
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIImpactFeedbackGenerator.h:25:12: note: 'UIImpactFeedbackGenerator' has been explicitly marked unavailable here
23 | // UIImpactFeedbackGenerator is used to give user feedback when an impact between UI elements occurs
24 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(visionos, tvos) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
25 | @interface UIImpactFeedbackGenerator : UIFeedbackGenerator
| `- note: 'UIImpactFeedbackGenerator' has been explicitly marked unavailable here
26 |
27 | /// set a style on the feedback generator and attach it to the provided view as an interaction.
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:198:35: error: 'CATransaction' is unavailable in watchOS
196 | private var glassView: UIView?
197 | private let impactGenerator = UIImpactFeedbackGenerator(style: .medium)
198 | private let animateDuration = CATransaction.animationDuration()
| `- error: 'CATransaction' is unavailable in watchOS
199 | private let shutterDuration: CFTimeInterval = 0.3
200 | private var lastLayoutSize: CGSize = .zero
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CATransaction.h:34:12: note: 'CATransaction' has been explicitly marked unavailable here
32 |
33 | API_AVAILABLE(macos(10.5), ios(2.0), tvos(9.0)) API_UNAVAILABLE(watchos)
34 | @interface CATransaction : NSObject
| `- note: 'CATransaction' has been explicitly marked unavailable here
35 |
36 | /* Begin a new transaction for the current thread; nests. */
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:205:23: error: cannot override 'accessibilityLabel' which has been marked unavailable
203 | // MARK: Accessibility
204 |
205 | override open var accessibilityLabel: String? {
| |- error: cannot override 'accessibilityLabel' which has been marked unavailable
| `- note: remove 'override' modifier to declare a new 'accessibilityLabel'
206 | get {
207 | if let customAccessibilityLabel { return customAccessibilityLabel }
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIAccessibility.h:64:49: note: 'accessibilityLabel' has been explicitly marked unavailable here
62 | Setting the property will change the label that is returned to the accessibility client.
63 | */
64 | @property (nullable, nonatomic, copy) NSString *accessibilityLabel API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR;
| `- note: 'accessibilityLabel' has been explicitly marked unavailable here
65 |
66 | /*
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:269:76: error: 'UITraitCollection' is unavailable in watchOS
267 | }
268 |
269 | override open func traitCollectionDidChange(_ previousTraitCollection: UITraitCollection?) {
| `- error: 'UITraitCollection' is unavailable in watchOS
270 | super.traitCollectionDidChange(previousTraitCollection)
271 |
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITraitCollection.h:23:12: note: 'UITraitCollection' has been explicitly marked unavailable here
21 |
22 | UIKIT_EXTERN API_AVAILABLE(ios(8.0)) API_UNAVAILABLE(watchos) NS_SWIFT_SENDABLE
23 | @interface UITraitCollection : NSObject <NSCopying, NSSecureCoding>
| `- note: 'UITraitCollection' has been explicitly marked unavailable here
24 |
25 | - (instancetype)init NS_DESIGNATED_INITIALIZER;
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:269:24: error: cannot override 'traitCollectionDidChange' which has been marked unavailable
267 | }
268 |
269 | override open func traitCollectionDidChange(_ previousTraitCollection: UITraitCollection?) {
| |- error: cannot override 'traitCollectionDidChange' which has been marked unavailable
| `- note: remove 'override' modifier to declare a new 'traitCollectionDidChange'
270 | super.traitCollectionDidChange(previousTraitCollection)
271 |
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITraitCollection.h:221:1: note: 'traitCollectionDidChange' has been explicitly marked unavailable here
219 |
220 | /*! To be overridden as needed to provide custom behavior when the environment's traits change. */
221 | - (void)traitCollectionDidChange:(nullable UITraitCollection *)previousTraitCollection API_DEPRECATED("Use the trait change registration APIs declared in the UITraitChangeObservable protocol", ios(8.0, 17.0), visionos(1.0, 1.0)) API_UNAVAILABLE(watchos);
| `- note: 'traitCollectionDidChange' has been explicitly marked unavailable here
222 | @end
223 |
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:331:37: error: 'UIView' is unavailable in watchOS
329 | }
330 |
331 | private func makeGlassView() -> UIView? {
| `- error: 'UIView' is unavailable in watchOS
332 | guard style == .glass else { return nil }
333 |
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:152:12: note: 'UIView' has been explicitly marked unavailable here
150 |
151 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
152 | @interface UIView : UIResponder <NSCoding, UIAppearance, UIAppearanceContainer, UIDynamicItem, UITraitEnvironment, UICoordinateSpace, UIFocusItem, UIFocusItemContainer, CALayerDelegate>
| `- note: 'UIView' has been explicitly marked unavailable here
153 |
154 | @property(class, nonatomic, readonly) Class layerClass; // default is [CALayer class]. Used when creating the underlying layer for the view.
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift (in target 'CameraButton' from project 'CameraButton')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile CameraButton.swift
PruneExplicitPrecompiledModules /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/ExplicitPrecompiledModules
PruneExplicitPrecompiledModules /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SwiftExplicitPrecompiledModules
PruneExplicitPrecompiledModules /Users/admin/builder/spi-builder-workspace/.derivedData/SDKExplicitPrecompiledModules
2026-10-23 03:59:17.041 xcodebuild[630:3981] [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 'CameraButton' from project 'CameraButton')
SwiftEmitModule normal arm64_32 Emitting\ module\ for\ CameraButton (in target 'CameraButton' from project 'CameraButton')
Building workspace CameraButton with scheme CameraButton
(3 failures)
Command line invocation:
/Applications/Xcode-27.0.0.app/Contents/Developer/usr/bin/xcodebuild -IDEClonedSourcePackagesDirPathOverride=/Users/admin/builder/spi-builder-workspace/.dependencies -resolvePackageDependencies
Resolve Package Graph
Resolved source packages:
CameraButton: /Users/admin/builder/spi-builder-workspace
resolved source packages: CameraButton
2026-10-23 03:59:23.500 xcodebuild[796:4718] [MT] IDERunDestination: Supported platforms for the buildables in the current scheme is empty.
{
"dependencies" : [
],
"manifest_display_name" : "CameraButton",
"name" : "CameraButton",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "ios",
"version" : "15.0"
}
],
"products" : [
{
"name" : "CameraButton",
"targets" : [
"CameraButton"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"swift_languages_versions" : [
"6"
],
"targets" : [
{
"c99name" : "CameraButton",
"module_type" : "SwiftTarget",
"name" : "CameraButton",
"path" : "Sources",
"product_memberships" : [
"CameraButton"
],
"sources" : [
"CameraButton.swift",
"CameraType.swift",
"Protocols/CameraButtonDelegate.swift",
"SwiftUI/CameraShutterButton.swift"
],
"type" : "library"
}
],
"tools_version" : "6.0"
}
{
"workspace" : {
"name" : "CameraButton",
"schemes" : [
"CameraButton"
]
}
}
2026-10-23 03:59:24.702 xcodebuild[804:4791] [MT] IDERunDestination: Supported platforms for the buildables in the current scheme is empty.
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-27.0.0.app xcrun xcodebuild -IDEClonedSourcePackagesDirPathOverride=$PWD/.dependencies -skipMacroValidation -skipPackagePluginValidation -derivedDataPath $PWD/.derivedData build -scheme CameraButton -destination generic/platform=watchOS
Command line invocation:
/Applications/Xcode-27.0.0.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 CameraButton -destination generic/platform=watchOS
Resolve Package Graph
Resolved source packages:
CameraButton: /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 'CameraButton-product' in project 'CameraButton'
➜ Explicit dependency on target 'CameraButton' in project 'CameraButton'
Target 'CameraButton' in project 'CameraButton' (no dependencies)
GatherProvisioningInputs
CreateBuildDescription
ClangStatCache /Applications/Xcode-27.0.0.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang-stat-cache /Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk /Users/admin/builder/spi-builder-workspace/.derivedData/SDKStatCaches.noindex/watchos27.0-24R360-e829b21a6f8c9b70876ba0858053c044b9db9bc9c079ee3c7b5f3373b13d10bc.sdkstatcache
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
/Applications/Xcode-27.0.0.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang-stat-cache /Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk -o /Users/admin/builder/spi-builder-workspace/.derivedData/SDKStatCaches.noindex/watchos27.0-24R360-e829b21a6f8c9b70876ba0858053c044b9db9bc9c079ee3c7b5f3373b13d10bc.sdkstatcache
SwiftDriver CameraButton normal arm64 com.apple.xcode.tools.swift.compiler (in target 'CameraButton' from project 'CameraButton')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftDriver -- /Applications/Xcode-27.0.0.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swiftc -parse-as-library -module-name CameraButton -Onone @/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/CameraButton.build/Debug-watchos/CameraButton-t.build/Objects-normal/arm64/CameraButton.SwiftFileList -DSWIFT_PACKAGE -DDEBUG -DSWIFT_MODULE_RESOURCE_BUNDLE_UNAVAILABLE -DXcode -plugin-path /Applications/Xcode-27.0.0.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/host/plugins/testing -enable-experimental-feature DebugDescriptionMacro -sdk /Applications/Xcode-27.0.0.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 -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 6 -I /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-watchos -Isystem /Applications/Xcode-27.0.0.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.app/Contents/Developer/Platforms/WatchOS.platform/Developer/Library/Frameworks -F /Applications/Xcode-27.0.0.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-e829b21a6f8c9b70876ba0858053c044b9db9bc9c079ee3c7b5f3373b13d10bc.sdkstatcache -output-file-map /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/CameraButton.build/Debug-watchos/CameraButton-t.build/Objects-normal/arm64/CameraButton-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/CameraButton.build/Debug-watchos/CameraButton-t.build/Objects-normal/arm64/CameraButton.swiftmodule -serialize-diagnostics -dependency-scan-serialize-diagnostics-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/CameraButton.build/Debug-watchos/CameraButton-t.build/Objects-normal/arm64/CameraButton-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 -package-name spi_builder_workspace -emit-const-values -const-gather-protocols-list /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/CameraButton.build/Debug-watchos/CameraButton-t.build/Objects-normal/arm64/CameraButton_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/CameraButton.build/Debug-watchos/CameraButton-t.build/DerivedSources-normal/arm64 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/CameraButton.build/Debug-watchos/CameraButton-t.build/DerivedSources/arm64 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/CameraButton.build/Debug-watchos/CameraButton-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/CameraButton.build/Debug-watchos/CameraButton-t.build/Objects-normal/arm64/CameraButton-Swift.h -working-directory /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode -experimental-emit-module-separately -disable-cmo
SwiftDriver CameraButton normal arm64_32 com.apple.xcode.tools.swift.compiler (in target 'CameraButton' from project 'CameraButton')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftDriver -- /Applications/Xcode-27.0.0.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swiftc -parse-as-library -module-name CameraButton -Onone @/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/CameraButton.build/Debug-watchos/CameraButton-t.build/Objects-normal/arm64_32/CameraButton.SwiftFileList -DSWIFT_PACKAGE -DDEBUG -DSWIFT_MODULE_RESOURCE_BUNDLE_UNAVAILABLE -DXcode -plugin-path /Applications/Xcode-27.0.0.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/host/plugins/testing -enable-experimental-feature DebugDescriptionMacro -sdk /Applications/Xcode-27.0.0.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 -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 6 -I /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-watchos -Isystem /Applications/Xcode-27.0.0.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.app/Contents/Developer/Platforms/WatchOS.platform/Developer/Library/Frameworks -F /Applications/Xcode-27.0.0.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-e829b21a6f8c9b70876ba0858053c044b9db9bc9c079ee3c7b5f3373b13d10bc.sdkstatcache -output-file-map /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/CameraButton.build/Debug-watchos/CameraButton-t.build/Objects-normal/arm64_32/CameraButton-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/CameraButton.build/Debug-watchos/CameraButton-t.build/Objects-normal/arm64_32/CameraButton.swiftmodule -serialize-diagnostics -dependency-scan-serialize-diagnostics-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/CameraButton.build/Debug-watchos/CameraButton-t.build/Objects-normal/arm64_32/CameraButton-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 -package-name spi_builder_workspace -emit-const-values -const-gather-protocols-list /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/CameraButton.build/Debug-watchos/CameraButton-t.build/Objects-normal/arm64_32/CameraButton_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/CameraButton.build/Debug-watchos/CameraButton-t.build/DerivedSources-normal/arm64_32 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/CameraButton.build/Debug-watchos/CameraButton-t.build/DerivedSources/arm64_32 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/CameraButton.build/Debug-watchos/CameraButton-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/CameraButton.build/Debug-watchos/CameraButton-t.build/Objects-normal/arm64_32/CameraButton-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\ CameraButton (in target 'CameraButton' from project 'CameraButton')
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:105:42: error: 'systemRed' is unavailable in watchOS
103 | // MARK: Recording progress
104 |
105 | public var progressColor: UIColor = .systemRed {
| `- error: 'systemRed' is unavailable in watchOS
106 | didSet {
107 | guard oldValue != progressColor else { return }
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIInterface.h:121:49: note: 'systemRed' has been explicitly marked unavailable here
119 | * Do not make assumptions about the color spaces or actual colors used.
120 | */
121 | @property (class, nonatomic, readonly) UIColor *systemRedColor API_AVAILABLE(ios(7.0), tvos(9.0)) API_UNAVAILABLE(watchos);
| `- note: 'systemRed' has been explicitly marked unavailable here
122 | @property (class, nonatomic, readonly) UIColor *systemGreenColor API_AVAILABLE(ios(7.0), tvos(9.0)) API_UNAVAILABLE(watchos);
123 | @property (class, nonatomic, readonly) UIColor *systemBlueColor API_AVAILABLE(ios(7.0), tvos(9.0)) API_UNAVAILABLE(watchos);
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:194:29: error: 'CAShapeLayer' is unavailable in watchOS
192 | // MARK: Private properties
193 |
194 | private let pathLayer = CAShapeLayer()
| `- error: 'CAShapeLayer' is unavailable in watchOS
195 | private let progressLayer = CAShapeLayer()
196 | private var glassView: UIView?
/Applications/Xcode-27.0.0.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/CameraButton.swift:195:33: error: 'CAShapeLayer' is unavailable in watchOS
193 |
194 | private let pathLayer = CAShapeLayer()
195 | private let progressLayer = CAShapeLayer()
| `- error: 'CAShapeLayer' is unavailable in watchOS
196 | private var glassView: UIView?
197 | private let impactGenerator = UIImpactFeedbackGenerator(style: .medium)
/Applications/Xcode-27.0.0.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/CameraButton.swift:196:28: error: 'UIView' is unavailable in watchOS
194 | private let pathLayer = CAShapeLayer()
195 | private let progressLayer = CAShapeLayer()
196 | private var glassView: UIView?
| `- error: 'UIView' is unavailable in watchOS
197 | private let impactGenerator = UIImpactFeedbackGenerator(style: .medium)
198 | private let animateDuration = CATransaction.animationDuration()
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:152:12: note: 'UIView' has been explicitly marked unavailable here
150 |
151 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
152 | @interface UIView : UIResponder <NSCoding, UIAppearance, UIAppearanceContainer, UIDynamicItem, UITraitEnvironment, UICoordinateSpace, UIFocusItem, UIFocusItemContainer, CALayerDelegate>
| `- note: 'UIView' has been explicitly marked unavailable here
153 |
154 | @property(class, nonatomic, readonly) Class layerClass; // default is [CALayer class]. Used when creating the underlying layer for the view.
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:197:35: error: 'UIImpactFeedbackGenerator' is unavailable in watchOS
195 | private let progressLayer = CAShapeLayer()
196 | private var glassView: UIView?
197 | private let impactGenerator = UIImpactFeedbackGenerator(style: .medium)
| `- error: 'UIImpactFeedbackGenerator' is unavailable in watchOS
198 | private let animateDuration = CATransaction.animationDuration()
199 | private let shutterDuration: CFTimeInterval = 0.3
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIImpactFeedbackGenerator.h:25:12: note: 'UIImpactFeedbackGenerator' has been explicitly marked unavailable here
23 | // UIImpactFeedbackGenerator is used to give user feedback when an impact between UI elements occurs
24 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(visionos, tvos) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
25 | @interface UIImpactFeedbackGenerator : UIFeedbackGenerator
| `- note: 'UIImpactFeedbackGenerator' has been explicitly marked unavailable here
26 |
27 | /// set a style on the feedback generator and attach it to the provided view as an interaction.
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:198:35: error: 'CATransaction' is unavailable in watchOS
196 | private var glassView: UIView?
197 | private let impactGenerator = UIImpactFeedbackGenerator(style: .medium)
198 | private let animateDuration = CATransaction.animationDuration()
| `- error: 'CATransaction' is unavailable in watchOS
199 | private let shutterDuration: CFTimeInterval = 0.3
200 | private var lastLayoutSize: CGSize = .zero
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CATransaction.h:34:12: note: 'CATransaction' has been explicitly marked unavailable here
32 |
33 | API_AVAILABLE(macos(10.5), ios(2.0), tvos(9.0)) API_UNAVAILABLE(watchos)
34 | @interface CATransaction : NSObject
| `- note: 'CATransaction' has been explicitly marked unavailable here
35 |
36 | /* Begin a new transaction for the current thread; nests. */
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:205:23: error: cannot override 'accessibilityLabel' which has been marked unavailable
203 | // MARK: Accessibility
204 |
205 | override open var accessibilityLabel: String? {
| |- error: cannot override 'accessibilityLabel' which has been marked unavailable
| `- note: remove 'override' modifier to declare a new 'accessibilityLabel'
206 | get {
207 | if let customAccessibilityLabel { return customAccessibilityLabel }
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIAccessibility.h:64:49: note: 'accessibilityLabel' has been explicitly marked unavailable here
62 | Setting the property will change the label that is returned to the accessibility client.
63 | */
64 | @property (nullable, nonatomic, copy) NSString *accessibilityLabel API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR;
| `- note: 'accessibilityLabel' has been explicitly marked unavailable here
65 |
66 | /*
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:269:76: error: 'UITraitCollection' is unavailable in watchOS
267 | }
268 |
269 | override open func traitCollectionDidChange(_ previousTraitCollection: UITraitCollection?) {
| `- error: 'UITraitCollection' is unavailable in watchOS
270 | super.traitCollectionDidChange(previousTraitCollection)
271 |
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITraitCollection.h:23:12: note: 'UITraitCollection' has been explicitly marked unavailable here
21 |
22 | UIKIT_EXTERN API_AVAILABLE(ios(8.0)) API_UNAVAILABLE(watchos) NS_SWIFT_SENDABLE
23 | @interface UITraitCollection : NSObject <NSCopying, NSSecureCoding>
| `- note: 'UITraitCollection' has been explicitly marked unavailable here
24 |
25 | - (instancetype)init NS_DESIGNATED_INITIALIZER;
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:269:24: error: cannot override 'traitCollectionDidChange' which has been marked unavailable
267 | }
268 |
269 | override open func traitCollectionDidChange(_ previousTraitCollection: UITraitCollection?) {
| |- error: cannot override 'traitCollectionDidChange' which has been marked unavailable
| `- note: remove 'override' modifier to declare a new 'traitCollectionDidChange'
270 | super.traitCollectionDidChange(previousTraitCollection)
271 |
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITraitCollection.h:221:1: note: 'traitCollectionDidChange' has been explicitly marked unavailable here
219 |
220 | /*! To be overridden as needed to provide custom behavior when the environment's traits change. */
221 | - (void)traitCollectionDidChange:(nullable UITraitCollection *)previousTraitCollection API_DEPRECATED("Use the trait change registration APIs declared in the UITraitChangeObservable protocol", ios(8.0, 17.0), visionos(1.0, 1.0)) API_UNAVAILABLE(watchos);
| `- note: 'traitCollectionDidChange' has been explicitly marked unavailable here
222 | @end
223 |
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:331:37: error: 'UIView' is unavailable in watchOS
329 | }
330 |
331 | private func makeGlassView() -> UIView? {
| `- error: 'UIView' is unavailable in watchOS
332 | guard style == .glass else { return nil }
333 |
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:152:12: note: 'UIView' has been explicitly marked unavailable here
150 |
151 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
152 | @interface UIView : UIResponder <NSCoding, UIAppearance, UIAppearanceContainer, UIDynamicItem, UITraitEnvironment, UICoordinateSpace, UIFocusItem, UIFocusItemContainer, CALayerDelegate>
| `- note: 'UIView' has been explicitly marked unavailable here
153 |
154 | @property(class, nonatomic, readonly) Class layerClass; // default is [CALayer class]. Used when creating the underlying layer for the view.
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:27:26: error: 'UIButton' is unavailable in watchOS
25 | import UIKit
26 |
27 | open class CameraButton: UIButton {
| `- error: 'UIButton' is unavailable in watchOS
28 |
29 | /// Visual style of the button.
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIButton.h:49:12: note: 'UIButton' has been explicitly marked unavailable here
47 |
48 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
49 | @interface UIButton : UIControl <NSCoding>
| `- note: 'UIButton' has been explicitly marked unavailable here
50 |
51 | - (instancetype)initWithFrame:(CGRect)frame NS_DESIGNATED_INITIALIZER;
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:568:19: error: 'CATransaction' is unavailable in watchOS
566 | }
567 |
568 | private extension CATransaction {
| `- error: 'CATransaction' is unavailable in watchOS
569 |
570 | static func performWithoutAnimation(_ changes: () -> Void) {
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CATransaction.h:34:12: note: 'CATransaction' has been explicitly marked unavailable here
32 |
33 | API_AVAILABLE(macos(10.5), ios(2.0), tvos(9.0)) API_UNAVAILABLE(watchos)
34 | @interface CATransaction : NSObject
| `- note: 'CATransaction' has been explicitly marked unavailable here
35 |
36 | /* Begin a new transaction for the current thread; nests. */
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:57:37: error: cannot find type 'Context' in scope
55 | // MARK: UIViewRepresentable
56 |
57 | public func makeUIView(context: Context) -> CameraButton {
| `- error: cannot find type 'Context' in scope
58 | let button = CameraButton()
59 | button.delegate = context.coordinator
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:66:63: error: cannot find type 'Context' in scope
64 | }
65 |
66 | public func updateUIView(_ button: CameraButton, context: Context) {
| `- error: cannot find type 'Context' in scope
67 | context.coordinator.parent = self
68 | configure(button)
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:28:36: error: cannot find type 'UIViewRepresentable' in scope
26 | /// }
27 | /// ```
28 | public struct CameraShutterButton: UIViewRepresentable {
| `- error: cannot find type 'UIViewRepresentable' in scope
29 |
30 | // MARK: Properties
Failed frontend command:
SwiftCompile normal arm64_32 (in target 'CameraButton' from project 'CameraButton')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
/Applications/Xcode-27.0.0.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/CameraButton.swift /Users/admin/builder/spi-builder-workspace/Sources/CameraType.swift /Users/admin/builder/spi-builder-workspace/Sources/Protocols/CameraButtonDelegate.swift /Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift -target arm64_32-apple-watchos9.0 -disable-cross-import-overlay-search -load-resolved-plugin /Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/lib/swift/host/plugins/libFoundationMacros.dylib\#/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/bin/swift-plugin-server\#FoundationMacros -load-resolved-plugin /Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/lib/swift/host/plugins/libObservationMacros.dylib\#/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/bin/swift-plugin-server\#ObservationMacros -load-resolved-plugin /Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/lib/swift/host/plugins/libPreviewsMacros.dylib\#/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/bin/swift-plugin-server\#PreviewsMacros -load-resolved-plugin /Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/lib/swift/host/plugins/libSwiftMacros.dylib\#/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/bin/swift-plugin-server\#SwiftMacros -load-resolved-plugin /Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/lib/swift/host/plugins/libSwiftUIMacros.dylib\#/Applications/Xcode-27.0.0.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/CameraButton.build/Debug-watchos/CameraButton-t.build/Objects-normal/arm64_32/CameraButton-dependencies-2.json -enable-objc-interop -sdk /Applications/Xcode-27.0.0.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.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.app/Contents/Developer/Platforms/WatchOS.platform/Developer/Library/Frameworks -F /Applications/Xcode-27.0.0.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 -swift-version 6 -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-e829b21a6f8c9b70876ba0858053c044b9db9bc9c079ee3c7b5f3373b13d10bc.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/CameraButton.build/Debug-watchos/CameraButton-t.build/DerivedSources-normal/arm64_32 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/CameraButton.build/Debug-watchos/CameraButton-t.build/DerivedSources/arm64_32 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/CameraButton.build/Debug-watchos/CameraButton-t.build/DerivedSources -Xcc -DSWIFT_PACKAGE -Xcc -DDEBUG\=1 -no-auto-bridging-header-chaining -module-name CameraButton -package-name spi_builder_workspace -const-gather-protocols-file /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/CameraButton.build/Debug-watchos/CameraButton-t.build/Objects-normal/arm64_32/CameraButton_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.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/CameraButton.build/Debug-watchos/CameraButton-t.build/Objects-normal/arm64_32/CameraButton.swiftdoc -emit-module-source-info-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/CameraButton.build/Debug-watchos/CameraButton-t.build/Objects-normal/arm64_32/CameraButton.swiftsourceinfo -emit-objc-header-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/CameraButton.build/Debug-watchos/CameraButton-t.build/Objects-normal/arm64_32/CameraButton-Swift.h -serialize-diagnostics-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/CameraButton.build/Debug-watchos/CameraButton-t.build/Objects-normal/arm64_32/CameraButton-primary-emit-module.dia -emit-dependencies-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/CameraButton.build/Debug-watchos/CameraButton-t.build/Objects-normal/arm64_32/CameraButton-primary-emit-module.d -parse-as-library -o /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/CameraButton.build/Debug-watchos/CameraButton-t.build/Objects-normal/arm64_32/CameraButton.swiftmodule -emit-abi-descriptor-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/CameraButton.build/Debug-watchos/CameraButton-t.build/Objects-normal/arm64_32/CameraButton.abi.json
SwiftCompile normal arm64_32 Compiling\ CameraButton.swift /Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift (in target 'CameraButton' from project 'CameraButton')
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:105:42: error: 'systemRed' is unavailable in watchOS
103 | // MARK: Recording progress
104 |
105 | public var progressColor: UIColor = .systemRed {
| `- error: 'systemRed' is unavailable in watchOS
106 | didSet {
107 | guard oldValue != progressColor else { return }
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIInterface.h:121:49: note: 'systemRed' has been explicitly marked unavailable here
119 | * Do not make assumptions about the color spaces or actual colors used.
120 | */
121 | @property (class, nonatomic, readonly) UIColor *systemRedColor API_AVAILABLE(ios(7.0), tvos(9.0)) API_UNAVAILABLE(watchos);
| `- note: 'systemRed' has been explicitly marked unavailable here
122 | @property (class, nonatomic, readonly) UIColor *systemGreenColor API_AVAILABLE(ios(7.0), tvos(9.0)) API_UNAVAILABLE(watchos);
123 | @property (class, nonatomic, readonly) UIColor *systemBlueColor API_AVAILABLE(ios(7.0), tvos(9.0)) API_UNAVAILABLE(watchos);
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:194:29: error: 'CAShapeLayer' is unavailable in watchOS
192 | // MARK: Private properties
193 |
194 | private let pathLayer = CAShapeLayer()
| `- error: 'CAShapeLayer' is unavailable in watchOS
195 | private let progressLayer = CAShapeLayer()
196 | private var glassView: UIView?
/Applications/Xcode-27.0.0.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/CameraButton.swift:195:33: error: 'CAShapeLayer' is unavailable in watchOS
193 |
194 | private let pathLayer = CAShapeLayer()
195 | private let progressLayer = CAShapeLayer()
| `- error: 'CAShapeLayer' is unavailable in watchOS
196 | private var glassView: UIView?
197 | private let impactGenerator = UIImpactFeedbackGenerator(style: .medium)
/Applications/Xcode-27.0.0.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/CameraButton.swift:196:28: error: 'UIView' is unavailable in watchOS
194 | private let pathLayer = CAShapeLayer()
195 | private let progressLayer = CAShapeLayer()
196 | private var glassView: UIView?
| `- error: 'UIView' is unavailable in watchOS
197 | private let impactGenerator = UIImpactFeedbackGenerator(style: .medium)
198 | private let animateDuration = CATransaction.animationDuration()
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:152:12: note: 'UIView' has been explicitly marked unavailable here
150 |
151 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
152 | @interface UIView : UIResponder <NSCoding, UIAppearance, UIAppearanceContainer, UIDynamicItem, UITraitEnvironment, UICoordinateSpace, UIFocusItem, UIFocusItemContainer, CALayerDelegate>
| `- note: 'UIView' has been explicitly marked unavailable here
153 |
154 | @property(class, nonatomic, readonly) Class layerClass; // default is [CALayer class]. Used when creating the underlying layer for the view.
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:197:35: error: 'UIImpactFeedbackGenerator' is unavailable in watchOS
195 | private let progressLayer = CAShapeLayer()
196 | private var glassView: UIView?
197 | private let impactGenerator = UIImpactFeedbackGenerator(style: .medium)
| `- error: 'UIImpactFeedbackGenerator' is unavailable in watchOS
198 | private let animateDuration = CATransaction.animationDuration()
199 | private let shutterDuration: CFTimeInterval = 0.3
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIImpactFeedbackGenerator.h:25:12: note: 'UIImpactFeedbackGenerator' has been explicitly marked unavailable here
23 | // UIImpactFeedbackGenerator is used to give user feedback when an impact between UI elements occurs
24 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(visionos, tvos) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
25 | @interface UIImpactFeedbackGenerator : UIFeedbackGenerator
| `- note: 'UIImpactFeedbackGenerator' has been explicitly marked unavailable here
26 |
27 | /// set a style on the feedback generator and attach it to the provided view as an interaction.
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:198:35: error: 'CATransaction' is unavailable in watchOS
196 | private var glassView: UIView?
197 | private let impactGenerator = UIImpactFeedbackGenerator(style: .medium)
198 | private let animateDuration = CATransaction.animationDuration()
| `- error: 'CATransaction' is unavailable in watchOS
199 | private let shutterDuration: CFTimeInterval = 0.3
200 | private var lastLayoutSize: CGSize = .zero
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CATransaction.h:34:12: note: 'CATransaction' has been explicitly marked unavailable here
32 |
33 | API_AVAILABLE(macos(10.5), ios(2.0), tvos(9.0)) API_UNAVAILABLE(watchos)
34 | @interface CATransaction : NSObject
| `- note: 'CATransaction' has been explicitly marked unavailable here
35 |
36 | /* Begin a new transaction for the current thread; nests. */
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:205:23: error: cannot override 'accessibilityLabel' which has been marked unavailable
203 | // MARK: Accessibility
204 |
205 | override open var accessibilityLabel: String? {
| |- error: cannot override 'accessibilityLabel' which has been marked unavailable
| `- note: remove 'override' modifier to declare a new 'accessibilityLabel'
206 | get {
207 | if let customAccessibilityLabel { return customAccessibilityLabel }
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIAccessibility.h:64:49: note: 'accessibilityLabel' has been explicitly marked unavailable here
62 | Setting the property will change the label that is returned to the accessibility client.
63 | */
64 | @property (nullable, nonatomic, copy) NSString *accessibilityLabel API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR;
| `- note: 'accessibilityLabel' has been explicitly marked unavailable here
65 |
66 | /*
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:269:76: error: 'UITraitCollection' is unavailable in watchOS
267 | }
268 |
269 | override open func traitCollectionDidChange(_ previousTraitCollection: UITraitCollection?) {
| `- error: 'UITraitCollection' is unavailable in watchOS
270 | super.traitCollectionDidChange(previousTraitCollection)
271 |
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITraitCollection.h:23:12: note: 'UITraitCollection' has been explicitly marked unavailable here
21 |
22 | UIKIT_EXTERN API_AVAILABLE(ios(8.0)) API_UNAVAILABLE(watchos) NS_SWIFT_SENDABLE
23 | @interface UITraitCollection : NSObject <NSCopying, NSSecureCoding>
| `- note: 'UITraitCollection' has been explicitly marked unavailable here
24 |
25 | - (instancetype)init NS_DESIGNATED_INITIALIZER;
SwiftCompile normal arm64_32 /Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift (in target 'CameraButton' from project 'CameraButton')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile CameraButton.swift
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:269:24: error: cannot override 'traitCollectionDidChange' which has been marked unavailable
267 | }
268 |
269 | override open func traitCollectionDidChange(_ previousTraitCollection: UITraitCollection?) {
| |- error: cannot override 'traitCollectionDidChange' which has been marked unavailable
| `- note: remove 'override' modifier to declare a new 'traitCollectionDidChange'
270 | super.traitCollectionDidChange(previousTraitCollection)
271 |
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITraitCollection.h:221:1: note: 'traitCollectionDidChange' has been explicitly marked unavailable here
219 |
220 | /*! To be overridden as needed to provide custom behavior when the environment's traits change. */
221 | - (void)traitCollectionDidChange:(nullable UITraitCollection *)previousTraitCollection API_DEPRECATED("Use the trait change registration APIs declared in the UITraitChangeObservable protocol", ios(8.0, 17.0), visionos(1.0, 1.0)) API_UNAVAILABLE(watchos);
| `- note: 'traitCollectionDidChange' has been explicitly marked unavailable here
222 | @end
223 |
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:331:37: error: 'UIView' is unavailable in watchOS
329 | }
330 |
331 | private func makeGlassView() -> UIView? {
| `- error: 'UIView' is unavailable in watchOS
332 | guard style == .glass else { return nil }
333 |
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:152:12: note: 'UIView' has been explicitly marked unavailable here
150 |
151 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
152 | @interface UIView : UIResponder <NSCoding, UIAppearance, UIAppearanceContainer, UIDynamicItem, UITraitEnvironment, UICoordinateSpace, UIFocusItem, UIFocusItemContainer, CALayerDelegate>
| `- note: 'UIView' has been explicitly marked unavailable here
153 |
154 | @property(class, nonatomic, readonly) Class layerClass; // default is [CALayer class]. Used when creating the underlying layer for the view.
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:27:26: error: 'UIButton' is unavailable in watchOS
25 | import UIKit
26 |
27 | open class CameraButton: UIButton {
| `- error: 'UIButton' is unavailable in watchOS
28 |
29 | /// Visual style of the button.
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIButton.h:49:12: note: 'UIButton' has been explicitly marked unavailable here
47 |
48 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
49 | @interface UIButton : UIControl <NSCoding>
| `- note: 'UIButton' has been explicitly marked unavailable here
50 |
51 | - (instancetype)initWithFrame:(CGRect)frame NS_DESIGNATED_INITIALIZER;
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:568:19: error: 'CATransaction' is unavailable in watchOS
566 | }
567 |
568 | private extension CATransaction {
| `- error: 'CATransaction' is unavailable in watchOS
569 |
570 | static func performWithoutAnimation(_ changes: () -> Void) {
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CATransaction.h:34:12: note: 'CATransaction' has been explicitly marked unavailable here
32 |
33 | API_AVAILABLE(macos(10.5), ios(2.0), tvos(9.0)) API_UNAVAILABLE(watchos)
34 | @interface CATransaction : NSObject
| `- note: 'CATransaction' has been explicitly marked unavailable here
35 |
36 | /* Begin a new transaction for the current thread; nests. */
SwiftCompile normal arm64 Compiling\ CameraButton.swift /Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift (in target 'CameraButton' from project 'CameraButton')
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:105:42: error: 'systemRed' is unavailable in watchOS
103 | // MARK: Recording progress
104 |
105 | public var progressColor: UIColor = .systemRed {
| `- error: 'systemRed' is unavailable in watchOS
106 | didSet {
107 | guard oldValue != progressColor else { return }
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIInterface.h:121:49: note: 'systemRed' has been explicitly marked unavailable here
119 | * Do not make assumptions about the color spaces or actual colors used.
120 | */
121 | @property (class, nonatomic, readonly) UIColor *systemRedColor API_AVAILABLE(ios(7.0), tvos(9.0)) API_UNAVAILABLE(watchos);
| `- note: 'systemRed' has been explicitly marked unavailable here
122 | @property (class, nonatomic, readonly) UIColor *systemGreenColor API_AVAILABLE(ios(7.0), tvos(9.0)) API_UNAVAILABLE(watchos);
123 | @property (class, nonatomic, readonly) UIColor *systemBlueColor API_AVAILABLE(ios(7.0), tvos(9.0)) API_UNAVAILABLE(watchos);
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:194:29: error: 'CAShapeLayer' is unavailable in watchOS
192 | // MARK: Private properties
193 |
194 | private let pathLayer = CAShapeLayer()
| `- error: 'CAShapeLayer' is unavailable in watchOS
195 | private let progressLayer = CAShapeLayer()
196 | private var glassView: UIView?
/Applications/Xcode-27.0.0.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/CameraButton.swift:195:33: error: 'CAShapeLayer' is unavailable in watchOS
193 |
194 | private let pathLayer = CAShapeLayer()
195 | private let progressLayer = CAShapeLayer()
| `- error: 'CAShapeLayer' is unavailable in watchOS
196 | private var glassView: UIView?
197 | private let impactGenerator = UIImpactFeedbackGenerator(style: .medium)
/Applications/Xcode-27.0.0.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/CameraButton.swift:196:28: error: 'UIView' is unavailable in watchOS
194 | private let pathLayer = CAShapeLayer()
195 | private let progressLayer = CAShapeLayer()
196 | private var glassView: UIView?
| `- error: 'UIView' is unavailable in watchOS
197 | private let impactGenerator = UIImpactFeedbackGenerator(style: .medium)
198 | private let animateDuration = CATransaction.animationDuration()
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:152:12: note: 'UIView' has been explicitly marked unavailable here
150 |
151 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
152 | @interface UIView : UIResponder <NSCoding, UIAppearance, UIAppearanceContainer, UIDynamicItem, UITraitEnvironment, UICoordinateSpace, UIFocusItem, UIFocusItemContainer, CALayerDelegate>
| `- note: 'UIView' has been explicitly marked unavailable here
153 |
154 | @property(class, nonatomic, readonly) Class layerClass; // default is [CALayer class]. Used when creating the underlying layer for the view.
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:197:35: error: 'UIImpactFeedbackGenerator' is unavailable in watchOS
195 | private let progressLayer = CAShapeLayer()
196 | private var glassView: UIView?
197 | private let impactGenerator = UIImpactFeedbackGenerator(style: .medium)
| `- error: 'UIImpactFeedbackGenerator' is unavailable in watchOS
198 | private let animateDuration = CATransaction.animationDuration()
199 | private let shutterDuration: CFTimeInterval = 0.3
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIImpactFeedbackGenerator.h:25:12: note: 'UIImpactFeedbackGenerator' has been explicitly marked unavailable here
23 | // UIImpactFeedbackGenerator is used to give user feedback when an impact between UI elements occurs
24 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(visionos, tvos) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
25 | @interface UIImpactFeedbackGenerator : UIFeedbackGenerator
| `- note: 'UIImpactFeedbackGenerator' has been explicitly marked unavailable here
26 |
27 | /// set a style on the feedback generator and attach it to the provided view as an interaction.
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:198:35: error: 'CATransaction' is unavailable in watchOS
196 | private var glassView: UIView?
197 | private let impactGenerator = UIImpactFeedbackGenerator(style: .medium)
198 | private let animateDuration = CATransaction.animationDuration()
| `- error: 'CATransaction' is unavailable in watchOS
199 | private let shutterDuration: CFTimeInterval = 0.3
200 | private var lastLayoutSize: CGSize = .zero
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CATransaction.h:34:12: note: 'CATransaction' has been explicitly marked unavailable here
32 |
33 | API_AVAILABLE(macos(10.5), ios(2.0), tvos(9.0)) API_UNAVAILABLE(watchos)
34 | @interface CATransaction : NSObject
| `- note: 'CATransaction' has been explicitly marked unavailable here
35 |
36 | /* Begin a new transaction for the current thread; nests. */
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:205:23: error: cannot override 'accessibilityLabel' which has been marked unavailable
203 | // MARK: Accessibility
204 |
205 | override open var accessibilityLabel: String? {
| |- error: cannot override 'accessibilityLabel' which has been marked unavailable
| `- note: remove 'override' modifier to declare a new 'accessibilityLabel'
206 | get {
207 | if let customAccessibilityLabel { return customAccessibilityLabel }
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIAccessibility.h:64:49: note: 'accessibilityLabel' has been explicitly marked unavailable here
62 | Setting the property will change the label that is returned to the accessibility client.
63 | */
64 | @property (nullable, nonatomic, copy) NSString *accessibilityLabel API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR;
| `- note: 'accessibilityLabel' has been explicitly marked unavailable here
65 |
66 | /*
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:269:76: error: 'UITraitCollection' is unavailable in watchOS
267 | }
268 |
269 | override open func traitCollectionDidChange(_ previousTraitCollection: UITraitCollection?) {
| `- error: 'UITraitCollection' is unavailable in watchOS
270 | super.traitCollectionDidChange(previousTraitCollection)
271 |
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITraitCollection.h:23:12: note: 'UITraitCollection' has been explicitly marked unavailable here
21 |
22 | UIKIT_EXTERN API_AVAILABLE(ios(8.0)) API_UNAVAILABLE(watchos) NS_SWIFT_SENDABLE
23 | @interface UITraitCollection : NSObject <NSCopying, NSSecureCoding>
| `- note: 'UITraitCollection' has been explicitly marked unavailable here
24 |
25 | - (instancetype)init NS_DESIGNATED_INITIALIZER;
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:269:24: error: cannot override 'traitCollectionDidChange' which has been marked unavailable
267 | }
268 |
269 | override open func traitCollectionDidChange(_ previousTraitCollection: UITraitCollection?) {
| |- error: cannot override 'traitCollectionDidChange' which has been marked unavailable
| `- note: remove 'override' modifier to declare a new 'traitCollectionDidChange'
270 | super.traitCollectionDidChange(previousTraitCollection)
271 |
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITraitCollection.h:221:1: note: 'traitCollectionDidChange' has been explicitly marked unavailable here
219 |
220 | /*! To be overridden as needed to provide custom behavior when the environment's traits change. */
221 | - (void)traitCollectionDidChange:(nullable UITraitCollection *)previousTraitCollection API_DEPRECATED("Use the trait change registration APIs declared in the UITraitChangeObservable protocol", ios(8.0, 17.0), visionos(1.0, 1.0)) API_UNAVAILABLE(watchos);
| `- note: 'traitCollectionDidChange' has been explicitly marked unavailable here
222 | @end
223 |
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:331:37: error: 'UIView' is unavailable in watchOS
329 | }
330 |
331 | private func makeGlassView() -> UIView? {
| `- error: 'UIView' is unavailable in watchOS
332 | guard style == .glass else { return nil }
333 |
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:152:12: note: 'UIView' has been explicitly marked unavailable here
150 |
151 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
152 | @interface UIView : UIResponder <NSCoding, UIAppearance, UIAppearanceContainer, UIDynamicItem, UITraitEnvironment, UICoordinateSpace, UIFocusItem, UIFocusItemContainer, CALayerDelegate>
| `- note: 'UIView' has been explicitly marked unavailable here
153 |
154 | @property(class, nonatomic, readonly) Class layerClass; // default is [CALayer class]. Used when creating the underlying layer for the view.
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:27:26: error: 'UIButton' is unavailable in watchOS
25 | import UIKit
26 |
27 | open class CameraButton: UIButton {
| `- error: 'UIButton' is unavailable in watchOS
28 |
29 | /// Visual style of the button.
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIButton.h:49:12: note: 'UIButton' has been explicitly marked unavailable here
47 |
48 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
49 | @interface UIButton : UIControl <NSCoding>
| `- note: 'UIButton' has been explicitly marked unavailable here
50 |
51 | - (instancetype)initWithFrame:(CGRect)frame NS_DESIGNATED_INITIALIZER;
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:568:19: error: 'CATransaction' is unavailable in watchOS
566 | }
567 |
568 | private extension CATransaction {
| `- error: 'CATransaction' is unavailable in watchOS
569 |
570 | static func performWithoutAnimation(_ changes: () -> Void) {
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CATransaction.h:34:12: note: 'CATransaction' has been explicitly marked unavailable here
32 |
33 | API_AVAILABLE(macos(10.5), ios(2.0), tvos(9.0)) API_UNAVAILABLE(watchos)
34 | @interface CATransaction : NSObject
| `- note: 'CATransaction' has been explicitly marked unavailable here
35 |
36 | /* Begin a new transaction for the current thread; nests. */
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift (in target 'CameraButton' from project 'CameraButton')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile CameraButton.swift
SwiftCompile normal arm64 Compiling\ CameraShutterButton.swift /Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift (in target 'CameraButton' from project 'CameraButton')
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:57:37: error: cannot find type 'Context' in scope
55 | // MARK: UIViewRepresentable
56 |
57 | public func makeUIView(context: Context) -> CameraButton {
| `- error: cannot find type 'Context' in scope
58 | let button = CameraButton()
59 | button.delegate = context.coordinator
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:66:63: error: cannot find type 'Context' in scope
64 | }
65 |
66 | public func updateUIView(_ button: CameraButton, context: Context) {
| `- error: cannot find type 'Context' in scope
67 | context.coordinator.parent = self
68 | configure(button)
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:28:36: error: cannot find type 'UIViewRepresentable' in scope
26 | /// }
27 | /// ```
28 | public struct CameraShutterButton: UIViewRepresentable {
| `- error: cannot find type 'UIViewRepresentable' in scope
29 |
30 | // MARK: Properties
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:60:43: error: 'required' is unavailable in watchOS
58 | let button = CameraButton()
59 | button.delegate = context.coordinator
60 | button.setContentHuggingPriority(.required, for: .horizontal)
| `- error: 'required' is unavailable in watchOS
61 | button.setContentHuggingPriority(.required, for: .vertical)
62 |
UIKit.UILayoutPriority.required:3:21: note: 'required' has been explicitly marked unavailable here
1 | struct UILayoutPriority {
2 | @available(watchOS, unavailable)
3 | public static var required: UILayoutPriority { get }}
| `- note: 'required' has been explicitly marked unavailable here
4 |
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:61:43: error: 'required' is unavailable in watchOS
59 | button.delegate = context.coordinator
60 | button.setContentHuggingPriority(.required, for: .horizontal)
61 | button.setContentHuggingPriority(.required, for: .vertical)
| `- error: 'required' is unavailable in watchOS
62 |
63 | return button
UIKit.UILayoutPriority.required:3:21: note: 'required' has been explicitly marked unavailable here
1 | struct UILayoutPriority {
2 | @available(watchOS, unavailable)
3 | public static var required: UILayoutPriority { get }}
| `- note: 'required' has been explicitly marked unavailable here
4 |
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:58:22: warning: call to main actor-isolated initializer 'init()' in a synchronous nonisolated context [#ActorIsolatedCall]
55 | // MARK: UIViewRepresentable
56 |
57 | public func makeUIView(context: Context) -> CameraButton {
| `- note: add '@MainActor' to make instance method 'makeUIView(context:)' part of global actor 'MainActor'
58 | let button = CameraButton()
| `- warning: call to main actor-isolated initializer 'init()' in a synchronous nonisolated context [#ActorIsolatedCall]
59 | button.delegate = context.coordinator
60 | button.setContentHuggingPriority(.required, for: .horizontal)
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:221:12: note: calls to initializer 'init()' from outside of its actor context are implicitly asynchronous
219 | // MARK: Life cycle
220 |
221 | public init() {
| |- note: calls to initializer 'init()' from outside of its actor context are implicitly asynchronous
| `- note: main actor isolation inferred from inheritance from class 'UIButton'
222 | super.init(frame: .zero)
223 |
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:60:16: warning: call to main actor-isolated instance method 'setContentHuggingPriority(_:for:)' in a synchronous nonisolated context [#ActorIsolatedCall]
55 | // MARK: UIViewRepresentable
56 |
57 | public func makeUIView(context: Context) -> CameraButton {
| `- note: add '@MainActor' to make instance method 'makeUIView(context:)' part of global actor 'MainActor'
58 | let button = CameraButton()
59 | button.delegate = context.coordinator
60 | button.setContentHuggingPriority(.required, for: .horizontal)
| `- warning: call to main actor-isolated instance method 'setContentHuggingPriority(_:for:)' in a synchronous nonisolated context [#ActorIsolatedCall]
61 | button.setContentHuggingPriority(.required, for: .vertical)
62 |
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:552:1: note: calls to instance method 'setContentHuggingPriority(_:for:)' from outside of its actor context are implicitly asynchronous
550 |
551 | - (UILayoutPriority)contentHuggingPriorityForAxis:(UILayoutConstraintAxis)axis API_AVAILABLE(ios(6.0));
552 | - (void)setContentHuggingPriority:(UILayoutPriority)priority forAxis:(UILayoutConstraintAxis)axis API_AVAILABLE(ios(6.0));
| `- note: calls to instance method 'setContentHuggingPriority(_:for:)' from outside of its actor context are implicitly asynchronous
553 |
554 | - (UILayoutPriority)contentCompressionResistancePriorityForAxis:(UILayoutConstraintAxis)axis API_AVAILABLE(ios(6.0));
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:61:16: warning: call to main actor-isolated instance method 'setContentHuggingPriority(_:for:)' in a synchronous nonisolated context [#ActorIsolatedCall]
55 | // MARK: UIViewRepresentable
56 |
57 | public func makeUIView(context: Context) -> CameraButton {
| `- note: add '@MainActor' to make instance method 'makeUIView(context:)' part of global actor 'MainActor'
58 | let button = CameraButton()
59 | button.delegate = context.coordinator
60 | button.setContentHuggingPriority(.required, for: .horizontal)
61 | button.setContentHuggingPriority(.required, for: .vertical)
| `- warning: call to main actor-isolated instance method 'setContentHuggingPriority(_:for:)' in a synchronous nonisolated context [#ActorIsolatedCall]
62 |
63 | return button
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:552:1: note: calls to instance method 'setContentHuggingPriority(_:for:)' from outside of its actor context are implicitly asynchronous
550 |
551 | - (UILayoutPriority)contentHuggingPriorityForAxis:(UILayoutConstraintAxis)axis API_AVAILABLE(ios(6.0));
552 | - (void)setContentHuggingPriority:(UILayoutPriority)priority forAxis:(UILayoutConstraintAxis)axis API_AVAILABLE(ios(6.0));
| `- note: calls to instance method 'setContentHuggingPriority(_:for:)' from outside of its actor context are implicitly asynchronous
553 |
554 | - (UILayoutPriority)contentCompressionResistancePriorityForAxis:(UILayoutConstraintAxis)axis API_AVAILABLE(ios(6.0));
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:69:16: warning: main actor-isolated property 'style' can not be mutated from a nonisolated context
64 | }
65 |
66 | public func updateUIView(_ button: CameraButton, context: Context) {
| `- note: add '@MainActor' to make instance method 'updateUIView(_:context:)' part of global actor 'MainActor'
67 | context.coordinator.parent = self
68 | configure(button)
69 | button.style = style
| `- warning: main actor-isolated property 'style' can not be mutated from a nonisolated context
70 | if button.type != type {
71 | button.type = type
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:39:16: note: mutation of this property is only permitted within the actor
37 | // MARK: Style
38 |
39 | public var style: Style = .classic {
| `- note: mutation of this property is only permitted within the actor
40 | didSet {
41 | guard oldValue != style else { return }
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:70:19: warning: main actor-isolated property 'type' can not be referenced from a nonisolated context
64 | }
65 |
66 | public func updateUIView(_ button: CameraButton, context: Context) {
| `- note: add '@MainActor' to make instance method 'updateUIView(_:context:)' part of global actor 'MainActor'
67 | context.coordinator.parent = self
68 | configure(button)
69 | button.style = style
70 | if button.type != type {
| `- warning: main actor-isolated property 'type' can not be referenced from a nonisolated context
71 | button.type = type
72 | }
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:182:16: note: property declared here
180 | // MARK: Public properties
181 |
182 | public var type: CameraType = .photo {
| `- note: property declared here
183 | didSet {
184 | pathLayer.removeAllAnimations()
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:71:20: warning: main actor-isolated property 'type' can not be mutated from a nonisolated context
64 | }
65 |
66 | public func updateUIView(_ button: CameraButton, context: Context) {
| `- note: add '@MainActor' to make instance method 'updateUIView(_:context:)' part of global actor 'MainActor'
67 | context.coordinator.parent = self
68 | configure(button)
69 | button.style = style
70 | if button.type != type {
71 | button.type = type
| `- warning: main actor-isolated property 'type' can not be mutated from a nonisolated context
72 | }
73 | if type == .video, button.isSelected != isRecording {
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:182:16: note: mutation of this property is only permitted within the actor
180 | // MARK: Public properties
181 |
182 | public var type: CameraType = .photo {
| `- note: mutation of this property is only permitted within the actor
183 | didSet {
184 | pathLayer.removeAllAnimations()
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:73:35: warning: main actor-isolated property 'isSelected' can not be referenced from a nonisolated context
64 | }
65 |
66 | public func updateUIView(_ button: CameraButton, context: Context) {
| `- note: add '@MainActor' to make instance method 'updateUIView(_:context:)' part of global actor 'MainActor'
67 | context.coordinator.parent = self
68 | configure(button)
:
71 | button.type = type
72 | }
73 | if type == .video, button.isSelected != isRecording {
| `- warning: main actor-isolated property 'isSelected' can not be referenced from a nonisolated context
74 | button.isSelected = isRecording
75 | }
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:164:23: note: property declared here
162 | // MARK: Properties
163 |
164 | override open var isSelected: Bool {
| `- note: property declared here
165 | didSet {
166 | guard oldValue != isSelected else { return }
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:74:20: warning: main actor-isolated property 'isSelected' can not be mutated from a nonisolated context
64 | }
65 |
66 | public func updateUIView(_ button: CameraButton, context: Context) {
| `- note: add '@MainActor' to make instance method 'updateUIView(_:context:)' part of global actor 'MainActor'
67 | context.coordinator.parent = self
68 | configure(button)
:
72 | }
73 | if type == .video, button.isSelected != isRecording {
74 | button.isSelected = isRecording
| `- warning: main actor-isolated property 'isSelected' can not be mutated from a nonisolated context
75 | }
76 | if recordingProgress != button.recordingProgress {
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:164:23: note: mutation of this property is only permitted within the actor
162 | // MARK: Properties
163 |
164 | override open var isSelected: Bool {
| `- note: mutation of this property is only permitted within the actor
165 | didSet {
166 | guard oldValue != isSelected else { return }
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:76:40: warning: main actor-isolated property 'recordingProgress' can not be referenced from a nonisolated context
64 | }
65 |
66 | public func updateUIView(_ button: CameraButton, context: Context) {
| `- note: add '@MainActor' to make instance method 'updateUIView(_:context:)' part of global actor 'MainActor'
67 | context.coordinator.parent = self
68 | configure(button)
:
74 | button.isSelected = isRecording
75 | }
76 | if recordingProgress != button.recordingProgress {
| `- warning: main actor-isolated property 'recordingProgress' can not be referenced from a nonisolated context
77 | button.recordingProgress = recordingProgress
78 | }
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:114:16: note: property declared here
112 |
113 | /// Progress of the recording ring, from 0 to 1. Resets when recording stops.
114 | public var recordingProgress: CGFloat {
| `- note: property declared here
115 | get { progressLayer.strokeEnd }
116 | set {
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:77:20: warning: main actor-isolated property 'recordingProgress' can not be mutated from a nonisolated context
64 | }
65 |
66 | public func updateUIView(_ button: CameraButton, context: Context) {
| `- note: add '@MainActor' to make instance method 'updateUIView(_:context:)' part of global actor 'MainActor'
67 | context.coordinator.parent = self
68 | configure(button)
:
75 | }
76 | if recordingProgress != button.recordingProgress {
77 | button.recordingProgress = recordingProgress
| `- warning: main actor-isolated property 'recordingProgress' can not be mutated from a nonisolated context
78 | }
79 | }
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:114:16: note: mutation of this property is only permitted within the actor
112 |
113 | /// Progress of the recording ring, from 0 to 1. Resets when recording stops.
114 | public var recordingProgress: CGFloat {
| `- note: mutation of this property is only permitted within the actor
115 | get { progressLayer.strokeEnd }
116 | set {
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift (in target 'CameraButton' from project 'CameraButton')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile CameraShutterButton.swift
SwiftEmitModule normal arm64 Emitting\ module\ for\ CameraButton (in target 'CameraButton' from project 'CameraButton')
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:105:42: error: 'systemRed' is unavailable in watchOS
103 | // MARK: Recording progress
104 |
105 | public var progressColor: UIColor = .systemRed {
| `- error: 'systemRed' is unavailable in watchOS
106 | didSet {
107 | guard oldValue != progressColor else { return }
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIInterface.h:121:49: note: 'systemRed' has been explicitly marked unavailable here
119 | * Do not make assumptions about the color spaces or actual colors used.
120 | */
121 | @property (class, nonatomic, readonly) UIColor *systemRedColor API_AVAILABLE(ios(7.0), tvos(9.0)) API_UNAVAILABLE(watchos);
| `- note: 'systemRed' has been explicitly marked unavailable here
122 | @property (class, nonatomic, readonly) UIColor *systemGreenColor API_AVAILABLE(ios(7.0), tvos(9.0)) API_UNAVAILABLE(watchos);
123 | @property (class, nonatomic, readonly) UIColor *systemBlueColor API_AVAILABLE(ios(7.0), tvos(9.0)) API_UNAVAILABLE(watchos);
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:194:29: error: 'CAShapeLayer' is unavailable in watchOS
192 | // MARK: Private properties
193 |
194 | private let pathLayer = CAShapeLayer()
| `- error: 'CAShapeLayer' is unavailable in watchOS
195 | private let progressLayer = CAShapeLayer()
196 | private var glassView: UIView?
/Applications/Xcode-27.0.0.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/CameraButton.swift:195:33: error: 'CAShapeLayer' is unavailable in watchOS
193 |
194 | private let pathLayer = CAShapeLayer()
195 | private let progressLayer = CAShapeLayer()
| `- error: 'CAShapeLayer' is unavailable in watchOS
196 | private var glassView: UIView?
197 | private let impactGenerator = UIImpactFeedbackGenerator(style: .medium)
/Applications/Xcode-27.0.0.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/CameraButton.swift:196:28: error: 'UIView' is unavailable in watchOS
194 | private let pathLayer = CAShapeLayer()
195 | private let progressLayer = CAShapeLayer()
196 | private var glassView: UIView?
| `- error: 'UIView' is unavailable in watchOS
197 | private let impactGenerator = UIImpactFeedbackGenerator(style: .medium)
198 | private let animateDuration = CATransaction.animationDuration()
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:152:12: note: 'UIView' has been explicitly marked unavailable here
150 |
151 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
152 | @interface UIView : UIResponder <NSCoding, UIAppearance, UIAppearanceContainer, UIDynamicItem, UITraitEnvironment, UICoordinateSpace, UIFocusItem, UIFocusItemContainer, CALayerDelegate>
| `- note: 'UIView' has been explicitly marked unavailable here
153 |
154 | @property(class, nonatomic, readonly) Class layerClass; // default is [CALayer class]. Used when creating the underlying layer for the view.
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:197:35: error: 'UIImpactFeedbackGenerator' is unavailable in watchOS
195 | private let progressLayer = CAShapeLayer()
196 | private var glassView: UIView?
197 | private let impactGenerator = UIImpactFeedbackGenerator(style: .medium)
| `- error: 'UIImpactFeedbackGenerator' is unavailable in watchOS
198 | private let animateDuration = CATransaction.animationDuration()
199 | private let shutterDuration: CFTimeInterval = 0.3
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIImpactFeedbackGenerator.h:25:12: note: 'UIImpactFeedbackGenerator' has been explicitly marked unavailable here
23 | // UIImpactFeedbackGenerator is used to give user feedback when an impact between UI elements occurs
24 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(visionos, tvos) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
25 | @interface UIImpactFeedbackGenerator : UIFeedbackGenerator
| `- note: 'UIImpactFeedbackGenerator' has been explicitly marked unavailable here
26 |
27 | /// set a style on the feedback generator and attach it to the provided view as an interaction.
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:198:35: error: 'CATransaction' is unavailable in watchOS
196 | private var glassView: UIView?
197 | private let impactGenerator = UIImpactFeedbackGenerator(style: .medium)
198 | private let animateDuration = CATransaction.animationDuration()
| `- error: 'CATransaction' is unavailable in watchOS
199 | private let shutterDuration: CFTimeInterval = 0.3
200 | private var lastLayoutSize: CGSize = .zero
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CATransaction.h:34:12: note: 'CATransaction' has been explicitly marked unavailable here
32 |
33 | API_AVAILABLE(macos(10.5), ios(2.0), tvos(9.0)) API_UNAVAILABLE(watchos)
34 | @interface CATransaction : NSObject
| `- note: 'CATransaction' has been explicitly marked unavailable here
35 |
36 | /* Begin a new transaction for the current thread; nests. */
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:205:23: error: cannot override 'accessibilityLabel' which has been marked unavailable
203 | // MARK: Accessibility
204 |
205 | override open var accessibilityLabel: String? {
| |- error: cannot override 'accessibilityLabel' which has been marked unavailable
| `- note: remove 'override' modifier to declare a new 'accessibilityLabel'
206 | get {
207 | if let customAccessibilityLabel { return customAccessibilityLabel }
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIAccessibility.h:64:49: note: 'accessibilityLabel' has been explicitly marked unavailable here
62 | Setting the property will change the label that is returned to the accessibility client.
63 | */
64 | @property (nullable, nonatomic, copy) NSString *accessibilityLabel API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR;
| `- note: 'accessibilityLabel' has been explicitly marked unavailable here
65 |
66 | /*
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:269:76: error: 'UITraitCollection' is unavailable in watchOS
267 | }
268 |
269 | override open func traitCollectionDidChange(_ previousTraitCollection: UITraitCollection?) {
| `- error: 'UITraitCollection' is unavailable in watchOS
270 | super.traitCollectionDidChange(previousTraitCollection)
271 |
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITraitCollection.h:23:12: note: 'UITraitCollection' has been explicitly marked unavailable here
21 |
22 | UIKIT_EXTERN API_AVAILABLE(ios(8.0)) API_UNAVAILABLE(watchos) NS_SWIFT_SENDABLE
23 | @interface UITraitCollection : NSObject <NSCopying, NSSecureCoding>
| `- note: 'UITraitCollection' has been explicitly marked unavailable here
24 |
25 | - (instancetype)init NS_DESIGNATED_INITIALIZER;
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:269:24: error: cannot override 'traitCollectionDidChange' which has been marked unavailable
267 | }
268 |
269 | override open func traitCollectionDidChange(_ previousTraitCollection: UITraitCollection?) {
| |- error: cannot override 'traitCollectionDidChange' which has been marked unavailable
| `- note: remove 'override' modifier to declare a new 'traitCollectionDidChange'
270 | super.traitCollectionDidChange(previousTraitCollection)
271 |
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITraitCollection.h:221:1: note: 'traitCollectionDidChange' has been explicitly marked unavailable here
219 |
220 | /*! To be overridden as needed to provide custom behavior when the environment's traits change. */
221 | - (void)traitCollectionDidChange:(nullable UITraitCollection *)previousTraitCollection API_DEPRECATED("Use the trait change registration APIs declared in the UITraitChangeObservable protocol", ios(8.0, 17.0), visionos(1.0, 1.0)) API_UNAVAILABLE(watchos);
| `- note: 'traitCollectionDidChange' has been explicitly marked unavailable here
222 | @end
223 |
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:331:37: error: 'UIView' is unavailable in watchOS
329 | }
330 |
331 | private func makeGlassView() -> UIView? {
| `- error: 'UIView' is unavailable in watchOS
332 | guard style == .glass else { return nil }
333 |
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:152:12: note: 'UIView' has been explicitly marked unavailable here
150 |
151 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
152 | @interface UIView : UIResponder <NSCoding, UIAppearance, UIAppearanceContainer, UIDynamicItem, UITraitEnvironment, UICoordinateSpace, UIFocusItem, UIFocusItemContainer, CALayerDelegate>
| `- note: 'UIView' has been explicitly marked unavailable here
153 |
154 | @property(class, nonatomic, readonly) Class layerClass; // default is [CALayer class]. Used when creating the underlying layer for the view.
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:27:26: error: 'UIButton' is unavailable in watchOS
25 | import UIKit
26 |
27 | open class CameraButton: UIButton {
| `- error: 'UIButton' is unavailable in watchOS
28 |
29 | /// Visual style of the button.
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIButton.h:49:12: note: 'UIButton' has been explicitly marked unavailable here
47 |
48 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
49 | @interface UIButton : UIControl <NSCoding>
| `- note: 'UIButton' has been explicitly marked unavailable here
50 |
51 | - (instancetype)initWithFrame:(CGRect)frame NS_DESIGNATED_INITIALIZER;
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:568:19: error: 'CATransaction' is unavailable in watchOS
566 | }
567 |
568 | private extension CATransaction {
| `- error: 'CATransaction' is unavailable in watchOS
569 |
570 | static func performWithoutAnimation(_ changes: () -> Void) {
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CATransaction.h:34:12: note: 'CATransaction' has been explicitly marked unavailable here
32 |
33 | API_AVAILABLE(macos(10.5), ios(2.0), tvos(9.0)) API_UNAVAILABLE(watchos)
34 | @interface CATransaction : NSObject
| `- note: 'CATransaction' has been explicitly marked unavailable here
35 |
36 | /* Begin a new transaction for the current thread; nests. */
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:57:37: error: cannot find type 'Context' in scope
55 | // MARK: UIViewRepresentable
56 |
57 | public func makeUIView(context: Context) -> CameraButton {
| `- error: cannot find type 'Context' in scope
58 | let button = CameraButton()
59 | button.delegate = context.coordinator
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:66:63: error: cannot find type 'Context' in scope
64 | }
65 |
66 | public func updateUIView(_ button: CameraButton, context: Context) {
| `- error: cannot find type 'Context' in scope
67 | context.coordinator.parent = self
68 | configure(button)
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:28:36: error: cannot find type 'UIViewRepresentable' in scope
26 | /// }
27 | /// ```
28 | public struct CameraShutterButton: UIViewRepresentable {
| `- error: cannot find type 'UIViewRepresentable' in scope
29 |
30 | // MARK: Properties
Failed frontend command:
/Applications/Xcode-27.0.0.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/CameraButton.swift /Users/admin/builder/spi-builder-workspace/Sources/CameraType.swift /Users/admin/builder/spi-builder-workspace/Sources/Protocols/CameraButtonDelegate.swift /Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift -target arm64-apple-watchos9.0 -disable-cross-import-overlay-search -load-resolved-plugin /Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/lib/swift/host/plugins/libFoundationMacros.dylib\#/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/bin/swift-plugin-server\#FoundationMacros -load-resolved-plugin /Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/lib/swift/host/plugins/libObservationMacros.dylib\#/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/bin/swift-plugin-server\#ObservationMacros -load-resolved-plugin /Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/lib/swift/host/plugins/libPreviewsMacros.dylib\#/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/bin/swift-plugin-server\#PreviewsMacros -load-resolved-plugin /Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/lib/swift/host/plugins/libSwiftMacros.dylib\#/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/bin/swift-plugin-server\#SwiftMacros -load-resolved-plugin /Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/lib/swift/host/plugins/libSwiftUIMacros.dylib\#/Applications/Xcode-27.0.0.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/CameraButton.build/Debug-watchos/CameraButton-t.build/Objects-normal/arm64/CameraButton-dependencies-1.json -Xllvm -aarch64-use-tbi -enable-objc-interop -stack-check -sdk /Applications/Xcode-27.0.0.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.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.app/Contents/Developer/Platforms/WatchOS.platform/Developer/Library/Frameworks -F /Applications/Xcode-27.0.0.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 -swift-version 6 -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-e829b21a6f8c9b70876ba0858053c044b9db9bc9c079ee3c7b5f3373b13d10bc.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/CameraButton.build/Debug-watchos/CameraButton-t.build/DerivedSources-normal/arm64 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/CameraButton.build/Debug-watchos/CameraButton-t.build/DerivedSources/arm64 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/CameraButton.build/Debug-watchos/CameraButton-t.build/DerivedSources -Xcc -DSWIFT_PACKAGE -Xcc -DDEBUG\=1 -no-auto-bridging-header-chaining -module-name CameraButton -package-name spi_builder_workspace -const-gather-protocols-file /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/CameraButton.build/Debug-watchos/CameraButton-t.build/Objects-normal/arm64/CameraButton_const_extract_protocols.json -disable-clang-spi -clang-target arm64-apple-watchos27.0 -target-sdk-version 27.0 -target-sdk-name watchos27.0 -in-process-plugin-server-path /Applications/Xcode-27.0.0.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/CameraButton.build/Debug-watchos/CameraButton-t.build/Objects-normal/arm64/CameraButton.swiftdoc -emit-module-source-info-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/CameraButton.build/Debug-watchos/CameraButton-t.build/Objects-normal/arm64/CameraButton.swiftsourceinfo -emit-objc-header-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/CameraButton.build/Debug-watchos/CameraButton-t.build/Objects-normal/arm64/CameraButton-Swift.h -serialize-diagnostics-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/CameraButton.build/Debug-watchos/CameraButton-t.build/Objects-normal/arm64/CameraButton-primary-emit-module.dia -emit-dependencies-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/CameraButton.build/Debug-watchos/CameraButton-t.build/Objects-normal/arm64/CameraButton-primary-emit-module.d -parse-as-library -o /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/CameraButton.build/Debug-watchos/CameraButton-t.build/Objects-normal/arm64/CameraButton.swiftmodule -emit-abi-descriptor-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/CameraButton.build/Debug-watchos/CameraButton-t.build/Objects-normal/arm64/CameraButton.abi.json
SwiftCompile normal arm64 (in target 'CameraButton' from project 'CameraButton')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
SwiftCompile normal arm64 Compiling\ CameraType.swift /Users/admin/builder/spi-builder-workspace/Sources/CameraType.swift (in target 'CameraButton' from project 'CameraButton')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/CameraType.swift (in target 'CameraButton' from project 'CameraButton')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile CameraType.swift
SwiftCompile normal arm64_32 Compiling\ CameraButtonDelegate.swift /Users/admin/builder/spi-builder-workspace/Sources/Protocols/CameraButtonDelegate.swift (in target 'CameraButton' from project 'CameraButton')
SwiftCompile normal arm64_32 /Users/admin/builder/spi-builder-workspace/Sources/Protocols/CameraButtonDelegate.swift (in target 'CameraButton' from project 'CameraButton')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile CameraButtonDelegate.swift
SwiftCompile normal arm64 Compiling\ CameraButtonDelegate.swift /Users/admin/builder/spi-builder-workspace/Sources/Protocols/CameraButtonDelegate.swift (in target 'CameraButton' from project 'CameraButton')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/Protocols/CameraButtonDelegate.swift (in target 'CameraButton' from project 'CameraButton')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile CameraButtonDelegate.swift
SwiftCompile normal arm64_32 Compiling\ CameraType.swift /Users/admin/builder/spi-builder-workspace/Sources/CameraType.swift (in target 'CameraButton' from project 'CameraButton')
SwiftCompile normal arm64_32 /Users/admin/builder/spi-builder-workspace/Sources/CameraType.swift (in target 'CameraButton' from project 'CameraButton')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile CameraType.swift
SwiftCompile normal arm64_32 Compiling\ CameraShutterButton.swift /Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift (in target 'CameraButton' from project 'CameraButton')
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:57:37: error: cannot find type 'Context' in scope
55 | // MARK: UIViewRepresentable
56 |
57 | public func makeUIView(context: Context) -> CameraButton {
| `- error: cannot find type 'Context' in scope
58 | let button = CameraButton()
59 | button.delegate = context.coordinator
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:66:63: error: cannot find type 'Context' in scope
64 | }
65 |
66 | public func updateUIView(_ button: CameraButton, context: Context) {
| `- error: cannot find type 'Context' in scope
67 | context.coordinator.parent = self
68 | configure(button)
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:28:36: error: cannot find type 'UIViewRepresentable' in scope
26 | /// }
27 | /// ```
28 | public struct CameraShutterButton: UIViewRepresentable {
| `- error: cannot find type 'UIViewRepresentable' in scope
29 |
30 | // MARK: Properties
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:60:43: error: 'required' is unavailable in watchOS
58 | let button = CameraButton()
59 | button.delegate = context.coordinator
60 | button.setContentHuggingPriority(.required, for: .horizontal)
| `- error: 'required' is unavailable in watchOS
61 | button.setContentHuggingPriority(.required, for: .vertical)
62 |
UIKit.UILayoutPriority.required:3:21: note: 'required' has been explicitly marked unavailable here
1 | struct UILayoutPriority {
2 | @available(watchOS, unavailable)
3 | public static var required: UILayoutPriority { get }}
| `- note: 'required' has been explicitly marked unavailable here
4 |
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:61:43: error: 'required' is unavailable in watchOS
59 | button.delegate = context.coordinator
60 | button.setContentHuggingPriority(.required, for: .horizontal)
61 | button.setContentHuggingPriority(.required, for: .vertical)
| `- error: 'required' is unavailable in watchOS
62 |
63 | return button
UIKit.UILayoutPriority.required:3:21: note: 'required' has been explicitly marked unavailable here
1 | struct UILayoutPriority {
2 | @available(watchOS, unavailable)
3 | public static var required: UILayoutPriority { get }}
| `- note: 'required' has been explicitly marked unavailable here
4 |
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:58:22: warning: call to main actor-isolated initializer 'init()' in a synchronous nonisolated context [#ActorIsolatedCall]
55 | // MARK: UIViewRepresentable
56 |
57 | public func makeUIView(context: Context) -> CameraButton {
| `- note: add '@MainActor' to make instance method 'makeUIView(context:)' part of global actor 'MainActor'
58 | let button = CameraButton()
| `- warning: call to main actor-isolated initializer 'init()' in a synchronous nonisolated context [#ActorIsolatedCall]
59 | button.delegate = context.coordinator
60 | button.setContentHuggingPriority(.required, for: .horizontal)
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:221:12: note: calls to initializer 'init()' from outside of its actor context are implicitly asynchronous
219 | // MARK: Life cycle
220 |
221 | public init() {
| |- note: calls to initializer 'init()' from outside of its actor context are implicitly asynchronous
| `- note: main actor isolation inferred from inheritance from class 'UIButton'
222 | super.init(frame: .zero)
223 |
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:60:16: warning: call to main actor-isolated instance method 'setContentHuggingPriority(_:for:)' in a synchronous nonisolated context [#ActorIsolatedCall]
55 | // MARK: UIViewRepresentable
56 |
57 | public func makeUIView(context: Context) -> CameraButton {
| `- note: add '@MainActor' to make instance method 'makeUIView(context:)' part of global actor 'MainActor'
58 | let button = CameraButton()
59 | button.delegate = context.coordinator
60 | button.setContentHuggingPriority(.required, for: .horizontal)
| `- warning: call to main actor-isolated instance method 'setContentHuggingPriority(_:for:)' in a synchronous nonisolated context [#ActorIsolatedCall]
61 | button.setContentHuggingPriority(.required, for: .vertical)
62 |
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:552:1: note: calls to instance method 'setContentHuggingPriority(_:for:)' from outside of its actor context are implicitly asynchronous
550 |
551 | - (UILayoutPriority)contentHuggingPriorityForAxis:(UILayoutConstraintAxis)axis API_AVAILABLE(ios(6.0));
552 | - (void)setContentHuggingPriority:(UILayoutPriority)priority forAxis:(UILayoutConstraintAxis)axis API_AVAILABLE(ios(6.0));
| `- note: calls to instance method 'setContentHuggingPriority(_:for:)' from outside of its actor context are implicitly asynchronous
553 |
554 | - (UILayoutPriority)contentCompressionResistancePriorityForAxis:(UILayoutConstraintAxis)axis API_AVAILABLE(ios(6.0));
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:61:16: warning: call to main actor-isolated instance method 'setContentHuggingPriority(_:for:)' in a synchronous nonisolated context [#ActorIsolatedCall]
55 | // MARK: UIViewRepresentable
56 |
57 | public func makeUIView(context: Context) -> CameraButton {
| `- note: add '@MainActor' to make instance method 'makeUIView(context:)' part of global actor 'MainActor'
58 | let button = CameraButton()
59 | button.delegate = context.coordinator
60 | button.setContentHuggingPriority(.required, for: .horizontal)
61 | button.setContentHuggingPriority(.required, for: .vertical)
| `- warning: call to main actor-isolated instance method 'setContentHuggingPriority(_:for:)' in a synchronous nonisolated context [#ActorIsolatedCall]
62 |
63 | return button
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:552:1: note: calls to instance method 'setContentHuggingPriority(_:for:)' from outside of its actor context are implicitly asynchronous
550 |
551 | - (UILayoutPriority)contentHuggingPriorityForAxis:(UILayoutConstraintAxis)axis API_AVAILABLE(ios(6.0));
552 | - (void)setContentHuggingPriority:(UILayoutPriority)priority forAxis:(UILayoutConstraintAxis)axis API_AVAILABLE(ios(6.0));
| `- note: calls to instance method 'setContentHuggingPriority(_:for:)' from outside of its actor context are implicitly asynchronous
553 |
554 | - (UILayoutPriority)contentCompressionResistancePriorityForAxis:(UILayoutConstraintAxis)axis API_AVAILABLE(ios(6.0));
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:69:16: warning: main actor-isolated property 'style' can not be mutated from a nonisolated context
64 | }
65 |
66 | public func updateUIView(_ button: CameraButton, context: Context) {
| `- note: add '@MainActor' to make instance method 'updateUIView(_:context:)' part of global actor 'MainActor'
67 | context.coordinator.parent = self
68 | configure(button)
69 | button.style = style
| `- warning: main actor-isolated property 'style' can not be mutated from a nonisolated context
70 | if button.type != type {
71 | button.type = type
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:39:16: note: mutation of this property is only permitted within the actor
37 | // MARK: Style
38 |
39 | public var style: Style = .classic {
| `- note: mutation of this property is only permitted within the actor
40 | didSet {
41 | guard oldValue != style else { return }
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:70:19: warning: main actor-isolated property 'type' can not be referenced from a nonisolated context
64 | }
65 |
66 | public func updateUIView(_ button: CameraButton, context: Context) {
| `- note: add '@MainActor' to make instance method 'updateUIView(_:context:)' part of global actor 'MainActor'
67 | context.coordinator.parent = self
68 | configure(button)
69 | button.style = style
70 | if button.type != type {
| `- warning: main actor-isolated property 'type' can not be referenced from a nonisolated context
71 | button.type = type
72 | }
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:182:16: note: property declared here
180 | // MARK: Public properties
181 |
182 | public var type: CameraType = .photo {
| `- note: property declared here
183 | didSet {
184 | pathLayer.removeAllAnimations()
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:71:20: warning: main actor-isolated property 'type' can not be mutated from a nonisolated context
64 | }
65 |
66 | public func updateUIView(_ button: CameraButton, context: Context) {
| `- note: add '@MainActor' to make instance method 'updateUIView(_:context:)' part of global actor 'MainActor'
67 | context.coordinator.parent = self
68 | configure(button)
69 | button.style = style
70 | if button.type != type {
71 | button.type = type
| `- warning: main actor-isolated property 'type' can not be mutated from a nonisolated context
72 | }
73 | if type == .video, button.isSelected != isRecording {
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:182:16: note: mutation of this property is only permitted within the actor
180 | // MARK: Public properties
181 |
182 | public var type: CameraType = .photo {
| `- note: mutation of this property is only permitted within the actor
183 | didSet {
184 | pathLayer.removeAllAnimations()
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:73:35: warning: main actor-isolated property 'isSelected' can not be referenced from a nonisolated context
64 | }
65 |
66 | public func updateUIView(_ button: CameraButton, context: Context) {
| `- note: add '@MainActor' to make instance method 'updateUIView(_:context:)' part of global actor 'MainActor'
67 | context.coordinator.parent = self
68 | configure(button)
:
71 | button.type = type
72 | }
73 | if type == .video, button.isSelected != isRecording {
| `- warning: main actor-isolated property 'isSelected' can not be referenced from a nonisolated context
74 | button.isSelected = isRecording
75 | }
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:164:23: note: property declared here
162 | // MARK: Properties
163 |
164 | override open var isSelected: Bool {
| `- note: property declared here
165 | didSet {
166 | guard oldValue != isSelected else { return }
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:74:20: warning: main actor-isolated property 'isSelected' can not be mutated from a nonisolated context
64 | }
65 |
66 | public func updateUIView(_ button: CameraButton, context: Context) {
| `- note: add '@MainActor' to make instance method 'updateUIView(_:context:)' part of global actor 'MainActor'
67 | context.coordinator.parent = self
68 | configure(button)
:
72 | }
73 | if type == .video, button.isSelected != isRecording {
74 | button.isSelected = isRecording
| `- warning: main actor-isolated property 'isSelected' can not be mutated from a nonisolated context
75 | }
76 | if recordingProgress != button.recordingProgress {
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:164:23: note: mutation of this property is only permitted within the actor
162 | // MARK: Properties
163 |
164 | override open var isSelected: Bool {
| `- note: mutation of this property is only permitted within the actor
165 | didSet {
166 | guard oldValue != isSelected else { return }
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:76:40: warning: main actor-isolated property 'recordingProgress' can not be referenced from a nonisolated context
64 | }
65 |
66 | public func updateUIView(_ button: CameraButton, context: Context) {
| `- note: add '@MainActor' to make instance method 'updateUIView(_:context:)' part of global actor 'MainActor'
67 | context.coordinator.parent = self
68 | configure(button)
:
74 | button.isSelected = isRecording
75 | }
76 | if recordingProgress != button.recordingProgress {
| `- warning: main actor-isolated property 'recordingProgress' can not be referenced from a nonisolated context
77 | button.recordingProgress = recordingProgress
78 | }
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:114:16: note: property declared here
112 |
113 | /// Progress of the recording ring, from 0 to 1. Resets when recording stops.
114 | public var recordingProgress: CGFloat {
| `- note: property declared here
115 | get { progressLayer.strokeEnd }
116 | set {
/Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift:77:20: warning: main actor-isolated property 'recordingProgress' can not be mutated from a nonisolated context
64 | }
65 |
66 | public func updateUIView(_ button: CameraButton, context: Context) {
| `- note: add '@MainActor' to make instance method 'updateUIView(_:context:)' part of global actor 'MainActor'
67 | context.coordinator.parent = self
68 | configure(button)
:
75 | }
76 | if recordingProgress != button.recordingProgress {
77 | button.recordingProgress = recordingProgress
| `- warning: main actor-isolated property 'recordingProgress' can not be mutated from a nonisolated context
78 | }
79 | }
/Users/admin/builder/spi-builder-workspace/Sources/CameraButton.swift:114:16: note: mutation of this property is only permitted within the actor
112 |
113 | /// Progress of the recording ring, from 0 to 1. Resets when recording stops.
114 | public var recordingProgress: CGFloat {
| `- note: mutation of this property is only permitted within the actor
115 | get { progressLayer.strokeEnd }
116 | set {
SwiftCompile normal arm64_32 /Users/admin/builder/spi-builder-workspace/Sources/SwiftUI/CameraShutterButton.swift (in target 'CameraButton' from project 'CameraButton')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile CameraShutterButton.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-10-23 03:59:25.672 xcodebuild[805:4819] [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 'CameraButton' from project 'CameraButton')
SwiftEmitModule normal arm64_32 Emitting\ module\ for\ CameraButton (in target 'CameraButton' from project 'CameraButton')
SwiftEmitModule normal arm64 Emitting\ module\ for\ CameraButton (in target 'CameraButton' from project 'CameraButton')
SwiftCompile normal arm64 (in target 'CameraButton' from project 'CameraButton')
Building workspace CameraButton with scheme CameraButton
(5 failures)
BUILD FAILURE 6.4 watchOS