The Swift Package Index logo.Swift Package Index

Build Information

Failed to build MediaViewer, reference 0.2.1 (ef88c7), with Swift 6.4 for watchOS using Xcode 27.0 on 25 Sep 2026 06:43:29 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 MediaViewer -destination generic/platform=watchOS

Build Log

    |            `- note: 'UIScrollView' has been explicitly marked unavailable here
 88 |
 89 | @property(nonatomic)         CGPoint                      contentOffset;                  // default CGPointZero
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/PageControlBar/MediaViewerPageControlBar.swift:618:53: error: 'UIScrollView' is unavailable in watchOS
616 |     }
617 |
618 |     func scrollViewDidEndDecelerating(_ scrollView: UIScrollView) {
    |                                                     `- error: 'UIScrollView' is unavailable in watchOS
619 |         switch state {
620 |         case .collapsing, .collapsed, .reloading:
/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/MediaViewer/PageControlBar/MediaViewerPageControlBar.swift:529:38: error: 'UICollectionViewDelegate' is unavailable in watchOS
527 | // MARK: - UICollectionViewDelegate -
528 |
529 | extension MediaViewerPageControlBar: UICollectionViewDelegate {
    |                                      `- error: 'UICollectionViewDelegate' is unavailable in watchOS
530 |
531 |     func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) {
/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:114:11: note: 'UICollectionViewDelegate' has been explicitly marked unavailable here
112 |
113 | API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
114 | @protocol UICollectionViewDelegate <UIScrollViewDelegate>
    |           `- note: 'UICollectionViewDelegate' has been explicitly marked unavailable here
115 | @optional
116 |
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/PageControlBar/MediaViewerPageControlBarLayout.swift:34:51: error: 'UICollectionViewLayoutAttributes' is unavailable in watchOS
 32 |     }
 33 |
 34 |     private var attributesDictionary: [IndexPath: UICollectionViewLayoutAttributes] = [:]
    |                                                   `- error: 'UICollectionViewLayoutAttributes' is unavailable in watchOS
 35 |     private var contentSize: CGSize = .zero
 36 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UICollectionViewLayout.h:43:12: note: 'UICollectionViewLayoutAttributes' has been explicitly marked unavailable here
 41 |
 42 | UIKIT_EXTERN API_AVAILABLE(ios(6.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 43 | @interface UICollectionViewLayoutAttributes : NSObject <NSCopying, UIDynamicItem>
    |            `- note: 'UICollectionViewLayoutAttributes' has been explicitly marked unavailable here
 44 |
 45 | @property (nonatomic) CGRect frame;
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/PageControlBar/MediaViewerPageControlBarLayout.swift:78:50: error: 'UICollectionViewLayoutInvalidationContext' is unavailable in watchOS
 76 |     }
 77 |
 78 |     override func invalidateLayout(with context: UICollectionViewLayoutInvalidationContext) {
    |                                                  `- error: 'UICollectionViewLayoutInvalidationContext' is unavailable in watchOS
 79 |         if context.invalidateEverything || context.invalidateDataSourceCounts {
 80 |             isLayoutCacheInvalidated = true
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UICollectionViewLayout.h:66:12: note: 'UICollectionViewLayoutInvalidationContext' has been explicitly marked unavailable here
 64 |
 65 | UIKIT_EXTERN API_AVAILABLE(ios(7.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 66 | @interface UICollectionViewLayoutInvalidationContext : NSObject
    |            `- note: 'UICollectionViewLayoutInvalidationContext' has been explicitly marked unavailable here
 67 |
 68 | @property (nonatomic, readonly) BOOL invalidateEverything; // set to YES when invalidation occurs because the collection view is sent -reloadData
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/PageControlBar/MediaViewerPageControlBarLayout.swift:163:56: error: 'UICollectionView' is unavailable in watchOS
161 |     }
162 |
163 |     private func expandingItemWidth(in collectionView: UICollectionView) -> CGFloat {
    |                                                        `- error: 'UICollectionView' is unavailable in watchOS
164 |         let expandingThumbnailWidthToHeight: CGFloat
165 |         switch style {
/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/MediaViewer/PageControlBar/MediaViewerPageControlBarLayout.swift:195:68: error: 'UICollectionViewLayoutAttributes' is unavailable in watchOS
193 |     }
194 |
195 |     override func layoutAttributesForElements(in rect: CGRect) -> [UICollectionViewLayoutAttributes]? {
    |                                                                    `- error: 'UICollectionViewLayoutAttributes' is unavailable in watchOS
196 |         attributesDictionary.values.filter { $0.frame.intersects(rect) }
197 |     }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UICollectionViewLayout.h:43:12: note: 'UICollectionViewLayoutAttributes' has been explicitly marked unavailable here
 41 |
 42 | UIKIT_EXTERN API_AVAILABLE(ios(6.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 43 | @interface UICollectionViewLayoutAttributes : NSObject <NSCopying, UIDynamicItem>
    |            `- note: 'UICollectionViewLayoutAttributes' has been explicitly marked unavailable here
 44 |
 45 | @property (nonatomic) CGRect frame;
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/PageControlBar/MediaViewerPageControlBarLayout.swift:199:71: error: 'UICollectionViewLayoutAttributes' is unavailable in watchOS
197 |     }
198 |
199 |     override func layoutAttributesForItem(at indexPath: IndexPath) -> UICollectionViewLayoutAttributes? {
    |                                                                       `- error: 'UICollectionViewLayoutAttributes' is unavailable in watchOS
200 |         attributesDictionary[indexPath]
201 |     }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UICollectionViewLayout.h:43:12: note: 'UICollectionViewLayoutAttributes' has been explicitly marked unavailable here
 41 |
 42 | UIKIT_EXTERN API_AVAILABLE(ios(6.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 43 | @interface UICollectionViewLayoutAttributes : NSObject <NSCopying, UIDynamicItem>
    |            `- note: 'UICollectionViewLayoutAttributes' has been explicitly marked unavailable here
 44 |
 45 | @property (nonatomic) CGRect frame;
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/PageControlBar/MediaViewerPageControlBarLayout.swift:10:46: error: 'UICollectionViewLayout' is unavailable in watchOS
  8 | import UIKit
  9 |
 10 | final class MediaViewerPageControlBarLayout: UICollectionViewLayout {
    |                                              `- error: 'UICollectionViewLayout' is unavailable in watchOS
 11 |
 12 |     enum Style {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UICollectionViewLayout.h:89:12: note: 'UICollectionViewLayout' has been explicitly marked unavailable here
 87 |
 88 | UIKIT_EXTERN API_AVAILABLE(ios(6.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 89 | @interface UICollectionViewLayout : NSObject <NSCoding>
    |            `- note: 'UICollectionViewLayout' has been explicitly marked unavailable here
 90 |
 91 | - (instancetype)init NS_DESIGNATED_INITIALIZER;
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/PageControlBar/PageControlBarThumbnailCell.swift:12:20: error: 'UIImageView' is unavailable in watchOS
10 | final class PageControlBarThumbnailCell: UICollectionViewCell {
11 |
12 |     let imageView: UIImageView = {
   |                    `- error: 'UIImageView' is unavailable in watchOS
13 |         let imageView = UIImageView()
14 |         imageView.contentMode = .scaleAspectFill
/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/MediaViewer/PageControlBar/PageControlBarThumbnailCell.swift:13:25: error: 'UIImageView' is unavailable in watchOS
11 |
12 |     let imageView: UIImageView = {
13 |         let imageView = UIImageView()
   |                         `- error: 'UIImageView' is unavailable in watchOS
14 |         imageView.contentMode = .scaleAspectFill
15 |         return imageView
/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/MediaViewer/PageControlBar/PageControlBarThumbnailCell.swift:13:25: error: 'init()' is unavailable in watchOS
11 |
12 |     let imageView: UIImageView = {
13 |         let imageView = UIImageView()
   |                         `- error: 'init()' is unavailable in watchOS
14 |         imageView.contentMode = .scaleAspectFill
15 |         return imageView
/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/MediaViewer/PageControlBar/PageControlBarThumbnailCell.swift:10:42: error: 'UICollectionViewCell' is unavailable in watchOS
 8 | import UIKit
 9 |
10 | final class PageControlBarThumbnailCell: UICollectionViewCell {
   |                                          `- error: 'UICollectionViewCell' is unavailable in watchOS
11 |
12 |     let imageView: 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/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/MediaViewer/Transitions/MediaViewerInteractivePopTransition.swift:13:21: error: 'UIView' is unavailable in watchOS
 11 | final class MediaViewerInteractivePopTransition: NSObject {
 12 |
 13 |     let sourceView: UIView?
    |                     `- error: 'UIView' is unavailable in watchOS
 14 |
 15 |     private var animator: UIViewPropertyAnimator?
/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/MediaViewer/Transitions/MediaViewerInteractivePopTransition.swift:15:27: error: 'UIViewPropertyAnimator' is unavailable in watchOS
 13 |     let sourceView: UIView?
 14 |
 15 |     private var animator: UIViewPropertyAnimator?
    |                           `- error: 'UIViewPropertyAnimator' is unavailable in watchOS
 16 |     private var transitionContext: (any UIViewControllerContextTransitioning)?
 17 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewPropertyAnimator.h:17:12: note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 15 |
 16 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 17 | @interface UIViewPropertyAnimator : NSObject <UIViewImplicitlyAnimating, NSCopying>
    |            `- note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 18 |
 19 | @property(nullable, nonatomic, copy, readonly) id <UITimingCurveProvider> timingParameters;
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Transitions/MediaViewerInteractivePopTransition.swift:16:41: error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
 14 |
 15 |     private var animator: UIViewPropertyAnimator?
 16 |     private var transitionContext: (any UIViewControllerContextTransitioning)?
    |                                         `- error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
 17 |
 18 |     private var shouldAnimateTabBar = 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/MediaViewer/Transitions/MediaViewerInteractivePopTransition.swift:20:25: error: 'UITabBar' is unavailable in watchOS
 18 |     private var shouldAnimateTabBar = false
 19 |
 20 |     private var tabBar: UITabBar? {
    |                         `- error: 'UITabBar' is unavailable in watchOS
 21 |         transitionContext?.viewController(forKey: .to)?.tabBarController?.tabBar
 22 |     }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITabBar.h:28:12: note: 'UITabBar' has been explicitly marked unavailable here
 26 |
 27 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 28 | @interface UITabBar : UIView
    |            `- note: 'UITabBar' has been explicitly marked unavailable here
 29 |
 30 | @property(nullable, nonatomic, weak) id<UITabBarDelegate> delegate;     // weak reference. default is nil
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Transitions/MediaViewerInteractivePopTransition.swift:38:51: error: 'UITabBarAppearance' is unavailable in watchOS
 36 |
 37 |     private var sourceViewHiddenBackup = false
 38 |     private var tabBarScrollEdgeAppearanceBackup: UITabBarAppearance?
    |                                                   `- error: 'UITabBarAppearance' is unavailable in watchOS
 39 |     private var tabBarAlphaBackup: CGFloat?
 40 |     private var toolbarHiddenBackup = true
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITabBarAppearance.h:80:12: note: 'UITabBarAppearance' has been explicitly marked unavailable here
 78 |
 79 | UIKIT_EXTERN API_AVAILABLE(ios(13.0), tvos(13.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 80 | @interface UITabBarAppearance : UIBarAppearance
    |            `- note: 'UITabBarAppearance' has been explicitly marked unavailable here
 81 |
 82 | /// The appearance for the stacked tab bar item layout
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Transitions/MediaViewerInteractivePopTransition.swift:42:42: error: 'UIBarButtonItem' is unavailable in watchOS
 40 |     private var toolbarHiddenBackup = true
 41 |     private var toolbarAlphaBackup: CGFloat = 0
 42 |     private var toVCToolbarItemsBackup: [UIBarButtonItem]?
    |                                          `- error: 'UIBarButtonItem' is unavailable in watchOS
 43 |     private var toVCAdditionalSafeAreaInsetsBackup: UIEdgeInsets = .zero
 44 |     private var initialZoomScale: CGFloat = 1
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIBarButtonItem.h:75:12: note: 'UIBarButtonItem' has been explicitly marked unavailable here
 73 |
 74 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 75 | @interface UIBarButtonItem : UIBarItem <NSCoding>
    |            `- note: 'UIBarButtonItem' has been explicitly marked unavailable here
 76 |
 77 | - (instancetype)init NS_DESIGNATED_INITIALIZER;
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Transitions/MediaViewerInteractivePopTransition.swift:52:22: error: 'UIView' is unavailable in watchOS
 50 |     // MARK: - Initializers
 51 |
 52 |     init(sourceView: UIView?) {
    |                      `- error: 'UIView' is unavailable in watchOS
 53 |         self.sourceView = sourceView
 54 |         super.init()
/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/MediaViewer/Transitions/MediaViewerInteractivePopTransition.swift:92:34: error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
 90 |
 91 |     func startInteractiveTransition(
 92 |         _ transitionContext: any UIViewControllerContextTransitioning
    |                                  `- error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
 93 |     ) {
 94 |         assert(didPrepare)
/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/MediaViewer/Transitions/MediaViewerInteractivePopTransition.swift:432:36: error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
430 |
431 |     private func mediaViewerCurrentPageView(
432 |         in transitionContext: some UIViewControllerContextTransitioning
    |                                    `- error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
433 |     ) -> MediaViewerOnePageView {
434 |         guard let mediaViewer = transitionContext.viewController(forKey: .from) as? MediaViewerViewController 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: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/MediaViewer/Transitions/MediaViewerInteractivePopTransition.swift:432:36: error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
430 |
431 |     private func mediaViewerCurrentPageView(
432 |         in transitionContext: some UIViewControllerContextTransitioning
    |                                    `- error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
433 |     ) -> MediaViewerOnePageView {
434 |         guard let mediaViewer = transitionContext.viewController(forKey: .from) as? MediaViewerViewController 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: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/MediaViewer/Transitions/MediaViewerInteractivePopTransition.swift:443:24: error: 'UIPanGestureRecognizer' is unavailable in watchOS
441 |
442 |     func panRecognized(
443 |         by recognizer: UIPanGestureRecognizer,
    |                        `- error: 'UIPanGestureRecognizer' is unavailable in watchOS
444 |         in mediaViewer: MediaViewerViewController
445 |     ) {
/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/MediaViewer/Transitions/MediaViewerInteractivePopTransition.swift:58:48: error: 'UIViewControllerInteractiveTransitioning' is unavailable in watchOS
 56 | }
 57 |
 58 | extension MediaViewerInteractivePopTransition: UIViewControllerInteractiveTransitioning {
    |                                                `- error: 'UIViewControllerInteractiveTransitioning' is unavailable in watchOS
 59 |
 60 |     func prepareForInteractiveTransition(
/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:161:11: note: 'UIViewControllerInteractiveTransitioning' has been explicitly marked unavailable here
159 |
160 | API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
161 | @protocol UIViewControllerInteractiveTransitioning <NSObject>
    |           `- note: 'UIViewControllerInteractiveTransitioning' has been explicitly marked unavailable here
162 | - (void)startInteractiveTransition:(id <UIViewControllerContextTransitioning>)transitionContext;
163 |
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Transitions/MediaViewerTransition.swift:13:28: error: 'UINavigationController' is unavailable in watchOS
 11 | final class MediaViewerTransition: NSObject, UIViewControllerAnimatedTransitioning {
 12 |
 13 |     private let operation: UINavigationController.Operation
    |                            `- error: 'UINavigationController' is unavailable in watchOS
 14 |     private let sourceView: UIView?
 15 |     private let sourceImage: () -> UIImage?
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UINavigationController.h:46:12: note: 'UINavigationController' has been explicitly marked unavailable here
 44 |
 45 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 46 | @interface UINavigationController : UIViewController
    |            `- note: 'UINavigationController' has been explicitly marked unavailable here
 47 |
 48 |
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Transitions/MediaViewerTransition.swift:14:29: error: 'UIView' is unavailable in watchOS
 12 |
 13 |     private let operation: UINavigationController.Operation
 14 |     private let sourceView: UIView?
    |                             `- error: 'UIView' is unavailable in watchOS
 15 |     private let sourceImage: () -> UIImage?
 16 |
/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/MediaViewer/Transitions/MediaViewerTransition.swift:20:20: error: 'UINavigationController' is unavailable in watchOS
 18 |
 19 |     init(
 20 |         operation: UINavigationController.Operation,
    |                    `- error: 'UINavigationController' is unavailable in watchOS
 21 |         sourceView: UIView?,
 22 |         sourceImage: @escaping () -> UIImage?
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UINavigationController.h:46:12: note: 'UINavigationController' has been explicitly marked unavailable here
 44 |
 45 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 46 | @interface UINavigationController : UIViewController
    |            `- note: 'UINavigationController' has been explicitly marked unavailable here
 47 |
 48 |
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Transitions/MediaViewerTransition.swift:21:21: error: 'UIView' is unavailable in watchOS
 19 |     init(
 20 |         operation: UINavigationController.Operation,
 21 |         sourceView: UIView?,
    |                     `- error: 'UIView' is unavailable in watchOS
 22 |         sourceImage: @escaping () -> UIImage?
 23 |     ) {
/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/MediaViewer/Transitions/MediaViewerTransition.swift:32:39: error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
 30 |
 31 |     func transitionDuration(
 32 |         using transitionContext: (any UIViewControllerContextTransitioning)?
    |                                       `- error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
 33 |     ) -> TimeInterval {
 34 |         switch operation {
/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/MediaViewer/Transitions/MediaViewerTransition.swift:47:38: error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
 45 |
 46 |     func animateTransition(
 47 |         using transitionContext: any UIViewControllerContextTransitioning
    |                                      `- error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
 48 |     ) {
 49 |         switch operation {
/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/MediaViewer/Transitions/MediaViewerTransition.swift:62:39: error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
 60 |
 61 |     private func animatePushTransition(
 62 |         using transitionContext: some UIViewControllerContextTransitioning
    |                                       `- error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
 63 |     ) {
 64 |         guard let mediaViewer = transitionContext.viewController(forKey: .to) as? MediaViewerViewController,
/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/MediaViewer/Transitions/MediaViewerTransition.swift:62:39: error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
 60 |
 61 |     private func animatePushTransition(
 62 |         using transitionContext: some UIViewControllerContextTransitioning
    |                                       `- error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
 63 |     ) {
 64 |         guard let mediaViewer = transitionContext.viewController(forKey: .to) as? MediaViewerViewController,
/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/MediaViewer/Transitions/MediaViewerTransition.swift:236:39: error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
234 |
235 |     private func animatePopTransition(
236 |         using transitionContext: some UIViewControllerContextTransitioning
    |                                       `- error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
237 |     ) {
238 |         guard let mediaViewer = transitionContext.viewController(forKey: .from) as? MediaViewerViewController,
/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/MediaViewer/Transitions/MediaViewerTransition.swift:236:39: error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
234 |
235 |     private func animatePopTransition(
236 |         using transitionContext: some UIViewControllerContextTransitioning
    |                                       `- error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
237 |     ) {
238 |         guard let mediaViewer = transitionContext.viewController(forKey: .from) as? MediaViewerViewController,
/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/MediaViewer/Transitions/MediaViewerTransition.swift:11:46: error: 'UIViewControllerAnimatedTransitioning' is unavailable in watchOS
  9 |
 10 | @MainActor
 11 | final class MediaViewerTransition: NSObject, UIViewControllerAnimatedTransitioning {
    |                                              `- error: 'UIViewControllerAnimatedTransitioning' is unavailable in watchOS
 12 |
 13 |     private let operation: UINavigationController.Operation
/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/MediaViewer/Transitions/UIViewTransitioningConfiguration.swift:15:22: error: 'UIView' is unavailable in watchOS
13 |     var backgroundColor: UIColor?
14 |     var tintColor: UIColor?
15 |     var contentMode: UIView.ContentMode
   |                      `- error: 'UIView' is unavailable in watchOS
16 |     var cornerRadius: CGFloat
17 |     var borderColor: CGColor?
/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/MediaViewer/Transitions/UIViewTransitioningConfiguration.swift:22:11: error: 'UIView' is unavailable in watchOS
20 | }
21 |
22 | extension UIView {
   |           `- error: 'UIView' is unavailable in watchOS
23 |
24 |     var transitioningConfiguration: UIViewTransitioningConfiguration {
/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.
Failed frontend command:
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift-frontend -frontend -emit-module -experimental-skip-non-inlinable-function-bodies-without-types /Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/AnyMediaIdentifier.swift /Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Extensions/MediaViewerViewController+UI.swift /Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Extensions/Sequence+Extension.swift /Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Extensions/UICollectionView+Extension.swift /Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Extensions/UIImageView+Extension.swift /Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Extensions/UIView+Extension.swift /Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Extensions/UIViewControllerContextTransitioning+Extension.swift /Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Media.swift /Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/MediaViewerDataSource.swift /Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/MediaViewerDelegate.swift /Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/MediaViewerOnePage/MediaViewerOnePageView.swift /Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/MediaViewerOnePage/MediaViewerOnePageViewController.swift /Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/MediaViewerViewController.swift /Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/MediaViewerViewModel.swift /Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/PageControlBar/MediaViewerPageControlBar.swift /Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/PageControlBar/MediaViewerPageControlBarLayout.swift /Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/PageControlBar/PageControlBarThumbnailCell.swift /Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Transitions/MediaViewerInteractivePopTransition.swift /Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Transitions/MediaViewerTransition.swift /Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Transitions/UIViewTransitioningConfiguration.swift -target arm64-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/MediaViewer.build/Debug-watchos/MediaViewer-t.build/Objects-normal/arm64/MediaViewer-dependencies-1.json -Xllvm -aarch64-use-tbi -enable-objc-interop -stack-check -sdk /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk -I /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-watchos -Isystem /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/usr/lib -F /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-watchos -F /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/Library/Frameworks -F /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/Developer/Library/Frameworks -module-cache-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SwiftExplicitPrecompiledModules -no-color-diagnostics -Xcc -fno-color-diagnostics -enable-testing -g -debug-info-format\=dwarf -dwarf-version\=4 -profile-generate -profile-coverage-mapping -swift-version 6 -Onone -D SWIFT_PACKAGE -D DEBUG -D SWIFT_MODULE_RESOURCE_BUNDLE_UNAVAILABLE -D Xcode -serialize-debugging-options -enable-upcoming-feature ExistentialAny -enable-experimental-feature DebugDescriptionMacro -empty-abi-descriptor -validate-clang-modules-once -clang-build-session-file /Users/admin/builder/spi-builder-workspace/.derivedData/ModuleCache.noindex/Session.modulevalidation -Xcc -working-directory -Xcc /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode -enable-anonymous-context-mangled-names -file-compilation-dir /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode -Xcc -D_LIBCPP_HARDENING_MODE\=_LIBCPP_HARDENING_MODE_DEBUG -Xcc -ivfsstatcache -Xcc /Users/admin/builder/spi-builder-workspace/.derivedData/SDKStatCaches.noindex/watchos27.0-24R360-e829b21a6f8c9b70876ba0858053c04477534ef55a1706bf4c1112bbb242f0a2.sdkstatcache -Xcc -fmodules-prune-interval\=86400 -Xcc -fmodules-prune-after\=345600 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-watchos/include -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/MediaViewer.build/Debug-watchos/MediaViewer-t.build/DerivedSources-normal/arm64 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/MediaViewer.build/Debug-watchos/MediaViewer-t.build/DerivedSources/arm64 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/MediaViewer.build/Debug-watchos/MediaViewer-t.build/DerivedSources -Xcc -DSWIFT_PACKAGE -Xcc -DDEBUG\=1 -no-auto-bridging-header-chaining -module-name MediaViewer -package-name spi_builder_workspace -const-gather-protocols-file /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/MediaViewer.build/Debug-watchos/MediaViewer-t.build/Objects-normal/arm64/MediaViewer_const_extract_protocols.json -disable-clang-spi -clang-target arm64-apple-watchos27.0 -target-sdk-version 27.0 -target-sdk-name watchos27.0 -in-process-plugin-server-path /Applications/Xcode-27.0.0-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/MediaViewer.build/Debug-watchos/MediaViewer-t.build/Objects-normal/arm64/MediaViewer.swiftdoc -emit-module-source-info-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/MediaViewer.build/Debug-watchos/MediaViewer-t.build/Objects-normal/arm64/MediaViewer.swiftsourceinfo -emit-objc-header-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/MediaViewer.build/Debug-watchos/MediaViewer-t.build/Objects-normal/arm64/MediaViewer-Swift.h -serialize-diagnostics-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/MediaViewer.build/Debug-watchos/MediaViewer-t.build/Objects-normal/arm64/MediaViewer-primary-emit-module.dia -emit-dependencies-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/MediaViewer.build/Debug-watchos/MediaViewer-t.build/Objects-normal/arm64/MediaViewer-primary-emit-module.d -parse-as-library -o /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/MediaViewer.build/Debug-watchos/MediaViewer-t.build/Objects-normal/arm64/MediaViewer.swiftmodule -emit-abi-descriptor-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/MediaViewer.build/Debug-watchos/MediaViewer-t.build/Objects-normal/arm64/MediaViewer.abi.json
SwiftCompile normal arm64 (in target 'MediaViewer' from project 'MediaViewer')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

SwiftCompile normal arm64 Compiling\ UIViewControllerContextTransitioning+Extension.swift,\ Media.swift /Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Extensions/UIViewControllerContextTransitioning+Extension.swift /Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Media.swift (in target 'MediaViewer' from project 'MediaViewer')
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Extensions/UIViewControllerContextTransitioning+Extension.swift:10:11: error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
 8 | import UIKit
 9 |
10 | extension UIViewControllerContextTransitioning {
   |           `- error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
11 |
12 |     /// Notifies the system that the transition animation is done.
/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 /Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Extensions/UIViewControllerContextTransitioning+Extension.swift (in target 'MediaViewer' from project 'MediaViewer')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile UIViewControllerContextTransitioning+Extension.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Media.swift (in target 'MediaViewer' from project 'MediaViewer')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile Media.swift
SwiftCompile normal arm64_32 Compiling\ MediaViewerPageControlBar.swift,\ MediaViewerPageControlBarLayout.swift /Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/PageControlBar/MediaViewerPageControlBar.swift /Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/PageControlBar/MediaViewerPageControlBarLayout.swift (in target 'MediaViewer' from project 'MediaViewer')
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/PageControlBar/MediaViewerPageControlBar.swift:115:35: error: cannot specialize non-generic type 'UICollectionViewDiffableDataSource'
113 |     }()
114 |
115 |     lazy var diffableDataSource = UICollectionViewDiffableDataSource<Int, AnyMediaIdentifier>(
    |                                   `- error: cannot specialize non-generic type 'UICollectionViewDiffableDataSource'
116 |         collectionView: collectionView
117 |     ) { [weak self] collectionView, indexPath, mediaIdentifier in
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/PageControlBar/MediaViewerPageControlBar.swift:39:41: error: 'UICollectionViewTransitionLayout' is unavailable in watchOS
 37 |
 38 |         /// The state of interactively transitioning between pages.
 39 |         case transitioningInteractively(UICollectionViewTransitionLayout, forwards: Bool)
    |                                         `- error: 'UICollectionViewTransitionLayout' is unavailable in watchOS
 40 |
 41 |         case reloading
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UICollectionViewTransitionLayout.h:15:12: note: 'UICollectionViewTransitionLayout' has been explicitly marked unavailable here
13 |
14 | UIKIT_EXTERN API_AVAILABLE(ios(7.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
15 | @interface UICollectionViewTransitionLayout : UICollectionViewLayout
   |            `- note: 'UICollectionViewTransitionLayout' has been explicitly marked unavailable here
16 |
17 | @property (assign, nonatomic) CGFloat transitionProgress;
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/PageControlBar/MediaViewerPageControlBar.swift:54:25: error: 'UICollectionViewTransitionLayout' is unavailable in watchOS
 52 |
 53 |         /// A layout during interactive paging transition.
 54 |         case transition(UICollectionViewTransitionLayout)
    |                         `- error: 'UICollectionViewTransitionLayout' is unavailable in watchOS
 55 |     }
 56 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UICollectionViewTransitionLayout.h:15:12: note: 'UICollectionViewTransitionLayout' has been explicitly marked unavailable here
13 |
14 | UIKIT_EXTERN API_AVAILABLE(ios(7.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
15 | @interface UICollectionViewTransitionLayout : UICollectionViewLayout
   |            `- note: 'UICollectionViewTransitionLayout' has been explicitly marked unavailable here
16 |
17 | @property (assign, nonatomic) CGFloat transitionProgress;
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/PageControlBar/MediaViewerPageControlBar.swift:57:42: error: 'UICollectionView' is unavailable in watchOS
 55 |     }
 56 |
 57 |     private typealias CellRegistration = UICollectionView.CellRegistration<
    |                                          `- error: 'UICollectionView' is unavailable in watchOS
 58 |         PageControlBarThumbnailCell,
 59 |         AnyMediaIdentifier
/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/MediaViewer/PageControlBar/MediaViewerPageControlBar.swift:107:38: error: 'UICollectionView' is unavailable in watchOS
105 |     }
106 |
107 |     private lazy var collectionView: UICollectionView = {
    |                                      `- error: 'UICollectionView' is unavailable in watchOS
108 |         let layout = MediaViewerPageControlBarLayout(style: .collapsed)
109 |         let collectionView = UICollectionView(frame: .zero, collectionViewLayout: layout)
/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/MediaViewer/PageControlBar/MediaViewerPageControlBar.swift:109:30: error: 'UICollectionView' is unavailable in watchOS
107 |     private lazy var collectionView: UICollectionView = {
108 |         let layout = MediaViewerPageControlBarLayout(style: .collapsed)
109 |         let collectionView = UICollectionView(frame: .zero, collectionViewLayout: layout)
    |                              `- error: 'UICollectionView' is unavailable in watchOS
110 |         collectionView.backgroundColor = .clear
111 |         collectionView.showsHorizontalScrollIndicator = 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/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/MediaViewer/PageControlBar/MediaViewerPageControlBar.swift:25:40: error: 'UIView' is unavailable in watchOS
 23 | }
 24 |
 25 | final class MediaViewerPageControlBar: UIView {
    |                                        `- error: 'UIView' is unavailable in watchOS
 26 |
 27 |     enum State: Hashable, Sendable {
/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/MediaViewer/PageControlBar/MediaViewerPageControlBar.swift:531:43: error: 'UICollectionView' is unavailable in watchOS
529 | extension MediaViewerPageControlBar: UICollectionViewDelegate {
530 |
531 |     func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) {
    |                                           `- error: 'UICollectionView' is unavailable in watchOS
532 |         collectionView.deselectItem(at: indexPath, animated: false)
533 |
/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/MediaViewer/PageControlBar/MediaViewerPageControlBar.swift:547:52: error: 'UIScrollView' is unavailable in watchOS
545 |     }
546 |
547 |     func scrollViewWillBeginDragging(_ scrollView: UIScrollView) {
    |                                                    `- error: 'UIScrollView' is unavailable in watchOS
548 |         collapseItem()
549 |     }
/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/MediaViewer/PageControlBar/MediaViewerPageControlBar.swift:551:44: error: 'UIScrollView' is unavailable in watchOS
549 |     }
550 |
551 |     func scrollViewDidScroll(_ scrollView: UIScrollView) {
    |                                            `- error: 'UIScrollView' is unavailable in watchOS
552 |         switch state {
553 |         case .collapsed(let indexPathForFinalDestinationItem):
/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/MediaViewer/PageControlBar/MediaViewerPageControlBar.swift:586:23: error: 'UIScrollView' is unavailable in watchOS
584 |
585 |     func scrollViewWillEndDragging(
586 |         _ scrollView: UIScrollView,
    |                       `- error: 'UIScrollView' is unavailable in watchOS
587 |         withVelocity velocity: CGPoint,
588 |         targetContentOffset: UnsafeMutablePointer<CGPoint>
/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/MediaViewer/PageControlBar/MediaViewerPageControlBar.swift:600:49: error: 'UIScrollView' is unavailable in watchOS
598 |     }
599 |
600 |     func scrollViewDidEndDragging(_ scrollView: UIScrollView, willDecelerate decelerate: Bool) {
    |                                                 `- error: 'UIScrollView' is unavailable in watchOS
601 |         /*
602 |          When the finger is released with the finger stopped
/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/MediaViewer/PageControlBar/MediaViewerPageControlBar.swift:618:53: error: 'UIScrollView' is unavailable in watchOS
616 |     }
617 |
618 |     func scrollViewDidEndDecelerating(_ scrollView: UIScrollView) {
    |                                                     `- error: 'UIScrollView' is unavailable in watchOS
619 |         switch state {
620 |         case .collapsing, .collapsed, .reloading:
/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/MediaViewer/PageControlBar/MediaViewerPageControlBar.swift:529:38: error: 'UICollectionViewDelegate' is unavailable in watchOS
527 | // MARK: - UICollectionViewDelegate -
528 |
529 | extension MediaViewerPageControlBar: UICollectionViewDelegate {
    |                                      `- error: 'UICollectionViewDelegate' is unavailable in watchOS
530 |
531 |     func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) {
/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:114:11: note: 'UICollectionViewDelegate' has been explicitly marked unavailable here
112 |
113 | API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
114 | @protocol UICollectionViewDelegate <UIScrollViewDelegate>
    |           `- note: 'UICollectionViewDelegate' has been explicitly marked unavailable here
115 | @optional
116 |
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/PageControlBar/MediaViewerPageControlBar.swift:98:38: error: 'UICollectionViewTransitionLayout' is unavailable in watchOS
 96 |         case let barLayout as MediaViewerPageControlBarLayout:
 97 |             return .normal(barLayout)
 98 |         case let transitionLayout as UICollectionViewTransitionLayout:
    |                                      `- error: 'UICollectionViewTransitionLayout' is unavailable in watchOS
 99 |             return .transition(transitionLayout)
100 |         default:
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UICollectionViewTransitionLayout.h:15:12: note: 'UICollectionViewTransitionLayout' has been explicitly marked unavailable here
13 |
14 | UIKIT_EXTERN API_AVAILABLE(ios(7.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
15 | @interface UICollectionViewTransitionLayout : UICollectionViewLayout
   |            `- note: 'UICollectionViewTransitionLayout' has been explicitly marked unavailable here
16 |
17 | @property (assign, nonatomic) CGFloat transitionProgress;
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/PageControlBar/MediaViewerPageControlBar.swift:98:38: error: 'UICollectionViewTransitionLayout' is unavailable in watchOS
 96 |         case let barLayout as MediaViewerPageControlBarLayout:
 97 |             return .normal(barLayout)
 98 |         case let transitionLayout as UICollectionViewTransitionLayout:
    |                                      `- error: 'UICollectionViewTransitionLayout' is unavailable in watchOS
 99 |             return .transition(transitionLayout)
100 |         default:
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UICollectionViewTransitionLayout.h:15:12: note: 'UICollectionViewTransitionLayout' has been explicitly marked unavailable here
13 |
14 | UIKIT_EXTERN API_AVAILABLE(ios(7.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
15 | @interface UICollectionViewTransitionLayout : UICollectionViewLayout
   |            `- note: 'UICollectionViewTransitionLayout' has been explicitly marked unavailable here
16 |
17 | @property (assign, nonatomic) CGFloat transitionProgress;
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/PageControlBar/MediaViewerPageControlBar.swift:163:9: error: 'NSLayoutConstraint' is unavailable in watchOS
161 |         // Layout
162 |         collectionView.translatesAutoresizingMaskIntoConstraints = false
163 |         NSLayoutConstraint.activate([
    |         `- error: 'NSLayoutConstraint' is unavailable in watchOS
164 |             collectionView.topAnchor.constraint(equalTo: topAnchor),
165 |             collectionView.leadingAnchor.constraint(equalTo: leadingAnchor),
/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/MediaViewer/PageControlBar/MediaViewerPageControlBar.swift:202:24: error: cannot specialize non-generic type 'NSDiffableDataSourceSnapshot'
200 |         currentIdentifier: AnyMediaIdentifier
201 |     ) async {
202 |         var snapshot = NSDiffableDataSourceSnapshot<Int, AnyMediaIdentifier>()
    |                        `- error: cannot specialize non-generic type 'NSDiffableDataSourceSnapshot'
203 |         snapshot.appendSections([0])
204 |         snapshot.appendItems(mediaIdentifiers)
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/PageControlBar/MediaViewerPageControlBar.swift:226:24: error: cannot specialize non-generic type 'NSDiffableDataSourceSnapshot'
224 |         animated: Bool
225 |     ) async {
226 |         var snapshot = NSDiffableDataSourceSnapshot<Int, AnyMediaIdentifier>()
    |                        `- error: cannot specialize non-generic type 'NSDiffableDataSourceSnapshot'
227 |         snapshot.appendSections([0])
228 |         snapshot.appendItems(identifiers)
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/PageControlBar/MediaViewerPageControlBar.swift:343:13: error: 'UIViewPropertyAnimator' is unavailable in watchOS
341 |         }
342 |         if animated {
343 |             UIViewPropertyAnimator(duration: duration, dampingRatio: 1) {
    |             `- error: 'UIViewPropertyAnimator' is unavailable in watchOS
344 |                 expandAndScroll()
345 |             }.startAnimation()
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewPropertyAnimator.h:17:12: note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 15 |
 16 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 17 | @interface UIViewPropertyAnimator : NSObject <UIViewImplicitlyAnimating, NSCopying>
    |            `- note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 18 |
 19 | @property(nullable, nonatomic, copy, readonly) id <UITimingCurveProvider> timingParameters;
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/PageControlBar/MediaViewerPageControlBar.swift:413:9: error: 'UIViewPropertyAnimator' is unavailable in watchOS
411 |               barLayout.style.indexPathForExpandingItem != nil else { return }
412 |         state = .collapsing
413 |         UIViewPropertyAnimator(duration: 0.5, dampingRatio: 1) {
    |         `- error: 'UIViewPropertyAnimator' is unavailable in watchOS
414 |             self.updateLayout(expandingItemAt: nil, animated: false)
415 |             self.state = .collapsed(indexPathForFinalDestinationItem: 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/UIViewPropertyAnimator.h:17:12: note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 15 |
 16 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 17 | @interface UIViewPropertyAnimator : NSObject <UIViewImplicitlyAnimating, NSCopying>
    |            `- note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 18 |
 19 | @property(nullable, nonatomic, copy, readonly) id <UITimingCurveProvider> timingParameters;
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/PageControlBar/MediaViewerPageControlBar.swift:491:32: error: 'UICollectionViewTransitionLayout' is unavailable in watchOS
489 |          until (completion is called and) the next transition can be started.
490 |          */
491 |         let transitionLayout = UICollectionViewTransitionLayout(
    |                                `- error: 'UICollectionViewTransitionLayout' is unavailable in watchOS
492 |             currentLayout: barLayout,
493 |             nextLayout: newLayout
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UICollectionViewTransitionLayout.h:15:12: note: 'UICollectionViewTransitionLayout' has been explicitly marked unavailable here
13 |
14 | UIKIT_EXTERN API_AVAILABLE(ios(7.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
15 | @interface UICollectionViewTransitionLayout : UICollectionViewLayout
   |            `- note: 'UICollectionViewTransitionLayout' has been explicitly marked unavailable here
16 |
17 | @property (assign, nonatomic) CGFloat transitionProgress;
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/PageControlBar/MediaViewerPageControlBar.swift:591:63: error: 'adjustedContentInset' is unavailable in watchOS
589 |     ) {
590 |         let targetPoint = CGPoint(
591 |             x: targetContentOffset.pointee.x + collectionView.adjustedContentInset.left,
    |                                                               `- error: 'adjustedContentInset' is unavailable in watchOS
592 |             y: 0
593 |         )
/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:101:45: note: 'adjustedContentInset' has been explicitly marked unavailable here
 99 |  its safeAreaInsets into the adjustedContentInset.
100 |  */
101 | @property(nonatomic, readonly) UIEdgeInsets adjustedContentInset API_AVAILABLE(ios(11.0), tvos(11.0)) API_UNAVAILABLE(watchos);
    |                                             `- note: 'adjustedContentInset' has been explicitly marked unavailable here
102 |
103 | /* Also see -scrollViewDidChangeAdjustedContentInset: in the UIScrollViewDelegate protocol.
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/PageControlBar/MediaViewerPageControlBarLayout.swift:34:51: error: 'UICollectionViewLayoutAttributes' is unavailable in watchOS
 32 |     }
 33 |
 34 |     private var attributesDictionary: [IndexPath: UICollectionViewLayoutAttributes] = [:]
    |                                                   `- error: 'UICollectionViewLayoutAttributes' is unavailable in watchOS
 35 |     private var contentSize: CGSize = .zero
 36 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UICollectionViewLayout.h:43:12: note: 'UICollectionViewLayoutAttributes' has been explicitly marked unavailable here
 41 |
 42 | UIKIT_EXTERN API_AVAILABLE(ios(6.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 43 | @interface UICollectionViewLayoutAttributes : NSObject <NSCopying, UIDynamicItem>
    |            `- note: 'UICollectionViewLayoutAttributes' has been explicitly marked unavailable here
 44 |
 45 | @property (nonatomic) CGRect frame;
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/PageControlBar/MediaViewerPageControlBarLayout.swift:78:50: error: 'UICollectionViewLayoutInvalidationContext' is unavailable in watchOS
 76 |     }
 77 |
 78 |     override func invalidateLayout(with context: UICollectionViewLayoutInvalidationContext) {
    |                                                  `- error: 'UICollectionViewLayoutInvalidationContext' is unavailable in watchOS
 79 |         if context.invalidateEverything || context.invalidateDataSourceCounts {
 80 |             isLayoutCacheInvalidated = true
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UICollectionViewLayout.h:66:12: note: 'UICollectionViewLayoutInvalidationContext' has been explicitly marked unavailable here
 64 |
 65 | UIKIT_EXTERN API_AVAILABLE(ios(7.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 66 | @interface UICollectionViewLayoutInvalidationContext : NSObject
    |            `- note: 'UICollectionViewLayoutInvalidationContext' has been explicitly marked unavailable here
 67 |
 68 | @property (nonatomic, readonly) BOOL invalidateEverything; // set to YES when invalidation occurs because the collection view is sent -reloadData
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/PageControlBar/MediaViewerPageControlBarLayout.swift:163:56: error: 'UICollectionView' is unavailable in watchOS
161 |     }
162 |
163 |     private func expandingItemWidth(in collectionView: UICollectionView) -> CGFloat {
    |                                                        `- error: 'UICollectionView' is unavailable in watchOS
164 |         let expandingThumbnailWidthToHeight: CGFloat
165 |         switch style {
/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/MediaViewer/PageControlBar/MediaViewerPageControlBarLayout.swift:195:68: error: 'UICollectionViewLayoutAttributes' is unavailable in watchOS
193 |     }
194 |
195 |     override func layoutAttributesForElements(in rect: CGRect) -> [UICollectionViewLayoutAttributes]? {
    |                                                                    `- error: 'UICollectionViewLayoutAttributes' is unavailable in watchOS
196 |         attributesDictionary.values.filter { $0.frame.intersects(rect) }
197 |     }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UICollectionViewLayout.h:43:12: note: 'UICollectionViewLayoutAttributes' has been explicitly marked unavailable here
 41 |
 42 | UIKIT_EXTERN API_AVAILABLE(ios(6.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 43 | @interface UICollectionViewLayoutAttributes : NSObject <NSCopying, UIDynamicItem>
    |            `- note: 'UICollectionViewLayoutAttributes' has been explicitly marked unavailable here
 44 |
 45 | @property (nonatomic) CGRect frame;
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/PageControlBar/MediaViewerPageControlBarLayout.swift:199:71: error: 'UICollectionViewLayoutAttributes' is unavailable in watchOS
197 |     }
198 |
199 |     override func layoutAttributesForItem(at indexPath: IndexPath) -> UICollectionViewLayoutAttributes? {
    |                                                                       `- error: 'UICollectionViewLayoutAttributes' is unavailable in watchOS
200 |         attributesDictionary[indexPath]
201 |     }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UICollectionViewLayout.h:43:12: note: 'UICollectionViewLayoutAttributes' has been explicitly marked unavailable here
 41 |
 42 | UIKIT_EXTERN API_AVAILABLE(ios(6.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 43 | @interface UICollectionViewLayoutAttributes : NSObject <NSCopying, UIDynamicItem>
    |            `- note: 'UICollectionViewLayoutAttributes' has been explicitly marked unavailable here
 44 |
 45 | @property (nonatomic) CGRect frame;
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/PageControlBar/MediaViewerPageControlBarLayout.swift:10:46: error: 'UICollectionViewLayout' is unavailable in watchOS
  8 | import UIKit
  9 |
 10 | final class MediaViewerPageControlBarLayout: UICollectionViewLayout {
    |                                              `- error: 'UICollectionViewLayout' is unavailable in watchOS
 11 |
 12 |     enum Style {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UICollectionViewLayout.h:89:12: note: 'UICollectionViewLayout' has been explicitly marked unavailable here
 87 |
 88 | UIKIT_EXTERN API_AVAILABLE(ios(6.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 89 | @interface UICollectionViewLayout : NSObject <NSCoding>
    |            `- note: 'UICollectionViewLayout' has been explicitly marked unavailable here
 90 |
 91 | - (instancetype)init NS_DESIGNATED_INITIALIZER;
SwiftCompile normal arm64_32 /Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/PageControlBar/MediaViewerPageControlBar.swift (in target 'MediaViewer' from project 'MediaViewer')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile MediaViewerPageControlBar.swift
SwiftCompile normal arm64_32 /Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/PageControlBar/MediaViewerPageControlBarLayout.swift (in target 'MediaViewer' from project 'MediaViewer')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile MediaViewerPageControlBarLayout.swift
SwiftCompile normal arm64 Compiling\ UIImageView+Extension.swift,\ UIView+Extension.swift /Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Extensions/UIImageView+Extension.swift /Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Extensions/UIView+Extension.swift (in target 'MediaViewer' from project 'MediaViewer')
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Extensions/UIImageView+Extension.swift:10:11: error: 'UIImageView' is unavailable in watchOS
 8 | import UIKit
 9 |
10 | extension UIImageView {
   |           `- error: 'UIImageView' is unavailable in watchOS
11 |
12 |     @discardableResult
/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/MediaViewer/Extensions/UIImageView+Extension.swift:24:25: error: 'UIView' is unavailable in watchOS
22 |                     switch transition {
23 |                     case .fade(let duration):
24 |                         UIView.transition(
   |                         `- error: 'UIView' is unavailable in watchOS
25 |                             with: self,
26 |                             duration: duration,
/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/MediaViewer/Extensions/UIView+Extension.swift:20:74: error: 'UIView' is unavailable in watchOS
18 |     }
19 |
20 |     func firstSubview<View>(ofType type: View.Type) -> View? where View: UIView {
   |                                                                          `- error: 'UIView' is unavailable in watchOS
21 |         for subview in subviews {
22 |             if let view = subview as? View {
/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/MediaViewer/Extensions/UIView+Extension.swift:10:11: error: 'UIView' is unavailable in watchOS
 8 | import UIKit
 9 |
10 | extension UIView {
   |           `- error: 'UIView' is unavailable in watchOS
11 |
12 |     /// Update the anchor point while keeping its position fixed.
/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/MediaViewer/Extensions/UIView+Extension.swift:15:47: error: 'anchorPoint' is unavailable in watchOS
13 |     /// - Parameter newAnchorPoint: The new anchor point.
14 |     func updateAnchorPointWithoutMoving(_ newAnchorPoint: CGPoint) {
15 |         frame.origin.x += (newAnchorPoint.x - anchorPoint.x) * frame.width
   |                                               `- error: 'anchorPoint' is unavailable in watchOS
16 |         frame.origin.y += (newAnchorPoint.y - anchorPoint.y) * frame.height
17 |         anchorPoint = newAnchorPoint
/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:206:30: note: 'anchorPoint' has been explicitly marked unavailable here
204 |  * the bounds rect, '(1, 1)' is the top right corner. Defaults to
205 |  * '(0.5, 0.5)', i.e. the center of the bounds rect. */
206 | @property(nonatomic) CGPoint anchorPoint API_AVAILABLE(ios(16.0)) API_UNAVAILABLE(watchos);
    |                              `- note: 'anchorPoint' has been explicitly marked unavailable here
207 |
208 | @property(nonatomic,getter=isMultipleTouchEnabled) BOOL multipleTouchEnabled API_UNAVAILABLE(tvos);   // default is NO
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Extensions/UIView+Extension.swift:16:47: error: 'anchorPoint' is unavailable in watchOS
14 |     func updateAnchorPointWithoutMoving(_ newAnchorPoint: CGPoint) {
15 |         frame.origin.x += (newAnchorPoint.x - anchorPoint.x) * frame.width
16 |         frame.origin.y += (newAnchorPoint.y - anchorPoint.y) * frame.height
   |                                               `- error: 'anchorPoint' is unavailable in watchOS
17 |         anchorPoint = newAnchorPoint
18 |     }
/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:206:30: note: 'anchorPoint' has been explicitly marked unavailable here
204 |  * the bounds rect, '(1, 1)' is the top right corner. Defaults to
205 |  * '(0.5, 0.5)', i.e. the center of the bounds rect. */
206 | @property(nonatomic) CGPoint anchorPoint API_AVAILABLE(ios(16.0)) API_UNAVAILABLE(watchos);
    |                              `- note: 'anchorPoint' has been explicitly marked unavailable here
207 |
208 | @property(nonatomic,getter=isMultipleTouchEnabled) BOOL multipleTouchEnabled API_UNAVAILABLE(tvos);   // default is NO
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Extensions/UIImageView+Extension.swift (in target 'MediaViewer' from project 'MediaViewer')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile UIImageView+Extension.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Extensions/UIView+Extension.swift (in target 'MediaViewer' from project 'MediaViewer')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile UIView+Extension.swift
SwiftCompile normal arm64_32 Compiling\ MediaViewerTransition.swift,\ UIViewTransitioningConfiguration.swift /Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Transitions/MediaViewerTransition.swift /Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Transitions/UIViewTransitioningConfiguration.swift (in target 'MediaViewer' from project 'MediaViewer')
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Transitions/MediaViewerTransition.swift:13:28: error: 'UINavigationController' is unavailable in watchOS
 11 | final class MediaViewerTransition: NSObject, UIViewControllerAnimatedTransitioning {
 12 |
 13 |     private let operation: UINavigationController.Operation
    |                            `- error: 'UINavigationController' is unavailable in watchOS
 14 |     private let sourceView: UIView?
 15 |     private let sourceImage: () -> UIImage?
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UINavigationController.h:46:12: note: 'UINavigationController' has been explicitly marked unavailable here
 44 |
 45 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 46 | @interface UINavigationController : UIViewController
    |            `- note: 'UINavigationController' has been explicitly marked unavailable here
 47 |
 48 |
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Transitions/MediaViewerTransition.swift:14:29: error: 'UIView' is unavailable in watchOS
 12 |
 13 |     private let operation: UINavigationController.Operation
 14 |     private let sourceView: UIView?
    |                             `- error: 'UIView' is unavailable in watchOS
 15 |     private let sourceImage: () -> UIImage?
 16 |
/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/MediaViewer/Transitions/MediaViewerTransition.swift:20:20: error: 'UINavigationController' is unavailable in watchOS
 18 |
 19 |     init(
 20 |         operation: UINavigationController.Operation,
    |                    `- error: 'UINavigationController' is unavailable in watchOS
 21 |         sourceView: UIView?,
 22 |         sourceImage: @escaping () -> UIImage?
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UINavigationController.h:46:12: note: 'UINavigationController' has been explicitly marked unavailable here
 44 |
 45 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 46 | @interface UINavigationController : UIViewController
    |            `- note: 'UINavigationController' has been explicitly marked unavailable here
 47 |
 48 |
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Transitions/MediaViewerTransition.swift:21:21: error: 'UIView' is unavailable in watchOS
 19 |     init(
 20 |         operation: UINavigationController.Operation,
 21 |         sourceView: UIView?,
    |                     `- error: 'UIView' is unavailable in watchOS
 22 |         sourceImage: @escaping () -> UIImage?
 23 |     ) {
/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/MediaViewer/Transitions/MediaViewerTransition.swift:32:39: error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
 30 |
 31 |     func transitionDuration(
 32 |         using transitionContext: (any UIViewControllerContextTransitioning)?
    |                                       `- error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
 33 |     ) -> TimeInterval {
 34 |         switch operation {
/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/MediaViewer/Transitions/MediaViewerTransition.swift:47:38: error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
 45 |
 46 |     func animateTransition(
 47 |         using transitionContext: any UIViewControllerContextTransitioning
    |                                      `- error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
 48 |     ) {
 49 |         switch operation {
/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/MediaViewer/Transitions/MediaViewerTransition.swift:62:39: error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
 60 |
 61 |     private func animatePushTransition(
 62 |         using transitionContext: some UIViewControllerContextTransitioning
    |                                       `- error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
 63 |     ) {
 64 |         guard let mediaViewer = transitionContext.viewController(forKey: .to) as? MediaViewerViewController,
/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/MediaViewer/Transitions/MediaViewerTransition.swift:62:39: error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
 60 |
 61 |     private func animatePushTransition(
 62 |         using transitionContext: some UIViewControllerContextTransitioning
    |                                       `- error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
 63 |     ) {
 64 |         guard let mediaViewer = transitionContext.viewController(forKey: .to) as? MediaViewerViewController,
/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/MediaViewer/Transitions/MediaViewerTransition.swift:236:39: error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
234 |
235 |     private func animatePopTransition(
236 |         using transitionContext: some UIViewControllerContextTransitioning
    |                                       `- error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
237 |     ) {
238 |         guard let mediaViewer = transitionContext.viewController(forKey: .from) as? MediaViewerViewController,
/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/MediaViewer/Transitions/MediaViewerTransition.swift:236:39: error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
234 |
235 |     private func animatePopTransition(
236 |         using transitionContext: some UIViewControllerContextTransitioning
    |                                       `- error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
237 |     ) {
238 |         guard let mediaViewer = transitionContext.viewController(forKey: .from) as? MediaViewerViewController,
/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/MediaViewer/Transitions/MediaViewerTransition.swift:11:46: error: 'UIViewControllerAnimatedTransitioning' is unavailable in watchOS
  9 |
 10 | @MainActor
 11 | final class MediaViewerTransition: NSObject, UIViewControllerAnimatedTransitioning {
    |                                              `- error: 'UIViewControllerAnimatedTransitioning' is unavailable in watchOS
 12 |
 13 |     private let operation: UINavigationController.Operation
/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/MediaViewer/Transitions/MediaViewerTransition.swift:64:75: error: 'to' is unavailable in watchOS
 62 |         using transitionContext: some UIViewControllerContextTransitioning
 63 |     ) {
 64 |         guard let mediaViewer = transitionContext.viewController(forKey: .to) as? MediaViewerViewController,
    |                                                                           `- error: 'to' is unavailable in watchOS
 65 |               let mediaViewerView = transitionContext.view(forKey: .to),
 66 |               let navigationController = mediaViewer.navigationController
/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/MediaViewer/Transitions/MediaViewerTransition.swift:65:69: error: 'to' is unavailable in watchOS
 63 |     ) {
 64 |         guard let mediaViewer = transitionContext.viewController(forKey: .to) as? MediaViewerViewController,
 65 |               let mediaViewerView = transitionContext.view(forKey: .to),
    |                                                                     `- error: 'to' is unavailable in watchOS
 66 |               let navigationController = mediaViewer.navigationController
 67 |         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/MediaViewer/Transitions/MediaViewerTransition.swift:72:47: error: 'containerView' is unavailable in watchOS
 70 |             )
 71 |         }
 72 |         let containerView = transitionContext.containerView
    |                                               `- error: 'containerView' is unavailable in watchOS
 73 |         containerView.addSubview(mediaViewerView)
 74 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/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/MediaViewer/Transitions/MediaViewerTransition.swift:82:56: error: 'scrollEdgeAppearance' is unavailable in watchOS
 80 |         let tabBarSuperviewBackup = tabBar?.superview
 81 |         let tabBarHiddenBackup = tabBar?.isHidden
 82 |         let tabBarScrollEdgeAppearanceBackup = tabBar?.scrollEdgeAppearance
    |                                                        `- error: 'scrollEdgeAppearance' is unavailable in watchOS
 83 |         let navigationBarAlphaBackup = navigationBar.alpha
 84 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITabBar.h:122:70: note: 'scrollEdgeAppearance' has been explicitly marked unavailable here
120 | @property (nonatomic, readwrite, copy) UITabBarAppearance *standardAppearance UI_APPEARANCE_SELECTOR API_AVAILABLE(ios(13.0), tvos(13.0)) API_UNAVAILABLE(watchos);
121 | /// Describes the appearance attributes for the tabBar to use when an observable scroll view is scrolled to the bottom. If not set, standardAppearance will be used instead.
122 | @property (nonatomic, readwrite, copy, nullable) UITabBarAppearance *scrollEdgeAppearance UI_APPEARANCE_SELECTOR API_AVAILABLE(ios(15.0)) API_UNAVAILABLE(watchos);
    |                                                                      `- note: 'scrollEdgeAppearance' has been explicitly marked unavailable here
123 |
124 | // A small view (200pt by 68pt) in the leading gutter next to tab bar to add accessories, such as logos, time, so on. If auto layout is used, it will be respected when placing subviews. If not, subviews will be places in respect to top left corner--meaning, frames of subviews will not be updated in any way.
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/MediaViewerOnePage/MediaViewerOnePageViewController.swift:25:34: error: 'init()' is unavailable in watchOS
 23 |     weak var delegate: (any MediaViewerOnePageViewControllerDelegate)?
 24 |
 25 |     let mediaViewerOnePageView = MediaViewerOnePageView()
    |                                  `- error: 'init()' is unavailable in watchOS
 26 |
 27 |     let singleTapRecognizer = UITapGestureRecognizer()
/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/MediaViewer/Transitions/MediaViewerTransition.swift:136:30: error: 'UITabBarAppearance' is unavailable in watchOS
134 |
135 |             // Make the tabBar opaque during the transition
136 |             let appearance = UITabBarAppearance()
    |                              `- error: 'UITabBarAppearance' is unavailable in watchOS
137 |             appearance.configureWithDefaultBackground()
138 |             tabBar.scrollEdgeAppearance = appearance
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITabBarAppearance.h:80:12: note: 'UITabBarAppearance' has been explicitly marked unavailable here
 78 |
 79 | UIKIT_EXTERN API_AVAILABLE(ios(13.0), tvos(13.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 80 | @interface UITabBarAppearance : UIBarAppearance
    |            `- note: 'UITabBarAppearance' has been explicitly marked unavailable here
 81 |
 82 | /// The appearance for the stacked tab bar item layout
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Transitions/MediaViewerTransition.swift:138:20: error: 'scrollEdgeAppearance' is unavailable in watchOS
136 |             let appearance = UITabBarAppearance()
137 |             appearance.configureWithDefaultBackground()
138 |             tabBar.scrollEdgeAppearance = appearance
    |                    `- error: 'scrollEdgeAppearance' is unavailable in watchOS
139 |
140 |             // Disable the default animation applied to the tabBar
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITabBar.h:122:70: note: 'scrollEdgeAppearance' has been explicitly marked unavailable here
120 | @property (nonatomic, readwrite, copy) UITabBarAppearance *standardAppearance UI_APPEARANCE_SELECTOR API_AVAILABLE(ios(13.0), tvos(13.0)) API_UNAVAILABLE(watchos);
121 | /// Describes the appearance attributes for the tabBar to use when an observable scroll view is scrolled to the bottom. If not set, standardAppearance will be used instead.
122 | @property (nonatomic, readwrite, copy, nullable) UITabBarAppearance *scrollEdgeAppearance UI_APPEARANCE_SELECTOR API_AVAILABLE(ios(15.0)) API_UNAVAILABLE(watchos);
    |                                                                      `- note: 'scrollEdgeAppearance' has been explicitly marked unavailable here
123 |
124 | // A small view (200pt by 68pt) in the leading gutter next to tab bar to add accessories, such as logos, time, so on. If auto layout is used, it will be respected when placing subviews. If not, subviews will be places in respect to top left corner--meaning, frames of subviews will not be updated in any way.
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/MediaViewerViewController.swift:110:30: error: 'UIToolbar' is unavailable in watchOS
 108 |     private let backgroundView = UIView()
 109 |
 110 |     let pageControlToolbar = UIToolbar()
     |                              `- error: 'UIToolbar' is unavailable in watchOS
 111 |     private let pageControlBar = MediaViewerPageControlBar()
 112 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIToolbar.h:23:12: note: 'UIToolbar' has been explicitly marked unavailable here
21 |
22 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(tvos, watchos) NS_SWIFT_UI_ACTOR
23 | @interface UIToolbar : UIView <UIBarPositioning>
   |            `- note: 'UIToolbar' has been explicitly marked unavailable here
24 |
25 | @property(nonatomic) UIBarStyle barStyle UI_APPEARANCE_SELECTOR API_UNAVAILABLE(tvos); // default is UIBarStyleDefault
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/MediaViewerViewController.swift:110:30: error: 'init()' is unavailable in watchOS
 108 |     private let backgroundView = UIView()
 109 |
 110 |     let pageControlToolbar = UIToolbar()
     |                              `- error: 'init()' is unavailable in watchOS
 111 |     private let pageControlBar = MediaViewerPageControlBar()
 112 |
/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/MediaViewer/Transitions/MediaViewerTransition.swift:180:9: error: 'UIViewPropertyAnimator' is unavailable in watchOS
178 |
179 |         // NOTE: Animate only pageControlToolbar with easeInOut curve.
180 |         UIViewPropertyAnimator(duration: 0.25, curve: .easeInOut) {
    |         `- error: 'UIViewPropertyAnimator' is unavailable in watchOS
181 |             mediaViewerView.layoutIfNeeded()
182 |         }.startAnimation()
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewPropertyAnimator.h:17:12: note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 15 |
 16 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 17 | @interface UIViewPropertyAnimator : NSObject <UIViewImplicitlyAnimating, NSCopying>
    |            `- note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 18 |
 19 | @property(nullable, nonatomic, copy, readonly) id <UITimingCurveProvider> timingParameters;
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Transitions/MediaViewerTransition.swift:185:24: error: 'UIViewPropertyAnimator' is unavailable in watchOS
183 |
184 |         let duration = transitionDuration(using: transitionContext)
185 |         let animator = UIViewPropertyAnimator(duration: duration, dampingRatio: 0.7) {
    |                        `- error: 'UIViewPropertyAnimator' is unavailable in watchOS
186 |             navigationBar.alpha = navigationBarAlphaBackup
187 |             for view in viewsToFadeInDuringTransition {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewPropertyAnimator.h:17:12: note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 15 |
 16 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 17 | @interface UIViewPropertyAnimator : NSObject <UIViewImplicitlyAnimating, NSCopying>
    |            `- note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 18 |
 19 | @property(nullable, nonatomic, copy, readonly) id <UITimingCurveProvider> timingParameters;
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Transitions/MediaViewerTransition.swift:223:28: error: 'scrollEdgeAppearance' is unavailable in watchOS
221 |                 if #unavailable(iOS 26), let tabBar {
222 |                     tabBar.isHidden = tabBarHiddenBackup!
223 |                     tabBar.scrollEdgeAppearance = tabBarScrollEdgeAppearanceBackup
    |                            `- error: 'scrollEdgeAppearance' is unavailable in watchOS
224 |                     tabBarSuperviewBackup?.addSubview(tabBar)
225 |                 }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITabBar.h:122:70: note: 'scrollEdgeAppearance' has been explicitly marked unavailable here
120 | @property (nonatomic, readwrite, copy) UITabBarAppearance *standardAppearance UI_APPEARANCE_SELECTOR API_AVAILABLE(ios(13.0), tvos(13.0)) API_UNAVAILABLE(watchos);
121 | /// Describes the appearance attributes for the tabBar to use when an observable scroll view is scrolled to the bottom. If not set, standardAppearance will be used instead.
122 | @property (nonatomic, readwrite, copy, nullable) UITabBarAppearance *scrollEdgeAppearance UI_APPEARANCE_SELECTOR API_AVAILABLE(ios(15.0)) API_UNAVAILABLE(watchos);
    |                                                                      `- note: 'scrollEdgeAppearance' has been explicitly marked unavailable here
123 |
124 | // A small view (200pt by 68pt) in the leading gutter next to tab bar to add accessories, such as logos, time, so on. If auto layout is used, it will be respected when placing subviews. If not, subviews will be places in respect to top left corner--meaning, frames of subviews will not be updated in any way.
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Transitions/MediaViewerTransition.swift:238:75: error: 'from' is unavailable in watchOS
236 |         using transitionContext: some UIViewControllerContextTransitioning
237 |     ) {
238 |         guard let mediaViewer = transitionContext.viewController(forKey: .from) as? MediaViewerViewController,
    |                                                                           `- error: 'from' is unavailable in watchOS
239 |               let mediaViewerView = transitionContext.view(forKey: .from),
240 |               let toView = transitionContext.view(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: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/MediaViewer/Transitions/MediaViewerTransition.swift:239:69: error: 'from' is unavailable in watchOS
237 |     ) {
238 |         guard let mediaViewer = transitionContext.viewController(forKey: .from) as? MediaViewerViewController,
239 |               let mediaViewerView = transitionContext.view(forKey: .from),
    |                                                                     `- error: 'from' is unavailable in watchOS
240 |               let toView = transitionContext.view(forKey: .to),
241 |               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:26:47: 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 |
 26 | UIKIT_EXTERN UITransitionContextViewKey const UITransitionContextFromViewKey API_UNAVAILABLE(watchos) NS_SWIFT_NAME(from) API_AVAILABLE(ios(8.0));
    |                                               `- note: 'from' has been explicitly marked unavailable here
 27 | UIKIT_EXTERN UITransitionContextViewKey const UITransitionContextToViewKey API_UNAVAILABLE(watchos) NS_SWIFT_NAME(to) API_AVAILABLE(ios(8.0));
 28 |
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Transitions/MediaViewerTransition.swift:240:60: error: 'to' is unavailable in watchOS
238 |         guard let mediaViewer = transitionContext.viewController(forKey: .from) as? MediaViewerViewController,
239 |               let mediaViewerView = transitionContext.view(forKey: .from),
240 |               let toView = transitionContext.view(forKey: .to),
    |                                                            `- error: 'to' is unavailable in watchOS
241 |               let toVC = transitionContext.viewController(forKey: .to),
242 |               let navigationController = mediaViewer.navigationController
/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/MediaViewer/Transitions/MediaViewerTransition.swift:241:68: error: 'to' is unavailable in watchOS
239 |               let mediaViewerView = transitionContext.view(forKey: .from),
240 |               let toView = transitionContext.view(forKey: .to),
241 |               let toVC = transitionContext.viewController(forKey: .to),
    |                                                                    `- error: 'to' is unavailable in watchOS
242 |               let navigationController = mediaViewer.navigationController
243 |         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: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/MediaViewer/Transitions/MediaViewerTransition.swift:248:47: error: 'containerView' is unavailable in watchOS
246 |             )
247 |         }
248 |         let containerView = transitionContext.containerView
    |                                               `- error: 'containerView' is unavailable in watchOS
249 |         containerView.addSubview(toView)
250 |         containerView.addSubview(mediaViewerView)
/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/MediaViewer/Transitions/MediaViewerTransition.swift:255:55: error: 'additionalSafeAreaInsets' is unavailable in watchOS
253 |         let sourceViewHiddenBackup = sourceView?.isHidden ?? false
254 |         let toVCToolbarItemsBackup = toVC.toolbarItems
255 |         let toVCAdditionalSafeAreaInsetsBackup = toVC.additionalSafeAreaInsets
    |                                                       `- error: 'additionalSafeAreaInsets' is unavailable in watchOS
256 |
257 |         // MARK: Prepare for the transition
/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:570:35: note: 'additionalSafeAreaInsets' has been explicitly marked unavailable here
568 |  that UIViewController calculates for the safeAreaInsets for contained view controllers.
569 |  */
570 | @property(nonatomic) UIEdgeInsets additionalSafeAreaInsets API_AVAILABLE(ios(11.0), tvos(11.0)) API_UNAVAILABLE(watchos);
    |                                   `- note: 'additionalSafeAreaInsets' has been explicitly marked unavailable here
571 |
572 | /* Minimum layoutMargins for the view determined by the view controller from context and hardware information.
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Transitions/MediaViewerTransition.swift:275:18: error: 'additionalSafeAreaInsets' is unavailable in watchOS
273 |          */
274 |         if mediaViewer.toolbarHiddenBackup {
275 |             toVC.additionalSafeAreaInsets.bottom = -toolbar.bounds.height
    |                  `- error: 'additionalSafeAreaInsets' is unavailable in watchOS
276 |         }
277 |
/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:570:35: note: 'additionalSafeAreaInsets' has been explicitly marked unavailable here
568 |  that UIViewController calculates for the safeAreaInsets for contained view controllers.
569 |  */
570 | @property(nonatomic) UIEdgeInsets additionalSafeAreaInsets API_AVAILABLE(ios(11.0), tvos(11.0)) API_UNAVAILABLE(watchos);
    |                                   `- note: 'additionalSafeAreaInsets' has been explicitly marked unavailable here
571 |
572 | /* Minimum layoutMargins for the view determined by the view controller from context and hardware information.
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Transitions/MediaViewerTransition.swift:313:9: error: 'UIViewPropertyAnimator' is unavailable in watchOS
311 |
312 |         // NOTE: Animate only pageControlToolbar with easeInOut curve.
313 |         UIViewPropertyAnimator(duration: 0.25, curve: .easeInOut) {
    |         `- error: 'UIViewPropertyAnimator' is unavailable in watchOS
314 |             mediaViewerView.layoutIfNeeded()
315 |         }.startAnimation()
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewPropertyAnimator.h:17:12: note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 15 |
 16 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 17 | @interface UIViewPropertyAnimator : NSObject <UIViewImplicitlyAnimating, NSCopying>
    |            `- note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 18 |
 19 | @property(nullable, nonatomic, copy, readonly) id <UITimingCurveProvider> timingParameters;
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Transitions/MediaViewerTransition.swift:318:24: error: 'UIViewPropertyAnimator' is unavailable in watchOS
316 |
317 |         let duration = transitionDuration(using: transitionContext)
318 |         let animator = UIViewPropertyAnimator(duration: duration, dampingRatio: 1) {
    |                        `- error: 'UIViewPropertyAnimator' is unavailable in watchOS
319 |             for view in viewsToFadeOutDuringTransition {
320 |                 view.alpha = 0
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewPropertyAnimator.h:17:12: note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 15 |
 16 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 17 | @interface UIViewPropertyAnimator : NSObject <UIViewImplicitlyAnimating, NSCopying>
    |            `- note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 18 |
 19 | @property(nullable, nonatomic, copy, readonly) id <UITimingCurveProvider> timingParameters;
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Transitions/MediaViewerTransition.swift:380:22: error: 'additionalSafeAreaInsets' is unavailable in watchOS
378 |                 self.sourceView?.isHidden = sourceViewHiddenBackup
379 |                 toVC.toolbarItems = toVCToolbarItemsBackup
380 |                 toVC.additionalSafeAreaInsets = toVCAdditionalSafeAreaInsetsBackup
    |                      `- error: 'additionalSafeAreaInsets' is unavailable in watchOS
381 |                 navigationController.isToolbarHidden = mediaViewer.toolbarHiddenBackup
382 |                 toolbar.alpha = mediaViewer.toolbarAlphaBackup
/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:570:35: note: 'additionalSafeAreaInsets' has been explicitly marked unavailable here
568 |  that UIViewController calculates for the safeAreaInsets for contained view controllers.
569 |  */
570 | @property(nonatomic) UIEdgeInsets additionalSafeAreaInsets API_AVAILABLE(ios(11.0), tvos(11.0)) API_UNAVAILABLE(watchos);
    |                                   `- note: 'additionalSafeAreaInsets' has been explicitly marked unavailable here
571 |
572 | /* Minimum layoutMargins for the view determined by the view controller from context and hardware information.
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Transitions/UIViewTransitioningConfiguration.swift:15:22: error: 'UIView' is unavailable in watchOS
13 |     var backgroundColor: UIColor?
14 |     var tintColor: UIColor?
15 |     var contentMode: UIView.ContentMode
   |                      `- error: 'UIView' is unavailable in watchOS
16 |     var cornerRadius: CGFloat
17 |     var borderColor: CGColor?
/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/MediaViewer/Transitions/MediaViewerTransition.swift (in target 'MediaViewer' from project 'MediaViewer')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile MediaViewerTransition.swift
SwiftCompile normal arm64_32 /Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Transitions/UIViewTransitioningConfiguration.swift (in target 'MediaViewer' from project 'MediaViewer')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile UIViewTransitioningConfiguration.swift
SwiftCompile normal arm64 Compiling\ PageControlBarThumbnailCell.swift,\ MediaViewerInteractivePopTransition.swift /Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/PageControlBar/PageControlBarThumbnailCell.swift /Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Transitions/MediaViewerInteractivePopTransition.swift (in target 'MediaViewer' from project 'MediaViewer')
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/PageControlBar/PageControlBarThumbnailCell.swift:12:20: error: 'UIImageView' is unavailable in watchOS
10 | final class PageControlBarThumbnailCell: UICollectionViewCell {
11 |
12 |     let imageView: UIImageView = {
   |                    `- error: 'UIImageView' is unavailable in watchOS
13 |         let imageView = UIImageView()
14 |         imageView.contentMode = .scaleAspectFill
/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/MediaViewer/PageControlBar/PageControlBarThumbnailCell.swift:13:25: error: 'UIImageView' is unavailable in watchOS
11 |
12 |     let imageView: UIImageView = {
13 |         let imageView = UIImageView()
   |                         `- error: 'UIImageView' is unavailable in watchOS
14 |         imageView.contentMode = .scaleAspectFill
15 |         return imageView
/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/MediaViewer/PageControlBar/PageControlBarThumbnailCell.swift:13:25: error: 'init()' is unavailable in watchOS
11 |
12 |     let imageView: UIImageView = {
13 |         let imageView = UIImageView()
   |                         `- error: 'init()' is unavailable in watchOS
14 |         imageView.contentMode = .scaleAspectFill
15 |         return imageView
/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/MediaViewer/PageControlBar/PageControlBarThumbnailCell.swift:10:42: error: 'UICollectionViewCell' is unavailable in watchOS
 8 | import UIKit
 9 |
10 | final class PageControlBarThumbnailCell: UICollectionViewCell {
   |                                          `- error: 'UICollectionViewCell' is unavailable in watchOS
11 |
12 |     let imageView: 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/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/MediaViewer/PageControlBar/PageControlBarThumbnailCell.swift:44:9: error: 'NSLayoutConstraint' is unavailable in watchOS
42 |         // Layout
43 |         imageView.translatesAutoresizingMaskIntoConstraints = false
44 |         NSLayoutConstraint.activate([
   |         `- error: 'NSLayoutConstraint' is unavailable in watchOS
45 |             imageView.topAnchor.constraint(equalTo: contentView.topAnchor),
46 |             imageView.leadingAnchor.constraint(equalTo: contentView.leadingAnchor),
/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/MediaViewer/Transitions/MediaViewerInteractivePopTransition.swift:13:21: error: 'UIView' is unavailable in watchOS
 11 | final class MediaViewerInteractivePopTransition: NSObject {
 12 |
 13 |     let sourceView: UIView?
    |                     `- error: 'UIView' is unavailable in watchOS
 14 |
 15 |     private var animator: UIViewPropertyAnimator?
/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/MediaViewer/Transitions/MediaViewerInteractivePopTransition.swift:15:27: error: 'UIViewPropertyAnimator' is unavailable in watchOS
 13 |     let sourceView: UIView?
 14 |
 15 |     private var animator: UIViewPropertyAnimator?
    |                           `- error: 'UIViewPropertyAnimator' is unavailable in watchOS
 16 |     private var transitionContext: (any UIViewControllerContextTransitioning)?
 17 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewPropertyAnimator.h:17:12: note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 15 |
 16 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 17 | @interface UIViewPropertyAnimator : NSObject <UIViewImplicitlyAnimating, NSCopying>
    |            `- note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 18 |
 19 | @property(nullable, nonatomic, copy, readonly) id <UITimingCurveProvider> timingParameters;
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Transitions/MediaViewerInteractivePopTransition.swift:16:41: error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
 14 |
 15 |     private var animator: UIViewPropertyAnimator?
 16 |     private var transitionContext: (any UIViewControllerContextTransitioning)?
    |                                         `- error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
 17 |
 18 |     private var shouldAnimateTabBar = 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/MediaViewer/Transitions/MediaViewerInteractivePopTransition.swift:20:25: error: 'UITabBar' is unavailable in watchOS
 18 |     private var shouldAnimateTabBar = false
 19 |
 20 |     private var tabBar: UITabBar? {
    |                         `- error: 'UITabBar' is unavailable in watchOS
 21 |         transitionContext?.viewController(forKey: .to)?.tabBarController?.tabBar
 22 |     }
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITabBar.h:28:12: note: 'UITabBar' has been explicitly marked unavailable here
 26 |
 27 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 28 | @interface UITabBar : UIView
    |            `- note: 'UITabBar' has been explicitly marked unavailable here
 29 |
 30 | @property(nullable, nonatomic, weak) id<UITabBarDelegate> delegate;     // weak reference. default is nil
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Transitions/MediaViewerInteractivePopTransition.swift:38:51: error: 'UITabBarAppearance' is unavailable in watchOS
 36 |
 37 |     private var sourceViewHiddenBackup = false
 38 |     private var tabBarScrollEdgeAppearanceBackup: UITabBarAppearance?
    |                                                   `- error: 'UITabBarAppearance' is unavailable in watchOS
 39 |     private var tabBarAlphaBackup: CGFloat?
 40 |     private var toolbarHiddenBackup = true
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITabBarAppearance.h:80:12: note: 'UITabBarAppearance' has been explicitly marked unavailable here
 78 |
 79 | UIKIT_EXTERN API_AVAILABLE(ios(13.0), tvos(13.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 80 | @interface UITabBarAppearance : UIBarAppearance
    |            `- note: 'UITabBarAppearance' has been explicitly marked unavailable here
 81 |
 82 | /// The appearance for the stacked tab bar item layout
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Transitions/MediaViewerInteractivePopTransition.swift:42:42: error: 'UIBarButtonItem' is unavailable in watchOS
 40 |     private var toolbarHiddenBackup = true
 41 |     private var toolbarAlphaBackup: CGFloat = 0
 42 |     private var toVCToolbarItemsBackup: [UIBarButtonItem]?
    |                                          `- error: 'UIBarButtonItem' is unavailable in watchOS
 43 |     private var toVCAdditionalSafeAreaInsetsBackup: UIEdgeInsets = .zero
 44 |     private var initialZoomScale: CGFloat = 1
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIBarButtonItem.h:75:12: note: 'UIBarButtonItem' has been explicitly marked unavailable here
 73 |
 74 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 75 | @interface UIBarButtonItem : UIBarItem <NSCoding>
    |            `- note: 'UIBarButtonItem' has been explicitly marked unavailable here
 76 |
 77 | - (instancetype)init NS_DESIGNATED_INITIALIZER;
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Transitions/MediaViewerInteractivePopTransition.swift:52:22: error: 'UIView' is unavailable in watchOS
 50 |     // MARK: - Initializers
 51 |
 52 |     init(sourceView: UIView?) {
    |                      `- error: 'UIView' is unavailable in watchOS
 53 |         self.sourceView = sourceView
 54 |         super.init()
/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/MediaViewer/Transitions/MediaViewerInteractivePopTransition.swift:92:34: error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
 90 |
 91 |     func startInteractiveTransition(
 92 |         _ transitionContext: any UIViewControllerContextTransitioning
    |                                  `- error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
 93 |     ) {
 94 |         assert(didPrepare)
/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/MediaViewer/Transitions/MediaViewerInteractivePopTransition.swift:432:36: error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
430 |
431 |     private func mediaViewerCurrentPageView(
432 |         in transitionContext: some UIViewControllerContextTransitioning
    |                                    `- error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
433 |     ) -> MediaViewerOnePageView {
434 |         guard let mediaViewer = transitionContext.viewController(forKey: .from) as? MediaViewerViewController 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: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/MediaViewer/Transitions/MediaViewerInteractivePopTransition.swift:432:36: error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
430 |
431 |     private func mediaViewerCurrentPageView(
432 |         in transitionContext: some UIViewControllerContextTransitioning
    |                                    `- error: 'UIViewControllerContextTransitioning' is unavailable in watchOS
433 |     ) -> MediaViewerOnePageView {
434 |         guard let mediaViewer = transitionContext.viewController(forKey: .from) as? MediaViewerViewController 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: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/MediaViewer/Transitions/MediaViewerInteractivePopTransition.swift:443:24: error: 'UIPanGestureRecognizer' is unavailable in watchOS
441 |
442 |     func panRecognized(
443 |         by recognizer: UIPanGestureRecognizer,
    |                        `- error: 'UIPanGestureRecognizer' is unavailable in watchOS
444 |         in mediaViewer: MediaViewerViewController
445 |     ) {
/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/MediaViewer/Transitions/MediaViewerInteractivePopTransition.swift:58:48: error: 'UIViewControllerInteractiveTransitioning' is unavailable in watchOS
 56 | }
 57 |
 58 | extension MediaViewerInteractivePopTransition: UIViewControllerInteractiveTransitioning {
    |                                                `- error: 'UIViewControllerInteractiveTransitioning' is unavailable in watchOS
 59 |
 60 |     func prepareForInteractiveTransition(
/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:161:11: note: 'UIViewControllerInteractiveTransitioning' has been explicitly marked unavailable here
159 |
160 | API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
161 | @protocol UIViewControllerInteractiveTransitioning <NSObject>
    |           `- note: 'UIViewControllerInteractiveTransitioning' has been explicitly marked unavailable here
162 | - (void)startInteractiveTransition:(id <UIViewControllerContextTransitioning>)transitionContext;
163 |
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Transitions/MediaViewerInteractivePopTransition.swift:21:52: error: 'to' is unavailable in watchOS
 19 |
 20 |     private var tabBar: UITabBar? {
 21 |         transitionContext?.viewController(forKey: .to)?.tabBarController?.tabBar
    |                                                    `- error: 'to' is unavailable in watchOS
 22 |     }
 23 |
/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/MediaViewer/MediaViewerOnePage/MediaViewerOnePageViewController.swift:25:34: error: 'init()' is unavailable in watchOS
 23 |     weak var delegate: (any MediaViewerOnePageViewControllerDelegate)?
 24 |
 25 |     let mediaViewerOnePageView = MediaViewerOnePageView()
    |                                  `- error: 'init()' is unavailable in watchOS
 26 |
 27 |     let singleTapRecognizer = UITapGestureRecognizer()
/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/MediaViewer/Transitions/MediaViewerInteractivePopTransition.swift:96:75: error: 'from' is unavailable in watchOS
 94 |         assert(didPrepare)
 95 |
 96 |         guard let mediaViewer = transitionContext.viewController(forKey: .from) as? MediaViewerViewController,
    |                                                                           `- error: 'from' is unavailable in watchOS
 97 |               let mediaViewerView = transitionContext.view(forKey: .from),
 98 |               let toView = transitionContext.view(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: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/MediaViewer/Transitions/MediaViewerInteractivePopTransition.swift:97:69: error: 'from' is unavailable in watchOS
 95 |
 96 |         guard let mediaViewer = transitionContext.viewController(forKey: .from) as? MediaViewerViewController,
 97 |               let mediaViewerView = transitionContext.view(forKey: .from),
    |                                                                     `- error: 'from' is unavailable in watchOS
 98 |               let toView = transitionContext.view(forKey: .to),
 99 |               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:26:47: 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 |
 26 | UIKIT_EXTERN UITransitionContextViewKey const UITransitionContextFromViewKey API_UNAVAILABLE(watchos) NS_SWIFT_NAME(from) API_AVAILABLE(ios(8.0));
    |                                               `- note: 'from' has been explicitly marked unavailable here
 27 | UIKIT_EXTERN UITransitionContextViewKey const UITransitionContextToViewKey API_UNAVAILABLE(watchos) NS_SWIFT_NAME(to) API_AVAILABLE(ios(8.0));
 28 |
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Transitions/MediaViewerInteractivePopTransition.swift:98:60: error: 'to' is unavailable in watchOS
 96 |         guard let mediaViewer = transitionContext.viewController(forKey: .from) as? MediaViewerViewController,
 97 |               let mediaViewerView = transitionContext.view(forKey: .from),
 98 |               let toView = transitionContext.view(forKey: .to),
    |                                                            `- error: 'to' is unavailable in watchOS
 99 |               let toVC = transitionContext.viewController(forKey: .to),
100 |               let navigationController = mediaViewer.navigationController
/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/MediaViewer/Transitions/MediaViewerInteractivePopTransition.swift:99:68: error: 'to' is unavailable in watchOS
 97 |               let mediaViewerView = transitionContext.view(forKey: .from),
 98 |               let toView = transitionContext.view(forKey: .to),
 99 |               let toVC = transitionContext.viewController(forKey: .to),
    |                                                                    `- error: 'to' is unavailable in watchOS
100 |               let navigationController = mediaViewer.navigationController
101 |         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: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/MediaViewer/Transitions/MediaViewerInteractivePopTransition.swift:107:47: error: 'containerView' is unavailable in watchOS
105 |         }
106 |         self.transitionContext = transitionContext
107 |         let containerView = transitionContext.containerView
    |                                               `- error: 'containerView' is unavailable in watchOS
108 |
109 |         let toolbar = navigationController.toolbar!
/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/MediaViewer/Transitions/MediaViewerInteractivePopTransition.swift:113:52: error: 'scrollEdgeAppearance' is unavailable in watchOS
111 |         // Back up
112 |         sourceViewHiddenBackup = sourceView?.isHidden ?? false
113 |         tabBarScrollEdgeAppearanceBackup = tabBar?.scrollEdgeAppearance
    |                                                    `- error: 'scrollEdgeAppearance' is unavailable in watchOS
114 |         tabBarAlphaBackup = tabBar?.alpha
115 |         toolbarHiddenBackup = navigationController.isToolbarHidden
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITabBar.h:122:70: note: 'scrollEdgeAppearance' has been explicitly marked unavailable here
120 | @property (nonatomic, readwrite, copy) UITabBarAppearance *standardAppearance UI_APPEARANCE_SELECTOR API_AVAILABLE(ios(13.0), tvos(13.0)) API_UNAVAILABLE(watchos);
121 | /// Describes the appearance attributes for the tabBar to use when an observable scroll view is scrolled to the bottom. If not set, standardAppearance will be used instead.
122 | @property (nonatomic, readwrite, copy, nullable) UITabBarAppearance *scrollEdgeAppearance UI_APPEARANCE_SELECTOR API_AVAILABLE(ios(15.0)) API_UNAVAILABLE(watchos);
    |                                                                      `- note: 'scrollEdgeAppearance' has been explicitly marked unavailable here
123 |
124 | // A small view (200pt by 68pt) in the leading gutter next to tab bar to add accessories, such as logos, time, so on. If auto layout is used, it will be respected when placing subviews. If not, subviews will be places in respect to top left corner--meaning, frames of subviews will not be updated in any way.
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Transitions/MediaViewerInteractivePopTransition.swift:118:51: error: 'additionalSafeAreaInsets' is unavailable in watchOS
116 |         toolbarAlphaBackup = toolbar.alpha
117 |         toVCToolbarItemsBackup = toVC.toolbarItems
118 |         toVCAdditionalSafeAreaInsetsBackup = toVC.additionalSafeAreaInsets
    |                                                   `- error: 'additionalSafeAreaInsets' is unavailable in watchOS
119 |
120 |         // MARK: Prepare for the transition
/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:570:35: note: 'additionalSafeAreaInsets' has been explicitly marked unavailable here
568 |  that UIViewController calculates for the safeAreaInsets for contained view controllers.
569 |  */
570 | @property(nonatomic) UIEdgeInsets additionalSafeAreaInsets API_AVAILABLE(ios(11.0), tvos(11.0)) API_UNAVAILABLE(watchos);
    |                                   `- note: 'additionalSafeAreaInsets' has been explicitly marked unavailable here
571 |
572 | /* Minimum layoutMargins for the view determined by the view controller from context and hardware information.
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Transitions/MediaViewerInteractivePopTransition.swift:130:30: error: 'UITabBarAppearance' is unavailable in watchOS
128 |         if let tabBar {
129 |             // Make tabBar opaque during the transition
130 |             let appearance = UITabBarAppearance()
    |                              `- error: 'UITabBarAppearance' is unavailable in watchOS
131 |             appearance.configureWithDefaultBackground()
132 |             tabBar.scrollEdgeAppearance = appearance
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITabBarAppearance.h:80:12: note: 'UITabBarAppearance' has been explicitly marked unavailable here
 78 |
 79 | UIKIT_EXTERN API_AVAILABLE(ios(13.0), tvos(13.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 80 | @interface UITabBarAppearance : UIBarAppearance
    |            `- note: 'UITabBarAppearance' has been explicitly marked unavailable here
 81 |
 82 | /// The appearance for the stacked tab bar item layout
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Transitions/MediaViewerInteractivePopTransition.swift:132:20: error: 'scrollEdgeAppearance' is unavailable in watchOS
130 |             let appearance = UITabBarAppearance()
131 |             appearance.configureWithDefaultBackground()
132 |             tabBar.scrollEdgeAppearance = appearance
    |                    `- error: 'scrollEdgeAppearance' is unavailable in watchOS
133 |         }
134 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITabBar.h:122:70: note: 'scrollEdgeAppearance' has been explicitly marked unavailable here
120 | @property (nonatomic, readwrite, copy) UITabBarAppearance *standardAppearance UI_APPEARANCE_SELECTOR API_AVAILABLE(ios(13.0), tvos(13.0)) API_UNAVAILABLE(watchos);
121 | /// Describes the appearance attributes for the tabBar to use when an observable scroll view is scrolled to the bottom. If not set, standardAppearance will be used instead.
122 | @property (nonatomic, readwrite, copy, nullable) UITabBarAppearance *scrollEdgeAppearance UI_APPEARANCE_SELECTOR API_AVAILABLE(ios(15.0)) API_UNAVAILABLE(watchos);
    |                                                                      `- note: 'scrollEdgeAppearance' has been explicitly marked unavailable here
123 |
124 | // A small view (200pt by 68pt) in the leading gutter next to tab bar to add accessories, such as logos, time, so on. If auto layout is used, it will be respected when placing subviews. If not, subviews will be places in respect to top left corner--meaning, frames of subviews will not be updated in any way.
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Transitions/MediaViewerInteractivePopTransition.swift:163:18: error: 'additionalSafeAreaInsets' is unavailable in watchOS
161 |              To avoid this, adjust the safe area only during the transition.
162 |              */
163 |             toVC.additionalSafeAreaInsets.bottom = -toolbar.bounds.height
    |                  `- error: 'additionalSafeAreaInsets' is unavailable in watchOS
164 |         }
165 |
/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:570:35: note: 'additionalSafeAreaInsets' has been explicitly marked unavailable here
568 |  that UIViewController calculates for the safeAreaInsets for contained view controllers.
569 |  */
570 | @property(nonatomic) UIEdgeInsets additionalSafeAreaInsets API_AVAILABLE(ios(11.0), tvos(11.0)) API_UNAVAILABLE(watchos);
    |                                   `- note: 'additionalSafeAreaInsets' has been explicitly marked unavailable here
571 |
572 | /* Minimum layoutMargins for the view determined by the view controller from context and hardware information.
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/MediaViewerViewController.swift:110:30: error: 'UIToolbar' is unavailable in watchOS
 108 |     private let backgroundView = UIView()
 109 |
 110 |     let pageControlToolbar = UIToolbar()
     |                              `- error: 'UIToolbar' is unavailable in watchOS
 111 |     private let pageControlBar = MediaViewerPageControlBar()
 112 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIToolbar.h:23:12: note: 'UIToolbar' has been explicitly marked unavailable here
21 |
22 | UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(tvos, watchos) NS_SWIFT_UI_ACTOR
23 | @interface UIToolbar : UIView <UIBarPositioning>
   |            `- note: 'UIToolbar' has been explicitly marked unavailable here
24 |
25 | @property(nonatomic) UIBarStyle barStyle UI_APPEARANCE_SELECTOR API_UNAVAILABLE(tvos); // default is UIBarStyleDefault
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/MediaViewerViewController.swift:110:30: error: 'init()' is unavailable in watchOS
 108 |     private let backgroundView = UIView()
 109 |
 110 |     let pageControlToolbar = UIToolbar()
     |                              `- error: 'init()' is unavailable in watchOS
 111 |     private let pageControlBar = MediaViewerPageControlBar()
 112 |
/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/MediaViewer/Transitions/MediaViewerInteractivePopTransition.swift:204:20: error: 'UIViewPropertyAnimator' is unavailable in watchOS
202 |         ? 0
203 |         : mediaViewer.navigationBarAlphaBackup
204 |         animator = UIViewPropertyAnimator(
    |                    `- error: 'UIViewPropertyAnimator' is unavailable in watchOS
205 |             duration: 0.25,
206 |             dampingRatio: 1
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewPropertyAnimator.h:17:12: note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 15 |
 16 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 17 | @interface UIViewPropertyAnimator : NSObject <UIViewImplicitlyAnimating, NSCopying>
    |            `- note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 18 |
 19 | @property(nullable, nonatomic, copy, readonly) id <UITimingCurveProvider> timingParameters;
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Transitions/MediaViewerInteractivePopTransition.swift:276:63: error: 'from' is unavailable in watchOS
274 |         animator.continueAnimation(withTimingParameters: nil, durationFactor: 1)
275 |
276 |         let mediaViewerView = transitionContext.view(forKey: .from)!
    |                                                               `- error: 'from' is unavailable in watchOS
277 |         let currentPageView = mediaViewerCurrentPageView(in: transitionContext)
278 |         let currentPageImageView = currentPageView.imageView
/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:26:47: 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 |
 26 | UIKIT_EXTERN UITransitionContextViewKey const UITransitionContextFromViewKey API_UNAVAILABLE(watchos) NS_SWIFT_NAME(from) API_AVAILABLE(ios(8.0));
    |                                               `- note: 'from' has been explicitly marked unavailable here
 27 | UIKIT_EXTERN UITransitionContextViewKey const UITransitionContextToViewKey API_UNAVAILABLE(watchos) NS_SWIFT_NAME(to) API_AVAILABLE(ios(8.0));
 28 |
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Transitions/MediaViewerInteractivePopTransition.swift:280:17: error: 'scrollEdgeAppearance' is unavailable in watchOS
278 |         let currentPageImageView = currentPageView.imageView
279 |
280 |         tabBar?.scrollEdgeAppearance = tabBarScrollEdgeAppearanceBackup
    |                 `- error: 'scrollEdgeAppearance' is unavailable in watchOS
281 |
282 |         let finishAnimator = UIViewPropertyAnimator(duration: 0.35, dampingRatio: 1) {
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITabBar.h:122:70: note: 'scrollEdgeAppearance' has been explicitly marked unavailable here
120 | @property (nonatomic, readwrite, copy) UITabBarAppearance *standardAppearance UI_APPEARANCE_SELECTOR API_AVAILABLE(ios(13.0), tvos(13.0)) API_UNAVAILABLE(watchos);
121 | /// Describes the appearance attributes for the tabBar to use when an observable scroll view is scrolled to the bottom. If not set, standardAppearance will be used instead.
122 | @property (nonatomic, readwrite, copy, nullable) UITabBarAppearance *scrollEdgeAppearance UI_APPEARANCE_SELECTOR API_AVAILABLE(ios(15.0)) API_UNAVAILABLE(watchos);
    |                                                                      `- note: 'scrollEdgeAppearance' has been explicitly marked unavailable here
123 |
124 | // A small view (200pt by 68pt) in the leading gutter next to tab bar to add accessories, such as logos, time, so on. If auto layout is used, it will be respected when placing subviews. If not, subviews will be places in respect to top left corner--meaning, frames of subviews will not be updated in any way.
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Transitions/MediaViewerInteractivePopTransition.swift:282:30: error: 'UIViewPropertyAnimator' is unavailable in watchOS
280 |         tabBar?.scrollEdgeAppearance = tabBarScrollEdgeAppearanceBackup
281 |
282 |         let finishAnimator = UIViewPropertyAnimator(duration: 0.35, dampingRatio: 1) {
    |                              `- error: 'UIViewPropertyAnimator' is unavailable in watchOS
283 |             if let sourceView = self.sourceView {
284 |                 let sourceFrameInViewer = mediaViewerView.convert(
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewPropertyAnimator.h:17:12: note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 15 |
 16 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 17 | @interface UIViewPropertyAnimator : NSObject <UIViewImplicitlyAnimating, NSCopying>
    |            `- note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 18 |
 19 | @property(nullable, nonatomic, copy, readonly) id <UITimingCurveProvider> timingParameters;
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Transitions/MediaViewerInteractivePopTransition.swift:300:69: error: 'from' is unavailable in watchOS
298 |         }
299 |
300 |         let mediaViewer = transitionContext.viewController(forKey: .from) as! MediaViewerViewController
    |                                                                     `- error: 'from' is unavailable in watchOS
301 |         let toVC = transitionContext.viewController(forKey: .to)!
302 |         let navigationController = toVC.navigationController!
/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/MediaViewer/Transitions/MediaViewerInteractivePopTransition.swift:301:62: error: 'to' is unavailable in watchOS
299 |
300 |         let mediaViewer = transitionContext.viewController(forKey: .from) as! MediaViewerViewController
301 |         let toVC = transitionContext.viewController(forKey: .to)!
    |                                                              `- error: 'to' is unavailable in watchOS
302 |         let navigationController = toVC.navigationController!
303 |         let navigationBar = navigationController.navigationBar
/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/MediaViewer/Transitions/MediaViewerInteractivePopTransition.swift:312:18: error: 'additionalSafeAreaInsets' is unavailable in watchOS
310 |             self.sourceView?.isHidden = self.sourceViewHiddenBackup
311 |             toVC.toolbarItems = self.toVCToolbarItemsBackup
312 |             toVC.additionalSafeAreaInsets = self.toVCAdditionalSafeAreaInsetsBackup
    |                  `- error: 'additionalSafeAreaInsets' is unavailable in watchOS
313 |             navigationBar.alpha = mediaViewer.navigationBarAlphaBackup
314 |             navigationController.isToolbarHidden = mediaViewer.toolbarHiddenBackup
/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:570:35: note: 'additionalSafeAreaInsets' has been explicitly marked unavailable here
568 |  that UIViewController calculates for the safeAreaInsets for contained view controllers.
569 |  */
570 | @property(nonatomic) UIEdgeInsets additionalSafeAreaInsets API_AVAILABLE(ios(11.0), tvos(11.0)) API_UNAVAILABLE(watchos);
    |                                   `- note: 'additionalSafeAreaInsets' has been explicitly marked unavailable here
571 |
572 | /* Minimum layoutMargins for the view determined by the view controller from context and hardware information.
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Transitions/MediaViewerInteractivePopTransition.swift:316:21: error: 'scrollEdgeAppearance' is unavailable in watchOS
314 |             navigationController.isToolbarHidden = mediaViewer.toolbarHiddenBackup
315 |             toolbar.alpha = mediaViewer.toolbarAlphaBackup
316 |             toolbar.scrollEdgeAppearance = mediaViewer.toolbarScrollEdgeAppearanceBackup
    |                     `- error: 'scrollEdgeAppearance' is unavailable in watchOS
317 |
318 |             /*
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIToolbar.h:75:71: note: 'scrollEdgeAppearance' has been explicitly marked unavailable here
73 | @property (nonatomic, readwrite, copy, nullable) UIToolbarAppearance *compactAppearance UI_APPEARANCE_SELECTOR API_AVAILABLE(ios(13.0)) API_UNAVAILABLE(watchos);
74 | /// Describes the appearance attributes for the toolbar to use at standard height when an observable scroll view is scrolled to the bottom. If not set, standardAppearance will be used instead.
75 | @property (nonatomic, readwrite, copy, nullable) UIToolbarAppearance *scrollEdgeAppearance UI_APPEARANCE_SELECTOR API_AVAILABLE(ios(15.0)) API_UNAVAILABLE(watchos);
   |                                                                       `- note: 'scrollEdgeAppearance' has been explicitly marked unavailable here
76 | /// Describes the appearance attributes for the toolbar to use at compact height when an observable scroll view is scrolled to the bottom. If not set, will fall back to scrollEdgeAppearance followed by compactAppearance and finally standardAppearance.
77 | @property (nonatomic, readwrite, copy, nullable) UIToolbarAppearance *compactScrollEdgeAppearance UI_APPEARANCE_SELECTOR API_AVAILABLE(ios(15.0)) API_UNAVAILABLE(watchos);
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Transitions/MediaViewerInteractivePopTransition.swift:375:69: error: 'from' is unavailable in watchOS
373 |         animator.continueAnimation(withTimingParameters: nil, durationFactor: 1)
374 |
375 |         let mediaViewer = transitionContext.viewController(forKey: .from) as! MediaViewerViewController
    |                                                                     `- error: 'from' is unavailable in watchOS
376 |         let currentPageView = mediaViewerCurrentPageView(in: transitionContext)
377 |         let currentPageImageView = currentPageView.imageView
/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/MediaViewer/Transitions/MediaViewerInteractivePopTransition.swift:378:62: error: 'to' is unavailable in watchOS
376 |         let currentPageView = mediaViewerCurrentPageView(in: transitionContext)
377 |         let currentPageImageView = currentPageView.imageView
378 |         let toVC = transitionContext.viewController(forKey: .to)!
    |                                                              `- error: 'to' is unavailable in watchOS
379 |
380 |         let cancelAnimator = UIViewPropertyAnimator(duration: 0.3, dampingRatio: 1) {
/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/MediaViewer/Transitions/MediaViewerInteractivePopTransition.swift:380:30: error: 'UIViewPropertyAnimator' is unavailable in watchOS
378 |         let toVC = transitionContext.viewController(forKey: .to)!
379 |
380 |         let cancelAnimator = UIViewPropertyAnimator(duration: 0.3, dampingRatio: 1) {
    |                              `- error: 'UIViewPropertyAnimator' is unavailable in watchOS
381 |             // FIXME: toolbar items go away during animation
382 |             currentPageImageView.frame = self.initialImageFrameInViewer
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewPropertyAnimator.h:17:12: note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 15 |
 16 | UIKIT_EXTERN API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 17 | @interface UIViewPropertyAnimator : NSObject <UIViewImplicitlyAnimating, NSCopying>
    |            `- note: 'UIViewPropertyAnimator' has been explicitly marked unavailable here
 18 |
 19 | @property(nullable, nonatomic, copy, readonly) id <UITimingCurveProvider> timingParameters;
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Transitions/MediaViewerInteractivePopTransition.swift:399:26: error: 'scrollEdgeAppearance' is unavailable in watchOS
397 |             currentPageView.restoreLayoutConfigurationAfterTransition()
398 |
399 |             self.tabBar?.scrollEdgeAppearance = self.tabBarScrollEdgeAppearanceBackup
    |                          `- error: 'scrollEdgeAppearance' is unavailable in watchOS
400 |             if let tabBarAlphaBackup = self.tabBarAlphaBackup {
401 |                 self.tabBar?.alpha = tabBarAlphaBackup
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITabBar.h:122:70: note: 'scrollEdgeAppearance' has been explicitly marked unavailable here
120 | @property (nonatomic, readwrite, copy) UITabBarAppearance *standardAppearance UI_APPEARANCE_SELECTOR API_AVAILABLE(ios(13.0), tvos(13.0)) API_UNAVAILABLE(watchos);
121 | /// Describes the appearance attributes for the tabBar to use when an observable scroll view is scrolled to the bottom. If not set, standardAppearance will be used instead.
122 | @property (nonatomic, readwrite, copy, nullable) UITabBarAppearance *scrollEdgeAppearance UI_APPEARANCE_SELECTOR API_AVAILABLE(ios(15.0)) API_UNAVAILABLE(watchos);
    |                                                                      `- note: 'scrollEdgeAppearance' has been explicitly marked unavailable here
123 |
124 | // A small view (200pt by 68pt) in the leading gutter next to tab bar to add accessories, such as logos, time, so on. If auto layout is used, it will be respected when placing subviews. If not, subviews will be places in respect to top left corner--meaning, frames of subviews will not be updated in any way.
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Transitions/MediaViewerInteractivePopTransition.swift:405:18: error: 'additionalSafeAreaInsets' is unavailable in watchOS
403 |
404 |             // Restore properties
405 |             toVC.additionalSafeAreaInsets = self.toVCAdditionalSafeAreaInsetsBackup
    |                  `- error: 'additionalSafeAreaInsets' is unavailable in watchOS
406 |             toVC.toolbarItems = self.toVCToolbarItemsBackup
407 |             toolbar.scrollEdgeAppearance = mediaViewer.toolbarScrollEdgeAppearanceBackup
/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:570:35: note: 'additionalSafeAreaInsets' has been explicitly marked unavailable here
568 |  that UIViewController calculates for the safeAreaInsets for contained view controllers.
569 |  */
570 | @property(nonatomic) UIEdgeInsets additionalSafeAreaInsets API_AVAILABLE(ios(11.0), tvos(11.0)) API_UNAVAILABLE(watchos);
    |                                   `- note: 'additionalSafeAreaInsets' has been explicitly marked unavailable here
571 |
572 | /* Minimum layoutMargins for the view determined by the view controller from context and hardware information.
/Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Transitions/MediaViewerInteractivePopTransition.swift:407:21: error: 'scrollEdgeAppearance' is unavailable in watchOS
405 |             toVC.additionalSafeAreaInsets = self.toVCAdditionalSafeAreaInsetsBackup
406 |             toVC.toolbarItems = self.toVCToolbarItemsBackup
407 |             toolbar.scrollEdgeAppearance = mediaViewer.toolbarScrollEdgeAppearanceBackup
    |                     `- error: 'scrollEdgeAppearance' is unavailable in watchOS
408 |             navigationController.isToolbarHidden = self.toolbarHiddenBackup
409 |
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/WatchOS.platform/Developer/SDKs/WatchOS27.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIToolbar.h:75:71: note: 'scrollEdgeAppearance' has been explicitly marked unavailable here
73 | @property (nonatomic, readwrite, copy, nullable) UIToolbarAppearance *compactAppearance UI_APPEARANCE_SELECTOR API_AVAILABLE(ios(13.0)) API_UNAVAILABLE(watchos);
74 | /// Describes the appearance attributes for the toolbar to use at standard height when an observable scroll view is scrolled to the bottom. If not set, standardAppearance will be used instead.
75 | @property (nonatomic, readwrite, copy, nullable) UIToolbarAppearance *scrollEdgeAppearance UI_APPEARANCE_SELECTOR API_AVAILABLE(ios(15.0)) API_UNAVAILABLE(watchos);
   |                                                                       `- note: 'scrollEdgeAppearance' has been explicitly marked unavailable here
76 | /// Describes the appearance attributes for the toolbar to use at compact height when an observable scroll view is scrolled to the bottom. If not set, will fall back to scrollEdgeAppearance followed by compactAppearance and finally standardAppearance.
77 | @property (nonatomic, readwrite, copy, nullable) UIToolbarAppearance *compactScrollEdgeAppearance UI_APPEARANCE_SELECTOR API_AVAILABLE(ios(15.0)) API_UNAVAILABLE(watchos);
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/PageControlBar/PageControlBarThumbnailCell.swift (in target 'MediaViewer' from project 'MediaViewer')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile PageControlBarThumbnailCell.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/Transitions/MediaViewerInteractivePopTransition.swift (in target 'MediaViewer' from project 'MediaViewer')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile MediaViewerInteractivePopTransition.swift
SwiftCompile normal arm64_32 Compiling\ MediaViewerViewController.swift,\ MediaViewerViewModel.swift /Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/MediaViewerViewController.swift /Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/MediaViewerViewModel.swift (in target 'MediaViewer' from project 'MediaViewer')
SwiftCompile normal arm64_32 /Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/MediaViewerViewController.swift (in target 'MediaViewer' from project 'MediaViewer')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile MediaViewerViewController.swift
SwiftCompile normal arm64_32 /Users/admin/builder/spi-builder-workspace/Sources/MediaViewer/MediaViewerViewModel.swift (in target 'MediaViewer' from project 'MediaViewer')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile MediaViewerViewModel.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-25 02:43:28.216 xcodebuild[790:4676] [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 'MediaViewer' from project 'MediaViewer')
	SwiftEmitModule normal arm64_32 Emitting\ module\ for\ MediaViewer (in target 'MediaViewer' from project 'MediaViewer')
	SwiftEmitModule normal arm64 Emitting\ module\ for\ MediaViewer (in target 'MediaViewer' from project 'MediaViewer')
	SwiftCompile normal arm64 (in target 'MediaViewer' from project 'MediaViewer')
	Building workspace MediaViewer with scheme MediaViewer
(5 failures)
BUILD FAILURE 6.4 watchOS