Build Information
Failed to build Airship, reference 21.0.2 (67cd1c), with Swift 6.1 for macOS (SPM) on 27 Sep 2026 02:32:12 UTC.
Build Command
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64Build Log
========================================
RunAll
========================================
Builder version: 5.1.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/urbanairship/ios-library.git
Reference: 21.0.2
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/urbanairship/ios-library
* tag 21.0.2 -> FETCH_HEAD
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 21.0.2
========================================
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
[19/86] Copying UANotificationCategories.plist
[19/86] Copying UANativeBridge
[19/86] Copying PrivacyInfo.xcprivacy
[19/86] Copying Info.plist
[19/86] Copying UrbanAirship.strings
[19/86] Write sources
[19/86] Copying UrbanAirship.strings
[22/86] Write sources
[24/86] Copying Info.plist
[40/86] Write sources
[67/86] Copying UAInboxDataMappingV2toV4.xcmappingmodel
[68/86] Copying UAInboxDataMappingV1toV4.xcmappingmodel
[69/86] Copying UARemoteDataMappingV2toV4.xcmappingmodel
[69/86] Copying UARemoteDataMappingV1toV4.xcmappingmodel
[69/86] Copying UARemoteDataMappingV3toV4.xcmappingmodel
[72/86] Copying AirshipDebugPushData.xcdatamodeld
[72/86] Copying AirshipDebugEventData.xcdatamodeld
[74/86] Copying UAInboxDataMappingV3toV4.xcmappingmodel
[75/86] Copying TestAssets.xcassets
[76/86] Copying UAirshipCache.xcdatamodeld
[77/86] Copying UAMeteredUsage.xcdatamodeld
[78/86] Copying UAEvents.xcdatamodeld
[79/86] Copying UAFrequencyLimits.xcdatamodeld
[80/86] Copying AirshipLedger.xcdatamodeld
[81/86] Copying UARemoteData.xcdatamodeld
[82/86] Copying AirshipAutomation.xcdatamodeld
[83/86] Copying UAInbox.xcdatamodeld
[84/86] Copying UAAutomation.xcdatamodeld
[85/86] Write swift-version-2F0A5646E1D333AE.txt
[87/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 | }
[88/130] Compiling AirshipNotificationServiceExtension ChallengeResolver.swift
[89/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,
error: emit-module command failed with exit code 1 (use -v to see invocation)
[90/130] Compiling AirshipNotificationServiceExtension AirshipExtensionConfig.swift
[91/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 |
[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 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/Utils/AirshipDate.swift
/Users/admin/builder/spi-builder-workspace/Airship/AirshipBasement/Tests/Utils/AirshipObservableTimerTest.swift
/Users/admin/builder/spi-builder-workspace/Airship/AirshipBasement/Tests/Utils/AishipFontTests.swift
/Users/admin/builder/spi-builder-workspace/Airship/AirshipBasement/Tests/Json/Predicate/JSONPredicateTest.swift
/Users/admin/builder/spi-builder-workspace/Airship/AirshipBasement/Tests/Utils/DefaultTaskSleeperTest.swift
/Users/admin/builder/spi-builder-workspace/Airship/AirshipBasement/Tests/Utils/AirshipDateFormatterTest.swift
/Users/admin/builder/spi-builder-workspace/Airship/AirshipBasement/Tests/Utils/AirshipColorTests.swift
/Users/admin/builder/spi-builder-workspace/Airship/AirshipBasement/Tests/Json/Predicate/AirshipIvyVersionMatcherTest.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/JsonMatcherTest.swift
/Users/admin/builder/spi-builder-workspace/Airship/AirshipBasement/Tests/App State/AppStateTrackerTest.swift
/Users/admin/builder/spi-builder-workspace/Airship/AirshipBasement/Tests/Json/AirshipJSONTest.swift
/Users/admin/builder/spi-builder-workspace/Airship/AirshipBasement/Tests/Utils/AirshipVersionUtilsTest.swift
/Users/admin/builder/spi-builder-workspace/Airship/AirshipBasement/Tests/UI/AirshipImageDataTest.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 ChallengeResolver.swift
[3/45] Compiling AirshipNotificationServiceExtension AirshipExtensionConfig.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/Utils/AirshipColorTests.swift
/Users/admin/builder/spi-builder-workspace/Airship/AirshipBasement/Tests/Json/AirshipJSONTest.swift
/Users/admin/builder/spi-builder-workspace/Airship/AirshipBasement/Tests/Utils/AirshipVersionUtilsTest.swift
/Users/admin/builder/spi-builder-workspace/Airship/AirshipBasement/Tests/Utils/AirshipDate.swift
/Users/admin/builder/spi-builder-workspace/Airship/AirshipBasement/Tests/Json/Predicate/AirshipIvyVersionMatcherTest.swift
/Users/admin/builder/spi-builder-workspace/Airship/AirshipBasement/Tests/Utils/DefaultTaskSleeperTest.swift
/Users/admin/builder/spi-builder-workspace/Airship/AirshipBasement/Tests/Json/Predicate/JsonMatcherTest.swift
/Users/admin/builder/spi-builder-workspace/Airship/AirshipBasement/Tests/UI/AirshipImageDataTest.swift
/Users/admin/builder/spi-builder-workspace/Airship/AirshipBasement/Tests/Json/Predicate/JsonValueMatcherTest.swift
/Users/admin/builder/spi-builder-workspace/Airship/AirshipBasement/Tests/Utils/AirshipObservableTimerTest.swift
/Users/admin/builder/spi-builder-workspace/Airship/AirshipBasement/Tests/App State/AppStateTrackerTest.swift
/Users/admin/builder/spi-builder-workspace/Airship/AirshipBasement/Tests/Utils/AirshipDateFormatterTest.swift
/Users/admin/builder/spi-builder-workspace/Airship/AirshipBasement/Tests/Json/Predicate/JSONPredicateTest.swift
/Users/admin/builder/spi-builder-workspace/Airship/AirshipBasement/Tests/Utils/AishipFontTests.swift
BUILD FAILURE 6.1 macosSpm