Build Information
Failed to build PhotoPreview, reference main (dff22c), with Swift 6.4 for watchOS using Xcode 27.0 on 21 Sep 2026 21:32:37 UTC.
Build Command
env DEVELOPER_DIR=/Applications/Xcode-27.0.0-Release.Candidate.app xcrun xcodebuild -IDEClonedSourcePackagesDirPathOverride=$PWD/.dependencies -skipMacroValidation -skipPackagePluginValidation -derivedDataPath $PWD/.derivedData build -scheme PhotoPreview -destination generic/platform=watchOSBuild Log
SwiftDriver PhotoPreview normal arm64_32 com.apple.xcode.tools.swift.compiler (in target 'PhotoPreview' from project 'PhotoPreview')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftDriver -- /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swiftc -parse-as-library -module-name PhotoPreview -Onone @/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/PhotoPreview.build/Debug-watchos/PhotoPreview-t.build/Objects-normal/arm64_32/PhotoPreview.SwiftFileList -DSWIFT_PACKAGE -DDEBUG -DSWIFT_MODULE_RESOURCE_BUNDLE_UNAVAILABLE -Xcc -fmodule-map-file\=/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/GeneratedModuleMaps-watchos/SDWebImage.modulemap -DXcode -plugin-path /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/host/plugins/testing -enable-experimental-feature DebugDescriptionMacro -sdk /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk -target arm64_32-apple-watchos9.0 -g -module-cache-path /Users/admin/builder/spi-builder-workspace/.derivedData/ModuleCache.noindex -Xfrontend -serialize-debugging-options -profile-coverage-mapping -profile-generate -enable-testing -index-store-path /Users/admin/builder/spi-builder-workspace/.derivedData/Index.noindex/DataStore -Xcc -D_LIBCPP_HARDENING_MODE\=_LIBCPP_HARDENING_MODE_DEBUG -swift-version 5 -I /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-watchos -Isystem /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/lib -F /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-watchos/PackageFrameworks -F /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-watchos -F /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/Library/Frameworks -F /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/Developer/Library/Frameworks -c -j10 -enable-batch-mode -incremental -Xcc -ivfsstatcache -Xcc /Users/admin/builder/spi-builder-workspace/.derivedData/SDKStatCaches.noindex/watchos27.0-24R360-e829b21a6f8c9b70876ba0858053c04477534ef55a1706bf4c1112bbb242f0a2.sdkstatcache -output-file-map /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/PhotoPreview.build/Debug-watchos/PhotoPreview-t.build/Objects-normal/arm64_32/PhotoPreview-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/PhotoPreview.build/Debug-watchos/PhotoPreview-t.build/Objects-normal/arm64_32/PhotoPreview.swiftmodule -serialize-diagnostics -dependency-scan-serialize-diagnostics-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/PhotoPreview.build/Debug-watchos/PhotoPreview-t.build/Objects-normal/arm64_32/PhotoPreview-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/PhotoPreview.build/Debug-watchos/PhotoPreview-t.build/Objects-normal/arm64_32/PhotoPreview_const_extract_protocols.json -Xcc -I/Users/admin/builder/spi-builder-workspace/.dependencies/checkouts/SDWebImage/SDWebImage/include -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/PhotoPreview.build/Debug-watchos/PhotoPreview-t.build/DerivedSources-normal/arm64_32 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/PhotoPreview.build/Debug-watchos/PhotoPreview-t.build/DerivedSources/arm64_32 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/PhotoPreview.build/Debug-watchos/PhotoPreview-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/PhotoPreview.build/Debug-watchos/PhotoPreview-t.build/Objects-normal/arm64_32/PhotoPreview-Swift.h -working-directory /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode -experimental-emit-module-separately -disable-cmo
CreateUniversalBinary /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-watchos/SDWebImage.o normal arm64\ arm64_32 (in target 'SDWebImage' from project 'SDWebImage')
cd /Users/admin/builder/spi-builder-workspace/.dependencies/checkouts/SDWebImage
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/lipo -create /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SDWebImage.build/Debug-watchos/SDWebImage-t.build/Objects-normal/arm64/Binary/SDWebImage.o /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SDWebImage.build/Debug-watchos/SDWebImage-t.build/Objects-normal/arm64_32/Binary/SDWebImage.o -output /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-watchos/SDWebImage.o
SwiftEmitModule normal arm64_32 Emitting\ module\ for\ PhotoPreview (in target 'PhotoPreview' from project 'PhotoPreview')
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/CustomImageView.swift:7:30: error: 'UIActivityIndicatorView' is unavailable in watchOS
5 |
6 | private var imageURL: String? = nil
7 | private var loadingView: UIActivityIndicatorView = UIActivityIndicatorView(style: .medium)
| `- error: 'UIActivityIndicatorView' is unavailable in watchOS
8 |
9 | private func setupLoadingIndicator() {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIActivityIndicatorView.h:24:12: note: 'UIActivityIndicatorView' has been explicitly marked unavailable here
22 |
23 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
24 | @interface UIActivityIndicatorView : UIView <NSCoding>
| `- note: 'UIActivityIndicatorView' has been explicitly marked unavailable here
25 |
26 | - (instancetype)initWithActivityIndicatorStyle:(UIActivityIndicatorViewStyle)style NS_DESIGNATED_INITIALIZER; // sizes the view according to the style
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/CustomImageView.swift:7:56: error: 'UIActivityIndicatorView' is unavailable in watchOS
5 |
6 | private var imageURL: String? = nil
7 | private var loadingView: UIActivityIndicatorView = UIActivityIndicatorView(style: .medium)
| `- error: 'UIActivityIndicatorView' is unavailable in watchOS
8 |
9 | private func setupLoadingIndicator() {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIActivityIndicatorView.h:24:12: note: 'UIActivityIndicatorView' has been explicitly marked unavailable here
22 |
23 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
24 | @interface UIActivityIndicatorView : UIView <NSCoding>
| `- note: 'UIActivityIndicatorView' has been explicitly marked unavailable here
25 |
26 | - (instancetype)initWithActivityIndicatorStyle:(UIActivityIndicatorViewStyle)style NS_DESIGNATED_INITIALIZER; // sizes the view according to the style
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/CustomImageView.swift:7:88: error: 'medium' is unavailable in watchOS
5 |
6 | private var imageURL: String? = nil
7 | private var loadingView: UIActivityIndicatorView = UIActivityIndicatorView(style: .medium)
| `- error: 'medium' is unavailable in watchOS
8 |
9 | private func setupLoadingIndicator() {
UIKit.UIActivityIndicatorView.Style.medium:4:10: note: 'medium' has been explicitly marked unavailable here
2 | enum Style {
3 | @available(watchOS, unavailable)
4 | case medium }
| `- note: 'medium' has been explicitly marked unavailable here
5 | }
6 |
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/CustomImageView.swift:4:24: error: 'UIImageView' is unavailable in watchOS
2 | import UIKit
3 |
4 | class CustomImageView: UIImageView {
| `- error: 'UIImageView' is unavailable in watchOS
5 |
6 | private var imageURL: String? = nil
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIImageView.h:21:12: note: 'UIImageView' has been explicitly marked unavailable here
19 |
20 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
21 | @interface UIImageView : UIView
| `- note: 'UIImageView' has been explicitly marked unavailable here
22 |
23 | - (instancetype)initWithImage:(nullable UIImage *)image;
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/DimmingPresentationController.swift:12:27: error: 'UIView' is unavailable in watchOS
10 | class DimmingPresentationController: UIPresentationController {
11 |
12 | lazy var background = UIView(frame: .zero)
| `- error: 'UIView' is unavailable in watchOS
13 |
14 | override var shouldRemovePresentersView: Bool {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/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/PhotoPreview/DimmingPresentationController.swift:10:38: error: 'UIPresentationController' is unavailable in watchOS
8 | import UIKit
9 |
10 | class DimmingPresentationController: UIPresentationController {
| `- error: 'UIPresentationController' is unavailable in watchOS
11 |
12 | lazy var background = UIView(frame: .zero)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIPresentationController.h:65:12: note: 'UIPresentationController' has been explicitly marked unavailable here
63 |
64 | UIKIT_EXTERN API_AVAILABLE(ios(8.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
65 | @interface UIPresentationController : NSObject <UIAppearanceContainer, UITraitEnvironment, UIContentContainer, UIFocusEnvironment>
| `- note: 'UIPresentationController' has been explicitly marked unavailable here
66 |
67 | @property(nonatomic, strong, readonly) UIViewController *presentingViewController;
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/DismissingAnimator.swift:22:59: error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
20 | }
21 |
22 | func transitionDuration(using transitionContext: (any UIViewControllerContextTransitioning)?) -> TimeInterval {
| `- error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
23 | return animationDuration
24 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewControllerTransitioning.h:68:11: note: 'UIViewControllerContextTransitioning' has been explicitly marked unavailable here
66 |
67 | API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
68 | @protocol UIViewControllerContextTransitioning <NSObject>
| `- note: 'UIViewControllerContextTransitioning' has been explicitly marked unavailable here
69 |
70 | // The view in which the animated transition should take place.
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/DismissingAnimator.swift:26:57: error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
24 | }
25 |
26 | func animateTransition(using transitionContext: any UIViewControllerContextTransitioning) {
| `- error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
27 | guard let fromVC = transitionContext.viewController(forKey: .from) else {
28 | transitionContext.completeTransition(false)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewControllerTransitioning.h:68:11: note: 'UIViewControllerContextTransitioning' has been explicitly marked unavailable here
66 |
67 | API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
68 | @protocol UIViewControllerContextTransitioning <NSObject>
| `- note: 'UIViewControllerContextTransitioning' has been explicitly marked unavailable here
69 |
70 | // The view in which the animated transition should take place.
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/DismissingAnimator.swift:12:37: error: 'UIViewControllerAnimatedTransitioning' is unavailable in watchOS
10 | import SDWebImage
11 |
12 | class DismissingAnimator: NSObject, UIViewControllerAnimatedTransitioning {
| `- error: 'UIViewControllerAnimatedTransitioning' is unavailable in watchOS
13 | private let imageInfo: ImageInfo
14 | private let animationDuration: TimeInterval = 0.2
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewControllerTransitioning.h:137:11: note: 'UIViewControllerAnimatedTransitioning' has been explicitly marked unavailable here
135 |
136 | API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
137 | @protocol UIViewControllerAnimatedTransitioning <NSObject>
| `- note: 'UIViewControllerAnimatedTransitioning' has been explicitly marked unavailable here
138 |
139 | // This is used for percent driven interactive transitions, as well as for
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PanDirectionGestureRecognizer.swift:23:47: error: 'UITouch' is unavailable in watchOS
21 | }
22 |
23 | override func touchesMoved(_ touches: Set<UITouch>, with event: UIEvent) {
| `- error: 'UITouch' is unavailable in watchOS
24 | super.touchesMoved(touches, with: event)
25 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITouch.h:51:12: note: 'UITouch' has been explicitly marked unavailable here
49 |
50 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
51 | @interface UITouch : NSObject
| `- note: 'UITouch' has been explicitly marked unavailable here
52 |
53 | @property(nonatomic,readonly) NSTimeInterval timestamp;
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PanDirectionGestureRecognizer.swift:23:69: error: 'UIEvent' is unavailable in watchOS
21 | }
22 |
23 | override func touchesMoved(_ touches: Set<UITouch>, with event: UIEvent) {
| `- error: 'UIEvent' is unavailable in watchOS
24 | super.touchesMoved(touches, with: event)
25 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIEvent.h:62:12: note: 'UIEvent' has been explicitly marked unavailable here
60 |
61 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
62 | @interface UIEvent : NSObject
| `- note: 'UIEvent' has been explicitly marked unavailable here
63 |
64 | @property(nonatomic,readonly) UIEventType type API_AVAILABLE(ios(3.0));
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PanDirectionGestureRecognizer.swift:14:38: error: 'UIPanGestureRecognizer' is unavailable in watchOS
12 | }
13 |
14 | class PanDirectionGestureRecognizer: UIPanGestureRecognizer {
| `- error: 'UIPanGestureRecognizer' is unavailable in watchOS
15 |
16 | let direction: PanDirection
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIPanGestureRecognizer.h:31:12: note: 'UIPanGestureRecognizer' has been explicitly marked unavailable here
29 |
30 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
31 | @interface UIPanGestureRecognizer : UIGestureRecognizer
| `- note: 'UIPanGestureRecognizer' has been explicitly marked unavailable here
32 |
33 | @property (nonatomic) NSUInteger minimumNumberOfTouches API_UNAVAILABLE(tvos); // default is 1. the minimum number of touches required to match
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewCell.swift:18:26: error: 'UIScrollView' is unavailable in watchOS
16 | }
17 |
18 | open var scrollView: UIScrollView
| `- error: 'UIScrollView' is unavailable in watchOS
19 | public let imageView: CustomImageView
20 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIScrollView.h:87:12: note: 'UIScrollView' has been explicitly marked unavailable here
85 |
86 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
87 | @interface UIScrollView : UIView <NSCoding, UIFocusItemScrollableContainer>
| `- note: 'UIScrollView' has been explicitly marked unavailable here
88 |
89 | @property(nonatomic) CGPoint contentOffset; // default CGPointZero
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewCell.swift:125:51: error: 'UITapGestureRecognizer' is unavailable in watchOS
123 | }
124 |
125 | @objc public func doubleTapAction(recognizer: UITapGestureRecognizer) {
| `- error: 'UITapGestureRecognizer' is unavailable in watchOS
126 |
127 | if scrollView.zoomScale > scrollView.minimumZoomScale {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITapGestureRecognizer.h:23:12: note: 'UITapGestureRecognizer' has been explicitly marked unavailable here
21 |
22 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
23 | @interface UITapGestureRecognizer : UIGestureRecognizer
| `- note: 'UITapGestureRecognizer' has been explicitly marked unavailable here
24 |
25 | @property (nonatomic) NSUInteger numberOfTapsRequired; // Default is 1. The number of taps required to match
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewCell.swift:10:25: error: 'UICollectionViewCell' is unavailable in watchOS
8 | import UIKit
9 |
10 | class PhotoPreviewCell: UICollectionViewCell {
| `- error: 'UICollectionViewCell' is unavailable in watchOS
11 |
12 | var imageInfo: ImageInfo? {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UICollectionViewCell.h:65:12: note: 'UICollectionViewCell' has been explicitly marked unavailable here
63 |
64 | UIKIT_EXTERN API_AVAILABLE(ios(6.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
65 | @interface UICollectionViewCell : UICollectionReusableView
| `- note: 'UICollectionViewCell' has been explicitly marked unavailable here
66 |
67 | /// Returns the current configuration state for the cell.
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewCell.swift:228:47: error: 'UIScrollView' is unavailable in watchOS
226 | extension PhotoPreviewCell: UIScrollViewDelegate {
227 |
228 | public func viewForZooming(in scrollView: UIScrollView) -> UIView? {
| `- error: 'UIScrollView' is unavailable in watchOS
229 | return imageView
230 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIScrollView.h:87:12: note: 'UIScrollView' has been explicitly marked unavailable here
85 |
86 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
87 | @interface UIScrollView : UIView <NSCoding, UIFocusItemScrollableContainer>
| `- note: 'UIScrollView' has been explicitly marked unavailable here
88 |
89 | @property(nonatomic) CGPoint contentOffset; // default CGPointZero
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewCell.swift:228:64: error: 'UIView' is unavailable in watchOS
226 | extension PhotoPreviewCell: UIScrollViewDelegate {
227 |
228 | public func viewForZooming(in scrollView: UIScrollView) -> UIView? {
| `- error: 'UIView' is unavailable in watchOS
229 | return imageView
230 | }
/Applications/Xcode-27.0.0-Release.Candidate.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/PhotoPreview/PhotoPreviewCell.swift:232:49: error: 'UIScrollView' is unavailable in watchOS
230 | }
231 |
232 | public func scrollViewDidZoom(_ scrollView: UIScrollView) {
| `- error: 'UIScrollView' is unavailable in watchOS
233 |
234 | let imageViewSize = imageView.frame.size
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIScrollView.h:87:12: note: 'UIScrollView' has been explicitly marked unavailable here
85 |
86 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
87 | @interface UIScrollView : UIView <NSCoding, UIFocusItemScrollableContainer>
| `- note: 'UIScrollView' has been explicitly marked unavailable here
88 |
89 | @property(nonatomic) CGPoint contentOffset; // default CGPointZero
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewCell.swift:226:29: error: 'UIScrollViewDelegate' is unavailable in watchOS
224 |
225 | // MARK: UIScrollViewDelegate Methods
226 | extension PhotoPreviewCell: UIScrollViewDelegate {
| `- error: 'UIScrollViewDelegate' is unavailable in watchOS
227 |
228 | public func viewForZooming(in scrollView: UIScrollView) -> UIView? {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIScrollView.h:312:11: note: 'UIScrollViewDelegate' has been explicitly marked unavailable here
310 |
311 | API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
312 | @protocol UIScrollViewDelegate<NSObject>
| `- note: 'UIScrollViewDelegate' has been explicitly marked unavailable here
313 |
314 | @optional
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewViewController.swift:49:22: error: 'UIView' is unavailable in watchOS
47 | let frame:CGRect?
48 | let size: CGSize
49 | let contentMode: UIView.ContentMode
| `- error: 'UIView' is unavailable in watchOS
50 |
51 | public init(image: PhotoPreviewImageProtocol,
/Applications/Xcode-27.0.0-Release.Candidate.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/PhotoPreview/PhotoPreviewViewController.swift:54:23: error: 'UIView' is unavailable in watchOS
52 | frame:CGRect? = nil,
53 | size: CGSize,
54 | contentMode: UIView.ContentMode) {
| `- error: 'UIView' is unavailable in watchOS
55 | self.image = image
56 | self.contentMode = contentMode
/Applications/Xcode-27.0.0-Release.Candidate.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/PhotoPreview/PhotoPreviewViewController.swift:61:45: error: 'UIView' is unavailable in watchOS
59 | }
60 |
61 | static func objectFit(from contentMode: UIView.ContentMode) -> String {
| `- error: 'UIView' is unavailable in watchOS
62 | switch contentMode {
63 | case .scaleToFill:
/Applications/Xcode-27.0.0-Release.Candidate.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/PhotoPreview/PhotoPreviewViewController.swift:102:42: error: 'UICollectionView' is unavailable in watchOS
100 | public weak var delegate: PhotoPreviewDelegate?
101 |
102 | public lazy var imageCollectionView: UICollectionView = self.setupCollectionView()
| `- error: 'UICollectionView' is unavailable in watchOS
103 |
104 | public var numberOfImages: Int {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UICollectionView.h:362:12: note: 'UICollectionView' has been explicitly marked unavailable here
360 |
361 | UIKIT_EXTERN API_AVAILABLE(ios(6.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
362 | @interface UICollectionView : UIScrollView <UIDataSourceTranslating>
| `- note: 'UICollectionView' has been explicitly marked unavailable here
363 |
364 | - (instancetype)initWithFrame:(CGRect)frame collectionViewLayout:(UICollectionViewLayout *)layout NS_DESIGNATED_INITIALIZER;
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewViewController.swift:130:29: error: 'UICollectionViewFlowLayout' is unavailable in watchOS
128 | }
129 |
130 | private var flowLayout: UICollectionViewFlowLayout = UICollectionViewFlowLayout()
| `- error: 'UICollectionViewFlowLayout' is unavailable in watchOS
131 |
132 | // MARK: Lifecycle methods
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UICollectionViewFlowLayout.h:46:12: note: 'UICollectionViewFlowLayout' has been explicitly marked unavailable here
44 |
45 | UIKIT_EXTERN API_AVAILABLE(ios(6.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
46 | @interface UICollectionViewFlowLayout : UICollectionViewLayout
| `- note: 'UICollectionViewFlowLayout' has been explicitly marked unavailable here
47 |
48 | @property (nonatomic) CGFloat minimumLineSpacing;
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewViewController.swift:130:58: error: 'UICollectionViewFlowLayout' is unavailable in watchOS
128 | }
129 |
130 | private var flowLayout: UICollectionViewFlowLayout = UICollectionViewFlowLayout()
| `- error: 'UICollectionViewFlowLayout' is unavailable in watchOS
131 |
132 | // MARK: Lifecycle methods
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UICollectionViewFlowLayout.h:46:12: note: 'UICollectionViewFlowLayout' has been explicitly marked unavailable here
44 |
45 | UIKIT_EXTERN API_AVAILABLE(ios(6.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
46 | @interface UICollectionViewFlowLayout : UICollectionViewLayout
| `- note: 'UICollectionViewFlowLayout' has been explicitly marked unavailable here
47 |
48 | @property (nonatomic) CGFloat minimumLineSpacing;
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewViewController.swift:166:38: error: 'UIPanGestureRecognizer' is unavailable in watchOS
164 | private var originalPosition: CGPoint?
165 |
166 | @objc func wasDragged(_ gesture: UIPanGestureRecognizer) {
| `- error: 'UIPanGestureRecognizer' is unavailable in watchOS
167 | guard let imageView = gesture.view else { return }
168 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIPanGestureRecognizer.h:31:12: note: 'UIPanGestureRecognizer' has been explicitly marked unavailable here
29 |
30 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
31 | @interface UIPanGestureRecognizer : UIGestureRecognizer
| `- note: 'UIPanGestureRecognizer' has been explicitly marked unavailable here
32 |
33 | @property (nonatomic) NSUInteger minimumNumberOfTouches API_UNAVAILABLE(tvos); // default is 1. the minimum number of touches required to match
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewViewController.swift:203:51: error: 'UITapGestureRecognizer' is unavailable in watchOS
201 | }
202 |
203 | @objc public func singleTapAction(recognizer: UITapGestureRecognizer) {
| `- error: 'UITapGestureRecognizer' is unavailable in watchOS
204 | delegate?.didTapToClose(photoPreviewViewController: self)
205 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITapGestureRecognizer.h:23:12: note: 'UITapGestureRecognizer' has been explicitly marked unavailable here
21 |
22 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
23 | @interface UITapGestureRecognizer : UIGestureRecognizer
| `- note: 'UITapGestureRecognizer' has been explicitly marked unavailable here
24 |
25 | @property (nonatomic) NSUInteger numberOfTapsRequired; // Default is 1. The number of taps required to match
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewViewController.swift:209:43: error: 'UICollectionView' is unavailable in watchOS
207 | // MARK: Private Methods
208 |
209 | private func setupCollectionView() -> UICollectionView {
| `- error: 'UICollectionView' is unavailable in watchOS
210 | // Set up flow layout
211 | flowLayout.scrollDirection = UICollectionView.ScrollDirection.horizontal
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UICollectionView.h:362:12: note: 'UICollectionView' has been explicitly marked unavailable here
360 |
361 | UIKIT_EXTERN API_AVAILABLE(ios(6.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
362 | @interface UICollectionView : UIScrollView <UIDataSourceTranslating>
| `- note: 'UICollectionView' has been explicitly marked unavailable here
363 |
364 | - (instancetype)initWithFrame:(CGRect)frame collectionViewLayout:(UICollectionViewLayout *)layout NS_DESIGNATED_INITIALIZER;
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewViewController.swift:88:42: error: 'UIViewController' is unavailable in watchOS
86 | }
87 |
88 | public class PhotoPreviewViewController: UIViewController {
| `- error: 'UIViewController' is unavailable in watchOS
89 | var targetImage: Target?
90 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewController.h:104:12: note: 'UIViewController' has been explicitly marked unavailable here
102 |
103 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
104 | @interface UIViewController : UIResponder <NSCoding, UIAppearanceContainer, UITraitEnvironment, UIContentContainer, UIFocusEnvironment>
| `- note: 'UIViewController' has been explicitly marked unavailable here
105 |
106 | /*
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewViewController.swift:291:53: error: 'UICollectionView' is unavailable in watchOS
289 | extension PhotoPreviewViewController: UICollectionViewDataSource {
290 |
291 | public func numberOfSections(in collectionView: UICollectionView) -> Int {
| `- error: 'UICollectionView' is unavailable in watchOS
292 | return 1
293 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UICollectionView.h:362:12: note: 'UICollectionView' has been explicitly marked unavailable here
360 |
361 | UIKIT_EXTERN API_AVAILABLE(ios(6.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
362 | @interface UICollectionView : UIScrollView <UIDataSourceTranslating>
| `- note: 'UICollectionView' has been explicitly marked unavailable here
363 |
364 | - (instancetype)initWithFrame:(CGRect)frame collectionViewLayout:(UICollectionViewLayout *)layout NS_DESIGNATED_INITIALIZER;
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewViewController.swift:295:55: error: 'UICollectionView' is unavailable in watchOS
293 | }
294 |
295 | public func collectionView(_ imageCollectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
| `- error: 'UICollectionView' is unavailable in watchOS
296 | guard let imageInfos = targetImage?.imageInfos else {
297 | print("targetImage is nil or imageInfos is empty")
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UICollectionView.h:362:12: note: 'UICollectionView' has been explicitly marked unavailable here
360 |
361 | UIKIT_EXTERN API_AVAILABLE(ios(6.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
362 | @interface UICollectionView : UIScrollView <UIDataSourceTranslating>
| `- note: 'UICollectionView' has been explicitly marked unavailable here
363 |
364 | - (instancetype)initWithFrame:(CGRect)frame collectionViewLayout:(UICollectionViewLayout *)layout NS_DESIGNATED_INITIALIZER;
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewViewController.swift:311:55: error: 'UICollectionView' is unavailable in watchOS
309 | }
310 |
311 | public func collectionView(_ imageCollectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
| `- error: 'UICollectionView' is unavailable in watchOS
312 | let cell = imageCollectionView.dequeueReusableCell(withReuseIdentifier: "PhotoPreviewCell", for: indexPath) as! PhotoPreviewCell
313 | configurePhotoPreviewCell(cell, at: indexPath.item)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UICollectionView.h:362:12: note: 'UICollectionView' has been explicitly marked unavailable here
360 |
361 | UIKIT_EXTERN API_AVAILABLE(ios(6.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
362 | @interface UICollectionView : UIScrollView <UIDataSourceTranslating>
| `- note: 'UICollectionView' has been explicitly marked unavailable here
363 |
364 | - (instancetype)initWithFrame:(CGRect)frame collectionViewLayout:(UICollectionViewLayout *)layout NS_DESIGNATED_INITIALIZER;
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewViewController.swift:311:112: error: 'UICollectionViewCell' is unavailable in watchOS
309 | }
310 |
311 | public func collectionView(_ imageCollectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
| `- error: 'UICollectionViewCell' is unavailable in watchOS
312 | let cell = imageCollectionView.dequeueReusableCell(withReuseIdentifier: "PhotoPreviewCell", for: indexPath) as! PhotoPreviewCell
313 | configurePhotoPreviewCell(cell, at: indexPath.item)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UICollectionViewCell.h:65:12: note: 'UICollectionViewCell' has been explicitly marked unavailable here
63 |
64 | UIKIT_EXTERN API_AVAILABLE(ios(6.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
65 | @interface UICollectionViewCell : UICollectionReusableView
| `- note: 'UICollectionViewCell' has been explicitly marked unavailable here
66 |
67 | /// Returns the current configuration state for the cell.
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewViewController.swift:289:39: error: 'UICollectionViewDataSource' is unavailable in watchOS
287 |
288 | // MARK: UICollectionViewDataSource Methods
289 | extension PhotoPreviewViewController: UICollectionViewDataSource {
| `- error: 'UICollectionViewDataSource' is unavailable in watchOS
290 |
291 | public func numberOfSections(in collectionView: UICollectionView) -> Int {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UICollectionView.h:73:11: note: 'UICollectionViewDataSource' has been explicitly marked unavailable here
71 |
72 | API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
73 | @protocol UICollectionViewDataSource <NSObject>
| `- note: 'UICollectionViewDataSource' has been explicitly marked unavailable here
74 | @required
75 |
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewViewController.swift:322:56: error: 'UIGestureRecognizer' is unavailable in watchOS
320 | extension PhotoPreviewViewController: UIGestureRecognizerDelegate {
321 |
322 | public func gestureRecognizer(_ gestureRecognizer: UIGestureRecognizer, shouldRequireFailureOf otherGestureRecognizer: UIGestureRecognizer) -> Bool {
| `- error: 'UIGestureRecognizer' is unavailable in watchOS
323 |
324 | return otherGestureRecognizer is UITapGestureRecognizer && gestureRecognizer is UITapGestureRecognizer && otherGestureRecognizer.view is PhotoPreviewCell
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIGestureRecognizer.h:35:12: note: 'UIGestureRecognizer' has been explicitly marked unavailable here
33 |
34 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
35 | @interface UIGestureRecognizer : NSObject
| `- note: 'UIGestureRecognizer' has been explicitly marked unavailable here
36 |
37 | // Valid action method signatures:
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewViewController.swift:322:124: error: 'UIGestureRecognizer' is unavailable in watchOS
320 | extension PhotoPreviewViewController: UIGestureRecognizerDelegate {
321 |
322 | public func gestureRecognizer(_ gestureRecognizer: UIGestureRecognizer, shouldRequireFailureOf otherGestureRecognizer: UIGestureRecognizer) -> Bool {
| `- error: 'UIGestureRecognizer' is unavailable in watchOS
323 |
324 | return otherGestureRecognizer is UITapGestureRecognizer && gestureRecognizer is UITapGestureRecognizer && otherGestureRecognizer.view is PhotoPreviewCell
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIGestureRecognizer.h:35:12: note: 'UIGestureRecognizer' has been explicitly marked unavailable here
33 |
34 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
35 | @interface UIGestureRecognizer : NSObject
| `- note: 'UIGestureRecognizer' has been explicitly marked unavailable here
36 |
37 | // Valid action method signatures:
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewViewController.swift:320:39: error: 'UIGestureRecognizerDelegate' is unavailable in watchOS
318 |
319 | // MARK: UIGestureRecognizerDelegate Methods
320 | extension PhotoPreviewViewController: UIGestureRecognizerDelegate {
| `- error: 'UIGestureRecognizerDelegate' is unavailable in watchOS
321 |
322 | public func gestureRecognizer(_ gestureRecognizer: UIGestureRecognizer, shouldRequireFailureOf otherGestureRecognizer: UIGestureRecognizer) -> Bool {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIGestureRecognizer.h:91:11: note: 'UIGestureRecognizerDelegate' has been explicitly marked unavailable here
89 |
90 | API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
91 | @protocol UIGestureRecognizerDelegate <NSObject>
| `- note: 'UIGestureRecognizerDelegate' has been explicitly marked unavailable here
92 | @optional
93 | // called when a gesture recognizer attempts to transition out of UIGestureRecognizerStatePossible. returning NO causes it to transition to UIGestureRecognizerStateFailed
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewViewController.swift:342:64: error: 'UIViewController' is unavailable in watchOS
340 | extension PhotoPreviewViewController: UIViewControllerTransitioningDelegate {
341 |
342 | public func presentationController(forPresented presented: UIViewController, presenting: UIViewController?, source: UIViewController) -> UIPresentationController? {
| `- error: 'UIViewController' is unavailable in watchOS
343 | return DimmingPresentationController(presentedViewController: presented, presenting: presenting)
344 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewController.h:104:12: note: 'UIViewController' has been explicitly marked unavailable here
102 |
103 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
104 | @interface UIViewController : UIResponder <NSCoding, UIAppearanceContainer, UITraitEnvironment, UIContentContainer, UIFocusEnvironment>
| `- note: 'UIViewController' has been explicitly marked unavailable here
105 |
106 | /*
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewViewController.swift:342:94: error: 'UIViewController' is unavailable in watchOS
340 | extension PhotoPreviewViewController: UIViewControllerTransitioningDelegate {
341 |
342 | public func presentationController(forPresented presented: UIViewController, presenting: UIViewController?, source: UIViewController) -> UIPresentationController? {
| `- error: 'UIViewController' is unavailable in watchOS
343 | return DimmingPresentationController(presentedViewController: presented, presenting: presenting)
344 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewController.h:104:12: note: 'UIViewController' has been explicitly marked unavailable here
102 |
103 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
104 | @interface UIViewController : UIResponder <NSCoding, UIAppearanceContainer, UITraitEnvironment, UIContentContainer, UIFocusEnvironment>
| `- note: 'UIViewController' has been explicitly marked unavailable here
105 |
106 | /*
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewViewController.swift:342:121: error: 'UIViewController' is unavailable in watchOS
340 | extension PhotoPreviewViewController: UIViewControllerTransitioningDelegate {
341 |
342 | public func presentationController(forPresented presented: UIViewController, presenting: UIViewController?, source: UIViewController) -> UIPresentationController? {
| `- error: 'UIViewController' is unavailable in watchOS
343 | return DimmingPresentationController(presentedViewController: presented, presenting: presenting)
344 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewController.h:104:12: note: 'UIViewController' has been explicitly marked unavailable here
102 |
103 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
104 | @interface UIViewController : UIResponder <NSCoding, UIAppearanceContainer, UITraitEnvironment, UIContentContainer, UIFocusEnvironment>
| `- note: 'UIViewController' has been explicitly marked unavailable here
105 |
106 | /*
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewViewController.swift:342:142: error: 'UIPresentationController' is unavailable in watchOS
340 | extension PhotoPreviewViewController: UIViewControllerTransitioningDelegate {
341 |
342 | public func presentationController(forPresented presented: UIViewController, presenting: UIViewController?, source: UIViewController) -> UIPresentationController? {
| `- error: 'UIPresentationController' is unavailable in watchOS
343 | return DimmingPresentationController(presentedViewController: presented, presenting: presenting)
344 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIPresentationController.h:65:12: note: 'UIPresentationController' has been explicitly marked unavailable here
63 |
64 | UIKIT_EXTERN API_AVAILABLE(ios(8.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
65 | @interface UIPresentationController : NSObject <UIAppearanceContainer, UITraitEnvironment, UIContentContainer, UIFocusEnvironment>
| `- note: 'UIPresentationController' has been explicitly marked unavailable here
66 |
67 | @property(nonatomic, strong, readonly) UIViewController *presentingViewController;
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewViewController.swift:346:61: error: 'UIViewController' is unavailable in watchOS
344 | }
345 |
346 | public func animationController(forPresented presented: UIViewController, presenting: UIViewController, source: UIViewController) -> UIViewControllerAnimatedTransitioning? {
| `- error: 'UIViewController' is unavailable in watchOS
347 |
348 | guard let targetImage = self.targetImage else {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewController.h:104:12: note: 'UIViewController' has been explicitly marked unavailable here
102 |
103 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
104 | @interface UIViewController : UIResponder <NSCoding, UIAppearanceContainer, UITraitEnvironment, UIContentContainer, UIFocusEnvironment>
| `- note: 'UIViewController' has been explicitly marked unavailable here
105 |
106 | /*
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewViewController.swift:346:91: error: 'UIViewController' is unavailable in watchOS
344 | }
345 |
346 | public func animationController(forPresented presented: UIViewController, presenting: UIViewController, source: UIViewController) -> UIViewControllerAnimatedTransitioning? {
| `- error: 'UIViewController' is unavailable in watchOS
347 |
348 | guard let targetImage = self.targetImage else {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewController.h:104:12: note: 'UIViewController' has been explicitly marked unavailable here
102 |
103 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
104 | @interface UIViewController : UIResponder <NSCoding, UIAppearanceContainer, UITraitEnvironment, UIContentContainer, UIFocusEnvironment>
| `- note: 'UIViewController' has been explicitly marked unavailable here
105 |
106 | /*
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewViewController.swift:346:117: error: 'UIViewController' is unavailable in watchOS
344 | }
345 |
346 | public func animationController(forPresented presented: UIViewController, presenting: UIViewController, source: UIViewController) -> UIViewControllerAnimatedTransitioning? {
| `- error: 'UIViewController' is unavailable in watchOS
347 |
348 | guard let targetImage = self.targetImage else {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewController.h:104:12: note: 'UIViewController' has been explicitly marked unavailable here
102 |
103 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
104 | @interface UIViewController : UIResponder <NSCoding, UIAppearanceContainer, UITraitEnvironment, UIContentContainer, UIFocusEnvironment>
| `- note: 'UIViewController' has been explicitly marked unavailable here
105 |
106 | /*
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewViewController.swift:346:138: error: 'UIViewControllerAnimatedTransitioning' is unavailable in watchOS
344 | }
345 |
346 | public func animationController(forPresented presented: UIViewController, presenting: UIViewController, source: UIViewController) -> UIViewControllerAnimatedTransitioning? {
| `- error: 'UIViewControllerAnimatedTransitioning' is unavailable in watchOS
347 |
348 | guard let targetImage = self.targetImage else {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewControllerTransitioning.h:137:11: note: 'UIViewControllerAnimatedTransitioning' has been explicitly marked unavailable here
135 |
136 | API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
137 | @protocol UIViewControllerAnimatedTransitioning <NSObject>
| `- note: 'UIViewControllerAnimatedTransitioning' has been explicitly marked unavailable here
138 |
139 | // This is used for percent driven interactive transitions, as well as for
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewViewController.swift:356:61: error: 'UIViewController' is unavailable in watchOS
354 | return PresentingAnimator(pageIndex: targetImage.targetIndex, imageInfo: imageInfo)
355 | }
356 | public func animationController(forDismissed dismissed: UIViewController)
| `- error: 'UIViewController' is unavailable in watchOS
357 | -> UIViewControllerAnimatedTransitioning?
358 | {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewController.h:104:12: note: 'UIViewController' has been explicitly marked unavailable here
102 |
103 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
104 | @interface UIViewController : UIResponder <NSCoding, UIAppearanceContainer, UITraitEnvironment, UIContentContainer, UIFocusEnvironment>
| `- note: 'UIViewController' has been explicitly marked unavailable here
105 |
106 | /*
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewViewController.swift:357:12: error: 'UIViewControllerAnimatedTransitioning' is unavailable in watchOS
355 | }
356 | public func animationController(forDismissed dismissed: UIViewController)
357 | -> UIViewControllerAnimatedTransitioning?
| `- error: 'UIViewControllerAnimatedTransitioning' is unavailable in watchOS
358 | {
359 | guard let targetImage = self.targetImage else {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewControllerTransitioning.h:137:11: note: 'UIViewControllerAnimatedTransitioning' has been explicitly marked unavailable here
135 |
136 | API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
137 | @protocol UIViewControllerAnimatedTransitioning <NSObject>
| `- note: 'UIViewControllerAnimatedTransitioning' has been explicitly marked unavailable here
138 |
139 | // This is used for percent driven interactive transitions, as well as for
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewViewController.swift:340:39: error: 'UIViewControllerTransitioningDelegate' is unavailable in watchOS
338 |
339 | // MARK: 转场
340 | extension PhotoPreviewViewController: UIViewControllerTransitioningDelegate {
| `- error: 'UIViewControllerTransitioningDelegate' is unavailable in watchOS
341 |
342 | public func presentationController(forPresented presented: UIViewController, presenting: UIViewController?, source: UIViewController) -> UIPresentationController? {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewControllerTransitioning.h:180:11: note: 'UIViewControllerTransitioningDelegate' has been explicitly marked unavailable here
178 |
179 | API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
180 | @protocol UIViewControllerTransitioningDelegate <NSObject>
| `- note: 'UIViewControllerTransitioningDelegate' has been explicitly marked unavailable here
181 |
182 | @optional
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PresentingAnimator.swift:22:54: error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
20 | }
21 |
22 | func transitionDuration(using transitionContext: UIViewControllerContextTransitioning?) -> TimeInterval {
| `- error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
23 | return duration
24 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewControllerTransitioning.h:68:11: note: 'UIViewControllerContextTransitioning' has been explicitly marked unavailable here
66 |
67 | API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
68 | @protocol UIViewControllerContextTransitioning <NSObject>
| `- note: 'UIViewControllerContextTransitioning' has been explicitly marked unavailable here
69 |
70 | // The view in which the animated transition should take place.
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PresentingAnimator.swift:26:53: error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
24 | }
25 |
26 | func animateTransition(using transitionContext: UIViewControllerContextTransitioning) {
| `- error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
27 | guard let toView = transitionContext.view(forKey: .to),
28 | let toVC = transitionContext.viewController(forKey: .to)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewControllerTransitioning.h:68:11: note: 'UIViewControllerContextTransitioning' has been explicitly marked unavailable here
66 |
67 | API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
68 | @protocol UIViewControllerContextTransitioning <NSObject>
| `- note: 'UIViewControllerContextTransitioning' has been explicitly marked unavailable here
69 |
70 | // The view in which the animated transition should take place.
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PresentingAnimator.swift:11:37: error: 'UIViewControllerAnimatedTransitioning' is unavailable in watchOS
9 | import SDWebImage
10 |
11 | class PresentingAnimator: NSObject, UIViewControllerAnimatedTransitioning {
| `- error: 'UIViewControllerAnimatedTransitioning' is unavailable in watchOS
12 |
13 | private let imageInfo: ImageInfo
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewControllerTransitioning.h:137:11: note: 'UIViewControllerAnimatedTransitioning' has been explicitly marked unavailable here
135 |
136 | API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
137 | @protocol UIViewControllerAnimatedTransitioning <NSObject>
| `- note: 'UIViewControllerAnimatedTransitioning' has been explicitly marked unavailable here
138 |
139 | // This is used for percent driven interactive transitions, as well as for
Failed frontend command:
SwiftCompile normal arm64_32 (in target 'PhotoPreview' from project 'PhotoPreview')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift-frontend -frontend -emit-module -experimental-skip-non-inlinable-function-bodies-without-types /Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/CustomImageView.swift /Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/DimmingPresentationController.swift /Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/DismissingAnimator.swift /Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PanDirectionGestureRecognizer.swift /Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreview.swift /Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewCell.swift /Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewViewController.swift /Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PresentingAnimator.swift -target arm64_32-apple-watchos9.0 -disable-cross-import-overlay-search -load-resolved-plugin /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/lib/swift/host/plugins/libFoundationMacros.dylib\#/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/bin/swift-plugin-server\#FoundationMacros -load-resolved-plugin /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/lib/swift/host/plugins/libObservationMacros.dylib\#/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/bin/swift-plugin-server\#ObservationMacros -load-resolved-plugin /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/lib/swift/host/plugins/libSwiftMacros.dylib\#/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/bin/swift-plugin-server\#SwiftMacros -load-resolved-plugin /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/lib/swift/host/plugins/libSwiftUIMacros.dylib\#/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/bin/swift-plugin-server\#SwiftUIMacros -disable-implicit-swift-modules -Xcc -fno-implicit-modules -Xcc -fno-implicit-module-maps -explicit-swift-module-map-file /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/PhotoPreview.build/Debug-watchos/PhotoPreview-t.build/Objects-normal/arm64_32/PhotoPreview-dependencies-1.json -enable-objc-interop -sdk /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk -I /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-watchos -Isystem /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/lib -F /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-watchos/PackageFrameworks -F /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-watchos -F /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/Library/Frameworks -F /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/Developer/Library/Frameworks -module-cache-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SwiftExplicitPrecompiledModules -no-color-diagnostics -Xcc -fno-color-diagnostics -enable-testing -g -debug-info-format\=dwarf -dwarf-version\=4 -profile-generate -profile-coverage-mapping -swift-version 5 -Onone -D SWIFT_PACKAGE -D DEBUG -D SWIFT_MODULE_RESOURCE_BUNDLE_UNAVAILABLE -D Xcode -serialize-debugging-options -enable-experimental-feature DebugDescriptionMacro -empty-abi-descriptor -validate-clang-modules-once -clang-build-session-file /Users/admin/builder/spi-builder-workspace/.derivedData/ModuleCache.noindex/Session.modulevalidation -Xcc -working-directory -Xcc /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode -enable-anonymous-context-mangled-names -file-compilation-dir /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode -Xcc -fmodule-map-file\=/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/GeneratedModuleMaps-watchos/SDWebImage.modulemap -Xcc -D_LIBCPP_HARDENING_MODE\=_LIBCPP_HARDENING_MODE_DEBUG -Xcc -ivfsstatcache -Xcc /Users/admin/builder/spi-builder-workspace/.derivedData/SDKStatCaches.noindex/watchos27.0-24R360-e829b21a6f8c9b70876ba0858053c04477534ef55a1706bf4c1112bbb242f0a2.sdkstatcache -Xcc -fmodules-prune-interval\=86400 -Xcc -fmodules-prune-after\=345600 -Xcc -I/Users/admin/builder/spi-builder-workspace/.dependencies/checkouts/SDWebImage/SDWebImage/include -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/PhotoPreview.build/Debug-watchos/PhotoPreview-t.build/DerivedSources-normal/arm64_32 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/PhotoPreview.build/Debug-watchos/PhotoPreview-t.build/DerivedSources/arm64_32 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/PhotoPreview.build/Debug-watchos/PhotoPreview-t.build/DerivedSources -Xcc -DSWIFT_PACKAGE -Xcc -DDEBUG\=1 -no-auto-bridging-header-chaining -module-name PhotoPreview -package-name spi_builder_workspace -const-gather-protocols-file /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/PhotoPreview.build/Debug-watchos/PhotoPreview-t.build/Objects-normal/arm64_32/PhotoPreview_const_extract_protocols.json -disable-clang-spi -clang-target arm64_32-apple-watchos27.0 -target-sdk-version 27.0 -target-sdk-name watchos27.0 -in-process-plugin-server-path /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/host/libSwiftInProcPluginServer.dylib -emit-module-doc-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/PhotoPreview.build/Debug-watchos/PhotoPreview-t.build/Objects-normal/arm64_32/PhotoPreview.swiftdoc -emit-module-source-info-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/PhotoPreview.build/Debug-watchos/PhotoPreview-t.build/Objects-normal/arm64_32/PhotoPreview.swiftsourceinfo -emit-objc-header-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/PhotoPreview.build/Debug-watchos/PhotoPreview-t.build/Objects-normal/arm64_32/PhotoPreview-Swift.h -serialize-diagnostics-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/PhotoPreview.build/Debug-watchos/PhotoPreview-t.build/Objects-normal/arm64_32/PhotoPreview-primary-emit-module.dia -emit-dependencies-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/PhotoPreview.build/Debug-watchos/PhotoPreview-t.build/Objects-normal/arm64_32/PhotoPreview-primary-emit-module.d -parse-as-library -o /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/PhotoPreview.build/Debug-watchos/PhotoPreview-t.build/Objects-normal/arm64_32/PhotoPreview.swiftmodule -emit-abi-descriptor-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/PhotoPreview.build/Debug-watchos/PhotoPreview-t.build/Objects-normal/arm64_32/PhotoPreview.abi.json
SwiftCompile normal arm64_32 Compiling\ PanDirectionGestureRecognizer.swift /Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PanDirectionGestureRecognizer.swift (in target 'PhotoPreview' from project 'PhotoPreview')
SwiftCompile normal arm64_32 /Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PanDirectionGestureRecognizer.swift (in target 'PhotoPreview' from project 'PhotoPreview')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile PanDirectionGestureRecognizer.swift
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PanDirectionGestureRecognizer.swift:23:47: error: 'UITouch' is unavailable in watchOS
21 | }
22 |
23 | override func touchesMoved(_ touches: Set<UITouch>, with event: UIEvent) {
| `- error: 'UITouch' is unavailable in watchOS
24 | super.touchesMoved(touches, with: event)
25 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITouch.h:51:12: note: 'UITouch' has been explicitly marked unavailable here
49 |
50 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
51 | @interface UITouch : NSObject
| `- note: 'UITouch' has been explicitly marked unavailable here
52 |
53 | @property(nonatomic,readonly) NSTimeInterval timestamp;
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PanDirectionGestureRecognizer.swift:23:69: error: 'UIEvent' is unavailable in watchOS
21 | }
22 |
23 | override func touchesMoved(_ touches: Set<UITouch>, with event: UIEvent) {
| `- error: 'UIEvent' is unavailable in watchOS
24 | super.touchesMoved(touches, with: event)
25 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIEvent.h:62:12: note: 'UIEvent' has been explicitly marked unavailable here
60 |
61 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
62 | @interface UIEvent : NSObject
| `- note: 'UIEvent' has been explicitly marked unavailable here
63 |
64 | @property(nonatomic,readonly) UIEventType type API_AVAILABLE(ios(3.0));
SwiftCompile normal arm64_32 Compiling\ DimmingPresentationController.swift /Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/DimmingPresentationController.swift (in target 'PhotoPreview' from project 'PhotoPreview')
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/DimmingPresentationController.swift:12:27: error: 'UIView' is unavailable in watchOS
10 | class DimmingPresentationController: UIPresentationController {
11 |
12 | lazy var background = UIView(frame: .zero)
| `- error: 'UIView' is unavailable in watchOS
13 |
14 | override var shouldRemovePresentersView: Bool {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/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_32 /Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/DimmingPresentationController.swift (in target 'PhotoPreview' from project 'PhotoPreview')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile DimmingPresentationController.swift
SwiftCompile normal arm64 Compiling\ DimmingPresentationController.swift /Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/DimmingPresentationController.swift (in target 'PhotoPreview' from project 'PhotoPreview')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/DimmingPresentationController.swift (in target 'PhotoPreview' from project 'PhotoPreview')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile DimmingPresentationController.swift
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/DimmingPresentationController.swift:12:27: error: 'UIView' is unavailable in watchOS
10 | class DimmingPresentationController: UIPresentationController {
11 |
12 | lazy var background = UIView(frame: .zero)
| `- error: 'UIView' is unavailable in watchOS
13 |
14 | override var shouldRemovePresentersView: Bool {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/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_32 Compiling\ PresentingAnimator.swift /Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PresentingAnimator.swift (in target 'PhotoPreview' from project 'PhotoPreview')
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PresentingAnimator.swift:22:54: error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
20 | }
21 |
22 | func transitionDuration(using transitionContext: UIViewControllerContextTransitioning?) -> TimeInterval {
| `- error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
23 | return duration
24 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewControllerTransitioning.h:68:11: note: 'UIViewControllerContextTransitioning' has been explicitly marked unavailable here
66 |
67 | API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
68 | @protocol UIViewControllerContextTransitioning <NSObject>
| `- note: 'UIViewControllerContextTransitioning' has been explicitly marked unavailable here
69 |
70 | // The view in which the animated transition should take place.
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PresentingAnimator.swift:26:53: error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
24 | }
25 |
26 | func animateTransition(using transitionContext: UIViewControllerContextTransitioning) {
| `- error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
27 | guard let toView = transitionContext.view(forKey: .to),
28 | let toVC = transitionContext.viewController(forKey: .to)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewControllerTransitioning.h:68:11: note: 'UIViewControllerContextTransitioning' has been explicitly marked unavailable here
66 |
67 | API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
68 | @protocol UIViewControllerContextTransitioning <NSObject>
| `- note: 'UIViewControllerContextTransitioning' has been explicitly marked unavailable here
69 |
70 | // The view in which the animated transition should take place.
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PresentingAnimator.swift:11:37: error: 'UIViewControllerAnimatedTransitioning' is unavailable in watchOS
9 | import SDWebImage
10 |
11 | class PresentingAnimator: NSObject, UIViewControllerAnimatedTransitioning {
| `- error: 'UIViewControllerAnimatedTransitioning' is unavailable in watchOS
12 |
13 | private let imageInfo: ImageInfo
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewControllerTransitioning.h:137:11: note: 'UIViewControllerAnimatedTransitioning' has been explicitly marked unavailable here
135 |
136 | API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
137 | @protocol UIViewControllerAnimatedTransitioning <NSObject>
| `- note: 'UIViewControllerAnimatedTransitioning' has been explicitly marked unavailable here
138 |
139 | // This is used for percent driven interactive transitions, as well as for
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PresentingAnimator.swift:27:60: error: 'to' is unavailable in watchOS
25 |
26 | func animateTransition(using transitionContext: UIViewControllerContextTransitioning) {
27 | guard let toView = transitionContext.view(forKey: .to),
| `- error: 'to' is unavailable in watchOS
28 | let toVC = transitionContext.viewController(forKey: .to)
29 | else {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewControllerTransitioning.h:27:47: note: 'to' has been explicitly marked unavailable here
25 |
26 | UIKIT_EXTERN UITransitionContextViewKey const UITransitionContextFromViewKey API_UNAVAILABLE(watchos) NS_SWIFT_NAME(from) API_AVAILABLE(ios(8.0));
27 | UIKIT_EXTERN UITransitionContextViewKey const UITransitionContextToViewKey API_UNAVAILABLE(watchos) NS_SWIFT_NAME(to) API_AVAILABLE(ios(8.0));
| `- note: 'to' has been explicitly marked unavailable here
28 |
29 |
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PresentingAnimator.swift:28:66: error: 'to' is unavailable in watchOS
26 | func animateTransition(using transitionContext: UIViewControllerContextTransitioning) {
27 | guard let toView = transitionContext.view(forKey: .to),
28 | let toVC = transitionContext.viewController(forKey: .to)
| `- error: 'to' is unavailable in watchOS
29 | else {
30 | transitionContext.completeTransition(false)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewControllerTransitioning.h:24:57: note: 'to' has been explicitly marked unavailable here
22 |
23 | UIKIT_EXTERN UITransitionContextViewControllerKey const UITransitionContextFromViewControllerKey API_UNAVAILABLE(watchos) NS_SWIFT_NAME(from) API_AVAILABLE(ios(7.0));
24 | UIKIT_EXTERN UITransitionContextViewControllerKey const UITransitionContextToViewControllerKey API_UNAVAILABLE(watchos) NS_SWIFT_NAME(to) API_AVAILABLE(ios(7.0));
| `- note: 'to' has been explicitly marked unavailable here
25 |
26 | UIKIT_EXTERN UITransitionContextViewKey const UITransitionContextFromViewKey API_UNAVAILABLE(watchos) NS_SWIFT_NAME(from) API_AVAILABLE(ios(8.0));
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PresentingAnimator.swift:35:29: error: 'UIImageView' is unavailable in watchOS
33 |
34 | var beginFrame = imageInfo.frame!
35 | let viewToAnimate = UIImageView(frame: beginFrame)
| `- error: 'UIImageView' is unavailable in watchOS
36 | viewToAnimate.clipsToBounds = true
37 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIImageView.h:21:12: note: 'UIImageView' has been explicitly marked unavailable here
19 |
20 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
21 | @interface UIImageView : UIView
| `- note: 'UIImageView' has been explicitly marked unavailable here
22 |
23 | - (instancetype)initWithImage:(nullable UIImage *)image;
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PresentingAnimator.swift:47:31: error: value of type 'UIImageView' has no member 'sd_setImage'
45 | } else {
46 | guard let u = URL(string: source.url ) else { return }
47 | viewToAnimate.sd_setImage(with: u)
| `- error: value of type 'UIImageView' has no member 'sd_setImage'
48 | }
49 | }
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PresentingAnimator.swift:52:47: error: 'containerView' is unavailable in watchOS
50 | viewToAnimate.contentMode = imageInfo.contentMode
51 |
52 | let containerView = transitionContext.containerView
| `- error: 'containerView' is unavailable in watchOS
53 | containerView.addSubview(toView)
54 | containerView.addSubview(viewToAnimate)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewControllerTransitioning.h:71:40: note: 'containerView' has been explicitly marked unavailable here
69 |
70 | // The view in which the animated transition should take place.
71 | @property(nonatomic, readonly) UIView *containerView API_UNAVAILABLE(watchos);
| `- note: 'containerView' has been explicitly marked unavailable here
72 |
73 | // Most of the time this is YES. For custom transitions that use the new UIModalPresentationCustom
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PresentingAnimator.swift:59:69: warning: left side of nil coalescing operator '??' has non-optional type 'CGSize', so the right side is never used
57 |
58 | // finalSize 获取的优先级 viewToAnimate.image?.size > imageInfo.size > .zero
59 | let finalSize = viewToAnimate.image?.size ?? imageInfo.size ?? .zero
| `- warning: left side of nil coalescing operator '??' has non-optional type 'CGSize', so the right side is never used
60 | // 结果frame: 比例以保持内容的宽高比,同时确保内容完整地填入视图边界而不会超出
61 | let finalFrame = PhotoPreviewCell.calculateAspectFitRect(for: finalSize)
SwiftCompile normal arm64_32 /Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PresentingAnimator.swift (in target 'PhotoPreview' from project 'PhotoPreview')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile PresentingAnimator.swift
SwiftCompile normal arm64_32 Compiling\ DismissingAnimator.swift /Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/DismissingAnimator.swift (in target 'PhotoPreview' from project 'PhotoPreview')
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/DismissingAnimator.swift:22:59: error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
20 | }
21 |
22 | func transitionDuration(using transitionContext: (any UIViewControllerContextTransitioning)?) -> TimeInterval {
| `- error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
23 | return animationDuration
24 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewControllerTransitioning.h:68:11: note: 'UIViewControllerContextTransitioning' has been explicitly marked unavailable here
66 |
67 | API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
68 | @protocol UIViewControllerContextTransitioning <NSObject>
| `- note: 'UIViewControllerContextTransitioning' has been explicitly marked unavailable here
69 |
70 | // The view in which the animated transition should take place.
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/DismissingAnimator.swift:26:57: error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
24 | }
25 |
26 | func animateTransition(using transitionContext: any UIViewControllerContextTransitioning) {
| `- error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
27 | guard let fromVC = transitionContext.viewController(forKey: .from) else {
28 | transitionContext.completeTransition(false)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewControllerTransitioning.h:68:11: note: 'UIViewControllerContextTransitioning' has been explicitly marked unavailable here
66 |
67 | API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
68 | @protocol UIViewControllerContextTransitioning <NSObject>
| `- note: 'UIViewControllerContextTransitioning' has been explicitly marked unavailable here
69 |
70 | // The view in which the animated transition should take place.
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/DismissingAnimator.swift:12:37: error: 'UIViewControllerAnimatedTransitioning' is unavailable in watchOS
10 | import SDWebImage
11 |
12 | class DismissingAnimator: NSObject, UIViewControllerAnimatedTransitioning {
| `- error: 'UIViewControllerAnimatedTransitioning' is unavailable in watchOS
13 | private let imageInfo: ImageInfo
14 | private let animationDuration: TimeInterval = 0.2
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewControllerTransitioning.h:137:11: note: 'UIViewControllerAnimatedTransitioning' has been explicitly marked unavailable here
135 |
136 | API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
137 | @protocol UIViewControllerAnimatedTransitioning <NSObject>
| `- note: 'UIViewControllerAnimatedTransitioning' has been explicitly marked unavailable here
138 |
139 | // This is used for percent driven interactive transitions, as well as for
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/DismissingAnimator.swift:27:70: error: 'from' is unavailable in watchOS
25 |
26 | func animateTransition(using transitionContext: any UIViewControllerContextTransitioning) {
27 | guard let fromVC = transitionContext.viewController(forKey: .from) else {
| `- error: 'from' is unavailable in watchOS
28 | transitionContext.completeTransition(false)
29 | return
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewControllerTransitioning.h:23:57: note: 'from' has been explicitly marked unavailable here
21 | // that are created by the system.
22 |
23 | UIKIT_EXTERN UITransitionContextViewControllerKey const UITransitionContextFromViewControllerKey API_UNAVAILABLE(watchos) NS_SWIFT_NAME(from) API_AVAILABLE(ios(7.0));
| `- note: 'from' has been explicitly marked unavailable here
24 | UIKIT_EXTERN UITransitionContextViewControllerKey const UITransitionContextToViewControllerKey API_UNAVAILABLE(watchos) NS_SWIFT_NAME(to) API_AVAILABLE(ios(7.0));
25 |
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/DismissingAnimator.swift:32:47: error: 'containerView' is unavailable in watchOS
30 | }
31 |
32 | let containerView = transitionContext.containerView
| `- error: 'containerView' is unavailable in watchOS
33 |
34 | guard let previewViewController = fromVC as? PhotoPreviewViewController,
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewControllerTransitioning.h:71:40: note: 'containerView' has been explicitly marked unavailable here
69 |
70 | // The view in which the animated transition should take place.
71 | @property(nonatomic, readonly) UIView *containerView API_UNAVAILABLE(watchos);
| `- note: 'containerView' has been explicitly marked unavailable here
72 |
73 | // Most of the time this is YES. For custom transitions that use the new UIModalPresentationCustom
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/DismissingAnimator.swift:41:98: error: 'UIApplication' is unavailable in watchOS
39 |
40 | // Begin Frame
41 | let beginFrame = originCell.imageView.superview?.convert(originCell.imageView.frame, to: UIApplication.shared.windows.first) ?? CGRect.zero
| `- error: 'UIApplication' is unavailable in watchOS
42 |
43 | let viewToAnimate: UIImageView = UIImageView()
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIApplication.h:85:12: note: 'UIApplication' has been explicitly marked unavailable here
83 |
84 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
85 | @interface UIApplication : UIResponder
| `- note: 'UIApplication' has been explicitly marked unavailable here
86 |
87 | @property(class, nonatomic, readonly) UIApplication *sharedApplication NS_EXTENSION_UNAVAILABLE_IOS("Use view controller based solutions where appropriate instead.");
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/DismissingAnimator.swift:41:119: error: 'windows' is unavailable in watchOS
39 |
40 | // Begin Frame
41 | let beginFrame = originCell.imageView.superview?.convert(originCell.imageView.frame, to: UIApplication.shared.windows.first) ?? CGRect.zero
| `- error: 'windows' is unavailable in watchOS
42 |
43 | let viewToAnimate: UIImageView = UIImageView()
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIApplication.h:109:62: note: 'windows' has been explicitly marked unavailable here
107 |
108 | @property(nullable, nonatomic,readonly) UIWindow *keyWindow API_DEPRECATED("Should not be used for applications that support multiple scenes as it returns a key window across all connected scenes", ios(2.0, 13.0)) API_UNAVAILABLE(visionos, watchos);
109 | @property(nonatomic,readonly) NSArray<__kindof UIWindow *> *windows API_DEPRECATED("Use UIWindowScene.windows on a relevant window scene instead", ios(2.0, 15.0), visionos(1.0, 1.0)) API_UNAVAILABLE(watchos);
| `- note: 'windows' has been explicitly marked unavailable here
110 |
111 | - (BOOL)sendAction:(SEL)action to:(nullable id)target from:(nullable id)sender forEvent:(nullable UIEvent *)event;
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/DismissingAnimator.swift:43:28: error: 'UIImageView' is unavailable in watchOS
41 | let beginFrame = originCell.imageView.superview?.convert(originCell.imageView.frame, to: UIApplication.shared.windows.first) ?? CGRect.zero
42 |
43 | let viewToAnimate: UIImageView = UIImageView()
| `- error: 'UIImageView' is unavailable in watchOS
44 | viewToAnimate.contentMode = .scaleAspectFit
45 | viewToAnimate.frame = beginFrame
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIImageView.h:21:12: note: 'UIImageView' has been explicitly marked unavailable here
19 |
20 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
21 | @interface UIImageView : UIView
| `- note: 'UIImageView' has been explicitly marked unavailable here
22 |
23 | - (instancetype)initWithImage:(nullable UIImage *)image;
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/DismissingAnimator.swift:43:42: error: 'UIImageView' is unavailable in watchOS
41 | let beginFrame = originCell.imageView.superview?.convert(originCell.imageView.frame, to: UIApplication.shared.windows.first) ?? CGRect.zero
42 |
43 | let viewToAnimate: UIImageView = UIImageView()
| `- error: 'UIImageView' is unavailable in watchOS
44 | viewToAnimate.contentMode = .scaleAspectFit
45 | viewToAnimate.frame = beginFrame
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIImageView.h:21:12: note: 'UIImageView' has been explicitly marked unavailable here
19 |
20 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
21 | @interface UIImageView : UIView
| `- note: 'UIImageView' has been explicitly marked unavailable here
22 |
23 | - (instancetype)initWithImage:(nullable UIImage *)image;
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/DismissingAnimator.swift:43:42: error: 'init()' is unavailable in watchOS
41 | let beginFrame = originCell.imageView.superview?.convert(originCell.imageView.frame, to: UIApplication.shared.windows.first) ?? CGRect.zero
42 |
43 | let viewToAnimate: UIImageView = UIImageView()
| `- error: 'init()' is unavailable in watchOS
44 | viewToAnimate.contentMode = .scaleAspectFit
45 | viewToAnimate.frame = beginFrame
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:158:1: note: 'init()' has been explicitly marked unavailable here
156 | - (instancetype)initWithFrame:(CGRect)frame NS_DESIGNATED_INITIALIZER;
157 | - (nullable instancetype)initWithCoder:(NSCoder *)coder NS_DESIGNATED_INITIALIZER;
158 | - (instancetype)init API_AVAILABLE(ios(2.0), tvos(9.0), visionos(1.0)) API_UNAVAILABLE(watchos);
| `- note: 'init()' has been explicitly marked unavailable here
159 |
160 | @property(nonatomic,getter=isUserInteractionEnabled) BOOL userInteractionEnabled; // default is YES. if set to NO, user events (touch, keys) are ignored and removed from the event queue.
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/DismissingAnimator.swift:66:9: error: 'UIView' is unavailable in watchOS
64 |
65 | originCell.isHidden = true
66 | UIView.animate(
| `- error: 'UIView' is unavailable in watchOS
67 | withDuration: animationDuration,
68 | animations: {
/Applications/Xcode-27.0.0-Release.Candidate.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_32 /Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/DismissingAnimator.swift (in target 'PhotoPreview' from project 'PhotoPreview')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile DismissingAnimator.swift
SwiftCompile normal arm64 Compiling\ PhotoPreview.swift /Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreview.swift (in target 'PhotoPreview' from project 'PhotoPreview')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreview.swift (in target 'PhotoPreview' from project 'PhotoPreview')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile PhotoPreview.swift
SwiftEmitModule normal arm64 Emitting\ module\ for\ PhotoPreview (in target 'PhotoPreview' from project 'PhotoPreview')
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/CustomImageView.swift:7:30: error: 'UIActivityIndicatorView' is unavailable in watchOS
5 |
6 | private var imageURL: String? = nil
7 | private var loadingView: UIActivityIndicatorView = UIActivityIndicatorView(style: .medium)
| `- error: 'UIActivityIndicatorView' is unavailable in watchOS
8 |
9 | private func setupLoadingIndicator() {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIActivityIndicatorView.h:24:12: note: 'UIActivityIndicatorView' has been explicitly marked unavailable here
22 |
23 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
24 | @interface UIActivityIndicatorView : UIView <NSCoding>
| `- note: 'UIActivityIndicatorView' has been explicitly marked unavailable here
25 |
26 | - (instancetype)initWithActivityIndicatorStyle:(UIActivityIndicatorViewStyle)style NS_DESIGNATED_INITIALIZER; // sizes the view according to the style
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/CustomImageView.swift:7:56: error: 'UIActivityIndicatorView' is unavailable in watchOS
5 |
6 | private var imageURL: String? = nil
7 | private var loadingView: UIActivityIndicatorView = UIActivityIndicatorView(style: .medium)
| `- error: 'UIActivityIndicatorView' is unavailable in watchOS
8 |
9 | private func setupLoadingIndicator() {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIActivityIndicatorView.h:24:12: note: 'UIActivityIndicatorView' has been explicitly marked unavailable here
22 |
23 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
24 | @interface UIActivityIndicatorView : UIView <NSCoding>
| `- note: 'UIActivityIndicatorView' has been explicitly marked unavailable here
25 |
26 | - (instancetype)initWithActivityIndicatorStyle:(UIActivityIndicatorViewStyle)style NS_DESIGNATED_INITIALIZER; // sizes the view according to the style
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/CustomImageView.swift:7:88: error: 'medium' is unavailable in watchOS
5 |
6 | private var imageURL: String? = nil
7 | private var loadingView: UIActivityIndicatorView = UIActivityIndicatorView(style: .medium)
| `- error: 'medium' is unavailable in watchOS
8 |
9 | private func setupLoadingIndicator() {
UIKit.UIActivityIndicatorView.Style.medium:4:10: note: 'medium' has been explicitly marked unavailable here
2 | enum Style {
3 | @available(watchOS, unavailable)
4 | case medium }
| `- note: 'medium' has been explicitly marked unavailable here
5 | }
6 |
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/CustomImageView.swift:4:24: error: 'UIImageView' is unavailable in watchOS
2 | import UIKit
3 |
4 | class CustomImageView: UIImageView {
| `- error: 'UIImageView' is unavailable in watchOS
5 |
6 | private var imageURL: String? = nil
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIImageView.h:21:12: note: 'UIImageView' has been explicitly marked unavailable here
19 |
20 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
21 | @interface UIImageView : UIView
| `- note: 'UIImageView' has been explicitly marked unavailable here
22 |
23 | - (instancetype)initWithImage:(nullable UIImage *)image;
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/DimmingPresentationController.swift:12:27: error: 'UIView' is unavailable in watchOS
10 | class DimmingPresentationController: UIPresentationController {
11 |
12 | lazy var background = UIView(frame: .zero)
| `- error: 'UIView' is unavailable in watchOS
13 |
14 | override var shouldRemovePresentersView: Bool {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/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/PhotoPreview/DimmingPresentationController.swift:10:38: error: 'UIPresentationController' is unavailable in watchOS
8 | import UIKit
9 |
10 | class DimmingPresentationController: UIPresentationController {
| `- error: 'UIPresentationController' is unavailable in watchOS
11 |
12 | lazy var background = UIView(frame: .zero)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIPresentationController.h:65:12: note: 'UIPresentationController' has been explicitly marked unavailable here
63 |
64 | UIKIT_EXTERN API_AVAILABLE(ios(8.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
65 | @interface UIPresentationController : NSObject <UIAppearanceContainer, UITraitEnvironment, UIContentContainer, UIFocusEnvironment>
| `- note: 'UIPresentationController' has been explicitly marked unavailable here
66 |
67 | @property(nonatomic, strong, readonly) UIViewController *presentingViewController;
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/DismissingAnimator.swift:22:59: error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
20 | }
21 |
22 | func transitionDuration(using transitionContext: (any UIViewControllerContextTransitioning)?) -> TimeInterval {
| `- error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
23 | return animationDuration
24 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewControllerTransitioning.h:68:11: note: 'UIViewControllerContextTransitioning' has been explicitly marked unavailable here
66 |
67 | API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
68 | @protocol UIViewControllerContextTransitioning <NSObject>
| `- note: 'UIViewControllerContextTransitioning' has been explicitly marked unavailable here
69 |
70 | // The view in which the animated transition should take place.
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/DismissingAnimator.swift:26:57: error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
24 | }
25 |
26 | func animateTransition(using transitionContext: any UIViewControllerContextTransitioning) {
| `- error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
27 | guard let fromVC = transitionContext.viewController(forKey: .from) else {
28 | transitionContext.completeTransition(false)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewControllerTransitioning.h:68:11: note: 'UIViewControllerContextTransitioning' has been explicitly marked unavailable here
66 |
67 | API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
68 | @protocol UIViewControllerContextTransitioning <NSObject>
| `- note: 'UIViewControllerContextTransitioning' has been explicitly marked unavailable here
69 |
70 | // The view in which the animated transition should take place.
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/DismissingAnimator.swift:12:37: error: 'UIViewControllerAnimatedTransitioning' is unavailable in watchOS
10 | import SDWebImage
11 |
12 | class DismissingAnimator: NSObject, UIViewControllerAnimatedTransitioning {
| `- error: 'UIViewControllerAnimatedTransitioning' is unavailable in watchOS
13 | private let imageInfo: ImageInfo
14 | private let animationDuration: TimeInterval = 0.2
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewControllerTransitioning.h:137:11: note: 'UIViewControllerAnimatedTransitioning' has been explicitly marked unavailable here
135 |
136 | API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
137 | @protocol UIViewControllerAnimatedTransitioning <NSObject>
| `- note: 'UIViewControllerAnimatedTransitioning' has been explicitly marked unavailable here
138 |
139 | // This is used for percent driven interactive transitions, as well as for
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PanDirectionGestureRecognizer.swift:23:47: error: 'UITouch' is unavailable in watchOS
21 | }
22 |
23 | override func touchesMoved(_ touches: Set<UITouch>, with event: UIEvent) {
| `- error: 'UITouch' is unavailable in watchOS
24 | super.touchesMoved(touches, with: event)
25 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITouch.h:51:12: note: 'UITouch' has been explicitly marked unavailable here
49 |
50 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
51 | @interface UITouch : NSObject
| `- note: 'UITouch' has been explicitly marked unavailable here
52 |
53 | @property(nonatomic,readonly) NSTimeInterval timestamp;
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PanDirectionGestureRecognizer.swift:23:69: error: 'UIEvent' is unavailable in watchOS
21 | }
22 |
23 | override func touchesMoved(_ touches: Set<UITouch>, with event: UIEvent) {
| `- error: 'UIEvent' is unavailable in watchOS
24 | super.touchesMoved(touches, with: event)
25 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIEvent.h:62:12: note: 'UIEvent' has been explicitly marked unavailable here
60 |
61 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
62 | @interface UIEvent : NSObject
| `- note: 'UIEvent' has been explicitly marked unavailable here
63 |
64 | @property(nonatomic,readonly) UIEventType type API_AVAILABLE(ios(3.0));
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PanDirectionGestureRecognizer.swift:14:38: error: 'UIPanGestureRecognizer' is unavailable in watchOS
12 | }
13 |
14 | class PanDirectionGestureRecognizer: UIPanGestureRecognizer {
| `- error: 'UIPanGestureRecognizer' is unavailable in watchOS
15 |
16 | let direction: PanDirection
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIPanGestureRecognizer.h:31:12: note: 'UIPanGestureRecognizer' has been explicitly marked unavailable here
29 |
30 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
31 | @interface UIPanGestureRecognizer : UIGestureRecognizer
| `- note: 'UIPanGestureRecognizer' has been explicitly marked unavailable here
32 |
33 | @property (nonatomic) NSUInteger minimumNumberOfTouches API_UNAVAILABLE(tvos); // default is 1. the minimum number of touches required to match
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewCell.swift:18:26: error: 'UIScrollView' is unavailable in watchOS
16 | }
17 |
18 | open var scrollView: UIScrollView
| `- error: 'UIScrollView' is unavailable in watchOS
19 | public let imageView: CustomImageView
20 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIScrollView.h:87:12: note: 'UIScrollView' has been explicitly marked unavailable here
85 |
86 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
87 | @interface UIScrollView : UIView <NSCoding, UIFocusItemScrollableContainer>
| `- note: 'UIScrollView' has been explicitly marked unavailable here
88 |
89 | @property(nonatomic) CGPoint contentOffset; // default CGPointZero
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewCell.swift:125:51: error: 'UITapGestureRecognizer' is unavailable in watchOS
123 | }
124 |
125 | @objc public func doubleTapAction(recognizer: UITapGestureRecognizer) {
| `- error: 'UITapGestureRecognizer' is unavailable in watchOS
126 |
127 | if scrollView.zoomScale > scrollView.minimumZoomScale {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITapGestureRecognizer.h:23:12: note: 'UITapGestureRecognizer' has been explicitly marked unavailable here
21 |
22 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
23 | @interface UITapGestureRecognizer : UIGestureRecognizer
| `- note: 'UITapGestureRecognizer' has been explicitly marked unavailable here
24 |
25 | @property (nonatomic) NSUInteger numberOfTapsRequired; // Default is 1. The number of taps required to match
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewCell.swift:10:25: error: 'UICollectionViewCell' is unavailable in watchOS
8 | import UIKit
9 |
10 | class PhotoPreviewCell: UICollectionViewCell {
| `- error: 'UICollectionViewCell' is unavailable in watchOS
11 |
12 | var imageInfo: ImageInfo? {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UICollectionViewCell.h:65:12: note: 'UICollectionViewCell' has been explicitly marked unavailable here
63 |
64 | UIKIT_EXTERN API_AVAILABLE(ios(6.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
65 | @interface UICollectionViewCell : UICollectionReusableView
| `- note: 'UICollectionViewCell' has been explicitly marked unavailable here
66 |
67 | /// Returns the current configuration state for the cell.
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewCell.swift:228:47: error: 'UIScrollView' is unavailable in watchOS
226 | extension PhotoPreviewCell: UIScrollViewDelegate {
227 |
228 | public func viewForZooming(in scrollView: UIScrollView) -> UIView? {
| `- error: 'UIScrollView' is unavailable in watchOS
229 | return imageView
230 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIScrollView.h:87:12: note: 'UIScrollView' has been explicitly marked unavailable here
85 |
86 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
87 | @interface UIScrollView : UIView <NSCoding, UIFocusItemScrollableContainer>
| `- note: 'UIScrollView' has been explicitly marked unavailable here
88 |
89 | @property(nonatomic) CGPoint contentOffset; // default CGPointZero
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewCell.swift:228:64: error: 'UIView' is unavailable in watchOS
226 | extension PhotoPreviewCell: UIScrollViewDelegate {
227 |
228 | public func viewForZooming(in scrollView: UIScrollView) -> UIView? {
| `- error: 'UIView' is unavailable in watchOS
229 | return imageView
230 | }
/Applications/Xcode-27.0.0-Release.Candidate.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/PhotoPreview/PhotoPreviewCell.swift:232:49: error: 'UIScrollView' is unavailable in watchOS
230 | }
231 |
232 | public func scrollViewDidZoom(_ scrollView: UIScrollView) {
| `- error: 'UIScrollView' is unavailable in watchOS
233 |
234 | let imageViewSize = imageView.frame.size
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIScrollView.h:87:12: note: 'UIScrollView' has been explicitly marked unavailable here
85 |
86 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
87 | @interface UIScrollView : UIView <NSCoding, UIFocusItemScrollableContainer>
| `- note: 'UIScrollView' has been explicitly marked unavailable here
88 |
89 | @property(nonatomic) CGPoint contentOffset; // default CGPointZero
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewCell.swift:226:29: error: 'UIScrollViewDelegate' is unavailable in watchOS
224 |
225 | // MARK: UIScrollViewDelegate Methods
226 | extension PhotoPreviewCell: UIScrollViewDelegate {
| `- error: 'UIScrollViewDelegate' is unavailable in watchOS
227 |
228 | public func viewForZooming(in scrollView: UIScrollView) -> UIView? {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIScrollView.h:312:11: note: 'UIScrollViewDelegate' has been explicitly marked unavailable here
310 |
311 | API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
312 | @protocol UIScrollViewDelegate<NSObject>
| `- note: 'UIScrollViewDelegate' has been explicitly marked unavailable here
313 |
314 | @optional
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewViewController.swift:49:22: error: 'UIView' is unavailable in watchOS
47 | let frame:CGRect?
48 | let size: CGSize
49 | let contentMode: UIView.ContentMode
| `- error: 'UIView' is unavailable in watchOS
50 |
51 | public init(image: PhotoPreviewImageProtocol,
/Applications/Xcode-27.0.0-Release.Candidate.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/PhotoPreview/PhotoPreviewViewController.swift:54:23: error: 'UIView' is unavailable in watchOS
52 | frame:CGRect? = nil,
53 | size: CGSize,
54 | contentMode: UIView.ContentMode) {
| `- error: 'UIView' is unavailable in watchOS
55 | self.image = image
56 | self.contentMode = contentMode
/Applications/Xcode-27.0.0-Release.Candidate.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/PhotoPreview/PhotoPreviewViewController.swift:61:45: error: 'UIView' is unavailable in watchOS
59 | }
60 |
61 | static func objectFit(from contentMode: UIView.ContentMode) -> String {
| `- error: 'UIView' is unavailable in watchOS
62 | switch contentMode {
63 | case .scaleToFill:
/Applications/Xcode-27.0.0-Release.Candidate.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/PhotoPreview/PhotoPreviewViewController.swift:102:42: error: 'UICollectionView' is unavailable in watchOS
100 | public weak var delegate: PhotoPreviewDelegate?
101 |
102 | public lazy var imageCollectionView: UICollectionView = self.setupCollectionView()
| `- error: 'UICollectionView' is unavailable in watchOS
103 |
104 | public var numberOfImages: Int {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UICollectionView.h:362:12: note: 'UICollectionView' has been explicitly marked unavailable here
360 |
361 | UIKIT_EXTERN API_AVAILABLE(ios(6.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
362 | @interface UICollectionView : UIScrollView <UIDataSourceTranslating>
| `- note: 'UICollectionView' has been explicitly marked unavailable here
363 |
364 | - (instancetype)initWithFrame:(CGRect)frame collectionViewLayout:(UICollectionViewLayout *)layout NS_DESIGNATED_INITIALIZER;
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewViewController.swift:130:29: error: 'UICollectionViewFlowLayout' is unavailable in watchOS
128 | }
129 |
130 | private var flowLayout: UICollectionViewFlowLayout = UICollectionViewFlowLayout()
| `- error: 'UICollectionViewFlowLayout' is unavailable in watchOS
131 |
132 | // MARK: Lifecycle methods
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UICollectionViewFlowLayout.h:46:12: note: 'UICollectionViewFlowLayout' has been explicitly marked unavailable here
44 |
45 | UIKIT_EXTERN API_AVAILABLE(ios(6.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
46 | @interface UICollectionViewFlowLayout : UICollectionViewLayout
| `- note: 'UICollectionViewFlowLayout' has been explicitly marked unavailable here
47 |
48 | @property (nonatomic) CGFloat minimumLineSpacing;
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewViewController.swift:130:58: error: 'UICollectionViewFlowLayout' is unavailable in watchOS
128 | }
129 |
130 | private var flowLayout: UICollectionViewFlowLayout = UICollectionViewFlowLayout()
| `- error: 'UICollectionViewFlowLayout' is unavailable in watchOS
131 |
132 | // MARK: Lifecycle methods
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UICollectionViewFlowLayout.h:46:12: note: 'UICollectionViewFlowLayout' has been explicitly marked unavailable here
44 |
45 | UIKIT_EXTERN API_AVAILABLE(ios(6.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
46 | @interface UICollectionViewFlowLayout : UICollectionViewLayout
| `- note: 'UICollectionViewFlowLayout' has been explicitly marked unavailable here
47 |
48 | @property (nonatomic) CGFloat minimumLineSpacing;
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewViewController.swift:166:38: error: 'UIPanGestureRecognizer' is unavailable in watchOS
164 | private var originalPosition: CGPoint?
165 |
166 | @objc func wasDragged(_ gesture: UIPanGestureRecognizer) {
| `- error: 'UIPanGestureRecognizer' is unavailable in watchOS
167 | guard let imageView = gesture.view else { return }
168 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIPanGestureRecognizer.h:31:12: note: 'UIPanGestureRecognizer' has been explicitly marked unavailable here
29 |
30 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
31 | @interface UIPanGestureRecognizer : UIGestureRecognizer
| `- note: 'UIPanGestureRecognizer' has been explicitly marked unavailable here
32 |
33 | @property (nonatomic) NSUInteger minimumNumberOfTouches API_UNAVAILABLE(tvos); // default is 1. the minimum number of touches required to match
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewViewController.swift:203:51: error: 'UITapGestureRecognizer' is unavailable in watchOS
201 | }
202 |
203 | @objc public func singleTapAction(recognizer: UITapGestureRecognizer) {
| `- error: 'UITapGestureRecognizer' is unavailable in watchOS
204 | delegate?.didTapToClose(photoPreviewViewController: self)
205 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITapGestureRecognizer.h:23:12: note: 'UITapGestureRecognizer' has been explicitly marked unavailable here
21 |
22 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
23 | @interface UITapGestureRecognizer : UIGestureRecognizer
| `- note: 'UITapGestureRecognizer' has been explicitly marked unavailable here
24 |
25 | @property (nonatomic) NSUInteger numberOfTapsRequired; // Default is 1. The number of taps required to match
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewViewController.swift:209:43: error: 'UICollectionView' is unavailable in watchOS
207 | // MARK: Private Methods
208 |
209 | private func setupCollectionView() -> UICollectionView {
| `- error: 'UICollectionView' is unavailable in watchOS
210 | // Set up flow layout
211 | flowLayout.scrollDirection = UICollectionView.ScrollDirection.horizontal
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UICollectionView.h:362:12: note: 'UICollectionView' has been explicitly marked unavailable here
360 |
361 | UIKIT_EXTERN API_AVAILABLE(ios(6.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
362 | @interface UICollectionView : UIScrollView <UIDataSourceTranslating>
| `- note: 'UICollectionView' has been explicitly marked unavailable here
363 |
364 | - (instancetype)initWithFrame:(CGRect)frame collectionViewLayout:(UICollectionViewLayout *)layout NS_DESIGNATED_INITIALIZER;
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewViewController.swift:88:42: error: 'UIViewController' is unavailable in watchOS
86 | }
87 |
88 | public class PhotoPreviewViewController: UIViewController {
| `- error: 'UIViewController' is unavailable in watchOS
89 | var targetImage: Target?
90 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewController.h:104:12: note: 'UIViewController' has been explicitly marked unavailable here
102 |
103 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
104 | @interface UIViewController : UIResponder <NSCoding, UIAppearanceContainer, UITraitEnvironment, UIContentContainer, UIFocusEnvironment>
| `- note: 'UIViewController' has been explicitly marked unavailable here
105 |
106 | /*
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewViewController.swift:291:53: error: 'UICollectionView' is unavailable in watchOS
289 | extension PhotoPreviewViewController: UICollectionViewDataSource {
290 |
291 | public func numberOfSections(in collectionView: UICollectionView) -> Int {
| `- error: 'UICollectionView' is unavailable in watchOS
292 | return 1
293 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UICollectionView.h:362:12: note: 'UICollectionView' has been explicitly marked unavailable here
360 |
361 | UIKIT_EXTERN API_AVAILABLE(ios(6.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
362 | @interface UICollectionView : UIScrollView <UIDataSourceTranslating>
| `- note: 'UICollectionView' has been explicitly marked unavailable here
363 |
364 | - (instancetype)initWithFrame:(CGRect)frame collectionViewLayout:(UICollectionViewLayout *)layout NS_DESIGNATED_INITIALIZER;
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewViewController.swift:295:55: error: 'UICollectionView' is unavailable in watchOS
293 | }
294 |
295 | public func collectionView(_ imageCollectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
| `- error: 'UICollectionView' is unavailable in watchOS
296 | guard let imageInfos = targetImage?.imageInfos else {
297 | print("targetImage is nil or imageInfos is empty")
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UICollectionView.h:362:12: note: 'UICollectionView' has been explicitly marked unavailable here
360 |
361 | UIKIT_EXTERN API_AVAILABLE(ios(6.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
362 | @interface UICollectionView : UIScrollView <UIDataSourceTranslating>
| `- note: 'UICollectionView' has been explicitly marked unavailable here
363 |
364 | - (instancetype)initWithFrame:(CGRect)frame collectionViewLayout:(UICollectionViewLayout *)layout NS_DESIGNATED_INITIALIZER;
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewViewController.swift:311:55: error: 'UICollectionView' is unavailable in watchOS
309 | }
310 |
311 | public func collectionView(_ imageCollectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
| `- error: 'UICollectionView' is unavailable in watchOS
312 | let cell = imageCollectionView.dequeueReusableCell(withReuseIdentifier: "PhotoPreviewCell", for: indexPath) as! PhotoPreviewCell
313 | configurePhotoPreviewCell(cell, at: indexPath.item)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UICollectionView.h:362:12: note: 'UICollectionView' has been explicitly marked unavailable here
360 |
361 | UIKIT_EXTERN API_AVAILABLE(ios(6.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
362 | @interface UICollectionView : UIScrollView <UIDataSourceTranslating>
| `- note: 'UICollectionView' has been explicitly marked unavailable here
363 |
364 | - (instancetype)initWithFrame:(CGRect)frame collectionViewLayout:(UICollectionViewLayout *)layout NS_DESIGNATED_INITIALIZER;
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewViewController.swift:311:112: error: 'UICollectionViewCell' is unavailable in watchOS
309 | }
310 |
311 | public func collectionView(_ imageCollectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
| `- error: 'UICollectionViewCell' is unavailable in watchOS
312 | let cell = imageCollectionView.dequeueReusableCell(withReuseIdentifier: "PhotoPreviewCell", for: indexPath) as! PhotoPreviewCell
313 | configurePhotoPreviewCell(cell, at: indexPath.item)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UICollectionViewCell.h:65:12: note: 'UICollectionViewCell' has been explicitly marked unavailable here
63 |
64 | UIKIT_EXTERN API_AVAILABLE(ios(6.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
65 | @interface UICollectionViewCell : UICollectionReusableView
| `- note: 'UICollectionViewCell' has been explicitly marked unavailable here
66 |
67 | /// Returns the current configuration state for the cell.
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewViewController.swift:289:39: error: 'UICollectionViewDataSource' is unavailable in watchOS
287 |
288 | // MARK: UICollectionViewDataSource Methods
289 | extension PhotoPreviewViewController: UICollectionViewDataSource {
| `- error: 'UICollectionViewDataSource' is unavailable in watchOS
290 |
291 | public func numberOfSections(in collectionView: UICollectionView) -> Int {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UICollectionView.h:73:11: note: 'UICollectionViewDataSource' has been explicitly marked unavailable here
71 |
72 | API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
73 | @protocol UICollectionViewDataSource <NSObject>
| `- note: 'UICollectionViewDataSource' has been explicitly marked unavailable here
74 | @required
75 |
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewViewController.swift:322:56: error: 'UIGestureRecognizer' is unavailable in watchOS
320 | extension PhotoPreviewViewController: UIGestureRecognizerDelegate {
321 |
322 | public func gestureRecognizer(_ gestureRecognizer: UIGestureRecognizer, shouldRequireFailureOf otherGestureRecognizer: UIGestureRecognizer) -> Bool {
| `- error: 'UIGestureRecognizer' is unavailable in watchOS
323 |
324 | return otherGestureRecognizer is UITapGestureRecognizer && gestureRecognizer is UITapGestureRecognizer && otherGestureRecognizer.view is PhotoPreviewCell
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIGestureRecognizer.h:35:12: note: 'UIGestureRecognizer' has been explicitly marked unavailable here
33 |
34 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
35 | @interface UIGestureRecognizer : NSObject
| `- note: 'UIGestureRecognizer' has been explicitly marked unavailable here
36 |
37 | // Valid action method signatures:
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewViewController.swift:322:124: error: 'UIGestureRecognizer' is unavailable in watchOS
320 | extension PhotoPreviewViewController: UIGestureRecognizerDelegate {
321 |
322 | public func gestureRecognizer(_ gestureRecognizer: UIGestureRecognizer, shouldRequireFailureOf otherGestureRecognizer: UIGestureRecognizer) -> Bool {
| `- error: 'UIGestureRecognizer' is unavailable in watchOS
323 |
324 | return otherGestureRecognizer is UITapGestureRecognizer && gestureRecognizer is UITapGestureRecognizer && otherGestureRecognizer.view is PhotoPreviewCell
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIGestureRecognizer.h:35:12: note: 'UIGestureRecognizer' has been explicitly marked unavailable here
33 |
34 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
35 | @interface UIGestureRecognizer : NSObject
| `- note: 'UIGestureRecognizer' has been explicitly marked unavailable here
36 |
37 | // Valid action method signatures:
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewViewController.swift:320:39: error: 'UIGestureRecognizerDelegate' is unavailable in watchOS
318 |
319 | // MARK: UIGestureRecognizerDelegate Methods
320 | extension PhotoPreviewViewController: UIGestureRecognizerDelegate {
| `- error: 'UIGestureRecognizerDelegate' is unavailable in watchOS
321 |
322 | public func gestureRecognizer(_ gestureRecognizer: UIGestureRecognizer, shouldRequireFailureOf otherGestureRecognizer: UIGestureRecognizer) -> Bool {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIGestureRecognizer.h:91:11: note: 'UIGestureRecognizerDelegate' has been explicitly marked unavailable here
89 |
90 | API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
91 | @protocol UIGestureRecognizerDelegate <NSObject>
| `- note: 'UIGestureRecognizerDelegate' has been explicitly marked unavailable here
92 | @optional
93 | // called when a gesture recognizer attempts to transition out of UIGestureRecognizerStatePossible. returning NO causes it to transition to UIGestureRecognizerStateFailed
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewViewController.swift:342:64: error: 'UIViewController' is unavailable in watchOS
340 | extension PhotoPreviewViewController: UIViewControllerTransitioningDelegate {
341 |
342 | public func presentationController(forPresented presented: UIViewController, presenting: UIViewController?, source: UIViewController) -> UIPresentationController? {
| `- error: 'UIViewController' is unavailable in watchOS
343 | return DimmingPresentationController(presentedViewController: presented, presenting: presenting)
344 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewController.h:104:12: note: 'UIViewController' has been explicitly marked unavailable here
102 |
103 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
104 | @interface UIViewController : UIResponder <NSCoding, UIAppearanceContainer, UITraitEnvironment, UIContentContainer, UIFocusEnvironment>
| `- note: 'UIViewController' has been explicitly marked unavailable here
105 |
106 | /*
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewViewController.swift:342:94: error: 'UIViewController' is unavailable in watchOS
340 | extension PhotoPreviewViewController: UIViewControllerTransitioningDelegate {
341 |
342 | public func presentationController(forPresented presented: UIViewController, presenting: UIViewController?, source: UIViewController) -> UIPresentationController? {
| `- error: 'UIViewController' is unavailable in watchOS
343 | return DimmingPresentationController(presentedViewController: presented, presenting: presenting)
344 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewController.h:104:12: note: 'UIViewController' has been explicitly marked unavailable here
102 |
103 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
104 | @interface UIViewController : UIResponder <NSCoding, UIAppearanceContainer, UITraitEnvironment, UIContentContainer, UIFocusEnvironment>
| `- note: 'UIViewController' has been explicitly marked unavailable here
105 |
106 | /*
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewViewController.swift:342:121: error: 'UIViewController' is unavailable in watchOS
340 | extension PhotoPreviewViewController: UIViewControllerTransitioningDelegate {
341 |
342 | public func presentationController(forPresented presented: UIViewController, presenting: UIViewController?, source: UIViewController) -> UIPresentationController? {
| `- error: 'UIViewController' is unavailable in watchOS
343 | return DimmingPresentationController(presentedViewController: presented, presenting: presenting)
344 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewController.h:104:12: note: 'UIViewController' has been explicitly marked unavailable here
102 |
103 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
104 | @interface UIViewController : UIResponder <NSCoding, UIAppearanceContainer, UITraitEnvironment, UIContentContainer, UIFocusEnvironment>
| `- note: 'UIViewController' has been explicitly marked unavailable here
105 |
106 | /*
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewViewController.swift:342:142: error: 'UIPresentationController' is unavailable in watchOS
340 | extension PhotoPreviewViewController: UIViewControllerTransitioningDelegate {
341 |
342 | public func presentationController(forPresented presented: UIViewController, presenting: UIViewController?, source: UIViewController) -> UIPresentationController? {
| `- error: 'UIPresentationController' is unavailable in watchOS
343 | return DimmingPresentationController(presentedViewController: presented, presenting: presenting)
344 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIPresentationController.h:65:12: note: 'UIPresentationController' has been explicitly marked unavailable here
63 |
64 | UIKIT_EXTERN API_AVAILABLE(ios(8.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
65 | @interface UIPresentationController : NSObject <UIAppearanceContainer, UITraitEnvironment, UIContentContainer, UIFocusEnvironment>
| `- note: 'UIPresentationController' has been explicitly marked unavailable here
66 |
67 | @property(nonatomic, strong, readonly) UIViewController *presentingViewController;
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewViewController.swift:346:61: error: 'UIViewController' is unavailable in watchOS
344 | }
345 |
346 | public func animationController(forPresented presented: UIViewController, presenting: UIViewController, source: UIViewController) -> UIViewControllerAnimatedTransitioning? {
| `- error: 'UIViewController' is unavailable in watchOS
347 |
348 | guard let targetImage = self.targetImage else {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewController.h:104:12: note: 'UIViewController' has been explicitly marked unavailable here
102 |
103 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
104 | @interface UIViewController : UIResponder <NSCoding, UIAppearanceContainer, UITraitEnvironment, UIContentContainer, UIFocusEnvironment>
| `- note: 'UIViewController' has been explicitly marked unavailable here
105 |
106 | /*
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewViewController.swift:346:91: error: 'UIViewController' is unavailable in watchOS
344 | }
345 |
346 | public func animationController(forPresented presented: UIViewController, presenting: UIViewController, source: UIViewController) -> UIViewControllerAnimatedTransitioning? {
| `- error: 'UIViewController' is unavailable in watchOS
347 |
348 | guard let targetImage = self.targetImage else {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewController.h:104:12: note: 'UIViewController' has been explicitly marked unavailable here
102 |
103 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
104 | @interface UIViewController : UIResponder <NSCoding, UIAppearanceContainer, UITraitEnvironment, UIContentContainer, UIFocusEnvironment>
| `- note: 'UIViewController' has been explicitly marked unavailable here
105 |
106 | /*
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewViewController.swift:346:117: error: 'UIViewController' is unavailable in watchOS
344 | }
345 |
346 | public func animationController(forPresented presented: UIViewController, presenting: UIViewController, source: UIViewController) -> UIViewControllerAnimatedTransitioning? {
| `- error: 'UIViewController' is unavailable in watchOS
347 |
348 | guard let targetImage = self.targetImage else {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewController.h:104:12: note: 'UIViewController' has been explicitly marked unavailable here
102 |
103 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
104 | @interface UIViewController : UIResponder <NSCoding, UIAppearanceContainer, UITraitEnvironment, UIContentContainer, UIFocusEnvironment>
| `- note: 'UIViewController' has been explicitly marked unavailable here
105 |
106 | /*
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewViewController.swift:346:138: error: 'UIViewControllerAnimatedTransitioning' is unavailable in watchOS
344 | }
345 |
346 | public func animationController(forPresented presented: UIViewController, presenting: UIViewController, source: UIViewController) -> UIViewControllerAnimatedTransitioning? {
| `- error: 'UIViewControllerAnimatedTransitioning' is unavailable in watchOS
347 |
348 | guard let targetImage = self.targetImage else {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewControllerTransitioning.h:137:11: note: 'UIViewControllerAnimatedTransitioning' has been explicitly marked unavailable here
135 |
136 | API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
137 | @protocol UIViewControllerAnimatedTransitioning <NSObject>
| `- note: 'UIViewControllerAnimatedTransitioning' has been explicitly marked unavailable here
138 |
139 | // This is used for percent driven interactive transitions, as well as for
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewViewController.swift:356:61: error: 'UIViewController' is unavailable in watchOS
354 | return PresentingAnimator(pageIndex: targetImage.targetIndex, imageInfo: imageInfo)
355 | }
356 | public func animationController(forDismissed dismissed: UIViewController)
| `- error: 'UIViewController' is unavailable in watchOS
357 | -> UIViewControllerAnimatedTransitioning?
358 | {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewController.h:104:12: note: 'UIViewController' has been explicitly marked unavailable here
102 |
103 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
104 | @interface UIViewController : UIResponder <NSCoding, UIAppearanceContainer, UITraitEnvironment, UIContentContainer, UIFocusEnvironment>
| `- note: 'UIViewController' has been explicitly marked unavailable here
105 |
106 | /*
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewViewController.swift:357:12: error: 'UIViewControllerAnimatedTransitioning' is unavailable in watchOS
355 | }
356 | public func animationController(forDismissed dismissed: UIViewController)
357 | -> UIViewControllerAnimatedTransitioning?
| `- error: 'UIViewControllerAnimatedTransitioning' is unavailable in watchOS
358 | {
359 | guard let targetImage = self.targetImage else {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewControllerTransitioning.h:137:11: note: 'UIViewControllerAnimatedTransitioning' has been explicitly marked unavailable here
135 |
136 | API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
137 | @protocol UIViewControllerAnimatedTransitioning <NSObject>
| `- note: 'UIViewControllerAnimatedTransitioning' has been explicitly marked unavailable here
138 |
139 | // This is used for percent driven interactive transitions, as well as for
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewViewController.swift:340:39: error: 'UIViewControllerTransitioningDelegate' is unavailable in watchOS
338 |
339 | // MARK: 转场
340 | extension PhotoPreviewViewController: UIViewControllerTransitioningDelegate {
| `- error: 'UIViewControllerTransitioningDelegate' is unavailable in watchOS
341 |
342 | public func presentationController(forPresented presented: UIViewController, presenting: UIViewController?, source: UIViewController) -> UIPresentationController? {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewControllerTransitioning.h:180:11: note: 'UIViewControllerTransitioningDelegate' has been explicitly marked unavailable here
178 |
179 | API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
180 | @protocol UIViewControllerTransitioningDelegate <NSObject>
| `- note: 'UIViewControllerTransitioningDelegate' has been explicitly marked unavailable here
181 |
182 | @optional
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PresentingAnimator.swift:22:54: error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
20 | }
21 |
22 | func transitionDuration(using transitionContext: UIViewControllerContextTransitioning?) -> TimeInterval {
| `- error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
23 | return duration
24 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewControllerTransitioning.h:68:11: note: 'UIViewControllerContextTransitioning' has been explicitly marked unavailable here
66 |
67 | API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
68 | @protocol UIViewControllerContextTransitioning <NSObject>
| `- note: 'UIViewControllerContextTransitioning' has been explicitly marked unavailable here
69 |
70 | // The view in which the animated transition should take place.
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PresentingAnimator.swift:26:53: error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
24 | }
25 |
26 | func animateTransition(using transitionContext: UIViewControllerContextTransitioning) {
| `- error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
27 | guard let toView = transitionContext.view(forKey: .to),
28 | let toVC = transitionContext.viewController(forKey: .to)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewControllerTransitioning.h:68:11: note: 'UIViewControllerContextTransitioning' has been explicitly marked unavailable here
66 |
67 | API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
68 | @protocol UIViewControllerContextTransitioning <NSObject>
| `- note: 'UIViewControllerContextTransitioning' has been explicitly marked unavailable here
69 |
70 | // The view in which the animated transition should take place.
SwiftCompile normal arm64 (in target 'PhotoPreview' from project 'PhotoPreview')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
SwiftCompile normal arm64 Compiling\ PresentingAnimator.swift /Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PresentingAnimator.swift (in target 'PhotoPreview' from project 'PhotoPreview')
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PresentingAnimator.swift:22:54: error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
20 | }
21 |
22 | func transitionDuration(using transitionContext: UIViewControllerContextTransitioning?) -> TimeInterval {
| `- error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
23 | return duration
24 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewControllerTransitioning.h:68:11: note: 'UIViewControllerContextTransitioning' has been explicitly marked unavailable here
66 |
67 | API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
68 | @protocol UIViewControllerContextTransitioning <NSObject>
| `- note: 'UIViewControllerContextTransitioning' has been explicitly marked unavailable here
69 |
70 | // The view in which the animated transition should take place.
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PresentingAnimator.swift:26:53: error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
24 | }
25 |
26 | func animateTransition(using transitionContext: UIViewControllerContextTransitioning) {
| `- error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
27 | guard let toView = transitionContext.view(forKey: .to),
28 | let toVC = transitionContext.viewController(forKey: .to)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewControllerTransitioning.h:68:11: note: 'UIViewControllerContextTransitioning' has been explicitly marked unavailable here
66 |
67 | API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
68 | @protocol UIViewControllerContextTransitioning <NSObject>
| `- note: 'UIViewControllerContextTransitioning' has been explicitly marked unavailable here
69 |
70 | // The view in which the animated transition should take place.
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PresentingAnimator.swift:11:37: error: 'UIViewControllerAnimatedTransitioning' is unavailable in watchOS
9 | import SDWebImage
10 |
11 | class PresentingAnimator: NSObject, UIViewControllerAnimatedTransitioning {
| `- error: 'UIViewControllerAnimatedTransitioning' is unavailable in watchOS
12 |
13 | private let imageInfo: ImageInfo
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewControllerTransitioning.h:137:11: note: 'UIViewControllerAnimatedTransitioning' has been explicitly marked unavailable here
135 |
136 | API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
137 | @protocol UIViewControllerAnimatedTransitioning <NSObject>
| `- note: 'UIViewControllerAnimatedTransitioning' has been explicitly marked unavailable here
138 |
139 | // This is used for percent driven interactive transitions, as well as for
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PresentingAnimator.swift:27:60: error: 'to' is unavailable in watchOS
25 |
26 | func animateTransition(using transitionContext: UIViewControllerContextTransitioning) {
27 | guard let toView = transitionContext.view(forKey: .to),
| `- error: 'to' is unavailable in watchOS
28 | let toVC = transitionContext.viewController(forKey: .to)
29 | else {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewControllerTransitioning.h:27:47: note: 'to' has been explicitly marked unavailable here
25 |
26 | UIKIT_EXTERN UITransitionContextViewKey const UITransitionContextFromViewKey API_UNAVAILABLE(watchos) NS_SWIFT_NAME(from) API_AVAILABLE(ios(8.0));
27 | UIKIT_EXTERN UITransitionContextViewKey const UITransitionContextToViewKey API_UNAVAILABLE(watchos) NS_SWIFT_NAME(to) API_AVAILABLE(ios(8.0));
| `- note: 'to' has been explicitly marked unavailable here
28 |
29 |
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PresentingAnimator.swift:28:66: error: 'to' is unavailable in watchOS
26 | func animateTransition(using transitionContext: UIViewControllerContextTransitioning) {
27 | guard let toView = transitionContext.view(forKey: .to),
28 | let toVC = transitionContext.viewController(forKey: .to)
| `- error: 'to' is unavailable in watchOS
29 | else {
30 | transitionContext.completeTransition(false)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewControllerTransitioning.h:24:57: note: 'to' has been explicitly marked unavailable here
22 |
23 | UIKIT_EXTERN UITransitionContextViewControllerKey const UITransitionContextFromViewControllerKey API_UNAVAILABLE(watchos) NS_SWIFT_NAME(from) API_AVAILABLE(ios(7.0));
24 | UIKIT_EXTERN UITransitionContextViewControllerKey const UITransitionContextToViewControllerKey API_UNAVAILABLE(watchos) NS_SWIFT_NAME(to) API_AVAILABLE(ios(7.0));
| `- note: 'to' has been explicitly marked unavailable here
25 |
26 | UIKIT_EXTERN UITransitionContextViewKey const UITransitionContextFromViewKey API_UNAVAILABLE(watchos) NS_SWIFT_NAME(from) API_AVAILABLE(ios(8.0));
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PresentingAnimator.swift:35:29: error: 'UIImageView' is unavailable in watchOS
33 |
34 | var beginFrame = imageInfo.frame!
35 | let viewToAnimate = UIImageView(frame: beginFrame)
| `- error: 'UIImageView' is unavailable in watchOS
36 | viewToAnimate.clipsToBounds = true
37 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIImageView.h:21:12: note: 'UIImageView' has been explicitly marked unavailable here
19 |
20 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
21 | @interface UIImageView : UIView
| `- note: 'UIImageView' has been explicitly marked unavailable here
22 |
23 | - (instancetype)initWithImage:(nullable UIImage *)image;
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PresentingAnimator.swift:47:31: error: value of type 'UIImageView' has no member 'sd_setImage'
45 | } else {
46 | guard let u = URL(string: source.url ) else { return }
47 | viewToAnimate.sd_setImage(with: u)
| `- error: value of type 'UIImageView' has no member 'sd_setImage'
48 | }
49 | }
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PresentingAnimator.swift:52:47: error: 'containerView' is unavailable in watchOS
50 | viewToAnimate.contentMode = imageInfo.contentMode
51 |
52 | let containerView = transitionContext.containerView
| `- error: 'containerView' is unavailable in watchOS
53 | containerView.addSubview(toView)
54 | containerView.addSubview(viewToAnimate)
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewControllerTransitioning.h:71:40: note: 'containerView' has been explicitly marked unavailable here
69 |
70 | // The view in which the animated transition should take place.
71 | @property(nonatomic, readonly) UIView *containerView API_UNAVAILABLE(watchos);
| `- note: 'containerView' has been explicitly marked unavailable here
72 |
73 | // Most of the time this is YES. For custom transitions that use the new UIModalPresentationCustom
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PresentingAnimator.swift:59:69: warning: left side of nil coalescing operator '??' has non-optional type 'CGSize', so the right side is never used
57 |
58 | // finalSize 获取的优先级 viewToAnimate.image?.size > imageInfo.size > .zero
59 | let finalSize = viewToAnimate.image?.size ?? imageInfo.size ?? .zero
| `- warning: left side of nil coalescing operator '??' has non-optional type 'CGSize', so the right side is never used
60 | // 结果frame: 比例以保持内容的宽高比,同时确保内容完整地填入视图边界而不会超出
61 | let finalFrame = PhotoPreviewCell.calculateAspectFitRect(for: finalSize)
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PresentingAnimator.swift (in target 'PhotoPreview' from project 'PhotoPreview')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile PresentingAnimator.swift
SwiftCompile normal arm64 Compiling\ PhotoPreviewCell.swift /Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewCell.swift (in target 'PhotoPreview' from project 'PhotoPreview')
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewCell.swift:18:26: error: 'UIScrollView' is unavailable in watchOS
16 | }
17 |
18 | open var scrollView: UIScrollView
| `- error: 'UIScrollView' is unavailable in watchOS
19 | public let imageView: CustomImageView
20 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIScrollView.h:87:12: note: 'UIScrollView' has been explicitly marked unavailable here
85 |
86 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
87 | @interface UIScrollView : UIView <NSCoding, UIFocusItemScrollableContainer>
| `- note: 'UIScrollView' has been explicitly marked unavailable here
88 |
89 | @property(nonatomic) CGPoint contentOffset; // default CGPointZero
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewCell.swift:125:51: error: 'UITapGestureRecognizer' is unavailable in watchOS
123 | }
124 |
125 | @objc public func doubleTapAction(recognizer: UITapGestureRecognizer) {
| `- error: 'UITapGestureRecognizer' is unavailable in watchOS
126 |
127 | if scrollView.zoomScale > scrollView.minimumZoomScale {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITapGestureRecognizer.h:23:12: note: 'UITapGestureRecognizer' has been explicitly marked unavailable here
21 |
22 | UIKIT_EXTERN API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
23 | @interface UITapGestureRecognizer : UIGestureRecognizer
| `- note: 'UITapGestureRecognizer' has been explicitly marked unavailable here
24 |
25 | @property (nonatomic) NSUInteger numberOfTapsRequired; // Default is 1. The number of taps required to match
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewCell.swift:10:25: error: 'UICollectionViewCell' is unavailable in watchOS
8 | import UIKit
9 |
10 | class PhotoPreviewCell: UICollectionViewCell {
| `- error: 'UICollectionViewCell' is unavailable in watchOS
11 |
12 | var imageInfo: ImageInfo? {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UICollectionViewCell.h:65:12: note: 'UICollectionViewCell' has been explicitly marked unavailable here
63 |
64 | UIKIT_EXTERN API_AVAILABLE(ios(6.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
65 | @interface UICollectionViewCell : UICollectionReusableView
| `- note: 'UICollectionViewCell' has been explicitly marked unavailable here
66 |
67 | /// Returns the current configuration state for the cell.
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewCell.swift:228:47: error: 'UIScrollView' is unavailable in watchOS
226 | extension PhotoPreviewCell: UIScrollViewDelegate {
227 |
228 | public func viewForZooming(in scrollView: UIScrollView) -> UIView? {
| `- error: 'UIScrollView' is unavailable in watchOS
229 | return imageView
230 | }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIScrollView.h:87:12: note: 'UIScrollView' has been explicitly marked unavailable here
85 |
86 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
87 | @interface UIScrollView : UIView <NSCoding, UIFocusItemScrollableContainer>
| `- note: 'UIScrollView' has been explicitly marked unavailable here
88 |
89 | @property(nonatomic) CGPoint contentOffset; // default CGPointZero
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewCell.swift:228:64: error: 'UIView' is unavailable in watchOS
226 | extension PhotoPreviewCell: UIScrollViewDelegate {
227 |
228 | public func viewForZooming(in scrollView: UIScrollView) -> UIView? {
| `- error: 'UIView' is unavailable in watchOS
229 | return imageView
230 | }
/Applications/Xcode-27.0.0-Release.Candidate.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/PhotoPreview/PhotoPreviewCell.swift:232:49: error: 'UIScrollView' is unavailable in watchOS
230 | }
231 |
232 | public func scrollViewDidZoom(_ scrollView: UIScrollView) {
| `- error: 'UIScrollView' is unavailable in watchOS
233 |
234 | let imageViewSize = imageView.frame.size
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIScrollView.h:87:12: note: 'UIScrollView' has been explicitly marked unavailable here
85 |
86 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
87 | @interface UIScrollView : UIView <NSCoding, UIFocusItemScrollableContainer>
| `- note: 'UIScrollView' has been explicitly marked unavailable here
88 |
89 | @property(nonatomic) CGPoint contentOffset; // default CGPointZero
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewCell.swift:226:29: error: 'UIScrollViewDelegate' is unavailable in watchOS
224 |
225 | // MARK: UIScrollViewDelegate Methods
226 | extension PhotoPreviewCell: UIScrollViewDelegate {
| `- error: 'UIScrollViewDelegate' is unavailable in watchOS
227 |
228 | public func viewForZooming(in scrollView: UIScrollView) -> UIView? {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIScrollView.h:312:11: note: 'UIScrollViewDelegate' has been explicitly marked unavailable here
310 |
311 | API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
312 | @protocol UIScrollViewDelegate<NSObject>
| `- note: 'UIScrollViewDelegate' has been explicitly marked unavailable here
313 |
314 | @optional
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewCell.swift:23:21: error: 'init()' is unavailable in watchOS
21 | override init(frame: CGRect) {
22 |
23 | imageView = CustomImageView()
| `- error: 'init()' is unavailable in watchOS
24 | scrollView = UIScrollView(frame: frame)
25 | scrollView.translatesAutoresizingMaskIntoConstraints = false
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:158:1: note: 'init()' has been explicitly marked unavailable here
156 | - (instancetype)initWithFrame:(CGRect)frame NS_DESIGNATED_INITIALIZER;
157 | - (nullable instancetype)initWithCoder:(NSCoder *)coder NS_DESIGNATED_INITIALIZER;
158 | - (instancetype)init API_AVAILABLE(ios(2.0), tvos(9.0), visionos(1.0)) API_UNAVAILABLE(watchos);
| `- note: 'init()' has been explicitly marked unavailable here
159 |
160 | @property(nonatomic,getter=isUserInteractionEnabled) BOOL userInteractionEnabled; // default is YES. if set to NO, user events (touch, keys) are ignored and removed from the event queue.
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewCell.swift:24:22: error: 'UIScrollView' is unavailable in watchOS
22 |
23 | imageView = CustomImageView()
24 | scrollView = UIScrollView(frame: frame)
| `- error: 'UIScrollView' is unavailable in watchOS
25 | scrollView.translatesAutoresizingMaskIntoConstraints = false
26 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIScrollView.h:87:12: note: 'UIScrollView' has been explicitly marked unavailable here
85 |
86 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
87 | @interface UIScrollView : UIView <NSCoding, UIFocusItemScrollableContainer>
| `- note: 'UIScrollView' has been explicitly marked unavailable here
88 |
89 | @property(nonatomic) CGPoint contentOffset; // default CGPointZero
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewCell.swift:28:37: error: 'NSLayoutConstraint' is unavailable in watchOS
26 |
27 | super.init(frame: frame)
28 | var scrollViewConstraints: [NSLayoutConstraint] = []
| `- error: 'NSLayoutConstraint' is unavailable in watchOS
29 | var imageViewConstraints: [NSLayoutConstraint] = []
30 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/NSLayoutConstraint.h:126:12: note: 'NSLayoutConstraint' has been explicitly marked unavailable here
124 |
125 | NSLAYOUTCONSTRAINT_EXTERN API_AVAILABLE(macos(10.7), ios(6.0), tvos(9.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
126 | @interface NSLayoutConstraint : NSObject
| `- note: 'NSLayoutConstraint' has been explicitly marked unavailable here
127 |
128 | /* Create an array of constraints using an ASCII-art-like visual format string. The values of the `metrics` dictionary should be NSNumber (or some other type that responds to -doubleValue and returns a double).
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewCell.swift:29:36: error: 'NSLayoutConstraint' is unavailable in watchOS
27 | super.init(frame: frame)
28 | var scrollViewConstraints: [NSLayoutConstraint] = []
29 | var imageViewConstraints: [NSLayoutConstraint] = []
| `- error: 'NSLayoutConstraint' is unavailable in watchOS
30 |
31 | scrollViewConstraints.append(
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/NSLayoutConstraint.h:126:12: note: 'NSLayoutConstraint' has been explicitly marked unavailable here
124 |
125 | NSLAYOUTCONSTRAINT_EXTERN API_AVAILABLE(macos(10.7), ios(6.0), tvos(9.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
126 | @interface NSLayoutConstraint : NSObject
| `- note: 'NSLayoutConstraint' has been explicitly marked unavailable here
127 |
128 | /* Create an array of constraints using an ASCII-art-like visual format string. The values of the `metrics` dictionary should be NSNumber (or some other type that responds to -doubleValue and returns a double).
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewCell.swift:32:13: error: 'NSLayoutConstraint' is unavailable in watchOS
30 |
31 | scrollViewConstraints.append(
32 | NSLayoutConstraint(
| `- error: 'NSLayoutConstraint' is unavailable in watchOS
33 | item: scrollView,
34 | attribute: .leading,
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/NSLayoutConstraint.h:126:12: note: 'NSLayoutConstraint' has been explicitly marked unavailable here
124 |
125 | NSLAYOUTCONSTRAINT_EXTERN API_AVAILABLE(macos(10.7), ios(6.0), tvos(9.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
126 | @interface NSLayoutConstraint : NSObject
| `- note: 'NSLayoutConstraint' has been explicitly marked unavailable here
127 |
128 | /* Create an array of constraints using an ASCII-art-like visual format string. The values of the `metrics` dictionary should be NSNumber (or some other type that responds to -doubleValue and returns a double).
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewCell.swift:42:13: error: 'NSLayoutConstraint' is unavailable in watchOS
40 |
41 | scrollViewConstraints.append(
42 | NSLayoutConstraint(
| `- error: 'NSLayoutConstraint' is unavailable in watchOS
43 | item: scrollView,
44 | attribute: .top,
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/NSLayoutConstraint.h:126:12: note: 'NSLayoutConstraint' has been explicitly marked unavailable here
124 |
125 | NSLAYOUTCONSTRAINT_EXTERN API_AVAILABLE(macos(10.7), ios(6.0), tvos(9.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
126 | @interface NSLayoutConstraint : NSObject
| `- note: 'NSLayoutConstraint' has been explicitly marked unavailable here
127 |
128 | /* Create an array of constraints using an ASCII-art-like visual format string. The values of the `metrics` dictionary should be NSNumber (or some other type that responds to -doubleValue and returns a double).
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewCell.swift:52:13: error: 'NSLayoutConstraint' is unavailable in watchOS
50 |
51 | scrollViewConstraints.append(
52 | NSLayoutConstraint(
| `- error: 'NSLayoutConstraint' is unavailable in watchOS
53 | item: scrollView,
54 | attribute: .trailing,
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/NSLayoutConstraint.h:126:12: note: 'NSLayoutConstraint' has been explicitly marked unavailable here
124 |
125 | NSLAYOUTCONSTRAINT_EXTERN API_AVAILABLE(macos(10.7), ios(6.0), tvos(9.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
126 | @interface NSLayoutConstraint : NSObject
| `- note: 'NSLayoutConstraint' has been explicitly marked unavailable here
127 |
128 | /* Create an array of constraints using an ASCII-art-like visual format string. The values of the `metrics` dictionary should be NSNumber (or some other type that responds to -doubleValue and returns a double).
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewCell.swift:62:13: error: 'NSLayoutConstraint' is unavailable in watchOS
60 |
61 | scrollViewConstraints.append(
62 | NSLayoutConstraint(
| `- error: 'NSLayoutConstraint' is unavailable in watchOS
63 | item: scrollView,
64 | attribute: .bottom,
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/NSLayoutConstraint.h:126:12: note: 'NSLayoutConstraint' has been explicitly marked unavailable here
124 |
125 | NSLAYOUTCONSTRAINT_EXTERN API_AVAILABLE(macos(10.7), ios(6.0), tvos(9.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
126 | @interface NSLayoutConstraint : NSObject
| `- note: 'NSLayoutConstraint' has been explicitly marked unavailable here
127 |
128 | /* Create an array of constraints using an ASCII-art-like visual format string. The values of the `metrics` dictionary should be NSNumber (or some other type that responds to -doubleValue and returns a double).
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewCell.swift:75:13: error: 'NSLayoutConstraint' is unavailable in watchOS
73 |
74 | imageViewConstraints.append(
75 | NSLayoutConstraint(
| `- error: 'NSLayoutConstraint' is unavailable in watchOS
76 | item: imageView,
77 | attribute: .leading,
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/NSLayoutConstraint.h:126:12: note: 'NSLayoutConstraint' has been explicitly marked unavailable here
124 |
125 | NSLAYOUTCONSTRAINT_EXTERN API_AVAILABLE(macos(10.7), ios(6.0), tvos(9.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
126 | @interface NSLayoutConstraint : NSObject
| `- note: 'NSLayoutConstraint' has been explicitly marked unavailable here
127 |
128 | /* Create an array of constraints using an ASCII-art-like visual format string. The values of the `metrics` dictionary should be NSNumber (or some other type that responds to -doubleValue and returns a double).
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewCell.swift:85:13: error: 'NSLayoutConstraint' is unavailable in watchOS
83 |
84 | imageViewConstraints.append(
85 | NSLayoutConstraint(
| `- error: 'NSLayoutConstraint' is unavailable in watchOS
86 | item: imageView,
87 | attribute: .top,
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/NSLayoutConstraint.h:126:12: note: 'NSLayoutConstraint' has been explicitly marked unavailable here
124 |
125 | NSLAYOUTCONSTRAINT_EXTERN API_AVAILABLE(macos(10.7), ios(6.0), tvos(9.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
126 | @interface NSLayoutConstraint : NSObject
| `- note: 'NSLayoutConstraint' has been explicitly marked unavailable here
127 |
128 | /* Create an array of constraints using an ASCII-art-like visual format string. The values of the `metrics` dictionary should be NSNumber (or some other type that responds to -doubleValue and returns a double).
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewCell.swift:95:13: error: 'NSLayoutConstraint' is unavailable in watchOS
93 |
94 | imageViewConstraints.append(
95 | NSLayoutConstraint(
| `- error: 'NSLayoutConstraint' is unavailable in watchOS
96 | item: imageView,
97 | attribute: .trailing,
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/NSLayoutConstraint.h:126:12: note: 'NSLayoutConstraint' has been explicitly marked unavailable here
124 |
125 | NSLAYOUTCONSTRAINT_EXTERN API_AVAILABLE(macos(10.7), ios(6.0), tvos(9.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
126 | @interface NSLayoutConstraint : NSObject
| `- note: 'NSLayoutConstraint' has been explicitly marked unavailable here
127 |
128 | /* Create an array of constraints using an ASCII-art-like visual format string. The values of the `metrics` dictionary should be NSNumber (or some other type that responds to -doubleValue and returns a double).
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewCell.swift:105:13: error: 'NSLayoutConstraint' is unavailable in watchOS
103 |
104 | imageViewConstraints.append(
105 | NSLayoutConstraint(
| `- error: 'NSLayoutConstraint' is unavailable in watchOS
106 | item: imageView,
107 | attribute: .bottom,
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/NSLayoutConstraint.h:126:12: note: 'NSLayoutConstraint' has been explicitly marked unavailable here
124 |
125 | NSLAYOUTCONSTRAINT_EXTERN API_AVAILABLE(macos(10.7), ios(6.0), tvos(9.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
126 | @interface NSLayoutConstraint : NSObject
| `- note: 'NSLayoutConstraint' has been explicitly marked unavailable here
127 |
128 | /* Create an array of constraints using an ASCII-art-like visual format string. The values of the `metrics` dictionary should be NSNumber (or some other type that responds to -doubleValue and returns a double).
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewCell.swift:136:51: error: 'UIScreen' is unavailable in watchOS
134 | // Calculates the aspect fit rect to maintain content's aspect ratio while ensuring full visibility
135 | static func calculateAspectFitRect(for imageSize: CGSize) -> CGRect {
136 | let containerSize: CGSize = CGSize(width: UIScreen.main.bounds.width, height: UIScreen.main.bounds.height)
| `- error: 'UIScreen' is unavailable in watchOS
137 | // Calculate aspect ratios
138 | let imageAspectRatio = imageSize.width / imageSize.height
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIScreen.h:54:12: note: 'UIScreen' has been explicitly marked unavailable here
52 |
53 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(visionos, watchos) NS_SWIFT_UI_ACTOR
54 | @interface UIScreen : NSObject <UITraitEnvironment>
| `- note: 'UIScreen' has been explicitly marked unavailable here
55 |
56 | @property(class, nonatomic, readonly) NSArray<UIScreen *> *screens API_DEPRECATED("Use UIApplication.shared.openSessions to find open sessions with scenes from other screens", ios(3.2, 16.0), visionos(1.0, 1.0)) API_UNAVAILABLE(watchos); // all screens currently attached to the device
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewCell.swift:136:60: error: 'main' is unavailable in watchOS
134 | // Calculates the aspect fit rect to maintain content's aspect ratio while ensuring full visibility
135 | static func calculateAspectFitRect(for imageSize: CGSize) -> CGRect {
136 | let containerSize: CGSize = CGSize(width: UIScreen.main.bounds.width, height: UIScreen.main.bounds.height)
| `- error: 'main' is unavailable in watchOS
137 | // Calculate aspect ratios
138 | let imageAspectRatio = imageSize.width / imageSize.height
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIScreen.h:57:49: note: 'main' has been explicitly marked unavailable here
55 |
56 | @property(class, nonatomic, readonly) NSArray<UIScreen *> *screens API_DEPRECATED("Use UIApplication.shared.openSessions to find open sessions with scenes from other screens", ios(3.2, 16.0), visionos(1.0, 1.0)) API_UNAVAILABLE(watchos); // all screens currently attached to the device
57 | @property(class, nonatomic, readonly) UIScreen *mainScreen API_DEPRECATED("Use a UIScreen instance found through context instead (i.e, view.window.windowScene.screen), or for properties like UIScreen.scale with trait equivalents, use a traitCollection found through context.", ios(2.0, 26.0), tvos(9.0, 26.0), visionos(1.0, 26.0)) API_UNAVAILABLE(watchos);
| `- note: 'main' has been explicitly marked unavailable here
58 |
59 | @property(nonatomic,readonly) CGRect bounds; // Bounds of entire screen in points
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewCell.swift:136:87: error: 'UIScreen' is unavailable in watchOS
134 | // Calculates the aspect fit rect to maintain content's aspect ratio while ensuring full visibility
135 | static func calculateAspectFitRect(for imageSize: CGSize) -> CGRect {
136 | let containerSize: CGSize = CGSize(width: UIScreen.main.bounds.width, height: UIScreen.main.bounds.height)
| `- error: 'UIScreen' is unavailable in watchOS
137 | // Calculate aspect ratios
138 | let imageAspectRatio = imageSize.width / imageSize.height
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIScreen.h:54:12: note: 'UIScreen' has been explicitly marked unavailable here
52 |
53 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(visionos, watchos) NS_SWIFT_UI_ACTOR
54 | @interface UIScreen : NSObject <UITraitEnvironment>
| `- note: 'UIScreen' has been explicitly marked unavailable here
55 |
56 | @property(class, nonatomic, readonly) NSArray<UIScreen *> *screens API_DEPRECATED("Use UIApplication.shared.openSessions to find open sessions with scenes from other screens", ios(3.2, 16.0), visionos(1.0, 1.0)) API_UNAVAILABLE(watchos); // all screens currently attached to the device
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewCell.swift:136:96: error: 'main' is unavailable in watchOS
134 | // Calculates the aspect fit rect to maintain content's aspect ratio while ensuring full visibility
135 | static func calculateAspectFitRect(for imageSize: CGSize) -> CGRect {
136 | let containerSize: CGSize = CGSize(width: UIScreen.main.bounds.width, height: UIScreen.main.bounds.height)
| `- error: 'main' is unavailable in watchOS
137 | // Calculate aspect ratios
138 | let imageAspectRatio = imageSize.width / imageSize.height
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIScreen.h:57:49: note: 'main' has been explicitly marked unavailable here
55 |
56 | @property(class, nonatomic, readonly) NSArray<UIScreen *> *screens API_DEPRECATED("Use UIApplication.shared.openSessions to find open sessions with scenes from other screens", ios(3.2, 16.0), visionos(1.0, 1.0)) API_UNAVAILABLE(watchos); // all screens currently attached to the device
57 | @property(class, nonatomic, readonly) UIScreen *mainScreen API_DEPRECATED("Use a UIScreen instance found through context instead (i.e, view.window.windowScene.screen), or for properties like UIScreen.scale with trait equivalents, use a traitCollection found through context.", ios(2.0, 26.0), tvos(9.0, 26.0), visionos(1.0, 26.0)) API_UNAVAILABLE(watchos);
| `- note: 'main' has been explicitly marked unavailable here
58 |
59 | @property(nonatomic,readonly) CGRect bounds; // Bounds of entire screen in points
/Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/PhotoPreviewCell.swift:193:13: error: 'UIView' is unavailable in watchOS
191 | if animated {
192 | imageView.alpha = 0.0
193 | UIView.animate(withDuration: 0.5) {
| `- error: 'UIView' is unavailable in watchOS
194 | self.imageView.alpha = 1.0
195 | }
/Applications/Xcode-27.0.0-Release.Candidate.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/PhotoPreview/PhotoPreviewCell.swift (in target 'PhotoPreview' from project 'PhotoPreview')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile PhotoPreviewCell.swift
SwiftCompile normal arm64_32 Compiling\ CustomImageView.swift /Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/CustomImageView.swift (in target 'PhotoPreview' from project 'PhotoPreview')
SwiftCompile normal arm64_32 /Users/admin/builder/spi-builder-workspace/Sources/PhotoPreview/CustomImageView.swift (in target 'PhotoPreview' from project 'PhotoPreview')
cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
builtin-SwiftPerFileCompile CustomImageView.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-09-21 17:32:36.262 xcodebuild[1109:5610] [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 'PhotoPreview' from project 'PhotoPreview')
SwiftEmitModule normal arm64_32 Emitting\ module\ for\ PhotoPreview (in target 'PhotoPreview' from project 'PhotoPreview')
Building workspace PhotoPreview with scheme PhotoPreview
(3 failures)
BUILD FAILURE 6.4 watchOS