The Swift Package Index logo.Swift Package Index

Build Information

Failed to build Airship, reference main (67cd1c), with Swift 6.1 for macOS (SPM) on 27 Sep 2026 02:46:57 UTC.

Build Command

env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64

Build Log

========================================
RunAll
========================================
Builder version: 5.1.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/urbanairship/ios-library.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/urbanairship/ios-library
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
HEAD is now at 67cd1cb Bump version to 21.0.2 and add changelog entry (#4053)
Cloned https://github.com/urbanairship/ios-library.git
Revision (git rev-parse @):
67cd1cb0c2cfd7f0748d247a876a9ed77181e107
SUCCESS checkout https://github.com/urbanairship/ios-library.git at main
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.1
Building package at path:  $PWD
https://github.com/urbanairship/ios-library.git
https://github.com/urbanairship/ios-library.git
{
  "default_localization" : "en",
  "dependencies" : [
  ],
  "manifest_display_name" : "Airship",
  "name" : "Airship",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "ios",
      "version" : "16.0"
    },
    {
      "name" : "tvos",
      "version" : "18.0"
    },
    {
      "name" : "visionos",
      "version" : "1.0"
    }
  ],
  "products" : [
    {
      "name" : "AirshipCore",
      "targets" : [
        "AirshipCore"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "AirshipAutomation",
      "targets" : [
        "AirshipAutomation"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "AirshipMessageCenter",
      "targets" : [
        "AirshipMessageCenter"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "AirshipNotificationServiceExtension",
      "targets" : [
        "AirshipNotificationServiceExtension"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "AirshipPreferenceCenter",
      "targets" : [
        "AirshipPreferenceCenter"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "AirshipFeatureFlags",
      "targets" : [
        "AirshipFeatureFlags"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "AirshipObjectiveC",
      "targets" : [
        "AirshipObjectiveC"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "AirshipDebug",
      "targets" : [
        "AirshipDebug"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "AirshipSceneRenderer",
      "targets" : [
        "AirshipSceneRenderer"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "AirshipScenes",
      "targets" : [
        "AirshipScenes"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "AirshipFoundationModels",
      "targets" : [
        "AirshipFoundationModels"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "AirshipScenes",
      "module_type" : "SwiftTarget",
      "name" : "AirshipScenes",
      "path" : "Airship/AirshipScenes",
      "product_memberships" : [
        "AirshipAutomation",
        "AirshipMessageCenter",
        "AirshipObjectiveC",
        "AirshipDebug",
        "AirshipScenes"
      ],
      "sources" : [
        "Source/AirshipEmbeddedCarousel.swift",
        "Source/AirshipSceneRendererExport.swift",
        "Source/AirshipThomasWebView.swift",
        "Source/Analytics/Events/ThomasLayoutButtonTapEvent.swift",
        "Source/Analytics/Events/ThomasLayoutDisplayEvent.swift",
        "Source/Analytics/Events/ThomasLayoutEvent.swift",
        "Source/Analytics/Events/ThomasLayoutFormDisplayEvent.swift",
        "Source/Analytics/Events/ThomasLayoutFormResultEvent.swift",
        "Source/Analytics/Events/ThomasLayoutGestureEvent.swift",
        "Source/Analytics/Events/ThomasLayoutPageActionEvent.swift",
        "Source/Analytics/Events/ThomasLayoutPageSwipeEvent.swift",
        "Source/Analytics/Events/ThomasLayoutPageViewEvent.swift",
        "Source/Analytics/Events/ThomasLayoutPagerCompletedEvent.swift",
        "Source/Analytics/Events/ThomasLayoutPagerSummaryEvent.swift",
        "Source/Analytics/Events/ThomasLayoutPermissionResultEvent.swift",
        "Source/Analytics/Events/ThomasLayoutResolutionEvent.swift",
        "Source/Analytics/ThomasLayoutEventContext.swift",
        "Source/Analytics/ThomasLayoutEventMessageID.swift",
        "Source/Analytics/ThomasLayoutEventRecorder.swift",
        "Source/Analytics/ThomasLayoutEventSource.swift",
        "Source/Analytics/ThomasLayoutMessageAnalyticsProtocol.swift",
        "Source/MessageDisplayHistory.swift",
        "Source/Thomas Extensions/DefaultAsyncViewResolver.swift",
        "Source/Thomas Extensions/DefaultEmbeddedAISelector.swift",
        "Source/Thomas Extensions/DefaultThomasAIInferenceExecutor.swift",
        "Source/Thomas Extensions/DefaultThomasActionRunner.swift",
        "Source/Thomas Extensions/DefaultThomasAudienceEditor.swift",
        "Source/Thomas Extensions/DefaultThomasExtensions.swift",
        "Source/Thomas Extensions/DefaultThomasImageLoader.swift",
        "Source/Thomas Extensions/DefaultThomasLocalizer.swift",
        "Source/Thomas Extensions/DefaultThomasWebViewFactory.swift",
        "Source/Thomas Extensions/DefaultWebViewChallengeResolver.swift",
        "Source/Thomas.swift",
        "Source/ThomasDisplayListener.swift"
      ],
      "target_dependencies" : [
        "AirshipCore",
        "AirshipSceneRenderer"
      ],
      "type" : "library"
    },
    {
      "c99name" : "AirshipSceneRenderer",
      "module_type" : "SwiftTarget",
      "name" : "AirshipSceneRenderer",
      "path" : "Airship/AirshipSceneRenderer",
      "product_memberships" : [
        "AirshipAutomation",
        "AirshipMessageCenter",
        "AirshipObjectiveC",
        "AirshipDebug",
        "AirshipSceneRenderer",
        "AirshipScenes"
      ],
      "sources" : [
        "Source/Environment/ButtonState.swift",
        "Source/Environment/CheckboxState.swift",
        "Source/Environment/EnvironmentValues.swift",
        "Source/Environment/PagerState.swift",
        "Source/Environment/RadioInputState.swift",
        "Source/Environment/ScoreState.swift",
        "Source/Environment/ThomasAssociatedLabelResolver.swift",
        "Source/Environment/ThomasAsyncViewState.swift",
        "Source/Environment/ThomasEnvironment.swift",
        "Source/Environment/ThomasFormDataCollector.swift",
        "Source/Environment/ThomasFormField.swift",
        "Source/Environment/ThomasFormFieldProcessor.swift",
        "Source/Environment/ThomasFormPayloadGenerator.swift",
        "Source/Environment/ThomasFormResult.swift",
        "Source/Environment/ThomasFormState.swift",
        "Source/Environment/ThomasLayoutContext.swift",
        "Source/Environment/ThomasOutcomeProcessor.swift",
        "Source/Environment/ThomasPagerTracker.swift",
        "Source/Environment/ThomasState.swift",
        "Source/Environment/ThomasStateStorage.swift",
        "Source/Environment/ThomasViewedPageInfo.swift",
        "Source/Environment/ValidatableHelper.swift",
        "Source/Environment/VideoController.swift",
        "Source/Environment/VideoGroupState.swift",
        "Source/Environment/VideoState.swift",
        "Source/LayoutState.swift",
        "Source/Thomas Extensions/AirshipWebViewChallengeResolver.swift",
        "Source/Thomas Extensions/AsyncViewResolver.swift",
        "Source/Thomas Extensions/ThomasAIInferenceExecutor.swift",
        "Source/Thomas Extensions/ThomasActionRunner.swift",
        "Source/Thomas Extensions/ThomasAudienceEditor.swift",
        "Source/Thomas Extensions/ThomasExtensions.swift",
        "Source/Thomas Extensions/ThomasImageLoader.swift",
        "Source/Thomas Extensions/ThomasLocalizer.swift",
        "Source/Thomas Extensions/ThomasWebViewFactory.swift",
        "Source/ThomasConstants.swift",
        "Source/ThomasDelegate.swift",
        "Source/ThomasEvent.swift",
        "Source/ThomasViewController.swift",
        "Source/ThomasViewControllerFactory.swift",
        "Source/ThomasWindowScene.swift",
        "Source/Types/AirshipLayout.swift",
        "Source/Types/NativeLayoutControlOptions.swift",
        "Source/Types/ThomasAIInferenceInfo.swift",
        "Source/Types/ThomasAccessibilityAction.swift",
        "Source/Types/ThomasAccessibleInfo.swift",
        "Source/Types/ThomasActionsPayload.swift",
        "Source/Types/ThomasAttributeName.swift",
        "Source/Types/ThomasAttributeValue.swift",
        "Source/Types/ThomasAutomatedAccessibilityAction.swift",
        "Source/Types/ThomasAutomatedAction.swift",
        "Source/Types/ThomasBorder.swift",
        "Source/Types/ThomasButtonClickBehavior.swift",
        "Source/Types/ThomasButtonTapEffect.swift",
        "Source/Types/ThomasColor.swift",
        "Source/Types/ThomasConstrainedSize.swift",
        "Source/Types/ThomasContentDescriptionInfo.swift",
        "Source/Types/ThomasDirection.swift",
        "Source/Types/ThomasEmailRegistrationOptions.swift",
        "Source/Types/ThomasEnableBehavior.swift",
        "Source/Types/ThomasEventHandler.swift",
        "Source/Types/ThomasFormSubmitBehavior.swift",
        "Source/Types/ThomasFormValidationMode.swift",
        "Source/Types/ThomasIcon.swift",
        "Source/Types/ThomasMargin.swift",
        "Source/Types/ThomasMarkdownOptions.swift",
        "Source/Types/ThomasMediaFit.swift",
        "Source/Types/ThomasMediaUrlSelector.swift",
        "Source/Types/ThomasOrientation.swift",
        "Source/Types/ThomasOutcome.swift",
        "Source/Types/ThomasPagerControllerBranching.swift",
        "Source/Types/ThomasPlatform.swift",
        "Source/Types/ThomasPosition.swift",
        "Source/Types/ThomasPresentationInfo.swift",
        "Source/Types/ThomasPropertyOverride.swift",
        "Source/Types/ThomasSerializable.swift",
        "Source/Types/ThomasShadow.swift",
        "Source/Types/ThomasShapeInfo.swift",
        "Source/Types/ThomasSize.swift",
        "Source/Types/ThomasSizeConstraint.swift",
        "Source/Types/ThomasSmsLocale.swift",
        "Source/Types/ThomasStateAction.swift",
        "Source/Types/ThomasStateTrigger.swift",
        "Source/Types/ThomasTextAppearance.swift",
        "Source/Types/ThomasToggleStyleInfo.swift",
        "Source/Types/ThomasValidationInfo.swift",
        "Source/Types/ThomasViewInfo+AccessibilityIdentifier.swift",
        "Source/Types/ThomasViewInfo.swift",
        "Source/Types/ThomasVisibilityInfo.swift",
        "Source/Types/ThomasWindowSize.swift",
        "Source/UrlInfo.swift",
        "Source/Utils.swift",
        "Source/ViewModifiers/BackgroundColorViewModifier.swift",
        "Source/ViewModifiers/EnableBehaviorModifiers.swift",
        "Source/ViewModifiers/EventHandlerViewModifier.swift",
        "Source/ViewModifiers/FontViewModifier.swift",
        "Source/ViewModifiers/FormInputViewModifier.swift",
        "Source/ViewModifiers/StateSubscriptionsModifier.swift",
        "Source/ViewModifiers/TouchViewModifier.swift",
        "Source/ViewModifiers/VisibilityViewModifier.swift",
        "Source/Views/AirshipButton.swift",
        "Source/Views/AirshipProgressView.swift",
        "Source/Views/AirshipSimpleLayoutView.swift",
        "Source/Views/AirshipSimpleLayoutViewModel.swift",
        "Source/Views/AsyncViewController.swift",
        "Source/Views/BannerView.swift",
        "Source/Views/ButtonLayout.swift",
        "Source/Views/Container.swift",
        "Source/Views/Custom/AirshipCustomViewManager.swift",
        "Source/Views/Custom/AirshipSceneController.swift",
        "Source/Views/Custom/CustomView.swift",
        "Source/Views/Embedded/AirshipEmbeddedInfo.swift",
        "Source/Views/Embedded/AirshipEmbeddedObserver.swift",
        "Source/Views/Embedded/AirshipEmbeddedSize.swift",
        "Source/Views/Embedded/AirshipEmbeddedView.swift",
        "Source/Views/Embedded/AirshipEmbeddedViewManager.swift",
        "Source/Views/Embedded/AirshipViewSizeReader.swift",
        "Source/Views/Embedded/EmbeddedAISelector.swift",
        "Source/Views/Embedded/EmbeddedLastDisplayedTracker.swift",
        "Source/Views/Embedded/EmbeddedView.swift",
        "Source/Views/Embedded/EmbeddedViewModel.swift",
        "Source/Views/EmptyView.swift",
        "Source/Views/Forms/AirshipCheckboxToggleStyle.swift",
        "Source/Views/Forms/AirshipSwitchToggleStyle.swift",
        "Source/Views/Forms/AirshipToggle.swift",
        "Source/Views/Forms/BasicToggleLayout.swift",
        "Source/Views/Forms/Checkbox.swift",
        "Source/Views/Forms/CheckboxController.swift",
        "Source/Views/Forms/CheckboxToggleLayout.swift",
        "Source/Views/Forms/FormController.swift",
        "Source/Views/Forms/RadioInput.swift",
        "Source/Views/Forms/RadioInputController.swift",
        "Source/Views/Forms/RadioInputToggleLayout.swift",
        "Source/Views/Forms/Score.swift",
        "Source/Views/Forms/ScoreController.swift",
        "Source/Views/Forms/ScoreToggleLayout.swift",
        "Source/Views/Forms/SmsLocalePicker.swift",
        "Source/Views/Forms/TextInput.swift",
        "Source/Views/Forms/ToggleLayout.swift",
        "Source/Views/IconView.swift",
        "Source/Views/Icons.swift",
        "Source/Views/ImageButton.swift",
        "Source/Views/Label.swift",
        "Source/Views/LabelButton.swift",
        "Source/Views/LinearLayout.swift",
        "Source/Views/Media.swift",
        "Source/Views/ModalView.swift",
        "Source/Views/NativeVideoPlayer.swift",
        "Source/Views/Pager.swift",
        "Source/Views/PagerController.swift",
        "Source/Views/PagerGestureMap.swift",
        "Source/Views/PagerIndicator.swift",
        "Source/Views/PagerSwipeDirection.swift",
        "Source/Views/PagerUtils.swift",
        "Source/Views/RootView.swift",
        "Source/Views/ScrollLayout.swift",
        "Source/Views/Shapes.swift",
        "Source/Views/StackImageButton.swift",
        "Source/Views/StackImageView.swift",
        "Source/Views/StateController.swift",
        "Source/Views/StoryIndicator.swift",
        "Source/Views/ThomasAsyncImage.swift",
        "Source/Views/ThomasWebViewWrapper.swift",
        "Source/Views/VideoMediaNativeView.swift",
        "Source/Views/VideoMediaWebView.swift",
        "Source/Views/ViewConstraints.swift",
        "Source/Views/ViewExtensions.swift",
        "Source/Views/ViewFactory.swift",
        "Source/Views/WrappingLayout.swift"
      ],
      "target_dependencies" : [
        "AirshipBasement"
      ],
      "type" : "library"
    },
    {
      "c99name" : "AirshipPreferenceCenter",
      "module_type" : "SwiftTarget",
      "name" : "AirshipPreferenceCenter",
      "path" : "Airship/AirshipPreferenceCenter",
      "product_memberships" : [
        "AirshipPreferenceCenter",
        "AirshipObjectiveC",
        "AirshipDebug"
      ],
      "sources" : [
        "Source/AirshipPreferenceCenterResources.swift",
        "Source/PreferenceCenter.swift",
        "Source/PreferenceCenterComponent.swift",
        "Source/PreferenceCenterSDKModule.swift",
        "Source/data/PreferenceCenterConfig+ContactManagement.swift",
        "Source/data/PreferenceCenterConfig.swift",
        "Source/data/PreferenceCenterDecoder.swift",
        "Source/data/PreferenceCenterResponse.swift",
        "Source/theme/PreferenceCenterTheme.swift",
        "Source/theme/PreferenceCenterThemeLoader.swift",
        "Source/view/ChannelSubscriptionView.swift",
        "Source/view/CommonSectionView.swift",
        "Source/view/ConditionsMonitor.swift",
        "Source/view/ConditionsViewModifier.swift",
        "Source/view/Contact management/AddChannelPromptView.swift",
        "Source/view/Contact management/AddChannelPromptViewModel.swift",
        "Source/view/Contact management/ChannelListView.swift",
        "Source/view/Contact management/ChannelListViewCell.swift",
        "Source/view/Contact management/Component Views/BackgroundShape.swift",
        "Source/view/Contact management/Component Views/ChannelTextField.swift",
        "Source/view/Contact management/Component Views/EmptySectionLabel.swift",
        "Source/view/Contact management/Component Views/ErrorLabel.swift",
        "Source/view/Contact management/Component Views/PreferenceCloseButton.swift",
        "Source/view/Contact management/ContactManagementView.swift",
        "Source/view/Contact management/FooterView.swift",
        "Source/view/ContactSubscriptionGroupView.swift",
        "Source/view/ContactSubscriptionView.swift",
        "Source/view/LabeledSectionBreakView.swift",
        "Source/view/PreferenceCenterAlertView.swift",
        "Source/view/PreferenceCenterContent.swift",
        "Source/view/PreferenceCenterContentLoader.swift",
        "Source/view/PreferenceCenterContentStyle.swift",
        "Source/view/PreferenceCenterState.swift",
        "Source/view/PreferenceCenterUtils.swift",
        "Source/view/PreferenceCenterView.swift",
        "Source/view/PreferenceCenterViewControllerFactory.swift",
        "Source/view/PreferenceCenterViewExtensions.swift"
      ],
      "target_dependencies" : [
        "AirshipCore"
      ],
      "type" : "library"
    },
    {
      "c99name" : "AirshipObjectiveC",
      "module_type" : "SwiftTarget",
      "name" : "AirshipObjectiveC",
      "path" : "Airship/AirshipObjectiveC",
      "product_memberships" : [
        "AirshipObjectiveC"
      ],
      "sources" : [
        "Source/Analytics/Events/Templates/UAAccountEventTemplate.swift",
        "Source/Analytics/Events/Templates/UAMediaEventTemplate.swift",
        "Source/Analytics/Events/Templates/UARetailEventTemplate.swift",
        "Source/Analytics/Events/Templates/UASearchEventTemplate.swift",
        "Source/Analytics/Events/UACustomEvent.swift",
        "Source/Analytics/UAAnalytics.swift",
        "Source/Analytics/UAAssociatedIdentifiers.swift",
        "Source/Automation/UAInAppAutomation.swift",
        "Source/Automation/UAInAppMessaging.swift",
        "Source/Channel/UAAttributesEditor.swift",
        "Source/Channel/UAChannel.swift",
        "Source/Channel/UATagEditor.swift",
        "Source/Channel/UATagGroupsEditor.swift",
        "Source/Contact/UAContact.swift",
        "Source/Embedded/UAEmbeddedViewController.swift",
        "Source/MessageCenter/UAMessageCenter.swift",
        "Source/MessageCenter/UAMessageCenterList.swift",
        "Source/MessageCenter/UAMessageCenterMessage.swift",
        "Source/MessageCenter/UAMessageCenterTheme.swift",
        "Source/MessageCenter/UAMessageCenterViewController.swift",
        "Source/PreferenceCenter/UAPreferenceCenter.swift",
        "Source/PreferenceCenter/UAPreferenceCenterViewController.swift",
        "Source/PrivacyManager/UAPrivacyManager.swift",
        "Source/Push/UAAuthorizedNotificationSettings.swift",
        "Source/Push/UANotificationCategories.swift",
        "Source/Push/UAPush.swift",
        "Source/Push/UAPushNotificationDelegate.swift",
        "Source/Push/UAPushNotificationStatus.swift",
        "Source/Push/UARegistrationDelegate.swift",
        "Source/Subscription Lists/UAScopedSubscriptionListEditor.swift",
        "Source/Subscription Lists/UASubscriptionListEditor.swift",
        "Source/UAAppIntegration.swift",
        "Source/UAConfig.swift",
        "Source/UADeepLinkDelegate.swift",
        "Source/UAFeature.swift",
        "Source/UAPermission.swift",
        "Source/UAPermissionsManager.swift",
        "Source/UAirship.swift"
      ],
      "target_dependencies" : [
        "AirshipBasement",
        "AirshipCore",
        "AirshipPreferenceCenter",
        "AirshipMessageCenter",
        "AirshipAutomation",
        "AirshipFeatureFlags"
      ],
      "type" : "library"
    },
    {
      "c99name" : "AirshipNotificationServiceExtension",
      "module_type" : "SwiftTarget",
      "name" : "AirshipNotificationServiceExtension",
      "path" : "AirshipExtensions/AirshipNotificationServiceExtension",
      "product_memberships" : [
        "AirshipNotificationServiceExtension"
      ],
      "sources" : [
        "Source/AirshipExtensionConfig.swift",
        "Source/AirshipExtensionLogger.swift",
        "Source/AirshipNotificationMutationProvider.swift",
        "Source/ChallengeResolver.swift",
        "Source/MediaAttachmentPayload.swift",
        "Source/UANotificationServiceExtension.swift"
      ],
      "type" : "library"
    },
    {
      "c99name" : "AirshipMessageCenter",
      "module_type" : "SwiftTarget",
      "name" : "AirshipMessageCenter",
      "path" : "Airship/AirshipMessageCenter",
      "product_memberships" : [
        "AirshipMessageCenter",
        "AirshipObjectiveC",
        "AirshipDebug"
      ],
      "resources" : [
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipMessageCenter/Resources/TestAssets.xcassets",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipMessageCenter/Resources/UAInbox.xcdatamodeld",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipMessageCenter/Resources/UAInboxDataMappingV1toV4.xcmappingmodel",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipMessageCenter/Resources/UAInboxDataMappingV2toV4.xcmappingmodel",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipMessageCenter/Resources/UAInboxDataMappingV3toV4.xcmappingmodel",
          "rule" : {
            "process" : {
            }
          }
        }
      ],
      "sources" : [
        "Source/AirshipMessageCenterResources.swift",
        "Source/MessageCenter.swift",
        "Source/MessageCenterAPIClient.swift",
        "Source/MessageCenterAction.swift",
        "Source/MessageCenterComponent.swift",
        "Source/MessageCenterList.swift",
        "Source/MessageCenterNativeBridgeExtension.swift",
        "Source/MessageCenterPredicate.swift",
        "Source/MessageCenterSDKModule.swift",
        "Source/MessageCenterStore.swift",
        "Source/MessageViewAnalytics.swift",
        "Source/Model/InboxMessageData.swift",
        "Source/Model/MessageCenterMessage.swift",
        "Source/Model/MessageCenterUser.swift",
        "Source/Model/UAInboxDataMapping.swift",
        "Source/StateStore/NativeLayoutPersistentDataStore.swift",
        "Source/Theme/MessageCenterNavigationAppearance.swift",
        "Source/Theme/MessageCenterTheme.swift",
        "Source/Theme/MessageCenterThemeLoader.swift",
        "Source/ViewModel/MessageCenterListItemViewModel.swift",
        "Source/Views/MessageCenter/MessageCenterContent.swift",
        "Source/Views/MessageCenter/MessageCenterController.swift",
        "Source/Views/MessageCenter/MessageCenterNavigationStack.swift",
        "Source/Views/MessageCenter/MessageCenterSplitNavigationView.swift",
        "Source/Views/MessageCenter/MessageCenterUIKitAppearance.swift",
        "Source/Views/MessageCenter/MessageCenterView.swift",
        "Source/Views/MessageCenterViewController.swift",
        "Source/Views/MessageList/MessageCenterListItemView.swift",
        "Source/Views/MessageList/MessageCenterListView.swift",
        "Source/Views/MessageList/MessageCenterListViewModel.swift",
        "Source/Views/MessageList/MessageCenterListViewWithNavigation.swift",
        "Source/Views/MessageView/MessageCenterMessageContentView.swift",
        "Source/Views/MessageView/MessageCenterMessageError.swift",
        "Source/Views/MessageView/MessageCenterMessageView.swift",
        "Source/Views/MessageView/MessageCenterMessageViewModel.swift",
        "Source/Views/MessageView/MessageCenterMessageViewWithNavigation.swift",
        "Source/Views/MessageView/MessageCenterThomasView.swift",
        "Source/Views/MessageView/MessageCenterWebView.swift",
        "Source/Views/Shared/MessageCenterBackButton.swift",
        "Source/Views/StoriesView/MessageCenterStoriesView.swift",
        "Source/Views/StoriesView/MessageCenterStoriesViewModel.swift"
      ],
      "target_dependencies" : [
        "AirshipCore",
        "AirshipScenes"
      ],
      "type" : "library"
    },
    {
      "c99name" : "AirshipFoundationModels",
      "module_type" : "SwiftTarget",
      "name" : "AirshipFoundationModels",
      "path" : "Airship/AirshipFoundationModels",
      "product_memberships" : [
        "AirshipFoundationModels"
      ],
      "sources" : [
        "Source/AirshipFoundationModel.swift",
        "Source/AirshipFoundationModelsSDKModule.swift",
        "Source/AvailabilityObservation.swift",
        "Source/DefaultOnDeviceModel.swift",
        "Source/GenerationSchemaBridge.swift"
      ],
      "target_dependencies" : [
        "AirshipCore"
      ],
      "type" : "library"
    },
    {
      "c99name" : "AirshipFeatureFlags",
      "module_type" : "SwiftTarget",
      "name" : "AirshipFeatureFlags",
      "path" : "Airship/AirshipFeatureFlags",
      "product_memberships" : [
        "AirshipFeatureFlags",
        "AirshipObjectiveC",
        "AirshipDebug"
      ],
      "sources" : [
        "Source/AirshipCoalescingCache.swift",
        "Source/AirshipFeatureFlagsSDKModule.swift",
        "Source/DeferredFlagResolver.swift",
        "Source/FeatureFlag.swift",
        "Source/FeatureFlagAnalytics.swift",
        "Source/FeatureFlagComponent.swift",
        "Source/FeatureFlagManager.swift",
        "Source/FeatureFlagManagerProtocol.swift",
        "Source/FeatureFlagPayload.swift",
        "Source/FeatureFlagResultCache.swift",
        "Source/FeatureFlagUpdateStatus.swift",
        "Source/FeatureFlagsRemoteDataAccess.swift"
      ],
      "target_dependencies" : [
        "AirshipCore"
      ],
      "type" : "library"
    },
    {
      "c99name" : "AirshipDebug",
      "module_type" : "SwiftTarget",
      "name" : "AirshipDebug",
      "path" : "Airship/AirshipDebug",
      "product_memberships" : [
        "AirshipDebug"
      ],
      "resources" : [
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipDebug/Resources/AirshipDebugEventData.xcdatamodeld",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipDebug/Resources/AirshipDebugPushData.xcdatamodeld",
          "rule" : {
            "process" : {
            }
          }
        }
      ],
      "sources" : [
        "Source/AirshipDebugManager.swift",
        "Source/AirshipDebugResources.swift",
        "Source/DebugComponent.swift",
        "Source/DebugSDKModule.swift",
        "Source/Events/AirshipEvent.swift",
        "Source/Events/EventData.swift",
        "Source/Events/EventDataManager.swift",
        "Source/Push/PushData+CoreDataClass.swift",
        "Source/Push/PushData+CoreDataProperties.swift",
        "Source/Push/PushDataManager.swift",
        "Source/Push/PushNotification.swift",
        "Source/ShakeUtils.swift",
        "Source/View/AI/AirshipDebugAIContextSection.swift",
        "Source/View/AI/AirshipDebugAIStore.swift",
        "Source/View/AI/AirshipDebugAITestDataSection.swift",
        "Source/View/AI/AirshipDebugAIView.swift",
        "Source/View/AI/AirshipDebugJSONEditor.swift",
        "Source/View/AI/AirshipDebugSceneTextInputView.swift",
        "Source/View/AI/AirshipDebugSchemaBuilder.swift",
        "Source/View/AirshipDebugContentView.swift",
        "Source/View/AirshipDebugRoute.swift",
        "Source/View/AirshipDebugView.swift",
        "Source/View/AirshipoDebugTriggers.swift",
        "Source/View/Analytics/AirshipDebugAddEventView.swift",
        "Source/View/Analytics/AirshipDebugAnalyticIdentifierEditorView.swift",
        "Source/View/Analytics/AirshipDebugAnalyticsView.swift",
        "Source/View/Analytics/AirshipDebugEventDetailsView.swift",
        "Source/View/Analytics/AirshipDebugEventsView.swift",
        "Source/View/AppInfo/AirshipDebugAppInfoView.swift",
        "Source/View/Automations/AirshipDebugAutomationsView.swift",
        "Source/View/Automations/AirshipDebugExperimentsView.swift",
        "Source/View/Automations/AirshipDebugInAppExperiencesView.swift",
        "Source/View/Channel/AirshipDebugChannelSubscriptionsView.swift",
        "Source/View/Channel/AirshipDebugChannelTagView.swift",
        "Source/View/Channel/AirshipDebugChannelView.swift",
        "Source/View/Common/AirshipDebugAddPropertyView.swift",
        "Source/View/Common/AirshipDebugAddStringPropertyView.swift",
        "Source/View/Common/AirshipDebugAttributesEditorView.swift",
        "Source/View/Common/AirshipDebugAudienceSubject.swift",
        "Source/View/Common/AirshipDebugExtensions.swift",
        "Source/View/Common/AirshipDebugTagGroupsEditorView.swift",
        "Source/View/Common/AirshipJSONDetailsView.swift",
        "Source/View/Common/AirshipJSONView.swift",
        "Source/View/Common/AirshipToast.swift",
        "Source/View/Common/Extensions.swift",
        "Source/View/Contact/AirshipDebugAddEmailChannelView.swift",
        "Source/View/Contact/AirshipDebugAddOpenChannelView.swift",
        "Source/View/Contact/AirshipDebugAddSMSChannelView.swift",
        "Source/View/Contact/AirshipDebugContactSubscriptionEditorView.swift",
        "Source/View/Contact/AirshipDebugContactView.swift",
        "Source/View/Contact/AirshipDebugNamedUserView.swift",
        "Source/View/FeatureFlags/AirshipDebugFeatureFlagDetailsView.swift",
        "Source/View/FeatureFlags/AirshipDebugFeatureFlagView.swift",
        "Source/View/PreferenceCenter/AirshipDebugPreferencCenterItemView.swift",
        "Source/View/PreferenceCenter/AirshipDebugPreferenceCenterView.swift",
        "Source/View/PrivacyManager/AirshipDebugPrivacyManagerView.swift",
        "Source/View/Push/AirshipDebugPushDetailsView.swift",
        "Source/View/Push/AirshipDebugPushView.swift",
        "Source/View/Push/AirshipDebugReceivedPushView.swift",
        "Source/View/TvOSComponents/TVDatePicker.swift",
        "Source/View/TvOSComponents/TVSlider.swift"
      ],
      "target_dependencies" : [
        "AirshipCore",
        "AirshipPreferenceCenter",
        "AirshipMessageCenter",
        "AirshipAutomation",
        "AirshipSceneRenderer",
        "AirshipScenes",
        "AirshipFeatureFlags"
      ],
      "type" : "library"
    },
    {
      "c99name" : "AirshipCore",
      "module_type" : "SwiftTarget",
      "name" : "AirshipCore",
      "path" : "Airship/AirshipCore",
      "product_memberships" : [
        "AirshipCore",
        "AirshipAutomation",
        "AirshipMessageCenter",
        "AirshipPreferenceCenter",
        "AirshipFeatureFlags",
        "AirshipObjectiveC",
        "AirshipDebug",
        "AirshipScenes",
        "AirshipFoundationModels"
      ],
      "resources" : [
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipCore/Resources/PrivacyInfo.xcprivacy",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipCore/Resources/UAEvents.xcdatamodeld",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipCore/Resources/UAMeteredUsage.xcdatamodeld",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipCore/Resources/UANativeBridge",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipCore/Resources/UANotificationCategories.plist",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipCore/Resources/UARemoteData.xcdatamodeld",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipCore/Resources/UARemoteDataMappingV1toV4.xcmappingmodel",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipCore/Resources/UARemoteDataMappingV2toV4.xcmappingmodel",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipCore/Resources/UARemoteDataMappingV3toV4.xcmappingmodel",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipCore/Resources/UAirshipCache.xcdatamodeld",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipCore/Resources/af.lproj/UrbanAirship.strings",
          "rule" : {
            "process" : {
              "localization" : "af"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipCore/Resources/am.lproj/UrbanAirship.strings",
          "rule" : {
            "process" : {
              "localization" : "am"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipCore/Resources/ar.lproj/UrbanAirship.strings",
          "rule" : {
            "process" : {
              "localization" : "ar"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipCore/Resources/bg.lproj/UrbanAirship.strings",
          "rule" : {
            "process" : {
              "localization" : "bg"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipCore/Resources/ca.lproj/UrbanAirship.strings",
          "rule" : {
            "process" : {
              "localization" : "ca"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipCore/Resources/cs.lproj/UrbanAirship.strings",
          "rule" : {
            "process" : {
              "localization" : "cs"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipCore/Resources/da.lproj/UrbanAirship.strings",
          "rule" : {
            "process" : {
              "localization" : "da"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipCore/Resources/de.lproj/UrbanAirship.strings",
          "rule" : {
            "process" : {
              "localization" : "de"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipCore/Resources/el.lproj/UrbanAirship.strings",
          "rule" : {
            "process" : {
              "localization" : "el"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipCore/Resources/en.lproj/UrbanAirship.strings",
          "rule" : {
            "process" : {
              "localization" : "en"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipCore/Resources/es-419.lproj/UrbanAirship.strings",
          "rule" : {
            "process" : {
              "localization" : "es-419"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipCore/Resources/es.lproj/UrbanAirship.strings",
          "rule" : {
            "process" : {
              "localization" : "es"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipCore/Resources/et.lproj/UrbanAirship.strings",
          "rule" : {
            "process" : {
              "localization" : "et"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipCore/Resources/fa.lproj/UrbanAirship.strings",
          "rule" : {
            "process" : {
              "localization" : "fa"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipCore/Resources/fi.lproj/UrbanAirship.strings",
          "rule" : {
            "process" : {
              "localization" : "fi"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipCore/Resources/fr-CA.lproj/UrbanAirship.strings",
          "rule" : {
            "process" : {
              "localization" : "fr-ca"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipCore/Resources/fr.lproj/UrbanAirship.strings",
          "rule" : {
            "process" : {
              "localization" : "fr"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipCore/Resources/hi.lproj/UrbanAirship.strings",
          "rule" : {
            "process" : {
              "localization" : "hi"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipCore/Resources/hr.lproj/UrbanAirship.strings",
          "rule" : {
            "process" : {
              "localization" : "hr"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipCore/Resources/hu.lproj/UrbanAirship.strings",
          "rule" : {
            "process" : {
              "localization" : "hu"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipCore/Resources/id.lproj/UrbanAirship.strings",
          "rule" : {
            "process" : {
              "localization" : "id"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipCore/Resources/it.lproj/UrbanAirship.strings",
          "rule" : {
            "process" : {
              "localization" : "it"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipCore/Resources/iw.lproj/UrbanAirship.strings",
          "rule" : {
            "process" : {
              "localization" : "iw"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipCore/Resources/ja.lproj/UrbanAirship.strings",
          "rule" : {
            "process" : {
              "localization" : "ja"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipCore/Resources/ko.lproj/UrbanAirship.strings",
          "rule" : {
            "process" : {
              "localization" : "ko"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipCore/Resources/lt.lproj/UrbanAirship.strings",
          "rule" : {
            "process" : {
              "localization" : "lt"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipCore/Resources/lv.lproj/UrbanAirship.strings",
          "rule" : {
            "process" : {
              "localization" : "lv"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipCore/Resources/ms.lproj/UrbanAirship.strings",
          "rule" : {
            "process" : {
              "localization" : "ms"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipCore/Resources/nl.lproj/UrbanAirship.strings",
          "rule" : {
            "process" : {
              "localization" : "nl"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipCore/Resources/no.lproj/UrbanAirship.strings",
          "rule" : {
            "process" : {
              "localization" : "no"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipCore/Resources/pl.lproj/UrbanAirship.strings",
          "rule" : {
            "process" : {
              "localization" : "pl"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipCore/Resources/pt-PT.lproj/UrbanAirship.strings",
          "rule" : {
            "process" : {
              "localization" : "pt-pt"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipCore/Resources/pt.lproj/UrbanAirship.strings",
          "rule" : {
            "process" : {
              "localization" : "pt"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipCore/Resources/ro.lproj/UrbanAirship.strings",
          "rule" : {
            "process" : {
              "localization" : "ro"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipCore/Resources/ru.lproj/UrbanAirship.strings",
          "rule" : {
            "process" : {
              "localization" : "ru"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipCore/Resources/sk.lproj/UrbanAirship.strings",
          "rule" : {
            "process" : {
              "localization" : "sk"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipCore/Resources/sl.lproj/UrbanAirship.strings",
          "rule" : {
            "process" : {
              "localization" : "sl"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipCore/Resources/sr.lproj/UrbanAirship.strings",
          "rule" : {
            "process" : {
              "localization" : "sr"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipCore/Resources/sv.lproj/UrbanAirship.strings",
          "rule" : {
            "process" : {
              "localization" : "sv"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipCore/Resources/sw.lproj/UrbanAirship.strings",
          "rule" : {
            "process" : {
              "localization" : "sw"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipCore/Resources/th.lproj/UrbanAirship.strings",
          "rule" : {
            "process" : {
              "localization" : "th"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipCore/Resources/tr.lproj/UrbanAirship.strings",
          "rule" : {
            "process" : {
              "localization" : "tr"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipCore/Resources/uk.lproj/UrbanAirship.strings",
          "rule" : {
            "process" : {
              "localization" : "uk"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipCore/Resources/vi.lproj/UrbanAirship.strings",
          "rule" : {
            "process" : {
              "localization" : "vi"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipCore/Resources/zh-HK.lproj/UrbanAirship.strings",
          "rule" : {
            "process" : {
              "localization" : "zh-hk"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipCore/Resources/zh-Hans.lproj/UrbanAirship.strings",
          "rule" : {
            "process" : {
              "localization" : "zh-hans"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipCore/Resources/zh-Hant.lproj/UrbanAirship.strings",
          "rule" : {
            "process" : {
              "localization" : "zh-hant"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipCore/Resources/zu.lproj/UrbanAirship.strings",
          "rule" : {
            "process" : {
              "localization" : "zu"
            }
          }
        }
      ],
      "sources" : [
        "Source/AI/AirshipAI.swift",
        "Source/AI/AirshipAIEvaluator.swift",
        "Source/AI/AirshipAIManager.swift",
        "Source/AI/ProviderRegistry.swift",
        "Source/APNSEnvironment.swift",
        "Source/APNSRegistrar.swift",
        "Source/APNSRegistrationResult.swift",
        "Source/AccountEventTemplate.swift",
        "Source/ActionRegistry.swift",
        "Source/ActionRunner.swift",
        "Source/ActivityViewController.swift",
        "Source/AddCustomEventAction.swift",
        "Source/AddTagsAction.swift",
        "Source/Airship.swift",
        "Source/AirshipAnalytics.swift",
        "Source/AirshipAnalyticsFeed.swift",
        "Source/AirshipAppCredentials.swift",
        "Source/AirshipApptimizeIntegration.swift",
        "Source/AirshipAsyncChannel.swift",
        "Source/AirshipAsyncImage.swift",
        "Source/AirshipAsyncSemaphore.swift",
        "Source/AirshipAuthorizedNotificationSettings.swift",
        "Source/AirshipBase64.swift",
        "Source/AirshipCache.swift",
        "Source/AirshipCachedAssets.swift",
        "Source/AirshipChannel.swift",
        "Source/AirshipComponent.swift",
        "Source/AirshipConfig.swift",
        "Source/AirshipContact.swift",
        "Source/AirshipCoreDataPredicate.swift",
        "Source/AirshipCoreResources.swift",
        "Source/AirshipDevice.swift",
        "Source/AirshipDeviceAudienceResult.swift",
        "Source/AirshipDeviceID.swift",
        "Source/AirshipDisplayTarget.swift",
        "Source/AirshipEvent.swift",
        "Source/AirshipEventData.swift",
        "Source/AirshipEvents.swift",
        "Source/AirshipInputValidator.swift",
        "Source/AirshipInstance.swift",
        "Source/AirshipKeychainAccess.swift",
        "Source/AirshipLocalizationUtils.swift",
        "Source/AirshipMeteredUsage.swift",
        "Source/AirshipMeteredUsageEvent.swift",
        "Source/AirshipNetworkChecker.swift",
        "Source/AirshipNotificationCenter.swift",
        "Source/AirshipNotificationStatus.swift",
        "Source/AirshipPasteboard.swift",
        "Source/AirshipPrivacyManager.swift",
        "Source/AirshipPush.swift",
        "Source/AirshipPushableComponent.swift",
        "Source/AirshipRequest.swift",
        "Source/AirshipRequestSession.swift",
        "Source/AirshipResources.swift",
        "Source/AirshipResponse.swift",
        "Source/AirshipSDKExtension.swift",
        "Source/AirshipSDKModule.swift",
        "Source/AirshipSceneManager.swift",
        "Source/AirshipStateOverrides.swift",
        "Source/AirshipSwizzler.swift",
        "Source/AirshipTimeCriteria.swift",
        "Source/AirshipUnsafeSendableWrapper.swift",
        "Source/AirshipUtils.swift",
        "Source/AirshipVersion.swift",
        "Source/AirshipWeakValueHolder.swift",
        "Source/AirshipWindowFactory.swift",
        "Source/AirshipWorkManager.swift",
        "Source/AirshipWorkManagerProtocol.swift",
        "Source/AirshipWorkRequest.swift",
        "Source/AirshipWorkResult.swift",
        "Source/AirsihpTriggerContext.swift",
        "Source/AnonContactData.swift",
        "Source/AppIntegration.swift",
        "Source/AppRemoteDataProviderDelegate.swift",
        "Source/AssetCacheImageProvider.swift",
        "Source/AssetCacheManager.swift",
        "Source/AssociatedIdentifiers.swift",
        "Source/AsyncSerialQueue.swift",
        "Source/AsyncStream.swift",
        "Source/AttributePendingMutations.swift",
        "Source/AttributeUpdate.swift",
        "Source/Attributes.swift",
        "Source/AttributesEditor.swift",
        "Source/AudienceDeviceInfoProvider.swift",
        "Source/AudienceHashSelector.swift",
        "Source/AudienceOverridesProvider.swift",
        "Source/AudienceUtils.swift",
        "Source/AuthToken.swift",
        "Source/AutoIntegration.swift",
        "Source/Badger.swift",
        "Source/BaseCachingRemoteDataProvider.swift",
        "Source/BasementImport.swift",
        "Source/BlockAction.swift",
        "Source/BundleExtensions.swift",
        "Source/CachedList.swift",
        "Source/CachedValue.swift",
        "Source/CachingSMSValidatorAPIClient.swift",
        "Source/CancellableValueHolder.swift",
        "Source/ChallengeResolver.swift",
        "Source/ChannelAPIClient.swift",
        "Source/ChannelAudienceManager.swift",
        "Source/ChannelAuthTokenAPIClient.swift",
        "Source/ChannelAuthTokenProvider.swift",
        "Source/ChannelBulkUpdateAPIClient.swift",
        "Source/ChannelCapture.swift",
        "Source/ChannelRegistrar.swift",
        "Source/ChannelRegistrationPayload.swift",
        "Source/ChannelScope.swift",
        "Source/ChannelSubscriptionListProvider.swift",
        "Source/ChannelType.swift",
        "Source/CircularRegion.swift",
        "Source/CloudSite.swift",
        "Source/CompoundDeviceAudienceSelector.swift",
        "Source/ContactAPIClient.swift",
        "Source/ContactChannel.swift",
        "Source/ContactChannelsAPIClient.swift",
        "Source/ContactChannelsProvider.swift",
        "Source/ContactConflictEvent.swift",
        "Source/ContactManager.swift",
        "Source/ContactManagerProtocol.swift",
        "Source/ContactOperation.swift",
        "Source/ContactRemoteDataProviderDelegate.swift",
        "Source/ContactSubscriptionListClient.swift",
        "Source/CustomEvent.swift",
        "Source/DeepLinkAction.swift",
        "Source/DeepLinkDelegate.swift",
        "Source/DefaultAirshipAnalytics.swift",
        "Source/DefaultAirshipChannel.swift",
        "Source/DefaultAirshipContact.swift",
        "Source/DefaultAirshipPush.swift",
        "Source/DefaultAppIntegrationDelegate.swift",
        "Source/DefaultAssetDownloader.swift",
        "Source/DefaultAssetFileManager.swift",
        "Source/DeferredAPIClient.swift",
        "Source/DeferredResolver.swift",
        "Source/DeviceAudienceChecker.swift",
        "Source/DeviceAudienceSelector.swift",
        "Source/DeviceTagSelector.swift",
        "Source/EmailRegistrationOptions.swift",
        "Source/EmptyAction.swift",
        "Source/EnableFeatureAction.swift",
        "Source/EventAPIClient.swift",
        "Source/EventManager.swift",
        "Source/EventStore.swift",
        "Source/EventUploadScheduler.swift",
        "Source/EventUploadTuningInfo.swift",
        "Source/EventUtils.swift",
        "Source/Experiment.swift",
        "Source/ExperimentDataProvider.swift",
        "Source/ExperimentManager.swift",
        "Source/ExternalURLProcessor.swift",
        "Source/FarmHashFingerprint64.swift",
        "Source/FetchDeviceInfoAction.swift",
        "Source/HashChecker.swift",
        "Source/JSONValueTransformer.swift",
        "Source/JavaScriptCommand.swift",
        "Source/JavaScriptCommandDelegate.swift",
        "Source/JavaScriptEnvironment.swift",
        "Source/LiveActivity.swift",
        "Source/LiveActivityRegistrationStatus.swift",
        "Source/LiveActivityRegistrationStatusUpdates.swift",
        "Source/LiveActivityRegistry.swift",
        "Source/LiveActivityRestorer.swift",
        "Source/LiveActivityUpdate.swift",
        "Source/LocaleManager.swift",
        "Source/MediaEventTemplate.swift",
        "Source/MessageCriteria.swift",
        "Source/MeteredUsageAPIClient.swift",
        "Source/MeteredUsageStore.swift",
        "Source/ModifyAttributesAction.swift",
        "Source/ModifyTagsAction.swift",
        "Source/ModuleLoader.swift",
        "Source/NativeBridge.swift",
        "Source/NativeBridgeActionHandler.swift",
        "Source/NativeBridgeActionRunner.swift",
        "Source/NativeBridgeDelegate.swift",
        "Source/NativeBridgeExtensionDelegate.swift",
        "Source/NotificationCategories.swift",
        "Source/NotificationPermissionDelegate.swift",
        "Source/NotificationRegistrar.swift",
        "Source/NotificationRegistrationResult.swift",
        "Source/OpenExternalURLAction.swift",
        "Source/OpenRegistrationOptions.swift",
        "Source/PasteboardAction.swift",
        "Source/Permission.swift",
        "Source/PermissionDelegate.swift",
        "Source/PermissionPrompter.swift",
        "Source/PermissionStatus.swift",
        "Source/PermissionsManager.swift",
        "Source/PreferenceDataStore.swift",
        "Source/PromptPermissionAction.swift",
        "Source/ProximityRegion.swift",
        "Source/PushNotificationDelegate.swift",
        "Source/RateAppAction.swift",
        "Source/RegionEvent.swift",
        "Source/RegistrationDelegate.swift",
        "Source/RemoteConfig.swift",
        "Source/RemoteConfigCache.swift",
        "Source/RemoteConfigManager.swift",
        "Source/RemoteData.swift",
        "Source/RemoteDataAPIClient.swift",
        "Source/RemoteDataInfo.swift",
        "Source/RemoteDataPayload.swift",
        "Source/RemoteDataProtocol.swift",
        "Source/RemoteDataProvider.swift",
        "Source/RemoteDataProviderDelegate.swift",
        "Source/RemoteDataProviderProtocol.swift",
        "Source/RemoteDataSource.swift",
        "Source/RemoteDataSourceStatus.swift",
        "Source/RemoteDataStore.swift",
        "Source/RemoteDataStorePayload.swift",
        "Source/RemoteDataURLFactory.swift",
        "Source/RemoveTagsAction.swift",
        "Source/RetailEventTemplate.swift",
        "Source/RuntimeConfig.swift",
        "Source/SMSRegistrationOptions.swift",
        "Source/SMSValidatorAPIClient.swift",
        "Source/ScopedSubscriptionListEdit.swift",
        "Source/ScopedSubscriptionListEditor.swift",
        "Source/ScopedSubscriptionListUpdate.swift",
        "Source/SearchEventTemplate.swift",
        "Source/SerialQueue.swift",
        "Source/SessionEvent.swift",
        "Source/SessionEventFactory.swift",
        "Source/SessionState.swift",
        "Source/SessionTracker.swift",
        "Source/ShareAction.swift",
        "Source/SubscriptionListAPIClient.swift",
        "Source/SubscriptionListAction.swift",
        "Source/SubscriptionListEdit.swift",
        "Source/SubscriptionListEditor.swift",
        "Source/SubscriptionListProvider.swift",
        "Source/SubscriptionListUpdate.swift",
        "Source/TagActionMutation.swift",
        "Source/TagEditor.swift",
        "Source/TagGroupMutations.swift",
        "Source/TagGroupUpdate.swift",
        "Source/TagGroupsEditor.swift",
        "Source/TagsActionArgs.swift",
        "Source/ThomasFormStatus.swift",
        "Source/UAAppIntegrationDelegate.swift",
        "Source/UACoreData.swift",
        "Source/UARemoteDataMapping.swift",
        "Source/UNNotificationRegistrar.swift",
        "Source/URLAllowList.swift",
        "Source/VariantAudience.swift",
        "Source/WorkBackgroundTasks.swift",
        "Source/WorkConditionsMonitor.swift",
        "Source/WorkRateLimiterActor.swift",
        "Source/Worker.swift"
      ],
      "target_dependencies" : [
        "AirshipBasement"
      ],
      "type" : "library"
    },
    {
      "c99name" : "AirshipBasement",
      "module_type" : "SwiftTarget",
      "name" : "AirshipBasement",
      "path" : "Airship/AirshipBasement",
      "product_memberships" : [
        "AirshipCore",
        "AirshipAutomation",
        "AirshipMessageCenter",
        "AirshipPreferenceCenter",
        "AirshipFeatureFlags",
        "AirshipObjectiveC",
        "AirshipDebug",
        "AirshipSceneRenderer",
        "AirshipScenes",
        "AirshipFoundationModels"
      ],
      "sources" : [
        "Source/Actions/ActionArguments.swift",
        "Source/Actions/ActionResult.swift",
        "Source/Actions/AirshipAction.swift",
        "Source/AirshipErrors.swift",
        "Source/AirshipEventType.swift",
        "Source/AirshipLogHandler.swift",
        "Source/AirshipLogPrivacyLevel.swift",
        "Source/AirshipLogger.swift",
        "Source/App State/AppStateTracker.swift",
        "Source/App State/AppStateTrackerAdapter.swift",
        "Source/App State/ApplicationState.swift",
        "Source/DefaultLogHandler.swift",
        "Source/Json/AirshipJSON.swift",
        "Source/Json/AirshipJSONSchema.swift",
        "Source/Json/Predicate/AirshipIvyVersionMatcher.swift",
        "Source/Json/Predicate/JSONMatcher.swift",
        "Source/Json/Predicate/JSONPredicate.swift",
        "Source/Json/Predicate/JSONValueMatcher.swift",
        "Source/Json/Predicate/JSONValueMatcherPredicates.swift",
        "Source/LogLevel.swift",
        "Source/UI/AirshipColorExtensions.swift",
        "Source/UI/AirshipImageData.swift",
        "Source/UI/AirshipImageLoader.swift",
        "Source/UI/AirshipImageProvider.swift",
        "Source/UI/AirshipViewExtensions.swift",
        "Source/Utils/AirshipActorValue.swift",
        "Source/Utils/AirshipAtomicValue.swift",
        "Source/Utils/AirshipCancellable.swift",
        "Source/Utils/AirshipColor.swift",
        "Source/Utils/AirshipDate.swift",
        "Source/Utils/AirshipDateFormatter.swift",
        "Source/Utils/AirshipFont.swift",
        "Source/Utils/AirshipInputValidator.swift",
        "Source/Utils/AirshipLock.swift",
        "Source/Utils/AirshipNativePlatform.swift",
        "Source/Utils/AirshipObservableTimer.swift",
        "Source/Utils/AirshipTaskSleeper.swift",
        "Source/Utils/AirshipTimerProtocol.swift",
        "Source/Utils/AirshipVersionUtils.swift"
      ],
      "type" : "library"
    },
    {
      "c99name" : "AirshipAutomation",
      "module_type" : "SwiftTarget",
      "name" : "AirshipAutomation",
      "path" : "Airship/AirshipAutomation",
      "product_memberships" : [
        "AirshipAutomation",
        "AirshipObjectiveC",
        "AirshipDebug"
      ],
      "resources" : [
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipAutomation/Resources/AirshipAutomation.xcdatamodeld",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipAutomation/Resources/AirshipLedger.xcdatamodeld",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipAutomation/Resources/UAAutomation.xcdatamodeld",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Airship/AirshipAutomation/Resources/UAFrequencyLimits.xcdatamodeld",
          "rule" : {
            "process" : {
            }
          }
        }
      ],
      "sources" : [
        "Source/ActionAutomation/ActionAutomationExecutor.swift",
        "Source/ActionAutomation/ActionAutomationPreparer.swift",
        "Source/Actions/CancelSchedulesAction.swift",
        "Source/Actions/LandingPageAction.swift",
        "Source/Actions/SceneAction.swift",
        "Source/Actions/ScheduleAction.swift",
        "Source/AirshipAutomationResources.swift",
        "Source/AudienceCheck/AdditionalAudienceCheckerApiClient.swift",
        "Source/AudienceCheck/AdditionalAudienceCheckerResolver.swift",
        "Source/Automation/ApplicationMetrics.swift",
        "Source/Automation/AutomationAISuppression.swift",
        "Source/Automation/AutomationAudience.swift",
        "Source/Automation/AutomationCompoundAudience.swift",
        "Source/Automation/AutomationDelay.swift",
        "Source/Automation/AutomationSchedule.swift",
        "Source/Automation/AutomationTrigger.swift",
        "Source/Automation/DeferredAutomationData.swift",
        "Source/Automation/Engine/AutomationDelayProcessor.swift",
        "Source/Automation/Engine/AutomationEngine.swift",
        "Source/Automation/Engine/AutomationEventFeed.swift",
        "Source/Automation/Engine/AutomationEventsHistory.swift",
        "Source/Automation/Engine/AutomationExecutor.swift",
        "Source/Automation/Engine/AutomationPreparer.swift",
        "Source/Automation/Engine/AutomationScheduleData.swift",
        "Source/Automation/Engine/AutomationScheduleState.swift",
        "Source/Automation/Engine/AutomationStore.swift",
        "Source/Automation/Engine/ExecutionWindowProcessor.swift",
        "Source/Automation/Engine/LegacyAutomationStore.swift",
        "Source/Automation/Engine/PreparedSchedule.swift",
        "Source/Automation/Engine/ScheduleExecuteResult.swift",
        "Source/Automation/Engine/SchedulePrepareResult.swift",
        "Source/Automation/Engine/ScheduleReadyResult.swift",
        "Source/Automation/Engine/TriggerProcessor/AutomationTriggerProcessor.swift",
        "Source/Automation/Engine/TriggerProcessor/PreparedTrigger.swift",
        "Source/Automation/Engine/TriggerProcessor/TriggerData.swift",
        "Source/Automation/Engine/TriggeringInfo.swift",
        "Source/Automation/ExecutionWindow.swift",
        "Source/AutomationSDKModule.swift",
        "Source/InAppAutomation.swift",
        "Source/InAppAutomationComponent.swift",
        "Source/InAppAutomationUpdateStatus.swift",
        "Source/InAppMessage/Analytics/InAppDisplayImpressionRuleProvider.swift",
        "Source/InAppMessage/Analytics/InAppMessageAnalytics.swift",
        "Source/InAppMessage/Analytics/InAppMessageAnalyticsFactory.swift",
        "Source/InAppMessage/Display Adapter/AirshipLayoutDisplayAdapter.swift",
        "Source/InAppMessage/Display Adapter/CustomDisplayAdapter.swift",
        "Source/InAppMessage/Display Adapter/CustomDisplayAdapterWrapper.swift",
        "Source/InAppMessage/Display Adapter/DisplayAdapter.swift",
        "Source/InAppMessage/Display Adapter/DisplayAdapterFactory.swift",
        "Source/InAppMessage/Display Adapter/InAppMessageDisplayListener.swift",
        "Source/InAppMessage/Display Coordinators/DefaultDisplayCoordinator.swift",
        "Source/InAppMessage/Display Coordinators/DisplayActivityTracker.swift",
        "Source/InAppMessage/Display Coordinators/DisplayCoordinator.swift",
        "Source/InAppMessage/Display Coordinators/DisplayCoordinatorManager.swift",
        "Source/InAppMessage/Display Coordinators/EmbeddedDisplayCoordinator.swift",
        "Source/InAppMessage/Display Coordinators/ImmediateDisplayCoordinator.swift",
        "Source/InAppMessage/InAppActionRunner.swift",
        "Source/InAppMessage/InAppMessage.swift",
        "Source/InAppMessage/InAppMessageAISuppression.swift",
        "Source/InAppMessage/InAppMessageAISuppressionEvaluation.swift",
        "Source/InAppMessage/InAppMessageAutomationExecutor.swift",
        "Source/InAppMessage/InAppMessageAutomationPreparer.swift",
        "Source/InAppMessage/InAppMessageColor.swift",
        "Source/InAppMessage/InAppMessageDisplayContent.swift",
        "Source/InAppMessage/InAppMessageDisplayDelegate.swift",
        "Source/InAppMessage/InAppMessageEnvironment.swift",
        "Source/InAppMessage/InAppMessageSceneDelegate.swift",
        "Source/InAppMessage/InAppMessageSceneManager.swift",
        "Source/InAppMessage/InAppMessageValidation.swift",
        "Source/InAppMessage/InAppMessageViewDelegate.swift",
        "Source/InAppMessage/InAppMessaging.swift",
        "Source/InAppMessage/Info/InAppMessageButtonInfo.swift",
        "Source/InAppMessage/Info/InAppMessageButtonLayoutType.swift",
        "Source/InAppMessage/Info/InAppMessageMediaInfo.swift",
        "Source/InAppMessage/Info/InAppMessageTextInfo.swift",
        "Source/InAppMessage/Legacy/LegacyInAppAnalytics.swift",
        "Source/InAppMessage/Legacy/LegacyInAppMessage.swift",
        "Source/InAppMessage/Legacy/LegacyInAppMessaging.swift",
        "Source/InAppMessage/SuppressionResult.swift",
        "Source/InAppMessage/View/BeveledLoadingView.swift",
        "Source/InAppMessage/View/ButtonGroup.swift",
        "Source/InAppMessage/View/CloseButton.swift",
        "Source/InAppMessage/View/FullscreenView.swift",
        "Source/InAppMessage/View/HTMLView.swift",
        "Source/InAppMessage/View/InAppMessageBannerView.swift",
        "Source/InAppMessage/View/InAppMessageExtensions.swift",
        "Source/InAppMessage/View/InAppMessageHostingController.swift",
        "Source/InAppMessage/View/InAppMessageModalView.swift",
        "Source/InAppMessage/View/InAppMessageNativeBridgeExtension.swift",
        "Source/InAppMessage/View/InAppMessageRootView.swift",
        "Source/InAppMessage/View/InAppMessageViewUtils.swift",
        "Source/InAppMessage/View/InAppMessageWebView.swift",
        "Source/InAppMessage/View/MediaView.swift",
        "Source/InAppMessage/View/TextView.swift",
        "Source/InAppMessage/View/Theme/InAppMessageTheme.swift",
        "Source/InAppMessage/View/Theme/InAppMessageThemeAdditionalPadding.swift",
        "Source/InAppMessage/View/Theme/InAppMessageThemeBanner.swift",
        "Source/InAppMessage/View/Theme/InAppMessageThemeButton.swift",
        "Source/InAppMessage/View/Theme/InAppMessageThemeFullscreen.swift",
        "Source/InAppMessage/View/Theme/InAppMessageThemeHTML.swift",
        "Source/InAppMessage/View/Theme/InAppMessageThemeManager.swift",
        "Source/InAppMessage/View/Theme/InAppMessageThemeMedia.swift",
        "Source/InAppMessage/View/Theme/InAppMessageThemeModal.swift",
        "Source/InAppMessage/View/Theme/InAppMessageThemeShadow.swift",
        "Source/InAppMessage/View/Theme/InAppMessageThemeText.swift",
        "Source/InAppMessage/View/Theme/ThemeExtensions.swift",
        "Source/Limits/AutomationLedger.swift",
        "Source/Limits/FrequencyChecker.swift",
        "Source/Limits/FrequencyConstraint.swift",
        "Source/Limits/FrequencyLimitManager.swift",
        "Source/Limits/FrequencyLimitStore.swift",
        "Source/Limits/LedgerEvent.swift",
        "Source/Limits/LedgerGroupReservations.swift",
        "Source/Limits/LedgerLimitEvaluator.swift",
        "Source/Limits/LedgerStore.swift",
        "Source/Limits/LimitConfig.swift",
        "Source/Limits/Occurrence.swift",
        "Source/RemoteData/AutomationRemoteDataAccess.swift",
        "Source/RemoteData/AutomationRemoteDataSubscriber.swift",
        "Source/RemoteData/AutomationSourceInfoStore.swift",
        "Source/RemoteData/DeferredScheduleResult.swift",
        "Source/Utils/ActiveTimer.swift",
        "Source/Utils/AutomationActionRunner.swift",
        "Source/Utils/RetryingQueue.swift",
        "Source/Utils/ScheduleConditionsChangedNotifier.swift"
      ],
      "target_dependencies" : [
        "AirshipCore",
        "AirshipScenes"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "6.0"
}
warning: 'spi-builder-workspace': Invalid Exclude '/Users/admin/builder/spi-builder-workspace/Airship/AirshipFoundationModels/Tests': File not found.
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats
Building for debugging...
[0/86] Write sources
[0/86] Copying Info.plist
[0/86] Write sources
[0/86] Copying UrbanAirship.strings
[0/86] Copying Info.plist
[0/86] Copying UrbanAirship.strings
[43/86] Copying UAInboxDataMappingV3toV4.xcmappingmodel
[43/86] Copying UrbanAirship.strings
[46/86] Copying UAInboxDataMappingV1toV4.xcmappingmodel
[47/86] Copying UAInboxDataMappingV2toV4.xcmappingmodel
[48/86] Copying UrbanAirship.strings
[51/86] Copying AirshipDebugPushData.xcdatamodeld
[52/86] Copying UrbanAirship.strings
[53/86] Copying AirshipDebugEventData.xcdatamodeld
[55/86] Copying UrbanAirship.strings
[56/86] Copying TestAssets.xcassets
[56/86] Copying UrbanAirship.strings
[64/86] Copying UANativeBridge
[64/86] Copying UANotificationCategories.plist
[66/86] Copying UARemoteDataMappingV2toV4.xcmappingmodel
[66/86] Copying PrivacyInfo.xcprivacy
[67/86] Copying UARemoteDataMappingV1toV4.xcmappingmodel
[67/86] Copying UARemoteDataMappingV3toV4.xcmappingmodel
[67/86] Copying Info.plist
[67/86] Copying UAirshipCache.xcdatamodeld
[72/86] Copying Info.plist
[72/86] Write sources
[75/86] Copying UAEvents.xcdatamodeld
[77/86] Write sources
[78/86] Copying UAMeteredUsage.xcdatamodeld
[79/86] Copying UAFrequencyLimits.xcdatamodeld
[80/86] Copying AirshipLedger.xcdatamodeld
[81/86] Copying UAInbox.xcdatamodeld
[82/86] Copying UARemoteData.xcdatamodeld
[82/86] Copying AirshipAutomation.xcdatamodeld
[84/86] Copying UAAutomation.xcdatamodeld
[85/86] Write swift-version-2F0A5646E1D333AE.txt
error: emit-module command failed with exit code 1 (use -v to see invocation)
[87/130] Compiling AirshipNotificationServiceExtension ChallengeResolver.swift
[88/130] Compiling AirshipNotificationServiceExtension AirshipExtensionConfig.swift
[89/130] Emitting module AirshipNotificationServiceExtension
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipExtensionLogger.swift:200:32: error: 'Logger' is only available in macOS 11.0 or newer
190 |
191 |
192 | public final class DefaultAirshipExtensionLogHandler: AirshipExtensionLogHandler {
    |                    `- note: add @available attribute to enclosing class
193 |
194 |     private let logPublic: Bool
    :
198 |     }
199 |
200 |     private static let logger: Logger = Logger(
    |                        |       `- error: 'Logger' is only available in macOS 11.0 or newer
    |                        `- note: add @available attribute to enclosing static property
201 |         subsystem: Bundle.main.bundleIdentifier ?? "",
202 |         category: "AirshipNotificationExtension"
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipExtensionLogger.swift:200:41: error: 'Logger' is only available in macOS 11.0 or newer
190 |
191 |
192 | public final class DefaultAirshipExtensionLogHandler: AirshipExtensionLogHandler {
    |                    `- note: add @available attribute to enclosing class
193 |
194 |     private let logPublic: Bool
    :
198 |     }
199 |
200 |     private static let logger: Logger = Logger(
    |                        |                `- error: 'Logger' is only available in macOS 11.0 or newer
    |                        `- note: add @available attribute to enclosing static property
201 |         subsystem: Bundle.main.bundleIdentifier ?? "",
202 |         category: "AirshipNotificationExtension"
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipNotificationMutationProvider.swift:210:40: error: 'UNMutableNotificationContent' is only available in macOS 10.14 or newer
202 | }
203 |
204 | struct AirshipNotificationMutations: Sendable {
    |        `- note: add @available attribute to enclosing struct
205 |     var title: String?
206 |     var subtitle: String?
    :
208 |     var attachments: [AirshipAttachment]
209 |
210 |     func apply(to notificationContent: UNMutableNotificationContent) throws {
    |          |                             `- error: 'UNMutableNotificationContent' is only available in macOS 10.14 or newer
    |          `- note: add @available attribute to enclosing instance method
211 |         // Text overrides land first: a rejected attachment must never cost the
212 |         // notification its title/subtitle/body.
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipNotificationMutationProvider.swift:243:33: error: 'UNNotificationAttachment' is only available in macOS 10.14 or newer
236 |
237 |
238 | struct AirshipAttachment: Sendable {
    |        `- note: add @available attribute to enclosing struct
239 |     var identifier: String
240 |     var url: URL
241 |     var options: [String : any Sendable]
242 |
243 |     var notificationAttachment: UNNotificationAttachment {
    |         |                       `- error: 'UNNotificationAttachment' is only available in macOS 10.14 or newer
    |         `- note: add @available attribute to enclosing property
244 |         get throws {
245 |             try UNNotificationAttachment(
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/UANotificationServiceExtension.swift:16:20: error: 'UNNotificationRequest' is only available in macOS 10.14 or newer
  9 |
 10 | @objc
 11 | open class UANotificationServiceExtension: UNNotificationServiceExtension {
    |            `- note: add @available attribute to enclosing class
 12 |     open var airshipConfig: AirshipExtensionConfig { .init() }
 13 |     private var onExpire: (@Sendable () -> Void)?
 14 |
 15 |     open override func didReceive(
    |                        `- note: add @available attribute to enclosing instance method
 16 |         _ request: UNNotificationRequest,
    |                    `- error: 'UNNotificationRequest' is only available in macOS 10.14 or newer
 17 |         withContentHandler contentHandler: @Sendable @escaping (UNNotificationContent) -> Void
 18 |     ) {
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/UANotificationServiceExtension.swift:17:65: error: 'UNNotificationContent' is only available in macOS 10.14 or newer
  9 |
 10 | @objc
 11 | open class UANotificationServiceExtension: UNNotificationServiceExtension {
    |            `- note: add @available attribute to enclosing class
 12 |     open var airshipConfig: AirshipExtensionConfig { .init() }
 13 |     private var onExpire: (@Sendable () -> Void)?
 14 |
 15 |     open override func didReceive(
    |                        `- note: add @available attribute to enclosing instance method
 16 |         _ request: UNNotificationRequest,
 17 |         withContentHandler contentHandler: @Sendable @escaping (UNNotificationContent) -> Void
    |                                                                 `- error: 'UNNotificationContent' is only available in macOS 10.14 or newer
 18 |     ) {
 19 |
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/UANotificationServiceExtension.swift:11:44: error: 'UNNotificationServiceExtension' is only available in macOS 10.14 or newer
  9 |
 10 | @objc
 11 | open class UANotificationServiceExtension: UNNotificationServiceExtension {
    |            |                               `- error: 'UNNotificationServiceExtension' is only available in macOS 10.14 or newer
    |            `- note: add @available attribute to enclosing class
 12 |     open var airshipConfig: AirshipExtensionConfig { .init() }
 13 |     private var onExpire: (@Sendable () -> Void)?
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/UANotificationServiceExtension.swift:94:38: error: 'UNNotificationContent' is only available in macOS 10.14 or newer
 90 | /// Wraps a content handler so it can only be invoked once, no matter
 91 | /// which path (download task or expiry) finishes the request first.
 92 | private final class OnceContentHandler: @unchecked Sendable {
    |                     `- note: add @available attribute to enclosing class
 93 |     private let lock = NSLock()
 94 |     private var handler: (@Sendable (UNNotificationContent) -> Void)?
    |                                      `- error: 'UNNotificationContent' is only available in macOS 10.14 or newer
 95 |
 96 |     init(_ handler: @Sendable @escaping (UNNotificationContent) -> Void) {
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/UANotificationServiceExtension.swift:96:42: error: 'UNNotificationContent' is only available in macOS 10.14 or newer
 90 | /// Wraps a content handler so it can only be invoked once, no matter
 91 | /// which path (download task or expiry) finishes the request first.
 92 | private final class OnceContentHandler: @unchecked Sendable {
    |                     `- note: add @available attribute to enclosing class
 93 |     private let lock = NSLock()
 94 |     private var handler: (@Sendable (UNNotificationContent) -> Void)?
 95 |
 96 |     init(_ handler: @Sendable @escaping (UNNotificationContent) -> Void) {
    |     |                                    `- error: 'UNNotificationContent' is only available in macOS 10.14 or newer
    |     `- note: add @available attribute to enclosing initializer
 97 |         self.handler = handler
 98 |     }
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/UANotificationServiceExtension.swift:100:36: error: 'UNNotificationContent' is only available in macOS 10.14 or newer
 90 | /// Wraps a content handler so it can only be invoked once, no matter
 91 | /// which path (download task or expiry) finishes the request first.
 92 | private final class OnceContentHandler: @unchecked Sendable {
    |                     `- note: add @available attribute to enclosing class
 93 |     private let lock = NSLock()
 94 |     private var handler: (@Sendable (UNNotificationContent) -> Void)?
    :
 98 |     }
 99 |
100 |     func callAsFunction(_ content: UNNotificationContent) {
    |          |                         `- error: 'UNNotificationContent' is only available in macOS 10.14 or newer
    |          `- note: add @available attribute to enclosing instance method
101 |         lock.lock()
102 |         let handler = self.handler
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/UANotificationServiceExtension.swift:109:11: error: 'UNNotificationRequest' is only available in macOS 10.14 or newer
107 | }
108 |
109 | extension UNNotificationRequest {
    | |         `- error: 'UNNotificationRequest' is only available in macOS 10.14 or newer
    | `- note: add @available attribute to enclosing extension
110 |     fileprivate static let airshipMediaAttachment = "com.urbanairship.media_attachment"
111 |
[90/130] Compiling AirshipNotificationServiceExtension MediaAttachmentPayload.swift
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/MediaAttachmentPayload.swift:135:51: error: 'UNNotificationAttachmentOptionsThumbnailHiddenKey' is only available in macOS 10.14 or newer
 92 |     }
 93 |
 94 |     struct PayloadOptions: Decodable, Sendable {
    |            `- note: add @available attribute to enclosing struct
 95 |         private static let cropRequiredFields = ["x", "y", "width", "height"]
 96 |         let crop: [String: Double]?
    :
132 |         }
133 |
134 |         func generateNotificationAttachmentOptions(hideThumbnail: Bool) -> [String: any Sendable] {
    |              `- note: add @available attribute to enclosing instance method
135 |             var result: [String: any Sendable] = [UNNotificationAttachmentOptionsThumbnailHiddenKey: hideThumbnail]
    |                                                   |- error: 'UNNotificationAttachmentOptionsThumbnailHiddenKey' is only available in macOS 10.14 or newer
    |                                                   `- note: add 'if #available' version check
136 |
137 |             if let crop = self.crop {
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/MediaAttachmentPayload.swift:141:24: error: 'UNNotificationAttachmentOptionsThumbnailClippingRectKey' is only available in macOS 10.14 or newer
 92 |     }
 93 |
 94 |     struct PayloadOptions: Decodable, Sendable {
    |            `- note: add @available attribute to enclosing struct
 95 |         private static let cropRequiredFields = ["x", "y", "width", "height"]
 96 |         let crop: [String: Double]?
    :
132 |         }
133 |
134 |         func generateNotificationAttachmentOptions(hideThumbnail: Bool) -> [String: any Sendable] {
    |              `- note: add @available attribute to enclosing instance method
135 |             var result: [String: any Sendable] = [UNNotificationAttachmentOptionsThumbnailHiddenKey: hideThumbnail]
136 |
    :
139 |                     partialResult[entry.key.capitalized] = entry.value
140 |                 }
141 |                 result[UNNotificationAttachmentOptionsThumbnailClippingRectKey] = normalized
    |                        |- error: 'UNNotificationAttachmentOptionsThumbnailClippingRectKey' is only available in macOS 10.14 or newer
    |                        `- note: add 'if #available' version check
142 |             }
143 |
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/MediaAttachmentPayload.swift:145:24: error: 'UNNotificationAttachmentOptionsThumbnailTimeKey' is only available in macOS 10.14 or newer
 92 |     }
 93 |
 94 |     struct PayloadOptions: Decodable, Sendable {
    |            `- note: add @available attribute to enclosing struct
 95 |         private static let cropRequiredFields = ["x", "y", "width", "height"]
 96 |         let crop: [String: Double]?
    :
132 |         }
133 |
134 |         func generateNotificationAttachmentOptions(hideThumbnail: Bool) -> [String: any Sendable] {
    |              `- note: add @available attribute to enclosing instance method
135 |             var result: [String: any Sendable] = [UNNotificationAttachmentOptionsThumbnailHiddenKey: hideThumbnail]
136 |
    :
143 |
144 |             if let time = self.time {
145 |                 result[UNNotificationAttachmentOptionsThumbnailTimeKey] = time
    |                        |- error: 'UNNotificationAttachmentOptionsThumbnailTimeKey' is only available in macOS 10.14 or newer
    |                        `- note: add 'if #available' version check
146 |             }
147 |
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/MediaAttachmentPayload.swift:149:24: error: 'UNNotificationAttachmentOptionsThumbnailHiddenKey' is only available in macOS 10.14 or newer
 92 |     }
 93 |
 94 |     struct PayloadOptions: Decodable, Sendable {
    |            `- note: add @available attribute to enclosing struct
 95 |         private static let cropRequiredFields = ["x", "y", "width", "height"]
 96 |         let crop: [String: Double]?
    :
132 |         }
133 |
134 |         func generateNotificationAttachmentOptions(hideThumbnail: Bool) -> [String: any Sendable] {
    |              `- note: add @available attribute to enclosing instance method
135 |             var result: [String: any Sendable] = [UNNotificationAttachmentOptionsThumbnailHiddenKey: hideThumbnail]
136 |
    :
147 |
148 |             if let hidden = self.hidden {
149 |                 result[UNNotificationAttachmentOptionsThumbnailHiddenKey] = hidden
    |                        |- error: 'UNNotificationAttachmentOptionsThumbnailHiddenKey' is only available in macOS 10.14 or newer
    |                        `- note: add 'if #available' version check
150 |             }
151 |
[91/130] Compiling AirshipNotificationServiceExtension UANotificationServiceExtension.swift
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/UANotificationServiceExtension.swift:16:20: error: 'UNNotificationRequest' is only available in macOS 10.14 or newer
  9 |
 10 | @objc
 11 | open class UANotificationServiceExtension: UNNotificationServiceExtension {
    |            `- note: add @available attribute to enclosing class
 12 |     open var airshipConfig: AirshipExtensionConfig { .init() }
 13 |     private var onExpire: (@Sendable () -> Void)?
 14 |
 15 |     open override func didReceive(
    |                        `- note: add @available attribute to enclosing instance method
 16 |         _ request: UNNotificationRequest,
    |                    `- error: 'UNNotificationRequest' is only available in macOS 10.14 or newer
 17 |         withContentHandler contentHandler: @Sendable @escaping (UNNotificationContent) -> Void
 18 |     ) {
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/UANotificationServiceExtension.swift:17:65: error: 'UNNotificationContent' is only available in macOS 10.14 or newer
  9 |
 10 | @objc
 11 | open class UANotificationServiceExtension: UNNotificationServiceExtension {
    |            `- note: add @available attribute to enclosing class
 12 |     open var airshipConfig: AirshipExtensionConfig { .init() }
 13 |     private var onExpire: (@Sendable () -> Void)?
 14 |
 15 |     open override func didReceive(
    |                        `- note: add @available attribute to enclosing instance method
 16 |         _ request: UNNotificationRequest,
 17 |         withContentHandler contentHandler: @Sendable @escaping (UNNotificationContent) -> Void
    |                                                                 `- error: 'UNNotificationContent' is only available in macOS 10.14 or newer
 18 |     ) {
 19 |
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/UANotificationServiceExtension.swift:11:44: error: 'UNNotificationServiceExtension' is only available in macOS 10.14 or newer
  9 |
 10 | @objc
 11 | open class UANotificationServiceExtension: UNNotificationServiceExtension {
    |            |                               `- error: 'UNNotificationServiceExtension' is only available in macOS 10.14 or newer
    |            `- note: add @available attribute to enclosing class
 12 |     open var airshipConfig: AirshipExtensionConfig { .init() }
 13 |     private var onExpire: (@Sendable () -> Void)?
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/UANotificationServiceExtension.swift:94:38: error: 'UNNotificationContent' is only available in macOS 10.14 or newer
 90 | /// Wraps a content handler so it can only be invoked once, no matter
 91 | /// which path (download task or expiry) finishes the request first.
 92 | private final class OnceContentHandler: @unchecked Sendable {
    |                     `- note: add @available attribute to enclosing class
 93 |     private let lock = NSLock()
 94 |     private var handler: (@Sendable (UNNotificationContent) -> Void)?
    |                                      `- error: 'UNNotificationContent' is only available in macOS 10.14 or newer
 95 |
 96 |     init(_ handler: @Sendable @escaping (UNNotificationContent) -> Void) {
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/UANotificationServiceExtension.swift:96:42: error: 'UNNotificationContent' is only available in macOS 10.14 or newer
 90 | /// Wraps a content handler so it can only be invoked once, no matter
 91 | /// which path (download task or expiry) finishes the request first.
 92 | private final class OnceContentHandler: @unchecked Sendable {
    |                     `- note: add @available attribute to enclosing class
 93 |     private let lock = NSLock()
 94 |     private var handler: (@Sendable (UNNotificationContent) -> Void)?
 95 |
 96 |     init(_ handler: @Sendable @escaping (UNNotificationContent) -> Void) {
    |     |                                    `- error: 'UNNotificationContent' is only available in macOS 10.14 or newer
    |     `- note: add @available attribute to enclosing initializer
 97 |         self.handler = handler
 98 |     }
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/UANotificationServiceExtension.swift:100:36: error: 'UNNotificationContent' is only available in macOS 10.14 or newer
 90 | /// Wraps a content handler so it can only be invoked once, no matter
 91 | /// which path (download task or expiry) finishes the request first.
 92 | private final class OnceContentHandler: @unchecked Sendable {
    |                     `- note: add @available attribute to enclosing class
 93 |     private let lock = NSLock()
 94 |     private var handler: (@Sendable (UNNotificationContent) -> Void)?
    :
 98 |     }
 99 |
100 |     func callAsFunction(_ content: UNNotificationContent) {
    |          |                         `- error: 'UNNotificationContent' is only available in macOS 10.14 or newer
    |          `- note: add @available attribute to enclosing instance method
101 |         lock.lock()
102 |         let handler = self.handler
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/UANotificationServiceExtension.swift:109:11: error: 'UNNotificationRequest' is only available in macOS 10.14 or newer
107 | }
108 |
109 | extension UNNotificationRequest {
    | |         `- error: 'UNNotificationRequest' is only available in macOS 10.14 or newer
    | `- note: add @available attribute to enclosing extension
110 |     fileprivate static let airshipMediaAttachment = "com.urbanairship.media_attachment"
111 |
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/UANotificationServiceExtension.swift:30:28: error: 'Task' is only available in macOS 10.15 or newer
  9 |
 10 | @objc
 11 | open class UANotificationServiceExtension: UNNotificationServiceExtension {
    |            `- note: add @available attribute to enclosing class
 12 |     open var airshipConfig: AirshipExtensionConfig { .init() }
 13 |     private var onExpire: (@Sendable () -> Void)?
 14 |
 15 |     open override func didReceive(
    |                        `- note: add @available attribute to enclosing instance method
 16 |         _ request: UNNotificationRequest,
 17 |         withContentHandler contentHandler: @Sendable @escaping (UNNotificationContent) -> Void
    :
 28 |         let finish = OnceContentHandler(contentHandler)
 29 |
 30 |         let downloadTask = Task { @MainActor in
    |                            |- error: 'Task' is only available in macOS 10.15 or newer
    |                            `- note: add 'if #available' version check
 31 |             logger.debug(
 32 |                 "New request received: \(request)"
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/UANotificationServiceExtension.swift:30:28: error: 'init(priority:operation:)' is only available in macOS 10.15 or newer
  9 |
 10 | @objc
 11 | open class UANotificationServiceExtension: UNNotificationServiceExtension {
    |            `- note: add @available attribute to enclosing class
 12 |     open var airshipConfig: AirshipExtensionConfig { .init() }
 13 |     private var onExpire: (@Sendable () -> Void)?
 14 |
 15 |     open override func didReceive(
    |                        `- note: add @available attribute to enclosing instance method
 16 |         _ request: UNNotificationRequest,
 17 |         withContentHandler contentHandler: @Sendable @escaping (UNNotificationContent) -> Void
    :
 28 |         let finish = OnceContentHandler(contentHandler)
 29 |
 30 |         let downloadTask = Task { @MainActor in
    |                            |- error: 'init(priority:operation:)' is only available in macOS 10.15 or newer
    |                            `- note: add 'if #available' version check
 31 |             logger.debug(
 32 |                 "New request received: \(request)"
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/UANotificationServiceExtension.swift:35:74: error: 'UNMutableNotificationContent' is only available in macOS 10.14 or newer
  9 |
 10 | @objc
 11 | open class UANotificationServiceExtension: UNNotificationServiceExtension {
    |            `- note: add @available attribute to enclosing class
 12 |     open var airshipConfig: AirshipExtensionConfig { .init() }
 13 |     private var onExpire: (@Sendable () -> Void)?
 14 |
 15 |     open override func didReceive(
    |                        `- note: add @available attribute to enclosing instance method
 16 |         _ request: UNNotificationRequest,
 17 |         withContentHandler contentHandler: @Sendable @escaping (UNNotificationContent) -> Void
    :
 33 |             )
 34 |
 35 |             guard let mutableContent = request.content.mutableCopy() as? UNMutableNotificationContent else {
    |                                                                          |- error: 'UNMutableNotificationContent' is only available in macOS 10.14 or newer
    |                                                                          `- note: add 'if #available' version check
 36 |                 logger.error(
 37 |                     "Unable to make mutable copy of request"
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/UANotificationServiceExtension.swift:39:21: error: 'Task' is only available in macOS 10.15 or newer
  9 |
 10 | @objc
 11 | open class UANotificationServiceExtension: UNNotificationServiceExtension {
    |            `- note: add @available attribute to enclosing class
 12 |     open var airshipConfig: AirshipExtensionConfig { .init() }
 13 |     private var onExpire: (@Sendable () -> Void)?
 14 |
 15 |     open override func didReceive(
    |                        `- note: add @available attribute to enclosing instance method
 16 |         _ request: UNNotificationRequest,
 17 |         withContentHandler contentHandler: @Sendable @escaping (UNNotificationContent) -> Void
    :
 37 |                     "Unable to make mutable copy of request"
 38 |                 )
 39 |                 try Task.checkCancellation()
    |                     |- error: 'Task' is only available in macOS 10.15 or newer
    |                     `- note: add 'if #available' version check
 40 |                 finish(request.content)
 41 |                 return
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/UANotificationServiceExtension.swift:39:26: error: 'checkCancellation()' is only available in macOS 10.15 or newer
  9 |
 10 | @objc
 11 | open class UANotificationServiceExtension: UNNotificationServiceExtension {
    |            `- note: add @available attribute to enclosing class
 12 |     open var airshipConfig: AirshipExtensionConfig { .init() }
 13 |     private var onExpire: (@Sendable () -> Void)?
 14 |
 15 |     open override func didReceive(
    |                        `- note: add @available attribute to enclosing instance method
 16 |         _ request: UNNotificationRequest,
 17 |         withContentHandler contentHandler: @Sendable @escaping (UNNotificationContent) -> Void
    :
 37 |                     "Unable to make mutable copy of request"
 38 |                 )
 39 |                 try Task.checkCancellation()
    |                          |- error: 'checkCancellation()' is only available in macOS 10.15 or newer
    |                          `- note: add 'if #available' version check
 40 |                 finish(request.content)
 41 |                 return
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/UANotificationServiceExtension.swift:50:25: error: 'Task' is only available in macOS 10.15 or newer
  9 |
 10 | @objc
 11 | open class UANotificationServiceExtension: UNNotificationServiceExtension {
    |            `- note: add @available attribute to enclosing class
 12 |     open var airshipConfig: AirshipExtensionConfig { .init() }
 13 |     private var onExpire: (@Sendable () -> Void)?
 14 |
 15 |     open override func didReceive(
    |                        `- note: add @available attribute to enclosing instance method
 16 |         _ request: UNNotificationRequest,
 17 |         withContentHandler contentHandler: @Sendable @escaping (UNNotificationContent) -> Void
    :
 48 |                         "Finishing request, no Airship args: \(request.identifier)"
 49 |                     )
 50 |                     try Task.checkCancellation()
    |                         |- error: 'Task' is only available in macOS 10.15 or newer
    |                         `- note: add 'if #available' version check
 51 |                     finish(request.content)
 52 |                     return
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/UANotificationServiceExtension.swift:50:30: error: 'checkCancellation()' is only available in macOS 10.15 or newer
  9 |
 10 | @objc
 11 | open class UANotificationServiceExtension: UNNotificationServiceExtension {
    |            `- note: add @available attribute to enclosing class
 12 |     open var airshipConfig: AirshipExtensionConfig { .init() }
 13 |     private var onExpire: (@Sendable () -> Void)?
 14 |
 15 |     open override func didReceive(
    |                        `- note: add @available attribute to enclosing instance method
 16 |         _ request: UNNotificationRequest,
 17 |         withContentHandler contentHandler: @Sendable @escaping (UNNotificationContent) -> Void
    :
 48 |                         "Finishing request, no Airship args: \(request.identifier)"
 49 |                     )
 50 |                     try Task.checkCancellation()
    |                              |- error: 'checkCancellation()' is only available in macOS 10.15 or newer
    |                              `- note: add 'if #available' version check
 51 |                     finish(request.content)
 52 |                     return
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/UANotificationServiceExtension.swift:68:17: error: 'Task' is only available in macOS 10.15 or newer
  9 |
 10 | @objc
 11 | open class UANotificationServiceExtension: UNNotificationServiceExtension {
    |            `- note: add @available attribute to enclosing class
 12 |     open var airshipConfig: AirshipExtensionConfig { .init() }
 13 |     private var onExpire: (@Sendable () -> Void)?
 14 |
 15 |     open override func didReceive(
    |                        `- note: add @available attribute to enclosing instance method
 16 |         _ request: UNNotificationRequest,
 17 |         withContentHandler contentHandler: @Sendable @escaping (UNNotificationContent) -> Void
    :
 66 |             }
 67 |
 68 |             try Task.checkCancellation()
    |                 |- error: 'Task' is only available in macOS 10.15 or newer
    |                 `- note: add 'if #available' version check
 69 |
 70 |             logger.info(
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/UANotificationServiceExtension.swift:68:22: error: 'checkCancellation()' is only available in macOS 10.15 or newer
  9 |
 10 | @objc
 11 | open class UANotificationServiceExtension: UNNotificationServiceExtension {
    |            `- note: add @available attribute to enclosing class
 12 |     open var airshipConfig: AirshipExtensionConfig { .init() }
 13 |     private var onExpire: (@Sendable () -> Void)?
 14 |
 15 |     open override func didReceive(
    |                        `- note: add @available attribute to enclosing instance method
 16 |         _ request: UNNotificationRequest,
 17 |         withContentHandler contentHandler: @Sendable @escaping (UNNotificationContent) -> Void
    :
 66 |             }
 67 |
 68 |             try Task.checkCancellation()
    |                      |- error: 'checkCancellation()' is only available in macOS 10.15 or newer
    |                      `- note: add 'if #available' version check
 69 |
 70 |             logger.info(
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/UANotificationServiceExtension.swift:80:26: error: 'cancel()' is only available in macOS 10.15 or newer
  9 |
 10 | @objc
 11 | open class UANotificationServiceExtension: UNNotificationServiceExtension {
    |            `- note: add @available attribute to enclosing class
 12 |     open var airshipConfig: AirshipExtensionConfig { .init() }
 13 |     private var onExpire: (@Sendable () -> Void)?
 14 |
 15 |     open override func didReceive(
    |                        `- note: add @available attribute to enclosing instance method
 16 |         _ request: UNNotificationRequest,
 17 |         withContentHandler contentHandler: @Sendable @escaping (UNNotificationContent) -> Void
    :
 78 |                 "serviceExtensionTimeWillExpire expiring, canceling airshipTask"
 79 |             )
 80 |             downloadTask.cancel()
    |                          |- error: 'cancel()' is only available in macOS 10.15 or newer
    |                          `- note: add 'if #available' version check
 81 |             finish(request.content)
 82 |         }
[92/130] Compiling AirshipNotificationServiceExtension AirshipExtensionLogger.swift
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipExtensionLogger.swift:200:32: error: 'Logger' is only available in macOS 11.0 or newer
190 |
191 |
192 | public final class DefaultAirshipExtensionLogHandler: AirshipExtensionLogHandler {
    |                    `- note: add @available attribute to enclosing class
193 |
194 |     private let logPublic: Bool
    :
198 |     }
199 |
200 |     private static let logger: Logger = Logger(
    |                        |       `- error: 'Logger' is only available in macOS 11.0 or newer
    |                        `- note: add @available attribute to enclosing static property
201 |         subsystem: Bundle.main.bundleIdentifier ?? "",
202 |         category: "AirshipNotificationExtension"
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipExtensionLogger.swift:200:41: error: 'Logger' is only available in macOS 11.0 or newer
190 |
191 |
192 | public final class DefaultAirshipExtensionLogHandler: AirshipExtensionLogHandler {
    |                    `- note: add @available attribute to enclosing class
193 |
194 |     private let logPublic: Bool
    :
198 |     }
199 |
200 |     private static let logger: Logger = Logger(
    |                        |                `- error: 'Logger' is only available in macOS 11.0 or newer
    |                        `- note: add @available attribute to enclosing static property
201 |         subsystem: Bundle.main.bundleIdentifier ?? "",
202 |         category: "AirshipNotificationExtension"
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipExtensionLogger.swift:215:17: error: 'OSLogMessage' is only available in macOS 11.0 or newer
190 |
191 |
192 | public final class DefaultAirshipExtensionLogHandler: AirshipExtensionLogHandler {
    |                    `- note: add @available attribute to enclosing class
193 |
194 |     private let logPublic: Bool
    :
203 |     )
204 |
205 |     public func log(
    |                 `- note: add @available attribute to enclosing instance method
206 |         logLevel: AirshipExtensionLogLevel,
207 |         message: String,
    :
213 |         if (logPublic) {
214 |             Self.logger.notice(
215 |                 "\(logMessage, privacy: .public)"
    |                 |- error: 'OSLogMessage' is only available in macOS 11.0 or newer
    |                 `- note: add 'if #available' version check
216 |             )
217 |         } else {
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipExtensionLogger.swift:215:19: error: 'appendInterpolation(_:align:privacy:)' is only available in macOS 11.0 or newer
190 |
191 |
192 | public final class DefaultAirshipExtensionLogHandler: AirshipExtensionLogHandler {
    |                    `- note: add @available attribute to enclosing class
193 |
194 |     private let logPublic: Bool
    :
203 |     )
204 |
205 |     public func log(
    |                 `- note: add @available attribute to enclosing instance method
206 |         logLevel: AirshipExtensionLogLevel,
207 |         message: String,
    :
213 |         if (logPublic) {
214 |             Self.logger.notice(
215 |                 "\(logMessage, privacy: .public)"
    |                   |- error: 'appendInterpolation(_:align:privacy:)' is only available in macOS 11.0 or newer
    |                   `- note: add 'if #available' version check
216 |             )
217 |         } else {
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipExtensionLogger.swift:220:17: error: 'OSLogMessage' is only available in macOS 11.0 or newer
190 |
191 |
192 | public final class DefaultAirshipExtensionLogHandler: AirshipExtensionLogHandler {
    |                    `- note: add @available attribute to enclosing class
193 |
194 |     private let logPublic: Bool
    :
203 |     )
204 |
205 |     public func log(
    |                 `- note: add @available attribute to enclosing instance method
206 |         logLevel: AirshipExtensionLogLevel,
207 |         message: String,
    :
218 |             Self.logger.log(
219 |                 level: logLevel.logType,
220 |                 "\(logMessage, privacy: .private)"
    |                 |- error: 'OSLogMessage' is only available in macOS 11.0 or newer
    |                 `- note: add 'if #available' version check
221 |             )
222 |         }
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipExtensionLogger.swift:220:19: error: 'appendInterpolation(_:align:privacy:)' is only available in macOS 11.0 or newer
190 |
191 |
192 | public final class DefaultAirshipExtensionLogHandler: AirshipExtensionLogHandler {
    |                    `- note: add @available attribute to enclosing class
193 |
194 |     private let logPublic: Bool
    :
203 |     )
204 |
205 |     public func log(
    |                 `- note: add @available attribute to enclosing instance method
206 |         logLevel: AirshipExtensionLogLevel,
207 |         message: String,
    :
218 |             Self.logger.log(
219 |                 level: logLevel.logType,
220 |                 "\(logMessage, privacy: .private)"
    |                   |- error: 'appendInterpolation(_:align:privacy:)' is only available in macOS 11.0 or newer
    |                   `- note: add 'if #available' version check
221 |             )
222 |         }
[93/130] Compiling AirshipNotificationServiceExtension AirshipNotificationMutationProvider.swift
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipNotificationMutationProvider.swift:210:40: error: 'UNMutableNotificationContent' is only available in macOS 10.14 or newer
202 | }
203 |
204 | struct AirshipNotificationMutations: Sendable {
    |        `- note: add @available attribute to enclosing struct
205 |     var title: String?
206 |     var subtitle: String?
    :
208 |     var attachments: [AirshipAttachment]
209 |
210 |     func apply(to notificationContent: UNMutableNotificationContent) throws {
    |          |                             `- error: 'UNMutableNotificationContent' is only available in macOS 10.14 or newer
    |          `- note: add @available attribute to enclosing instance method
211 |         // Text overrides land first: a rejected attachment must never cost the
212 |         // notification its title/subtitle/body.
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipNotificationMutationProvider.swift:243:33: error: 'UNNotificationAttachment' is only available in macOS 10.14 or newer
236 |
237 |
238 | struct AirshipAttachment: Sendable {
    |        `- note: add @available attribute to enclosing struct
239 |     var identifier: String
240 |     var url: URL
241 |     var options: [String : any Sendable]
242 |
243 |     var notificationAttachment: UNNotificationAttachment {
    |         |                       `- error: 'UNNotificationAttachment' is only available in macOS 10.14 or newer
    |         `- note: add @available attribute to enclosing property
244 |         get throws {
245 |             try UNNotificationAttachment(
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipNotificationMutationProvider.swift:18:13: error: 'Task' is only available in macOS 10.15 or newer
  6 | #if !os(tvOS)
  7 |
  8 | final class AirshipNotificationMutationProvider: Sendable {
    |             `- note: add @available attribute to enclosing class
  9 |
 10 |     static let supportedExtensions = ["jpg", "jpeg", "png", "gif", "aif", "aiff", "mp3", "mpg", "mpeg", "mp4", "m4a", "wav", "avi"]
    :
 15 |     }
 16 |
 17 |     func mutations(for args: MediaAttachmentPayload) async throws -> AirshipNotificationMutations? {
    |          `- note: add @available attribute to enclosing instance method
 18 |         try Task.checkCancellation()
    |             |- error: 'Task' is only available in macOS 10.15 or newer
    |             `- note: add 'if #available' version check
 19 |
 20 |         // Each task swallows its own failure so one bad/expired media URL doesn't
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipNotificationMutationProvider.swift:18:18: error: 'checkCancellation()' is only available in macOS 10.15 or newer
  6 | #if !os(tvOS)
  7 |
  8 | final class AirshipNotificationMutationProvider: Sendable {
    |             `- note: add @available attribute to enclosing class
  9 |
 10 |     static let supportedExtensions = ["jpg", "jpeg", "png", "gif", "aif", "aiff", "mp3", "mpg", "mpeg", "mp4", "m4a", "wav", "avi"]
    :
 15 |     }
 16 |
 17 |     func mutations(for args: MediaAttachmentPayload) async throws -> AirshipNotificationMutations? {
    |          `- note: add @available attribute to enclosing instance method
 18 |         try Task.checkCancellation()
    |                  |- error: 'checkCancellation()' is only available in macOS 10.15 or newer
    |                  `- note: add 'if #available' version check
 19 |
 20 |         // Each task swallows its own failure so one bad/expired media URL doesn't
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipNotificationMutationProvider.swift:22:33: error: 'withTaskGroup(of:returning:isolation:body:)' is only available in macOS 10.15 or newer
  6 | #if !os(tvOS)
  7 |
  8 | final class AirshipNotificationMutationProvider: Sendable {
    |             `- note: add @available attribute to enclosing class
  9 |
 10 |     static let supportedExtensions = ["jpg", "jpeg", "png", "gif", "aif", "aiff", "mp3", "mpg", "mpeg", "mp4", "m4a", "wav", "avi"]
    :
 15 |     }
 16 |
 17 |     func mutations(for args: MediaAttachmentPayload) async throws -> AirshipNotificationMutations? {
    |          `- note: add @available attribute to enclosing instance method
 18 |         try Task.checkCancellation()
 19 |
 20 |         // Each task swallows its own failure so one bad/expired media URL doesn't
 21 |         // discard the title/subtitle/body overrides for the whole notification.
 22 |         let attachments = await withTaskGroup(of: AirshipAttachment?.self) { [weak self, args, logger] group in
    |                                 |- error: 'withTaskGroup(of:returning:isolation:body:)' is only available in macOS 10.15 or newer
    |                                 `- note: add 'if #available' version check
 23 |             var attachments: [AirshipAttachment] = []
 24 |
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipNotificationMutationProvider.swift:28:29: error: 'Task' is only available in macOS 10.15 or newer
  6 | #if !os(tvOS)
  7 |
  8 | final class AirshipNotificationMutationProvider: Sendable {
    |             `- note: add @available attribute to enclosing class
  9 |
 10 |     static let supportedExtensions = ["jpg", "jpeg", "png", "gif", "aif", "aiff", "mp3", "mpg", "mpeg", "mp4", "m4a", "wav", "avi"]
    :
 15 |     }
 16 |
 17 |     func mutations(for args: MediaAttachmentPayload) async throws -> AirshipNotificationMutations? {
    |          `- note: add @available attribute to enclosing instance method
 18 |         try Task.checkCancellation()
 19 |
    :
 26 |                 group.addTask { [weak self] in
 27 |                     do {
 28 |                         try Task.checkCancellation()
    |                             |- error: 'Task' is only available in macOS 10.15 or newer
    |                             `- note: add 'if #available' version check
 29 |                         return try await self?.load(
 30 |                             attachment: media,
<unknown>:0: error: 'makeAsyncIterator()' is only available in macOS 10.15 or newer
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipNotificationMutationProvider.swift:28:34: error: 'checkCancellation()' is only available in macOS 10.15 or newer
  6 | #if !os(tvOS)
  7 |
  8 | final class AirshipNotificationMutationProvider: Sendable {
    |             `- note: add @available attribute to enclosing class
  9 |
 10 |     static let supportedExtensions = ["jpg", "jpeg", "png", "gif", "aif", "aiff", "mp3", "mpg", "mpeg", "mp4", "m4a", "wav", "avi"]
    :
 15 |     }
 16 |
 17 |     func mutations(for args: MediaAttachmentPayload) async throws -> AirshipNotificationMutations? {
    |          `- note: add @available attribute to enclosing instance method
 18 |         try Task.checkCancellation()
 19 |
    :
 26 |                 group.addTask { [weak self] in
 27 |                     do {
 28 |                         try Task.checkCancellation()
    |                                  |- error: 'checkCancellation()' is only available in macOS 10.15 or newer
    |                                  `- note: add 'if #available' version check
 29 |                         return try await self?.load(
 30 |                             attachment: media,
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipNotificationMutationProvider.swift:22:47: error: 'isolation()' is only available in macOS 10.15 or newer
`- /Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipNotificationMutationProvider.swift:22:46: note: expanded code originates here
  6 | #if !os(tvOS)
  7 |
  8 | final class AirshipNotificationMutationProvider: Sendable {
    |             `- note: add @available attribute to enclosing class
  9 |
 10 |     static let supportedExtensions = ["jpg", "jpeg", "png", "gif", "aif", "aiff", "mp3", "mpg", "mpeg", "mp4", "m4a", "wav", "avi"]
    :
 15 |     }
 16 |
 17 |     func mutations(for args: MediaAttachmentPayload) async throws -> AirshipNotificationMutations? {
    |          `- note: add @available attribute to enclosing instance method
 18 |         try Task.checkCancellation()
 19 |
 20 |         // Each task swallows its own failure so one bad/expired media URL doesn't
 21 |         // discard the title/subtitle/body overrides for the whole notification.
 22 |         let attachments = await withTaskGroup(of: AirshipAttachment?.self) { [weak self, args, logger] group in
    +--- /Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipNotificationMutationProvider.swift
    |20 |
    |21 |
    |22 |                                              #isolation
    |   |                                               `- error: 'isolation()' is only available in macOS 10.15 or newer
    +------------------------------------------------------------------------------------------------------------------------------------------------------
 23 |             var attachments: [AirshipAttachment] = []
 24 |
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipNotificationMutationProvider.swift:64:13: error: 'Task' is only available in macOS 10.15 or newer
  6 | #if !os(tvOS)
  7 |
  8 | final class AirshipNotificationMutationProvider: Sendable {
    |             `- note: add @available attribute to enclosing class
  9 |
 10 |     static let supportedExtensions = ["jpg", "jpeg", "png", "gif", "aif", "aiff", "mp3", "mpg", "mpeg", "mp4", "m4a", "wav", "avi"]
    :
 56 |     }
 57 |
 58 |     private func load(
    |                  `- note: add @available attribute to enclosing instance method
 59 |         attachment: MediaAttachmentPayload.ContentMedia,
 60 |         defaultOptions: MediaAttachmentPayload.PayloadOptions,
    :
 62 |     ) async throws -> AirshipAttachment {
 63 |
 64 |         try Task.checkCancellation()
    |             |- error: 'Task' is only available in macOS 10.15 or newer
    |             `- note: add 'if #available' version check
 65 |
 66 |         logger.debug("Downloading attachment \(attachment.url)")
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipNotificationMutationProvider.swift:64:18: error: 'checkCancellation()' is only available in macOS 10.15 or newer
  6 | #if !os(tvOS)
  7 |
  8 | final class AirshipNotificationMutationProvider: Sendable {
    |             `- note: add @available attribute to enclosing class
  9 |
 10 |     static let supportedExtensions = ["jpg", "jpeg", "png", "gif", "aif", "aiff", "mp3", "mpg", "mpeg", "mp4", "m4a", "wav", "avi"]
    :
 56 |     }
 57 |
 58 |     private func load(
    |                  `- note: add @available attribute to enclosing instance method
 59 |         attachment: MediaAttachmentPayload.ContentMedia,
 60 |         defaultOptions: MediaAttachmentPayload.PayloadOptions,
    :
 62 |     ) async throws -> AirshipAttachment {
 63 |
 64 |         try Task.checkCancellation()
    |                  |- error: 'checkCancellation()' is only available in macOS 10.15 or newer
    |                  `- note: add 'if #available' version check
 65 |
 66 |         logger.debug("Downloading attachment \(attachment.url)")
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipNotificationMutationProvider.swift:72:13: error: 'Task' is only available in macOS 10.15 or newer
  6 | #if !os(tvOS)
  7 |
  8 | final class AirshipNotificationMutationProvider: Sendable {
    |             `- note: add @available attribute to enclosing class
  9 |
 10 |     static let supportedExtensions = ["jpg", "jpeg", "png", "gif", "aif", "aiff", "mp3", "mpg", "mpeg", "mp4", "m4a", "wav", "avi"]
    :
 56 |     }
 57 |
 58 |     private func load(
    |                  `- note: add @available attribute to enclosing instance method
 59 |         attachment: MediaAttachmentPayload.ContentMedia,
 60 |         defaultOptions: MediaAttachmentPayload.PayloadOptions,
    :
 70 |         logger.debug("Downloading attachment result: \(response)")
 71 |
 72 |         try Task.checkCancellation()
    |             |- error: 'Task' is only available in macOS 10.15 or newer
    |             `- note: add 'if #available' version check
 73 |
 74 |         if let httpResponse = response as? HTTPURLResponse, !(200...299).contains(httpResponse.statusCode) {
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipNotificationMutationProvider.swift:72:18: error: 'checkCancellation()' is only available in macOS 10.15 or newer
  6 | #if !os(tvOS)
  7 |
  8 | final class AirshipNotificationMutationProvider: Sendable {
    |             `- note: add @available attribute to enclosing class
  9 |
 10 |     static let supportedExtensions = ["jpg", "jpeg", "png", "gif", "aif", "aiff", "mp3", "mpg", "mpeg", "mp4", "m4a", "wav", "avi"]
    :
 56 |     }
 57 |
 58 |     private func load(
    |                  `- note: add @available attribute to enclosing instance method
 59 |         attachment: MediaAttachmentPayload.ContentMedia,
 60 |         defaultOptions: MediaAttachmentPayload.PayloadOptions,
    :
 70 |         logger.debug("Downloading attachment result: \(response)")
 71 |
 72 |         try Task.checkCancellation()
    |                  |- error: 'checkCancellation()' is only available in macOS 10.15 or newer
    |                  `- note: add 'if #available' version check
 73 |
 74 |         if let httpResponse = response as? HTTPURLResponse, !(200...299).contains(httpResponse.statusCode) {
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipNotificationMutationProvider.swift:111:28: error: 'UNNotificationAttachmentOptionsTypeHintKey' is only available in macOS 10.14 or newer
  6 | #if !os(tvOS)
  7 |
  8 | final class AirshipNotificationMutationProvider: Sendable {
    |             `- note: add @available attribute to enclosing class
  9 |
 10 |     static let supportedExtensions = ["jpg", "jpeg", "png", "gif", "aif", "aiff", "mp3", "mpg", "mpeg", "mp4", "m4a", "wav", "avi"]
    :
 93 |     }
 94 |
 95 |     private func makeAttachement(
    |                  `- note: add @available attribute to enclosing instance method
 96 |         localURL: URL,
 97 |         remoteURL: URL,
    :
109 |
110 |         if !hasExtension, let hint = hintMimeType(for: fileURL, mimeType: mimeType) {
111 |             mutableOptions[UNNotificationAttachmentOptionsTypeHintKey] = hint
    |                            |- error: 'UNNotificationAttachmentOptionsTypeHintKey' is only available in macOS 10.14 or newer
    |                            `- note: add 'if #available' version check
112 |         }
113 |
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipNotificationMutationProvider.swift:120:23: error: 'UTType' is only available in macOS 11.0 or newer
  6 | #if !os(tvOS)
  7 |
  8 | final class AirshipNotificationMutationProvider: Sendable {
    |             `- note: add @available attribute to enclosing class
  9 |
 10 |     static let supportedExtensions = ["jpg", "jpeg", "png", "gif", "aif", "aiff", "mp3", "mpg", "mpeg", "mp4", "m4a", "wav", "avi"]
    :
115 |     }
116 |
117 |     private func hintMimeType(for file: URL, mimeType: String?) -> String? {
    |                  `- note: add @available attribute to enclosing instance method
118 |         if
119 |             let type = mimeType,
120 |             let uti = UTType(mimeType: type),
    |                       |- error: 'UTType' is only available in macOS 11.0 or newer
    |                       `- note: add 'if #available' version check
121 |             let fileExtension = uti.preferredFilenameExtension,
122 |             Self.supportedExtensions.contains(fileExtension) {
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipNotificationMutationProvider.swift:120:23: error: 'init(mimeType:conformingTo:)' is only available in macOS 11.0 or newer
  6 | #if !os(tvOS)
  7 |
  8 | final class AirshipNotificationMutationProvider: Sendable {
    |             `- note: add @available attribute to enclosing class
  9 |
 10 |     static let supportedExtensions = ["jpg", "jpeg", "png", "gif", "aif", "aiff", "mp3", "mpg", "mpeg", "mp4", "m4a", "wav", "avi"]
    :
115 |     }
116 |
117 |     private func hintMimeType(for file: URL, mimeType: String?) -> String? {
    |                  `- note: add @available attribute to enclosing instance method
118 |         if
119 |             let type = mimeType,
120 |             let uti = UTType(mimeType: type),
    |                       |- error: 'init(mimeType:conformingTo:)' is only available in macOS 11.0 or newer
    |                       `- note: add 'if #available' version check
121 |             let fileExtension = uti.preferredFilenameExtension,
122 |             Self.supportedExtensions.contains(fileExtension) {
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipNotificationMutationProvider.swift:121:37: error: 'preferredFilenameExtension' is only available in macOS 11.0 or newer
  6 | #if !os(tvOS)
  7 |
  8 | final class AirshipNotificationMutationProvider: Sendable {
    |             `- note: add @available attribute to enclosing class
  9 |
 10 |     static let supportedExtensions = ["jpg", "jpeg", "png", "gif", "aif", "aiff", "mp3", "mpg", "mpeg", "mp4", "m4a", "wav", "avi"]
    :
115 |     }
116 |
117 |     private func hintMimeType(for file: URL, mimeType: String?) -> String? {
    |                  `- note: add @available attribute to enclosing instance method
118 |         if
119 |             let type = mimeType,
120 |             let uti = UTType(mimeType: type),
121 |             let fileExtension = uti.preferredFilenameExtension,
    |                                     |- error: 'preferredFilenameExtension' is only available in macOS 11.0 or newer
    |                                     `- note: add 'if #available' version check
122 |             Self.supportedExtensions.contains(fileExtension) {
123 |             return uti.identifier
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipNotificationMutationProvider.swift:123:24: error: 'identifier' is only available in macOS 11.0 or newer
  6 | #if !os(tvOS)
  7 |
  8 | final class AirshipNotificationMutationProvider: Sendable {
    |             `- note: add @available attribute to enclosing class
  9 |
 10 |     static let supportedExtensions = ["jpg", "jpeg", "png", "gif", "aif", "aiff", "mp3", "mpg", "mpeg", "mp4", "m4a", "wav", "avi"]
    :
115 |     }
116 |
117 |     private func hintMimeType(for file: URL, mimeType: String?) -> String? {
    |                  `- note: add @available attribute to enclosing instance method
118 |         if
119 |             let type = mimeType,
    :
121 |             let fileExtension = uti.preferredFilenameExtension,
122 |             Self.supportedExtensions.contains(fileExtension) {
123 |             return uti.identifier
    |                        |- error: 'identifier' is only available in macOS 11.0 or newer
    |                        `- note: add 'if #available' version check
124 |         }
125 |
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipNotificationMutationProvider.swift:152:34: error: 'download(from:delegate:)' is only available in macOS 12.0 or newer
  6 | #if !os(tvOS)
  7 |
  8 | final class AirshipNotificationMutationProvider: Sendable {
    |             `- note: add @available attribute to enclosing class
  9 |
 10 |     static let supportedExtensions = ["jpg", "jpeg", "png", "gif", "aif", "aiff", "mp3", "mpg", "mpeg", "mp4", "m4a", "wav", "avi"]
    :
142 |     }
143 |
144 |     private func download(url: URL) async throws -> (URL, URLResponse) {
    |                  `- note: add @available attribute to enclosing instance method
145 |         let session = URLSession(
146 |             configuration: .default,
    :
150 |         defer { session.finishTasksAndInvalidate() }
151 |
152 |         return try await session.download(from: url)
    |                                  |- error: 'download(from:delegate:)' is only available in macOS 12.0 or newer
    |                                  `- note: add 'if #available' version check
153 |     }
154 |
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipNotificationMutationProvider.swift:245:17: error: 'UNNotificationAttachment' is only available in macOS 10.14 or newer
236 |
237 |
238 | struct AirshipAttachment: Sendable {
    |        `- note: add @available attribute to enclosing struct
239 |     var identifier: String
240 |     var url: URL
241 |     var options: [String : any Sendable]
242 |
243 |     var notificationAttachment: UNNotificationAttachment {
    |         `- note: add @available attribute to enclosing property
244 |         get throws {
245 |             try UNNotificationAttachment(
    |                 |- error: 'UNNotificationAttachment' is only available in macOS 10.14 or newer
    |                 `- note: add 'if #available' version check
246 |                 identifier: self.identifier,
247 |                 url: self.url,
warning: 'spi-builder-workspace': Invalid Exclude '/Users/admin/builder/spi-builder-workspace/Airship/AirshipFoundationModels/Tests': File not found.
warning: 'spi-builder-workspace': found 1 file(s) which are unhandled; explicitly declare them as resources or exclude from the target
    /Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/airship.jpg
warning: 'spi-builder-workspace': found 14 file(s) which are unhandled; explicitly declare them as resources or exclude from the target
    /Users/admin/builder/spi-builder-workspace/Airship/AirshipBasement/Tests/Utils/AishipFontTests.swift
    /Users/admin/builder/spi-builder-workspace/Airship/AirshipBasement/Tests/Json/Predicate/AirshipIvyVersionMatcherTest.swift
    /Users/admin/builder/spi-builder-workspace/Airship/AirshipBasement/Tests/App State/AppStateTrackerTest.swift
    /Users/admin/builder/spi-builder-workspace/Airship/AirshipBasement/Tests/Utils/AirshipDate.swift
    /Users/admin/builder/spi-builder-workspace/Airship/AirshipBasement/Tests/Utils/AirshipColorTests.swift
    /Users/admin/builder/spi-builder-workspace/Airship/AirshipBasement/Tests/Utils/AirshipObservableTimerTest.swift
    /Users/admin/builder/spi-builder-workspace/Airship/AirshipBasement/Tests/Json/AirshipJSONTest.swift
    /Users/admin/builder/spi-builder-workspace/Airship/AirshipBasement/Tests/UI/AirshipImageDataTest.swift
    /Users/admin/builder/spi-builder-workspace/Airship/AirshipBasement/Tests/Utils/AirshipDateFormatterTest.swift
    /Users/admin/builder/spi-builder-workspace/Airship/AirshipBasement/Tests/Json/Predicate/JsonMatcherTest.swift
    /Users/admin/builder/spi-builder-workspace/Airship/AirshipBasement/Tests/Utils/DefaultTaskSleeperTest.swift
    /Users/admin/builder/spi-builder-workspace/Airship/AirshipBasement/Tests/Json/Predicate/JsonValueMatcherTest.swift
    /Users/admin/builder/spi-builder-workspace/Airship/AirshipBasement/Tests/Json/Predicate/JSONPredicateTest.swift
    /Users/admin/builder/spi-builder-workspace/Airship/AirshipBasement/Tests/Utils/AirshipVersionUtilsTest.swift
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64
[0/1] Planning build
Building for debugging...
[0/1] Write swift-version-2F0A5646E1D333AE.txt
error: emit-module command failed with exit code 1 (use -v to see invocation)
[2/45] Compiling AirshipNotificationServiceExtension AirshipExtensionConfig.swift
[3/45] Compiling AirshipNotificationServiceExtension ChallengeResolver.swift
[4/45] Emitting module AirshipNotificationServiceExtension
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipExtensionLogger.swift:200:32: error: 'Logger' is only available in macOS 11.0 or newer
190 |
191 |
192 | public final class DefaultAirshipExtensionLogHandler: AirshipExtensionLogHandler {
    |                    `- note: add @available attribute to enclosing class
193 |
194 |     private let logPublic: Bool
    :
198 |     }
199 |
200 |     private static let logger: Logger = Logger(
    |                        |       `- error: 'Logger' is only available in macOS 11.0 or newer
    |                        `- note: add @available attribute to enclosing static property
201 |         subsystem: Bundle.main.bundleIdentifier ?? "",
202 |         category: "AirshipNotificationExtension"
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipExtensionLogger.swift:200:41: error: 'Logger' is only available in macOS 11.0 or newer
190 |
191 |
192 | public final class DefaultAirshipExtensionLogHandler: AirshipExtensionLogHandler {
    |                    `- note: add @available attribute to enclosing class
193 |
194 |     private let logPublic: Bool
    :
198 |     }
199 |
200 |     private static let logger: Logger = Logger(
    |                        |                `- error: 'Logger' is only available in macOS 11.0 or newer
    |                        `- note: add @available attribute to enclosing static property
201 |         subsystem: Bundle.main.bundleIdentifier ?? "",
202 |         category: "AirshipNotificationExtension"
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipNotificationMutationProvider.swift:210:40: error: 'UNMutableNotificationContent' is only available in macOS 10.14 or newer
202 | }
203 |
204 | struct AirshipNotificationMutations: Sendable {
    |        `- note: add @available attribute to enclosing struct
205 |     var title: String?
206 |     var subtitle: String?
    :
208 |     var attachments: [AirshipAttachment]
209 |
210 |     func apply(to notificationContent: UNMutableNotificationContent) throws {
    |          |                             `- error: 'UNMutableNotificationContent' is only available in macOS 10.14 or newer
    |          `- note: add @available attribute to enclosing instance method
211 |         // Text overrides land first: a rejected attachment must never cost the
212 |         // notification its title/subtitle/body.
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipNotificationMutationProvider.swift:243:33: error: 'UNNotificationAttachment' is only available in macOS 10.14 or newer
236 |
237 |
238 | struct AirshipAttachment: Sendable {
    |        `- note: add @available attribute to enclosing struct
239 |     var identifier: String
240 |     var url: URL
241 |     var options: [String : any Sendable]
242 |
243 |     var notificationAttachment: UNNotificationAttachment {
    |         |                       `- error: 'UNNotificationAttachment' is only available in macOS 10.14 or newer
    |         `- note: add @available attribute to enclosing property
244 |         get throws {
245 |             try UNNotificationAttachment(
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/UANotificationServiceExtension.swift:16:20: error: 'UNNotificationRequest' is only available in macOS 10.14 or newer
  9 |
 10 | @objc
 11 | open class UANotificationServiceExtension: UNNotificationServiceExtension {
    |            `- note: add @available attribute to enclosing class
 12 |     open var airshipConfig: AirshipExtensionConfig { .init() }
 13 |     private var onExpire: (@Sendable () -> Void)?
 14 |
 15 |     open override func didReceive(
    |                        `- note: add @available attribute to enclosing instance method
 16 |         _ request: UNNotificationRequest,
    |                    `- error: 'UNNotificationRequest' is only available in macOS 10.14 or newer
 17 |         withContentHandler contentHandler: @Sendable @escaping (UNNotificationContent) -> Void
 18 |     ) {
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/UANotificationServiceExtension.swift:17:65: error: 'UNNotificationContent' is only available in macOS 10.14 or newer
  9 |
 10 | @objc
 11 | open class UANotificationServiceExtension: UNNotificationServiceExtension {
    |            `- note: add @available attribute to enclosing class
 12 |     open var airshipConfig: AirshipExtensionConfig { .init() }
 13 |     private var onExpire: (@Sendable () -> Void)?
 14 |
 15 |     open override func didReceive(
    |                        `- note: add @available attribute to enclosing instance method
 16 |         _ request: UNNotificationRequest,
 17 |         withContentHandler contentHandler: @Sendable @escaping (UNNotificationContent) -> Void
    |                                                                 `- error: 'UNNotificationContent' is only available in macOS 10.14 or newer
 18 |     ) {
 19 |
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/UANotificationServiceExtension.swift:11:44: error: 'UNNotificationServiceExtension' is only available in macOS 10.14 or newer
  9 |
 10 | @objc
 11 | open class UANotificationServiceExtension: UNNotificationServiceExtension {
    |            |                               `- error: 'UNNotificationServiceExtension' is only available in macOS 10.14 or newer
    |            `- note: add @available attribute to enclosing class
 12 |     open var airshipConfig: AirshipExtensionConfig { .init() }
 13 |     private var onExpire: (@Sendable () -> Void)?
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/UANotificationServiceExtension.swift:94:38: error: 'UNNotificationContent' is only available in macOS 10.14 or newer
 90 | /// Wraps a content handler so it can only be invoked once, no matter
 91 | /// which path (download task or expiry) finishes the request first.
 92 | private final class OnceContentHandler: @unchecked Sendable {
    |                     `- note: add @available attribute to enclosing class
 93 |     private let lock = NSLock()
 94 |     private var handler: (@Sendable (UNNotificationContent) -> Void)?
    |                                      `- error: 'UNNotificationContent' is only available in macOS 10.14 or newer
 95 |
 96 |     init(_ handler: @Sendable @escaping (UNNotificationContent) -> Void) {
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/UANotificationServiceExtension.swift:96:42: error: 'UNNotificationContent' is only available in macOS 10.14 or newer
 90 | /// Wraps a content handler so it can only be invoked once, no matter
 91 | /// which path (download task or expiry) finishes the request first.
 92 | private final class OnceContentHandler: @unchecked Sendable {
    |                     `- note: add @available attribute to enclosing class
 93 |     private let lock = NSLock()
 94 |     private var handler: (@Sendable (UNNotificationContent) -> Void)?
 95 |
 96 |     init(_ handler: @Sendable @escaping (UNNotificationContent) -> Void) {
    |     |                                    `- error: 'UNNotificationContent' is only available in macOS 10.14 or newer
    |     `- note: add @available attribute to enclosing initializer
 97 |         self.handler = handler
 98 |     }
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/UANotificationServiceExtension.swift:100:36: error: 'UNNotificationContent' is only available in macOS 10.14 or newer
 90 | /// Wraps a content handler so it can only be invoked once, no matter
 91 | /// which path (download task or expiry) finishes the request first.
 92 | private final class OnceContentHandler: @unchecked Sendable {
    |                     `- note: add @available attribute to enclosing class
 93 |     private let lock = NSLock()
 94 |     private var handler: (@Sendable (UNNotificationContent) -> Void)?
    :
 98 |     }
 99 |
100 |     func callAsFunction(_ content: UNNotificationContent) {
    |          |                         `- error: 'UNNotificationContent' is only available in macOS 10.14 or newer
    |          `- note: add @available attribute to enclosing instance method
101 |         lock.lock()
102 |         let handler = self.handler
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/UANotificationServiceExtension.swift:109:11: error: 'UNNotificationRequest' is only available in macOS 10.14 or newer
107 | }
108 |
109 | extension UNNotificationRequest {
    | |         `- error: 'UNNotificationRequest' is only available in macOS 10.14 or newer
    | `- note: add @available attribute to enclosing extension
110 |     fileprivate static let airshipMediaAttachment = "com.urbanairship.media_attachment"
111 |
[5/45] Compiling AirshipNotificationServiceExtension AirshipNotificationMutationProvider.swift
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipNotificationMutationProvider.swift:210:40: error: 'UNMutableNotificationContent' is only available in macOS 10.14 or newer
202 | }
203 |
204 | struct AirshipNotificationMutations: Sendable {
    |        `- note: add @available attribute to enclosing struct
205 |     var title: String?
206 |     var subtitle: String?
    :
208 |     var attachments: [AirshipAttachment]
209 |
210 |     func apply(to notificationContent: UNMutableNotificationContent) throws {
    |          |                             `- error: 'UNMutableNotificationContent' is only available in macOS 10.14 or newer
    |          `- note: add @available attribute to enclosing instance method
211 |         // Text overrides land first: a rejected attachment must never cost the
212 |         // notification its title/subtitle/body.
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipNotificationMutationProvider.swift:243:33: error: 'UNNotificationAttachment' is only available in macOS 10.14 or newer
236 |
237 |
238 | struct AirshipAttachment: Sendable {
    |        `- note: add @available attribute to enclosing struct
239 |     var identifier: String
240 |     var url: URL
241 |     var options: [String : any Sendable]
242 |
243 |     var notificationAttachment: UNNotificationAttachment {
    |         |                       `- error: 'UNNotificationAttachment' is only available in macOS 10.14 or newer
    |         `- note: add @available attribute to enclosing property
244 |         get throws {
245 |             try UNNotificationAttachment(
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipNotificationMutationProvider.swift:18:13: error: 'Task' is only available in macOS 10.15 or newer
  6 | #if !os(tvOS)
  7 |
  8 | final class AirshipNotificationMutationProvider: Sendable {
    |             `- note: add @available attribute to enclosing class
  9 |
 10 |     static let supportedExtensions = ["jpg", "jpeg", "png", "gif", "aif", "aiff", "mp3", "mpg", "mpeg", "mp4", "m4a", "wav", "avi"]
    :
 15 |     }
 16 |
 17 |     func mutations(for args: MediaAttachmentPayload) async throws -> AirshipNotificationMutations? {
    |          `- note: add @available attribute to enclosing instance method
 18 |         try Task.checkCancellation()
    |             |- error: 'Task' is only available in macOS 10.15 or newer
    |             `- note: add 'if #available' version check
 19 |
 20 |         // Each task swallows its own failure so one bad/expired media URL doesn't
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipNotificationMutationProvider.swift:18:18: error: 'checkCancellation()' is only available in macOS 10.15 or newer
  6 | #if !os(tvOS)
  7 |
  8 | final class AirshipNotificationMutationProvider: Sendable {
    |             `- note: add @available attribute to enclosing class
  9 |
 10 |     static let supportedExtensions = ["jpg", "jpeg", "png", "gif", "aif", "aiff", "mp3", "mpg", "mpeg", "mp4", "m4a", "wav", "avi"]
    :
 15 |     }
 16 |
 17 |     func mutations(for args: MediaAttachmentPayload) async throws -> AirshipNotificationMutations? {
    |          `- note: add @available attribute to enclosing instance method
 18 |         try Task.checkCancellation()
    |                  |- error: 'checkCancellation()' is only available in macOS 10.15 or newer
    |                  `- note: add 'if #available' version check
 19 |
 20 |         // Each task swallows its own failure so one bad/expired media URL doesn't
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipNotificationMutationProvider.swift:22:33: error: 'withTaskGroup(of:returning:isolation:body:)' is only available in macOS 10.15 or newer
  6 | #if !os(tvOS)
  7 |
  8 | final class AirshipNotificationMutationProvider: Sendable {
    |             `- note: add @available attribute to enclosing class
  9 |
 10 |     static let supportedExtensions = ["jpg", "jpeg", "png", "gif", "aif", "aiff", "mp3", "mpg", "mpeg", "mp4", "m4a", "wav", "avi"]
    :
 15 |     }
 16 |
 17 |     func mutations(for args: MediaAttachmentPayload) async throws -> AirshipNotificationMutations? {
    |          `- note: add @available attribute to enclosing instance method
 18 |         try Task.checkCancellation()
 19 |
 20 |         // Each task swallows its own failure so one bad/expired media URL doesn't
 21 |         // discard the title/subtitle/body overrides for the whole notification.
 22 |         let attachments = await withTaskGroup(of: AirshipAttachment?.self) { [weak self, args, logger] group in
    |                                 |- error: 'withTaskGroup(of:returning:isolation:body:)' is only available in macOS 10.15 or newer
    |                                 `- note: add 'if #available' version check
 23 |             var attachments: [AirshipAttachment] = []
 24 |
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipNotificationMutationProvider.swift:28:29: error: 'Task' is only available in macOS 10.15 or newer
  6 | #if !os(tvOS)
  7 |
  8 | final class AirshipNotificationMutationProvider: Sendable {
    |             `- note: add @available attribute to enclosing class
  9 |
 10 |     static let supportedExtensions = ["jpg", "jpeg", "png", "gif", "aif", "aiff", "mp3", "mpg", "mpeg", "mp4", "m4a", "wav", "avi"]
    :
 15 |     }
 16 |
 17 |     func mutations(for args: MediaAttachmentPayload) async throws -> AirshipNotificationMutations? {
    |          `- note: add @available attribute to enclosing instance method
 18 |         try Task.checkCancellation()
 19 |
    :
 26 |                 group.addTask { [weak self] in
 27 |                     do {
 28 |                         try Task.checkCancellation()
    |                             |- error: 'Task' is only available in macOS 10.15 or newer
    |                             `- note: add 'if #available' version check
 29 |                         return try await self?.load(
 30 |                             attachment: media,
<unknown>:0: error: 'makeAsyncIterator()' is only available in macOS 10.15 or newer
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipNotificationMutationProvider.swift:28:34: error: 'checkCancellation()' is only available in macOS 10.15 or newer
  6 | #if !os(tvOS)
  7 |
  8 | final class AirshipNotificationMutationProvider: Sendable {
    |             `- note: add @available attribute to enclosing class
  9 |
 10 |     static let supportedExtensions = ["jpg", "jpeg", "png", "gif", "aif", "aiff", "mp3", "mpg", "mpeg", "mp4", "m4a", "wav", "avi"]
    :
 15 |     }
 16 |
 17 |     func mutations(for args: MediaAttachmentPayload) async throws -> AirshipNotificationMutations? {
    |          `- note: add @available attribute to enclosing instance method
 18 |         try Task.checkCancellation()
 19 |
    :
 26 |                 group.addTask { [weak self] in
 27 |                     do {
 28 |                         try Task.checkCancellation()
    |                                  |- error: 'checkCancellation()' is only available in macOS 10.15 or newer
    |                                  `- note: add 'if #available' version check
 29 |                         return try await self?.load(
 30 |                             attachment: media,
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipNotificationMutationProvider.swift:22:47: error: 'isolation()' is only available in macOS 10.15 or newer
`- /Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipNotificationMutationProvider.swift:22:46: note: expanded code originates here
  6 | #if !os(tvOS)
  7 |
  8 | final class AirshipNotificationMutationProvider: Sendable {
    |             `- note: add @available attribute to enclosing class
  9 |
 10 |     static let supportedExtensions = ["jpg", "jpeg", "png", "gif", "aif", "aiff", "mp3", "mpg", "mpeg", "mp4", "m4a", "wav", "avi"]
    :
 15 |     }
 16 |
 17 |     func mutations(for args: MediaAttachmentPayload) async throws -> AirshipNotificationMutations? {
    |          `- note: add @available attribute to enclosing instance method
 18 |         try Task.checkCancellation()
 19 |
 20 |         // Each task swallows its own failure so one bad/expired media URL doesn't
 21 |         // discard the title/subtitle/body overrides for the whole notification.
 22 |         let attachments = await withTaskGroup(of: AirshipAttachment?.self) { [weak self, args, logger] group in
    +--- /Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipNotificationMutationProvider.swift
    |20 |
    |21 |
    |22 |                                              #isolation
    |   |                                               `- error: 'isolation()' is only available in macOS 10.15 or newer
    +------------------------------------------------------------------------------------------------------------------------------------------------------
 23 |             var attachments: [AirshipAttachment] = []
 24 |
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipNotificationMutationProvider.swift:64:13: error: 'Task' is only available in macOS 10.15 or newer
  6 | #if !os(tvOS)
  7 |
  8 | final class AirshipNotificationMutationProvider: Sendable {
    |             `- note: add @available attribute to enclosing class
  9 |
 10 |     static let supportedExtensions = ["jpg", "jpeg", "png", "gif", "aif", "aiff", "mp3", "mpg", "mpeg", "mp4", "m4a", "wav", "avi"]
    :
 56 |     }
 57 |
 58 |     private func load(
    |                  `- note: add @available attribute to enclosing instance method
 59 |         attachment: MediaAttachmentPayload.ContentMedia,
 60 |         defaultOptions: MediaAttachmentPayload.PayloadOptions,
    :
 62 |     ) async throws -> AirshipAttachment {
 63 |
 64 |         try Task.checkCancellation()
    |             |- error: 'Task' is only available in macOS 10.15 or newer
    |             `- note: add 'if #available' version check
 65 |
 66 |         logger.debug("Downloading attachment \(attachment.url)")
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipNotificationMutationProvider.swift:64:18: error: 'checkCancellation()' is only available in macOS 10.15 or newer
  6 | #if !os(tvOS)
  7 |
  8 | final class AirshipNotificationMutationProvider: Sendable {
    |             `- note: add @available attribute to enclosing class
  9 |
 10 |     static let supportedExtensions = ["jpg", "jpeg", "png", "gif", "aif", "aiff", "mp3", "mpg", "mpeg", "mp4", "m4a", "wav", "avi"]
    :
 56 |     }
 57 |
 58 |     private func load(
    |                  `- note: add @available attribute to enclosing instance method
 59 |         attachment: MediaAttachmentPayload.ContentMedia,
 60 |         defaultOptions: MediaAttachmentPayload.PayloadOptions,
    :
 62 |     ) async throws -> AirshipAttachment {
 63 |
 64 |         try Task.checkCancellation()
    |                  |- error: 'checkCancellation()' is only available in macOS 10.15 or newer
    |                  `- note: add 'if #available' version check
 65 |
 66 |         logger.debug("Downloading attachment \(attachment.url)")
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipNotificationMutationProvider.swift:72:13: error: 'Task' is only available in macOS 10.15 or newer
  6 | #if !os(tvOS)
  7 |
  8 | final class AirshipNotificationMutationProvider: Sendable {
    |             `- note: add @available attribute to enclosing class
  9 |
 10 |     static let supportedExtensions = ["jpg", "jpeg", "png", "gif", "aif", "aiff", "mp3", "mpg", "mpeg", "mp4", "m4a", "wav", "avi"]
    :
 56 |     }
 57 |
 58 |     private func load(
    |                  `- note: add @available attribute to enclosing instance method
 59 |         attachment: MediaAttachmentPayload.ContentMedia,
 60 |         defaultOptions: MediaAttachmentPayload.PayloadOptions,
    :
 70 |         logger.debug("Downloading attachment result: \(response)")
 71 |
 72 |         try Task.checkCancellation()
    |             |- error: 'Task' is only available in macOS 10.15 or newer
    |             `- note: add 'if #available' version check
 73 |
 74 |         if let httpResponse = response as? HTTPURLResponse, !(200...299).contains(httpResponse.statusCode) {
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipNotificationMutationProvider.swift:72:18: error: 'checkCancellation()' is only available in macOS 10.15 or newer
  6 | #if !os(tvOS)
  7 |
  8 | final class AirshipNotificationMutationProvider: Sendable {
    |             `- note: add @available attribute to enclosing class
  9 |
 10 |     static let supportedExtensions = ["jpg", "jpeg", "png", "gif", "aif", "aiff", "mp3", "mpg", "mpeg", "mp4", "m4a", "wav", "avi"]
    :
 56 |     }
 57 |
 58 |     private func load(
    |                  `- note: add @available attribute to enclosing instance method
 59 |         attachment: MediaAttachmentPayload.ContentMedia,
 60 |         defaultOptions: MediaAttachmentPayload.PayloadOptions,
    :
 70 |         logger.debug("Downloading attachment result: \(response)")
 71 |
 72 |         try Task.checkCancellation()
    |                  |- error: 'checkCancellation()' is only available in macOS 10.15 or newer
    |                  `- note: add 'if #available' version check
 73 |
 74 |         if let httpResponse = response as? HTTPURLResponse, !(200...299).contains(httpResponse.statusCode) {
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipNotificationMutationProvider.swift:111:28: error: 'UNNotificationAttachmentOptionsTypeHintKey' is only available in macOS 10.14 or newer
  6 | #if !os(tvOS)
  7 |
  8 | final class AirshipNotificationMutationProvider: Sendable {
    |             `- note: add @available attribute to enclosing class
  9 |
 10 |     static let supportedExtensions = ["jpg", "jpeg", "png", "gif", "aif", "aiff", "mp3", "mpg", "mpeg", "mp4", "m4a", "wav", "avi"]
    :
 93 |     }
 94 |
 95 |     private func makeAttachement(
    |                  `- note: add @available attribute to enclosing instance method
 96 |         localURL: URL,
 97 |         remoteURL: URL,
    :
109 |
110 |         if !hasExtension, let hint = hintMimeType(for: fileURL, mimeType: mimeType) {
111 |             mutableOptions[UNNotificationAttachmentOptionsTypeHintKey] = hint
    |                            |- error: 'UNNotificationAttachmentOptionsTypeHintKey' is only available in macOS 10.14 or newer
    |                            `- note: add 'if #available' version check
112 |         }
113 |
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipNotificationMutationProvider.swift:120:23: error: 'UTType' is only available in macOS 11.0 or newer
  6 | #if !os(tvOS)
  7 |
  8 | final class AirshipNotificationMutationProvider: Sendable {
    |             `- note: add @available attribute to enclosing class
  9 |
 10 |     static let supportedExtensions = ["jpg", "jpeg", "png", "gif", "aif", "aiff", "mp3", "mpg", "mpeg", "mp4", "m4a", "wav", "avi"]
    :
115 |     }
116 |
117 |     private func hintMimeType(for file: URL, mimeType: String?) -> String? {
    |                  `- note: add @available attribute to enclosing instance method
118 |         if
119 |             let type = mimeType,
120 |             let uti = UTType(mimeType: type),
    |                       |- error: 'UTType' is only available in macOS 11.0 or newer
    |                       `- note: add 'if #available' version check
121 |             let fileExtension = uti.preferredFilenameExtension,
122 |             Self.supportedExtensions.contains(fileExtension) {
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipNotificationMutationProvider.swift:120:23: error: 'init(mimeType:conformingTo:)' is only available in macOS 11.0 or newer
  6 | #if !os(tvOS)
  7 |
  8 | final class AirshipNotificationMutationProvider: Sendable {
    |             `- note: add @available attribute to enclosing class
  9 |
 10 |     static let supportedExtensions = ["jpg", "jpeg", "png", "gif", "aif", "aiff", "mp3", "mpg", "mpeg", "mp4", "m4a", "wav", "avi"]
    :
115 |     }
116 |
117 |     private func hintMimeType(for file: URL, mimeType: String?) -> String? {
    |                  `- note: add @available attribute to enclosing instance method
118 |         if
119 |             let type = mimeType,
120 |             let uti = UTType(mimeType: type),
    |                       |- error: 'init(mimeType:conformingTo:)' is only available in macOS 11.0 or newer
    |                       `- note: add 'if #available' version check
121 |             let fileExtension = uti.preferredFilenameExtension,
122 |             Self.supportedExtensions.contains(fileExtension) {
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipNotificationMutationProvider.swift:121:37: error: 'preferredFilenameExtension' is only available in macOS 11.0 or newer
  6 | #if !os(tvOS)
  7 |
  8 | final class AirshipNotificationMutationProvider: Sendable {
    |             `- note: add @available attribute to enclosing class
  9 |
 10 |     static let supportedExtensions = ["jpg", "jpeg", "png", "gif", "aif", "aiff", "mp3", "mpg", "mpeg", "mp4", "m4a", "wav", "avi"]
    :
115 |     }
116 |
117 |     private func hintMimeType(for file: URL, mimeType: String?) -> String? {
    |                  `- note: add @available attribute to enclosing instance method
118 |         if
119 |             let type = mimeType,
120 |             let uti = UTType(mimeType: type),
121 |             let fileExtension = uti.preferredFilenameExtension,
    |                                     |- error: 'preferredFilenameExtension' is only available in macOS 11.0 or newer
    |                                     `- note: add 'if #available' version check
122 |             Self.supportedExtensions.contains(fileExtension) {
123 |             return uti.identifier
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipNotificationMutationProvider.swift:123:24: error: 'identifier' is only available in macOS 11.0 or newer
  6 | #if !os(tvOS)
  7 |
  8 | final class AirshipNotificationMutationProvider: Sendable {
    |             `- note: add @available attribute to enclosing class
  9 |
 10 |     static let supportedExtensions = ["jpg", "jpeg", "png", "gif", "aif", "aiff", "mp3", "mpg", "mpeg", "mp4", "m4a", "wav", "avi"]
    :
115 |     }
116 |
117 |     private func hintMimeType(for file: URL, mimeType: String?) -> String? {
    |                  `- note: add @available attribute to enclosing instance method
118 |         if
119 |             let type = mimeType,
    :
121 |             let fileExtension = uti.preferredFilenameExtension,
122 |             Self.supportedExtensions.contains(fileExtension) {
123 |             return uti.identifier
    |                        |- error: 'identifier' is only available in macOS 11.0 or newer
    |                        `- note: add 'if #available' version check
124 |         }
125 |
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipNotificationMutationProvider.swift:152:34: error: 'download(from:delegate:)' is only available in macOS 12.0 or newer
  6 | #if !os(tvOS)
  7 |
  8 | final class AirshipNotificationMutationProvider: Sendable {
    |             `- note: add @available attribute to enclosing class
  9 |
 10 |     static let supportedExtensions = ["jpg", "jpeg", "png", "gif", "aif", "aiff", "mp3", "mpg", "mpeg", "mp4", "m4a", "wav", "avi"]
    :
142 |     }
143 |
144 |     private func download(url: URL) async throws -> (URL, URLResponse) {
    |                  `- note: add @available attribute to enclosing instance method
145 |         let session = URLSession(
146 |             configuration: .default,
    :
150 |         defer { session.finishTasksAndInvalidate() }
151 |
152 |         return try await session.download(from: url)
    |                                  |- error: 'download(from:delegate:)' is only available in macOS 12.0 or newer
    |                                  `- note: add 'if #available' version check
153 |     }
154 |
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipNotificationMutationProvider.swift:245:17: error: 'UNNotificationAttachment' is only available in macOS 10.14 or newer
236 |
237 |
238 | struct AirshipAttachment: Sendable {
    |        `- note: add @available attribute to enclosing struct
239 |     var identifier: String
240 |     var url: URL
241 |     var options: [String : any Sendable]
242 |
243 |     var notificationAttachment: UNNotificationAttachment {
    |         `- note: add @available attribute to enclosing property
244 |         get throws {
245 |             try UNNotificationAttachment(
    |                 |- error: 'UNNotificationAttachment' is only available in macOS 10.14 or newer
    |                 `- note: add 'if #available' version check
246 |                 identifier: self.identifier,
247 |                 url: self.url,
[6/45] Compiling AirshipNotificationServiceExtension AirshipExtensionLogger.swift
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipExtensionLogger.swift:200:32: error: 'Logger' is only available in macOS 11.0 or newer
190 |
191 |
192 | public final class DefaultAirshipExtensionLogHandler: AirshipExtensionLogHandler {
    |                    `- note: add @available attribute to enclosing class
193 |
194 |     private let logPublic: Bool
    :
198 |     }
199 |
200 |     private static let logger: Logger = Logger(
    |                        |       `- error: 'Logger' is only available in macOS 11.0 or newer
    |                        `- note: add @available attribute to enclosing static property
201 |         subsystem: Bundle.main.bundleIdentifier ?? "",
202 |         category: "AirshipNotificationExtension"
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipExtensionLogger.swift:200:41: error: 'Logger' is only available in macOS 11.0 or newer
190 |
191 |
192 | public final class DefaultAirshipExtensionLogHandler: AirshipExtensionLogHandler {
    |                    `- note: add @available attribute to enclosing class
193 |
194 |     private let logPublic: Bool
    :
198 |     }
199 |
200 |     private static let logger: Logger = Logger(
    |                        |                `- error: 'Logger' is only available in macOS 11.0 or newer
    |                        `- note: add @available attribute to enclosing static property
201 |         subsystem: Bundle.main.bundleIdentifier ?? "",
202 |         category: "AirshipNotificationExtension"
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipExtensionLogger.swift:215:17: error: 'OSLogMessage' is only available in macOS 11.0 or newer
190 |
191 |
192 | public final class DefaultAirshipExtensionLogHandler: AirshipExtensionLogHandler {
    |                    `- note: add @available attribute to enclosing class
193 |
194 |     private let logPublic: Bool
    :
203 |     )
204 |
205 |     public func log(
    |                 `- note: add @available attribute to enclosing instance method
206 |         logLevel: AirshipExtensionLogLevel,
207 |         message: String,
    :
213 |         if (logPublic) {
214 |             Self.logger.notice(
215 |                 "\(logMessage, privacy: .public)"
    |                 |- error: 'OSLogMessage' is only available in macOS 11.0 or newer
    |                 `- note: add 'if #available' version check
216 |             )
217 |         } else {
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipExtensionLogger.swift:215:19: error: 'appendInterpolation(_:align:privacy:)' is only available in macOS 11.0 or newer
190 |
191 |
192 | public final class DefaultAirshipExtensionLogHandler: AirshipExtensionLogHandler {
    |                    `- note: add @available attribute to enclosing class
193 |
194 |     private let logPublic: Bool
    :
203 |     )
204 |
205 |     public func log(
    |                 `- note: add @available attribute to enclosing instance method
206 |         logLevel: AirshipExtensionLogLevel,
207 |         message: String,
    :
213 |         if (logPublic) {
214 |             Self.logger.notice(
215 |                 "\(logMessage, privacy: .public)"
    |                   |- error: 'appendInterpolation(_:align:privacy:)' is only available in macOS 11.0 or newer
    |                   `- note: add 'if #available' version check
216 |             )
217 |         } else {
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipExtensionLogger.swift:220:17: error: 'OSLogMessage' is only available in macOS 11.0 or newer
190 |
191 |
192 | public final class DefaultAirshipExtensionLogHandler: AirshipExtensionLogHandler {
    |                    `- note: add @available attribute to enclosing class
193 |
194 |     private let logPublic: Bool
    :
203 |     )
204 |
205 |     public func log(
    |                 `- note: add @available attribute to enclosing instance method
206 |         logLevel: AirshipExtensionLogLevel,
207 |         message: String,
    :
218 |             Self.logger.log(
219 |                 level: logLevel.logType,
220 |                 "\(logMessage, privacy: .private)"
    |                 |- error: 'OSLogMessage' is only available in macOS 11.0 or newer
    |                 `- note: add 'if #available' version check
221 |             )
222 |         }
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/AirshipExtensionLogger.swift:220:19: error: 'appendInterpolation(_:align:privacy:)' is only available in macOS 11.0 or newer
190 |
191 |
192 | public final class DefaultAirshipExtensionLogHandler: AirshipExtensionLogHandler {
    |                    `- note: add @available attribute to enclosing class
193 |
194 |     private let logPublic: Bool
    :
203 |     )
204 |
205 |     public func log(
    |                 `- note: add @available attribute to enclosing instance method
206 |         logLevel: AirshipExtensionLogLevel,
207 |         message: String,
    :
218 |             Self.logger.log(
219 |                 level: logLevel.logType,
220 |                 "\(logMessage, privacy: .private)"
    |                   |- error: 'appendInterpolation(_:align:privacy:)' is only available in macOS 11.0 or newer
    |                   `- note: add 'if #available' version check
221 |             )
222 |         }
[7/45] Compiling AirshipNotificationServiceExtension UANotificationServiceExtension.swift
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/UANotificationServiceExtension.swift:16:20: error: 'UNNotificationRequest' is only available in macOS 10.14 or newer
  9 |
 10 | @objc
 11 | open class UANotificationServiceExtension: UNNotificationServiceExtension {
    |            `- note: add @available attribute to enclosing class
 12 |     open var airshipConfig: AirshipExtensionConfig { .init() }
 13 |     private var onExpire: (@Sendable () -> Void)?
 14 |
 15 |     open override func didReceive(
    |                        `- note: add @available attribute to enclosing instance method
 16 |         _ request: UNNotificationRequest,
    |                    `- error: 'UNNotificationRequest' is only available in macOS 10.14 or newer
 17 |         withContentHandler contentHandler: @Sendable @escaping (UNNotificationContent) -> Void
 18 |     ) {
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/UANotificationServiceExtension.swift:17:65: error: 'UNNotificationContent' is only available in macOS 10.14 or newer
  9 |
 10 | @objc
 11 | open class UANotificationServiceExtension: UNNotificationServiceExtension {
    |            `- note: add @available attribute to enclosing class
 12 |     open var airshipConfig: AirshipExtensionConfig { .init() }
 13 |     private var onExpire: (@Sendable () -> Void)?
 14 |
 15 |     open override func didReceive(
    |                        `- note: add @available attribute to enclosing instance method
 16 |         _ request: UNNotificationRequest,
 17 |         withContentHandler contentHandler: @Sendable @escaping (UNNotificationContent) -> Void
    |                                                                 `- error: 'UNNotificationContent' is only available in macOS 10.14 or newer
 18 |     ) {
 19 |
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/UANotificationServiceExtension.swift:11:44: error: 'UNNotificationServiceExtension' is only available in macOS 10.14 or newer
  9 |
 10 | @objc
 11 | open class UANotificationServiceExtension: UNNotificationServiceExtension {
    |            |                               `- error: 'UNNotificationServiceExtension' is only available in macOS 10.14 or newer
    |            `- note: add @available attribute to enclosing class
 12 |     open var airshipConfig: AirshipExtensionConfig { .init() }
 13 |     private var onExpire: (@Sendable () -> Void)?
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/UANotificationServiceExtension.swift:94:38: error: 'UNNotificationContent' is only available in macOS 10.14 or newer
 90 | /// Wraps a content handler so it can only be invoked once, no matter
 91 | /// which path (download task or expiry) finishes the request first.
 92 | private final class OnceContentHandler: @unchecked Sendable {
    |                     `- note: add @available attribute to enclosing class
 93 |     private let lock = NSLock()
 94 |     private var handler: (@Sendable (UNNotificationContent) -> Void)?
    |                                      `- error: 'UNNotificationContent' is only available in macOS 10.14 or newer
 95 |
 96 |     init(_ handler: @Sendable @escaping (UNNotificationContent) -> Void) {
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/UANotificationServiceExtension.swift:96:42: error: 'UNNotificationContent' is only available in macOS 10.14 or newer
 90 | /// Wraps a content handler so it can only be invoked once, no matter
 91 | /// which path (download task or expiry) finishes the request first.
 92 | private final class OnceContentHandler: @unchecked Sendable {
    |                     `- note: add @available attribute to enclosing class
 93 |     private let lock = NSLock()
 94 |     private var handler: (@Sendable (UNNotificationContent) -> Void)?
 95 |
 96 |     init(_ handler: @Sendable @escaping (UNNotificationContent) -> Void) {
    |     |                                    `- error: 'UNNotificationContent' is only available in macOS 10.14 or newer
    |     `- note: add @available attribute to enclosing initializer
 97 |         self.handler = handler
 98 |     }
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/UANotificationServiceExtension.swift:100:36: error: 'UNNotificationContent' is only available in macOS 10.14 or newer
 90 | /// Wraps a content handler so it can only be invoked once, no matter
 91 | /// which path (download task or expiry) finishes the request first.
 92 | private final class OnceContentHandler: @unchecked Sendable {
    |                     `- note: add @available attribute to enclosing class
 93 |     private let lock = NSLock()
 94 |     private var handler: (@Sendable (UNNotificationContent) -> Void)?
    :
 98 |     }
 99 |
100 |     func callAsFunction(_ content: UNNotificationContent) {
    |          |                         `- error: 'UNNotificationContent' is only available in macOS 10.14 or newer
    |          `- note: add @available attribute to enclosing instance method
101 |         lock.lock()
102 |         let handler = self.handler
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/UANotificationServiceExtension.swift:109:11: error: 'UNNotificationRequest' is only available in macOS 10.14 or newer
107 | }
108 |
109 | extension UNNotificationRequest {
    | |         `- error: 'UNNotificationRequest' is only available in macOS 10.14 or newer
    | `- note: add @available attribute to enclosing extension
110 |     fileprivate static let airshipMediaAttachment = "com.urbanairship.media_attachment"
111 |
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/UANotificationServiceExtension.swift:30:28: error: 'Task' is only available in macOS 10.15 or newer
  9 |
 10 | @objc
 11 | open class UANotificationServiceExtension: UNNotificationServiceExtension {
    |            `- note: add @available attribute to enclosing class
 12 |     open var airshipConfig: AirshipExtensionConfig { .init() }
 13 |     private var onExpire: (@Sendable () -> Void)?
 14 |
 15 |     open override func didReceive(
    |                        `- note: add @available attribute to enclosing instance method
 16 |         _ request: UNNotificationRequest,
 17 |         withContentHandler contentHandler: @Sendable @escaping (UNNotificationContent) -> Void
    :
 28 |         let finish = OnceContentHandler(contentHandler)
 29 |
 30 |         let downloadTask = Task { @MainActor in
    |                            |- error: 'Task' is only available in macOS 10.15 or newer
    |                            `- note: add 'if #available' version check
 31 |             logger.debug(
 32 |                 "New request received: \(request)"
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/UANotificationServiceExtension.swift:30:28: error: 'init(priority:operation:)' is only available in macOS 10.15 or newer
  9 |
 10 | @objc
 11 | open class UANotificationServiceExtension: UNNotificationServiceExtension {
    |            `- note: add @available attribute to enclosing class
 12 |     open var airshipConfig: AirshipExtensionConfig { .init() }
 13 |     private var onExpire: (@Sendable () -> Void)?
 14 |
 15 |     open override func didReceive(
    |                        `- note: add @available attribute to enclosing instance method
 16 |         _ request: UNNotificationRequest,
 17 |         withContentHandler contentHandler: @Sendable @escaping (UNNotificationContent) -> Void
    :
 28 |         let finish = OnceContentHandler(contentHandler)
 29 |
 30 |         let downloadTask = Task { @MainActor in
    |                            |- error: 'init(priority:operation:)' is only available in macOS 10.15 or newer
    |                            `- note: add 'if #available' version check
 31 |             logger.debug(
 32 |                 "New request received: \(request)"
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/UANotificationServiceExtension.swift:35:74: error: 'UNMutableNotificationContent' is only available in macOS 10.14 or newer
  9 |
 10 | @objc
 11 | open class UANotificationServiceExtension: UNNotificationServiceExtension {
    |            `- note: add @available attribute to enclosing class
 12 |     open var airshipConfig: AirshipExtensionConfig { .init() }
 13 |     private var onExpire: (@Sendable () -> Void)?
 14 |
 15 |     open override func didReceive(
    |                        `- note: add @available attribute to enclosing instance method
 16 |         _ request: UNNotificationRequest,
 17 |         withContentHandler contentHandler: @Sendable @escaping (UNNotificationContent) -> Void
    :
 33 |             )
 34 |
 35 |             guard let mutableContent = request.content.mutableCopy() as? UNMutableNotificationContent else {
    |                                                                          |- error: 'UNMutableNotificationContent' is only available in macOS 10.14 or newer
    |                                                                          `- note: add 'if #available' version check
 36 |                 logger.error(
 37 |                     "Unable to make mutable copy of request"
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/UANotificationServiceExtension.swift:39:21: error: 'Task' is only available in macOS 10.15 or newer
  9 |
 10 | @objc
 11 | open class UANotificationServiceExtension: UNNotificationServiceExtension {
    |            `- note: add @available attribute to enclosing class
 12 |     open var airshipConfig: AirshipExtensionConfig { .init() }
 13 |     private var onExpire: (@Sendable () -> Void)?
 14 |
 15 |     open override func didReceive(
    |                        `- note: add @available attribute to enclosing instance method
 16 |         _ request: UNNotificationRequest,
 17 |         withContentHandler contentHandler: @Sendable @escaping (UNNotificationContent) -> Void
    :
 37 |                     "Unable to make mutable copy of request"
 38 |                 )
 39 |                 try Task.checkCancellation()
    |                     |- error: 'Task' is only available in macOS 10.15 or newer
    |                     `- note: add 'if #available' version check
 40 |                 finish(request.content)
 41 |                 return
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/UANotificationServiceExtension.swift:39:26: error: 'checkCancellation()' is only available in macOS 10.15 or newer
  9 |
 10 | @objc
 11 | open class UANotificationServiceExtension: UNNotificationServiceExtension {
    |            `- note: add @available attribute to enclosing class
 12 |     open var airshipConfig: AirshipExtensionConfig { .init() }
 13 |     private var onExpire: (@Sendable () -> Void)?
 14 |
 15 |     open override func didReceive(
    |                        `- note: add @available attribute to enclosing instance method
 16 |         _ request: UNNotificationRequest,
 17 |         withContentHandler contentHandler: @Sendable @escaping (UNNotificationContent) -> Void
    :
 37 |                     "Unable to make mutable copy of request"
 38 |                 )
 39 |                 try Task.checkCancellation()
    |                          |- error: 'checkCancellation()' is only available in macOS 10.15 or newer
    |                          `- note: add 'if #available' version check
 40 |                 finish(request.content)
 41 |                 return
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/UANotificationServiceExtension.swift:50:25: error: 'Task' is only available in macOS 10.15 or newer
  9 |
 10 | @objc
 11 | open class UANotificationServiceExtension: UNNotificationServiceExtension {
    |            `- note: add @available attribute to enclosing class
 12 |     open var airshipConfig: AirshipExtensionConfig { .init() }
 13 |     private var onExpire: (@Sendable () -> Void)?
 14 |
 15 |     open override func didReceive(
    |                        `- note: add @available attribute to enclosing instance method
 16 |         _ request: UNNotificationRequest,
 17 |         withContentHandler contentHandler: @Sendable @escaping (UNNotificationContent) -> Void
    :
 48 |                         "Finishing request, no Airship args: \(request.identifier)"
 49 |                     )
 50 |                     try Task.checkCancellation()
    |                         |- error: 'Task' is only available in macOS 10.15 or newer
    |                         `- note: add 'if #available' version check
 51 |                     finish(request.content)
 52 |                     return
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/UANotificationServiceExtension.swift:50:30: error: 'checkCancellation()' is only available in macOS 10.15 or newer
  9 |
 10 | @objc
 11 | open class UANotificationServiceExtension: UNNotificationServiceExtension {
    |            `- note: add @available attribute to enclosing class
 12 |     open var airshipConfig: AirshipExtensionConfig { .init() }
 13 |     private var onExpire: (@Sendable () -> Void)?
 14 |
 15 |     open override func didReceive(
    |                        `- note: add @available attribute to enclosing instance method
 16 |         _ request: UNNotificationRequest,
 17 |         withContentHandler contentHandler: @Sendable @escaping (UNNotificationContent) -> Void
    :
 48 |                         "Finishing request, no Airship args: \(request.identifier)"
 49 |                     )
 50 |                     try Task.checkCancellation()
    |                              |- error: 'checkCancellation()' is only available in macOS 10.15 or newer
    |                              `- note: add 'if #available' version check
 51 |                     finish(request.content)
 52 |                     return
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/UANotificationServiceExtension.swift:68:17: error: 'Task' is only available in macOS 10.15 or newer
  9 |
 10 | @objc
 11 | open class UANotificationServiceExtension: UNNotificationServiceExtension {
    |            `- note: add @available attribute to enclosing class
 12 |     open var airshipConfig: AirshipExtensionConfig { .init() }
 13 |     private var onExpire: (@Sendable () -> Void)?
 14 |
 15 |     open override func didReceive(
    |                        `- note: add @available attribute to enclosing instance method
 16 |         _ request: UNNotificationRequest,
 17 |         withContentHandler contentHandler: @Sendable @escaping (UNNotificationContent) -> Void
    :
 66 |             }
 67 |
 68 |             try Task.checkCancellation()
    |                 |- error: 'Task' is only available in macOS 10.15 or newer
    |                 `- note: add 'if #available' version check
 69 |
 70 |             logger.info(
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/UANotificationServiceExtension.swift:68:22: error: 'checkCancellation()' is only available in macOS 10.15 or newer
  9 |
 10 | @objc
 11 | open class UANotificationServiceExtension: UNNotificationServiceExtension {
    |            `- note: add @available attribute to enclosing class
 12 |     open var airshipConfig: AirshipExtensionConfig { .init() }
 13 |     private var onExpire: (@Sendable () -> Void)?
 14 |
 15 |     open override func didReceive(
    |                        `- note: add @available attribute to enclosing instance method
 16 |         _ request: UNNotificationRequest,
 17 |         withContentHandler contentHandler: @Sendable @escaping (UNNotificationContent) -> Void
    :
 66 |             }
 67 |
 68 |             try Task.checkCancellation()
    |                      |- error: 'checkCancellation()' is only available in macOS 10.15 or newer
    |                      `- note: add 'if #available' version check
 69 |
 70 |             logger.info(
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/UANotificationServiceExtension.swift:80:26: error: 'cancel()' is only available in macOS 10.15 or newer
  9 |
 10 | @objc
 11 | open class UANotificationServiceExtension: UNNotificationServiceExtension {
    |            `- note: add @available attribute to enclosing class
 12 |     open var airshipConfig: AirshipExtensionConfig { .init() }
 13 |     private var onExpire: (@Sendable () -> Void)?
 14 |
 15 |     open override func didReceive(
    |                        `- note: add @available attribute to enclosing instance method
 16 |         _ request: UNNotificationRequest,
 17 |         withContentHandler contentHandler: @Sendable @escaping (UNNotificationContent) -> Void
    :
 78 |                 "serviceExtensionTimeWillExpire expiring, canceling airshipTask"
 79 |             )
 80 |             downloadTask.cancel()
    |                          |- error: 'cancel()' is only available in macOS 10.15 or newer
    |                          `- note: add 'if #available' version check
 81 |             finish(request.content)
 82 |         }
[8/45] Compiling AirshipNotificationServiceExtension MediaAttachmentPayload.swift
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/MediaAttachmentPayload.swift:135:51: error: 'UNNotificationAttachmentOptionsThumbnailHiddenKey' is only available in macOS 10.14 or newer
 92 |     }
 93 |
 94 |     struct PayloadOptions: Decodable, Sendable {
    |            `- note: add @available attribute to enclosing struct
 95 |         private static let cropRequiredFields = ["x", "y", "width", "height"]
 96 |         let crop: [String: Double]?
    :
132 |         }
133 |
134 |         func generateNotificationAttachmentOptions(hideThumbnail: Bool) -> [String: any Sendable] {
    |              `- note: add @available attribute to enclosing instance method
135 |             var result: [String: any Sendable] = [UNNotificationAttachmentOptionsThumbnailHiddenKey: hideThumbnail]
    |                                                   |- error: 'UNNotificationAttachmentOptionsThumbnailHiddenKey' is only available in macOS 10.14 or newer
    |                                                   `- note: add 'if #available' version check
136 |
137 |             if let crop = self.crop {
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/MediaAttachmentPayload.swift:141:24: error: 'UNNotificationAttachmentOptionsThumbnailClippingRectKey' is only available in macOS 10.14 or newer
 92 |     }
 93 |
 94 |     struct PayloadOptions: Decodable, Sendable {
    |            `- note: add @available attribute to enclosing struct
 95 |         private static let cropRequiredFields = ["x", "y", "width", "height"]
 96 |         let crop: [String: Double]?
    :
132 |         }
133 |
134 |         func generateNotificationAttachmentOptions(hideThumbnail: Bool) -> [String: any Sendable] {
    |              `- note: add @available attribute to enclosing instance method
135 |             var result: [String: any Sendable] = [UNNotificationAttachmentOptionsThumbnailHiddenKey: hideThumbnail]
136 |
    :
139 |                     partialResult[entry.key.capitalized] = entry.value
140 |                 }
141 |                 result[UNNotificationAttachmentOptionsThumbnailClippingRectKey] = normalized
    |                        |- error: 'UNNotificationAttachmentOptionsThumbnailClippingRectKey' is only available in macOS 10.14 or newer
    |                        `- note: add 'if #available' version check
142 |             }
143 |
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/MediaAttachmentPayload.swift:145:24: error: 'UNNotificationAttachmentOptionsThumbnailTimeKey' is only available in macOS 10.14 or newer
 92 |     }
 93 |
 94 |     struct PayloadOptions: Decodable, Sendable {
    |            `- note: add @available attribute to enclosing struct
 95 |         private static let cropRequiredFields = ["x", "y", "width", "height"]
 96 |         let crop: [String: Double]?
    :
132 |         }
133 |
134 |         func generateNotificationAttachmentOptions(hideThumbnail: Bool) -> [String: any Sendable] {
    |              `- note: add @available attribute to enclosing instance method
135 |             var result: [String: any Sendable] = [UNNotificationAttachmentOptionsThumbnailHiddenKey: hideThumbnail]
136 |
    :
143 |
144 |             if let time = self.time {
145 |                 result[UNNotificationAttachmentOptionsThumbnailTimeKey] = time
    |                        |- error: 'UNNotificationAttachmentOptionsThumbnailTimeKey' is only available in macOS 10.14 or newer
    |                        `- note: add 'if #available' version check
146 |             }
147 |
/Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/Source/MediaAttachmentPayload.swift:149:24: error: 'UNNotificationAttachmentOptionsThumbnailHiddenKey' is only available in macOS 10.14 or newer
 92 |     }
 93 |
 94 |     struct PayloadOptions: Decodable, Sendable {
    |            `- note: add @available attribute to enclosing struct
 95 |         private static let cropRequiredFields = ["x", "y", "width", "height"]
 96 |         let crop: [String: Double]?
    :
132 |         }
133 |
134 |         func generateNotificationAttachmentOptions(hideThumbnail: Bool) -> [String: any Sendable] {
    |              `- note: add @available attribute to enclosing instance method
135 |             var result: [String: any Sendable] = [UNNotificationAttachmentOptionsThumbnailHiddenKey: hideThumbnail]
136 |
    :
147 |
148 |             if let hidden = self.hidden {
149 |                 result[UNNotificationAttachmentOptionsThumbnailHiddenKey] = hidden
    |                        |- error: 'UNNotificationAttachmentOptionsThumbnailHiddenKey' is only available in macOS 10.14 or newer
    |                        `- note: add 'if #available' version check
150 |             }
151 |
warning: 'spi-builder-workspace': Invalid Exclude '/Users/admin/builder/spi-builder-workspace/Airship/AirshipFoundationModels/Tests': File not found.
warning: 'spi-builder-workspace': found 1 file(s) which are unhandled; explicitly declare them as resources or exclude from the target
    /Users/admin/builder/spi-builder-workspace/AirshipExtensions/AirshipNotificationServiceExtension/airship.jpg
warning: 'spi-builder-workspace': found 14 file(s) which are unhandled; explicitly declare them as resources or exclude from the target
    /Users/admin/builder/spi-builder-workspace/Airship/AirshipBasement/Tests/UI/AirshipImageDataTest.swift
    /Users/admin/builder/spi-builder-workspace/Airship/AirshipBasement/Tests/Utils/AirshipDate.swift
    /Users/admin/builder/spi-builder-workspace/Airship/AirshipBasement/Tests/Json/AirshipJSONTest.swift
    /Users/admin/builder/spi-builder-workspace/Airship/AirshipBasement/Tests/Utils/AishipFontTests.swift
    /Users/admin/builder/spi-builder-workspace/Airship/AirshipBasement/Tests/App State/AppStateTrackerTest.swift
    /Users/admin/builder/spi-builder-workspace/Airship/AirshipBasement/Tests/Json/Predicate/JSONPredicateTest.swift
    /Users/admin/builder/spi-builder-workspace/Airship/AirshipBasement/Tests/Json/Predicate/AirshipIvyVersionMatcherTest.swift
    /Users/admin/builder/spi-builder-workspace/Airship/AirshipBasement/Tests/Utils/AirshipVersionUtilsTest.swift
    /Users/admin/builder/spi-builder-workspace/Airship/AirshipBasement/Tests/Utils/DefaultTaskSleeperTest.swift
    /Users/admin/builder/spi-builder-workspace/Airship/AirshipBasement/Tests/Json/Predicate/JsonValueMatcherTest.swift
    /Users/admin/builder/spi-builder-workspace/Airship/AirshipBasement/Tests/Utils/AirshipDateFormatterTest.swift
    /Users/admin/builder/spi-builder-workspace/Airship/AirshipBasement/Tests/Utils/AirshipObservableTimerTest.swift
    /Users/admin/builder/spi-builder-workspace/Airship/AirshipBasement/Tests/Json/Predicate/JsonMatcherTest.swift
    /Users/admin/builder/spi-builder-workspace/Airship/AirshipBasement/Tests/Utils/AirshipColorTests.swift
BUILD FAILURE 6.1 macosSpm