The Swift Package Index logo.Swift Package Index

Has it really been five years since Swift Package Index launched? Read our anniversary blog post!

Build Information

Successful build of RevenueCat, reference 5.39.0 (06c0e8), with Swift 6.0 for macOS (SPM) on 12 Sep 2025 14:07:41 UTC.

Swift 6 data race errors: 0

Build Command

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

Build Log

332 |                 }
333 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:351:26: warning: converting function value of type 'PurchaseCancelledHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
349 |             .onPreferenceChange(PurchasedResultPreferenceKey.self) { result in
350 |                 if let result, result.userCancelled {
351 |                     self.handler()
    |                          `- warning: converting function value of type 'PurchaseCancelledHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
352 |                 }
353 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:367:26: warning: converting function value of type 'RestoreStartedHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
365 |             .onPreferenceChange(RestoreInProgressPreferenceKey.self) { inProgress in
366 |                 if inProgress {
367 |                     self.handler()
    |                          `- warning: converting function value of type 'RestoreStartedHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
368 |                 }
369 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:383:26: warning: converting function value of type 'PurchaseOrRestoreCompletedHandler' (aka '@MainActor @Sendable (CustomerInfo) -> ()') to '(CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
381 |             .onPreferenceChange(RestoredCustomerInfoPreferenceKey.self) { customerInfo in
382 |                 if let customerInfo {
383 |                     self.handler(customerInfo)
    |                          `- warning: converting function value of type 'PurchaseOrRestoreCompletedHandler' (aka '@MainActor @Sendable (CustomerInfo) -> ()') to '(CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
384 |                 }
385 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:399:26: warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
397 |             .onPreferenceChange(PurchaseErrorPreferenceKey.self) { error in
398 |                 if let error {
399 |                     self.handler(error)
    |                          `- warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
400 |                 }
401 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:415:26: warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
413 |             .onPreferenceChange(RestoreErrorPreferenceKey.self) { error in
414 |                 if let error {
415 |                     self.handler(error)
    |                          `- warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
416 |                 }
417 |             }
[957/1069] Compiling RevenueCatUI DebugErrorView.swift
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PresentPaywallFooter.swift:404:26: warning: converting function value of type 'PaywallTierChangeHandler' (aka '@MainActor @Sendable (PaywallData.Tier, String) -> ()') to '(PaywallData.Tier, String) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
402 |             .onPreferenceChange(PaywallCurrentTierPreferenceKey.self) { data in
403 |                 if let data {
404 |                     self.handler(data.tier, data.localizedName)
    |                          `- warning: converting function value of type 'PaywallTierChangeHandler' (aka '@MainActor @Sendable (PaywallData.Tier, String) -> ()') to '(PaywallData.Tier, String) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
405 |                 }
406 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:307:26: warning: converting function value of type 'PurchaseOfPackageStartedHandler' (aka '@MainActor @Sendable (Package) -> ()') to '(Package) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
305 |             .onPreferenceChange(PurchaseInProgressPreferenceKey.self) { package in
306 |                 if let package {
307 |                     self.handler(package)
    |                          `- warning: converting function value of type 'PurchaseOfPackageStartedHandler' (aka '@MainActor @Sendable (Package) -> ()') to '(Package) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
308 |                 }
309 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:331:26: warning: converting function value of type 'PurchaseCompletedHandler' (aka '@MainActor @Sendable (Optional<StoreTransaction>, CustomerInfo) -> ()') to '(StoreTransaction?, CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
329 |             .onPreferenceChange(PurchasedResultPreferenceKey.self) { result in
330 |                 if let result, !result.userCancelled {
331 |                     self.handler(result.transaction, result.customerInfo)
    |                          `- warning: converting function value of type 'PurchaseCompletedHandler' (aka '@MainActor @Sendable (Optional<StoreTransaction>, CustomerInfo) -> ()') to '(StoreTransaction?, CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
332 |                 }
333 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:351:26: warning: converting function value of type 'PurchaseCancelledHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
349 |             .onPreferenceChange(PurchasedResultPreferenceKey.self) { result in
350 |                 if let result, result.userCancelled {
351 |                     self.handler()
    |                          `- warning: converting function value of type 'PurchaseCancelledHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
352 |                 }
353 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:367:26: warning: converting function value of type 'RestoreStartedHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
365 |             .onPreferenceChange(RestoreInProgressPreferenceKey.self) { inProgress in
366 |                 if inProgress {
367 |                     self.handler()
    |                          `- warning: converting function value of type 'RestoreStartedHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
368 |                 }
369 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:383:26: warning: converting function value of type 'PurchaseOrRestoreCompletedHandler' (aka '@MainActor @Sendable (CustomerInfo) -> ()') to '(CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
381 |             .onPreferenceChange(RestoredCustomerInfoPreferenceKey.self) { customerInfo in
382 |                 if let customerInfo {
383 |                     self.handler(customerInfo)
    |                          `- warning: converting function value of type 'PurchaseOrRestoreCompletedHandler' (aka '@MainActor @Sendable (CustomerInfo) -> ()') to '(CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
384 |                 }
385 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:399:26: warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
397 |             .onPreferenceChange(PurchaseErrorPreferenceKey.self) { error in
398 |                 if let error {
399 |                     self.handler(error)
    |                          `- warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
400 |                 }
401 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:415:26: warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
413 |             .onPreferenceChange(RestoreErrorPreferenceKey.self) { error in
414 |                 if let error {
415 |                     self.handler(error)
    |                          `- warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
416 |                 }
417 |             }
[958/1069] Compiling RevenueCatUI ErrorDisplay.swift
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PresentPaywallFooter.swift:404:26: warning: converting function value of type 'PaywallTierChangeHandler' (aka '@MainActor @Sendable (PaywallData.Tier, String) -> ()') to '(PaywallData.Tier, String) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
402 |             .onPreferenceChange(PaywallCurrentTierPreferenceKey.self) { data in
403 |                 if let data {
404 |                     self.handler(data.tier, data.localizedName)
    |                          `- warning: converting function value of type 'PaywallTierChangeHandler' (aka '@MainActor @Sendable (PaywallData.Tier, String) -> ()') to '(PaywallData.Tier, String) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
405 |                 }
406 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:307:26: warning: converting function value of type 'PurchaseOfPackageStartedHandler' (aka '@MainActor @Sendable (Package) -> ()') to '(Package) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
305 |             .onPreferenceChange(PurchaseInProgressPreferenceKey.self) { package in
306 |                 if let package {
307 |                     self.handler(package)
    |                          `- warning: converting function value of type 'PurchaseOfPackageStartedHandler' (aka '@MainActor @Sendable (Package) -> ()') to '(Package) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
308 |                 }
309 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:331:26: warning: converting function value of type 'PurchaseCompletedHandler' (aka '@MainActor @Sendable (Optional<StoreTransaction>, CustomerInfo) -> ()') to '(StoreTransaction?, CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
329 |             .onPreferenceChange(PurchasedResultPreferenceKey.self) { result in
330 |                 if let result, !result.userCancelled {
331 |                     self.handler(result.transaction, result.customerInfo)
    |                          `- warning: converting function value of type 'PurchaseCompletedHandler' (aka '@MainActor @Sendable (Optional<StoreTransaction>, CustomerInfo) -> ()') to '(StoreTransaction?, CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
332 |                 }
333 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:351:26: warning: converting function value of type 'PurchaseCancelledHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
349 |             .onPreferenceChange(PurchasedResultPreferenceKey.self) { result in
350 |                 if let result, result.userCancelled {
351 |                     self.handler()
    |                          `- warning: converting function value of type 'PurchaseCancelledHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
352 |                 }
353 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:367:26: warning: converting function value of type 'RestoreStartedHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
365 |             .onPreferenceChange(RestoreInProgressPreferenceKey.self) { inProgress in
366 |                 if inProgress {
367 |                     self.handler()
    |                          `- warning: converting function value of type 'RestoreStartedHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
368 |                 }
369 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:383:26: warning: converting function value of type 'PurchaseOrRestoreCompletedHandler' (aka '@MainActor @Sendable (CustomerInfo) -> ()') to '(CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
381 |             .onPreferenceChange(RestoredCustomerInfoPreferenceKey.self) { customerInfo in
382 |                 if let customerInfo {
383 |                     self.handler(customerInfo)
    |                          `- warning: converting function value of type 'PurchaseOrRestoreCompletedHandler' (aka '@MainActor @Sendable (CustomerInfo) -> ()') to '(CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
384 |                 }
385 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:399:26: warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
397 |             .onPreferenceChange(PurchaseErrorPreferenceKey.self) { error in
398 |                 if let error {
399 |                     self.handler(error)
    |                          `- warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
400 |                 }
401 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:415:26: warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
413 |             .onPreferenceChange(RestoreErrorPreferenceKey.self) { error in
414 |                 if let error {
415 |                     self.handler(error)
    |                          `- warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
416 |                 }
417 |             }
[959/1069] Compiling RevenueCatUI ErrorView.swift
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PresentPaywallFooter.swift:404:26: warning: converting function value of type 'PaywallTierChangeHandler' (aka '@MainActor @Sendable (PaywallData.Tier, String) -> ()') to '(PaywallData.Tier, String) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
402 |             .onPreferenceChange(PaywallCurrentTierPreferenceKey.self) { data in
403 |                 if let data {
404 |                     self.handler(data.tier, data.localizedName)
    |                          `- warning: converting function value of type 'PaywallTierChangeHandler' (aka '@MainActor @Sendable (PaywallData.Tier, String) -> ()') to '(PaywallData.Tier, String) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
405 |                 }
406 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:307:26: warning: converting function value of type 'PurchaseOfPackageStartedHandler' (aka '@MainActor @Sendable (Package) -> ()') to '(Package) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
305 |             .onPreferenceChange(PurchaseInProgressPreferenceKey.self) { package in
306 |                 if let package {
307 |                     self.handler(package)
    |                          `- warning: converting function value of type 'PurchaseOfPackageStartedHandler' (aka '@MainActor @Sendable (Package) -> ()') to '(Package) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
308 |                 }
309 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:331:26: warning: converting function value of type 'PurchaseCompletedHandler' (aka '@MainActor @Sendable (Optional<StoreTransaction>, CustomerInfo) -> ()') to '(StoreTransaction?, CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
329 |             .onPreferenceChange(PurchasedResultPreferenceKey.self) { result in
330 |                 if let result, !result.userCancelled {
331 |                     self.handler(result.transaction, result.customerInfo)
    |                          `- warning: converting function value of type 'PurchaseCompletedHandler' (aka '@MainActor @Sendable (Optional<StoreTransaction>, CustomerInfo) -> ()') to '(StoreTransaction?, CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
332 |                 }
333 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:351:26: warning: converting function value of type 'PurchaseCancelledHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
349 |             .onPreferenceChange(PurchasedResultPreferenceKey.self) { result in
350 |                 if let result, result.userCancelled {
351 |                     self.handler()
    |                          `- warning: converting function value of type 'PurchaseCancelledHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
352 |                 }
353 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:367:26: warning: converting function value of type 'RestoreStartedHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
365 |             .onPreferenceChange(RestoreInProgressPreferenceKey.self) { inProgress in
366 |                 if inProgress {
367 |                     self.handler()
    |                          `- warning: converting function value of type 'RestoreStartedHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
368 |                 }
369 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:383:26: warning: converting function value of type 'PurchaseOrRestoreCompletedHandler' (aka '@MainActor @Sendable (CustomerInfo) -> ()') to '(CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
381 |             .onPreferenceChange(RestoredCustomerInfoPreferenceKey.self) { customerInfo in
382 |                 if let customerInfo {
383 |                     self.handler(customerInfo)
    |                          `- warning: converting function value of type 'PurchaseOrRestoreCompletedHandler' (aka '@MainActor @Sendable (CustomerInfo) -> ()') to '(CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
384 |                 }
385 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:399:26: warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
397 |             .onPreferenceChange(PurchaseErrorPreferenceKey.self) { error in
398 |                 if let error {
399 |                     self.handler(error)
    |                          `- warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
400 |                 }
401 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:415:26: warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
413 |             .onPreferenceChange(RestoreErrorPreferenceKey.self) { error in
414 |                 if let error {
415 |                     self.handler(error)
    |                          `- warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
416 |                 }
417 |             }
[960/1069] Compiling RevenueCatUI FooterView.swift
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PresentPaywallFooter.swift:404:26: warning: converting function value of type 'PaywallTierChangeHandler' (aka '@MainActor @Sendable (PaywallData.Tier, String) -> ()') to '(PaywallData.Tier, String) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
402 |             .onPreferenceChange(PaywallCurrentTierPreferenceKey.self) { data in
403 |                 if let data {
404 |                     self.handler(data.tier, data.localizedName)
    |                          `- warning: converting function value of type 'PaywallTierChangeHandler' (aka '@MainActor @Sendable (PaywallData.Tier, String) -> ()') to '(PaywallData.Tier, String) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
405 |                 }
406 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:307:26: warning: converting function value of type 'PurchaseOfPackageStartedHandler' (aka '@MainActor @Sendable (Package) -> ()') to '(Package) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
305 |             .onPreferenceChange(PurchaseInProgressPreferenceKey.self) { package in
306 |                 if let package {
307 |                     self.handler(package)
    |                          `- warning: converting function value of type 'PurchaseOfPackageStartedHandler' (aka '@MainActor @Sendable (Package) -> ()') to '(Package) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
308 |                 }
309 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:331:26: warning: converting function value of type 'PurchaseCompletedHandler' (aka '@MainActor @Sendable (Optional<StoreTransaction>, CustomerInfo) -> ()') to '(StoreTransaction?, CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
329 |             .onPreferenceChange(PurchasedResultPreferenceKey.self) { result in
330 |                 if let result, !result.userCancelled {
331 |                     self.handler(result.transaction, result.customerInfo)
    |                          `- warning: converting function value of type 'PurchaseCompletedHandler' (aka '@MainActor @Sendable (Optional<StoreTransaction>, CustomerInfo) -> ()') to '(StoreTransaction?, CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
332 |                 }
333 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:351:26: warning: converting function value of type 'PurchaseCancelledHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
349 |             .onPreferenceChange(PurchasedResultPreferenceKey.self) { result in
350 |                 if let result, result.userCancelled {
351 |                     self.handler()
    |                          `- warning: converting function value of type 'PurchaseCancelledHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
352 |                 }
353 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:367:26: warning: converting function value of type 'RestoreStartedHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
365 |             .onPreferenceChange(RestoreInProgressPreferenceKey.self) { inProgress in
366 |                 if inProgress {
367 |                     self.handler()
    |                          `- warning: converting function value of type 'RestoreStartedHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
368 |                 }
369 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:383:26: warning: converting function value of type 'PurchaseOrRestoreCompletedHandler' (aka '@MainActor @Sendable (CustomerInfo) -> ()') to '(CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
381 |             .onPreferenceChange(RestoredCustomerInfoPreferenceKey.self) { customerInfo in
382 |                 if let customerInfo {
383 |                     self.handler(customerInfo)
    |                          `- warning: converting function value of type 'PurchaseOrRestoreCompletedHandler' (aka '@MainActor @Sendable (CustomerInfo) -> ()') to '(CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
384 |                 }
385 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:399:26: warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
397 |             .onPreferenceChange(PurchaseErrorPreferenceKey.self) { error in
398 |                 if let error {
399 |                     self.handler(error)
    |                          `- warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
400 |                 }
401 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:415:26: warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
413 |             .onPreferenceChange(RestoreErrorPreferenceKey.self) { error in
414 |                 if let error {
415 |                     self.handler(error)
    |                          `- warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
416 |                 }
417 |             }
[961/1069] Compiling RevenueCatUI GradientView.swift
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PresentPaywallFooter.swift:404:26: warning: converting function value of type 'PaywallTierChangeHandler' (aka '@MainActor @Sendable (PaywallData.Tier, String) -> ()') to '(PaywallData.Tier, String) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
402 |             .onPreferenceChange(PaywallCurrentTierPreferenceKey.self) { data in
403 |                 if let data {
404 |                     self.handler(data.tier, data.localizedName)
    |                          `- warning: converting function value of type 'PaywallTierChangeHandler' (aka '@MainActor @Sendable (PaywallData.Tier, String) -> ()') to '(PaywallData.Tier, String) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
405 |                 }
406 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:307:26: warning: converting function value of type 'PurchaseOfPackageStartedHandler' (aka '@MainActor @Sendable (Package) -> ()') to '(Package) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
305 |             .onPreferenceChange(PurchaseInProgressPreferenceKey.self) { package in
306 |                 if let package {
307 |                     self.handler(package)
    |                          `- warning: converting function value of type 'PurchaseOfPackageStartedHandler' (aka '@MainActor @Sendable (Package) -> ()') to '(Package) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
308 |                 }
309 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:331:26: warning: converting function value of type 'PurchaseCompletedHandler' (aka '@MainActor @Sendable (Optional<StoreTransaction>, CustomerInfo) -> ()') to '(StoreTransaction?, CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
329 |             .onPreferenceChange(PurchasedResultPreferenceKey.self) { result in
330 |                 if let result, !result.userCancelled {
331 |                     self.handler(result.transaction, result.customerInfo)
    |                          `- warning: converting function value of type 'PurchaseCompletedHandler' (aka '@MainActor @Sendable (Optional<StoreTransaction>, CustomerInfo) -> ()') to '(StoreTransaction?, CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
332 |                 }
333 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:351:26: warning: converting function value of type 'PurchaseCancelledHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
349 |             .onPreferenceChange(PurchasedResultPreferenceKey.self) { result in
350 |                 if let result, result.userCancelled {
351 |                     self.handler()
    |                          `- warning: converting function value of type 'PurchaseCancelledHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
352 |                 }
353 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:367:26: warning: converting function value of type 'RestoreStartedHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
365 |             .onPreferenceChange(RestoreInProgressPreferenceKey.self) { inProgress in
366 |                 if inProgress {
367 |                     self.handler()
    |                          `- warning: converting function value of type 'RestoreStartedHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
368 |                 }
369 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:383:26: warning: converting function value of type 'PurchaseOrRestoreCompletedHandler' (aka '@MainActor @Sendable (CustomerInfo) -> ()') to '(CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
381 |             .onPreferenceChange(RestoredCustomerInfoPreferenceKey.self) { customerInfo in
382 |                 if let customerInfo {
383 |                     self.handler(customerInfo)
    |                          `- warning: converting function value of type 'PurchaseOrRestoreCompletedHandler' (aka '@MainActor @Sendable (CustomerInfo) -> ()') to '(CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
384 |                 }
385 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:399:26: warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
397 |             .onPreferenceChange(PurchaseErrorPreferenceKey.self) { error in
398 |                 if let error {
399 |                     self.handler(error)
    |                          `- warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
400 |                 }
401 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:415:26: warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
413 |             .onPreferenceChange(RestoreErrorPreferenceKey.self) { error in
414 |                 if let error {
415 |                     self.handler(error)
    |                          `- warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
416 |                 }
417 |             }
[962/1069] Compiling RevenueCatUI IconView.swift
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PresentPaywallFooter.swift:404:26: warning: converting function value of type 'PaywallTierChangeHandler' (aka '@MainActor @Sendable (PaywallData.Tier, String) -> ()') to '(PaywallData.Tier, String) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
402 |             .onPreferenceChange(PaywallCurrentTierPreferenceKey.self) { data in
403 |                 if let data {
404 |                     self.handler(data.tier, data.localizedName)
    |                          `- warning: converting function value of type 'PaywallTierChangeHandler' (aka '@MainActor @Sendable (PaywallData.Tier, String) -> ()') to '(PaywallData.Tier, String) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
405 |                 }
406 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:307:26: warning: converting function value of type 'PurchaseOfPackageStartedHandler' (aka '@MainActor @Sendable (Package) -> ()') to '(Package) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
305 |             .onPreferenceChange(PurchaseInProgressPreferenceKey.self) { package in
306 |                 if let package {
307 |                     self.handler(package)
    |                          `- warning: converting function value of type 'PurchaseOfPackageStartedHandler' (aka '@MainActor @Sendable (Package) -> ()') to '(Package) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
308 |                 }
309 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:331:26: warning: converting function value of type 'PurchaseCompletedHandler' (aka '@MainActor @Sendable (Optional<StoreTransaction>, CustomerInfo) -> ()') to '(StoreTransaction?, CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
329 |             .onPreferenceChange(PurchasedResultPreferenceKey.self) { result in
330 |                 if let result, !result.userCancelled {
331 |                     self.handler(result.transaction, result.customerInfo)
    |                          `- warning: converting function value of type 'PurchaseCompletedHandler' (aka '@MainActor @Sendable (Optional<StoreTransaction>, CustomerInfo) -> ()') to '(StoreTransaction?, CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
332 |                 }
333 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:351:26: warning: converting function value of type 'PurchaseCancelledHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
349 |             .onPreferenceChange(PurchasedResultPreferenceKey.self) { result in
350 |                 if let result, result.userCancelled {
351 |                     self.handler()
    |                          `- warning: converting function value of type 'PurchaseCancelledHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
352 |                 }
353 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:367:26: warning: converting function value of type 'RestoreStartedHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
365 |             .onPreferenceChange(RestoreInProgressPreferenceKey.self) { inProgress in
366 |                 if inProgress {
367 |                     self.handler()
    |                          `- warning: converting function value of type 'RestoreStartedHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
368 |                 }
369 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:383:26: warning: converting function value of type 'PurchaseOrRestoreCompletedHandler' (aka '@MainActor @Sendable (CustomerInfo) -> ()') to '(CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
381 |             .onPreferenceChange(RestoredCustomerInfoPreferenceKey.self) { customerInfo in
382 |                 if let customerInfo {
383 |                     self.handler(customerInfo)
    |                          `- warning: converting function value of type 'PurchaseOrRestoreCompletedHandler' (aka '@MainActor @Sendable (CustomerInfo) -> ()') to '(CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
384 |                 }
385 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:399:26: warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
397 |             .onPreferenceChange(PurchaseErrorPreferenceKey.self) { error in
398 |                 if let error {
399 |                     self.handler(error)
    |                          `- warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
400 |                 }
401 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:415:26: warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
413 |             .onPreferenceChange(RestoreErrorPreferenceKey.self) { error in
414 |                 if let error {
415 |                     self.handler(error)
    |                          `- warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
416 |                 }
417 |             }
[963/1069] Compiling RevenueCatUI IntroEligibilityStateView.swift
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PresentPaywallFooter.swift:404:26: warning: converting function value of type 'PaywallTierChangeHandler' (aka '@MainActor @Sendable (PaywallData.Tier, String) -> ()') to '(PaywallData.Tier, String) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
402 |             .onPreferenceChange(PaywallCurrentTierPreferenceKey.self) { data in
403 |                 if let data {
404 |                     self.handler(data.tier, data.localizedName)
    |                          `- warning: converting function value of type 'PaywallTierChangeHandler' (aka '@MainActor @Sendable (PaywallData.Tier, String) -> ()') to '(PaywallData.Tier, String) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
405 |                 }
406 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:307:26: warning: converting function value of type 'PurchaseOfPackageStartedHandler' (aka '@MainActor @Sendable (Package) -> ()') to '(Package) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
305 |             .onPreferenceChange(PurchaseInProgressPreferenceKey.self) { package in
306 |                 if let package {
307 |                     self.handler(package)
    |                          `- warning: converting function value of type 'PurchaseOfPackageStartedHandler' (aka '@MainActor @Sendable (Package) -> ()') to '(Package) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
308 |                 }
309 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:331:26: warning: converting function value of type 'PurchaseCompletedHandler' (aka '@MainActor @Sendable (Optional<StoreTransaction>, CustomerInfo) -> ()') to '(StoreTransaction?, CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
329 |             .onPreferenceChange(PurchasedResultPreferenceKey.self) { result in
330 |                 if let result, !result.userCancelled {
331 |                     self.handler(result.transaction, result.customerInfo)
    |                          `- warning: converting function value of type 'PurchaseCompletedHandler' (aka '@MainActor @Sendable (Optional<StoreTransaction>, CustomerInfo) -> ()') to '(StoreTransaction?, CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
332 |                 }
333 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:351:26: warning: converting function value of type 'PurchaseCancelledHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
349 |             .onPreferenceChange(PurchasedResultPreferenceKey.self) { result in
350 |                 if let result, result.userCancelled {
351 |                     self.handler()
    |                          `- warning: converting function value of type 'PurchaseCancelledHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
352 |                 }
353 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:367:26: warning: converting function value of type 'RestoreStartedHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
365 |             .onPreferenceChange(RestoreInProgressPreferenceKey.self) { inProgress in
366 |                 if inProgress {
367 |                     self.handler()
    |                          `- warning: converting function value of type 'RestoreStartedHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
368 |                 }
369 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:383:26: warning: converting function value of type 'PurchaseOrRestoreCompletedHandler' (aka '@MainActor @Sendable (CustomerInfo) -> ()') to '(CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
381 |             .onPreferenceChange(RestoredCustomerInfoPreferenceKey.self) { customerInfo in
382 |                 if let customerInfo {
383 |                     self.handler(customerInfo)
    |                          `- warning: converting function value of type 'PurchaseOrRestoreCompletedHandler' (aka '@MainActor @Sendable (CustomerInfo) -> ()') to '(CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
384 |                 }
385 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:399:26: warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
397 |             .onPreferenceChange(PurchaseErrorPreferenceKey.self) { error in
398 |                 if let error {
399 |                     self.handler(error)
    |                          `- warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
400 |                 }
401 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:415:26: warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
413 |             .onPreferenceChange(RestoreErrorPreferenceKey.self) { error in
414 |                 if let error {
415 |                     self.handler(error)
    |                          `- warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
416 |                 }
417 |             }
[964/1069] Compiling RevenueCatUI LoadingPaywallView.swift
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PresentPaywallFooter.swift:404:26: warning: converting function value of type 'PaywallTierChangeHandler' (aka '@MainActor @Sendable (PaywallData.Tier, String) -> ()') to '(PaywallData.Tier, String) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
402 |             .onPreferenceChange(PaywallCurrentTierPreferenceKey.self) { data in
403 |                 if let data {
404 |                     self.handler(data.tier, data.localizedName)
    |                          `- warning: converting function value of type 'PaywallTierChangeHandler' (aka '@MainActor @Sendable (PaywallData.Tier, String) -> ()') to '(PaywallData.Tier, String) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
405 |                 }
406 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:307:26: warning: converting function value of type 'PurchaseOfPackageStartedHandler' (aka '@MainActor @Sendable (Package) -> ()') to '(Package) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
305 |             .onPreferenceChange(PurchaseInProgressPreferenceKey.self) { package in
306 |                 if let package {
307 |                     self.handler(package)
    |                          `- warning: converting function value of type 'PurchaseOfPackageStartedHandler' (aka '@MainActor @Sendable (Package) -> ()') to '(Package) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
308 |                 }
309 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:331:26: warning: converting function value of type 'PurchaseCompletedHandler' (aka '@MainActor @Sendable (Optional<StoreTransaction>, CustomerInfo) -> ()') to '(StoreTransaction?, CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
329 |             .onPreferenceChange(PurchasedResultPreferenceKey.self) { result in
330 |                 if let result, !result.userCancelled {
331 |                     self.handler(result.transaction, result.customerInfo)
    |                          `- warning: converting function value of type 'PurchaseCompletedHandler' (aka '@MainActor @Sendable (Optional<StoreTransaction>, CustomerInfo) -> ()') to '(StoreTransaction?, CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
332 |                 }
333 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:351:26: warning: converting function value of type 'PurchaseCancelledHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
349 |             .onPreferenceChange(PurchasedResultPreferenceKey.self) { result in
350 |                 if let result, result.userCancelled {
351 |                     self.handler()
    |                          `- warning: converting function value of type 'PurchaseCancelledHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
352 |                 }
353 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:367:26: warning: converting function value of type 'RestoreStartedHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
365 |             .onPreferenceChange(RestoreInProgressPreferenceKey.self) { inProgress in
366 |                 if inProgress {
367 |                     self.handler()
    |                          `- warning: converting function value of type 'RestoreStartedHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
368 |                 }
369 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:383:26: warning: converting function value of type 'PurchaseOrRestoreCompletedHandler' (aka '@MainActor @Sendable (CustomerInfo) -> ()') to '(CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
381 |             .onPreferenceChange(RestoredCustomerInfoPreferenceKey.self) { customerInfo in
382 |                 if let customerInfo {
383 |                     self.handler(customerInfo)
    |                          `- warning: converting function value of type 'PurchaseOrRestoreCompletedHandler' (aka '@MainActor @Sendable (CustomerInfo) -> ()') to '(CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
384 |                 }
385 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:399:26: warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
397 |             .onPreferenceChange(PurchaseErrorPreferenceKey.self) { error in
398 |                 if let error {
399 |                     self.handler(error)
    |                          `- warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
400 |                 }
401 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:415:26: warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
413 |             .onPreferenceChange(RestoreErrorPreferenceKey.self) { error in
414 |                 if let error {
415 |                     self.handler(error)
    |                          `- warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
416 |                 }
417 |             }
[965/1069] Compiling RevenueCatUI PackageButtonStyle.swift
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PresentPaywallFooter.swift:404:26: warning: converting function value of type 'PaywallTierChangeHandler' (aka '@MainActor @Sendable (PaywallData.Tier, String) -> ()') to '(PaywallData.Tier, String) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
402 |             .onPreferenceChange(PaywallCurrentTierPreferenceKey.self) { data in
403 |                 if let data {
404 |                     self.handler(data.tier, data.localizedName)
    |                          `- warning: converting function value of type 'PaywallTierChangeHandler' (aka '@MainActor @Sendable (PaywallData.Tier, String) -> ()') to '(PaywallData.Tier, String) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
405 |                 }
406 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:307:26: warning: converting function value of type 'PurchaseOfPackageStartedHandler' (aka '@MainActor @Sendable (Package) -> ()') to '(Package) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
305 |             .onPreferenceChange(PurchaseInProgressPreferenceKey.self) { package in
306 |                 if let package {
307 |                     self.handler(package)
    |                          `- warning: converting function value of type 'PurchaseOfPackageStartedHandler' (aka '@MainActor @Sendable (Package) -> ()') to '(Package) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
308 |                 }
309 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:331:26: warning: converting function value of type 'PurchaseCompletedHandler' (aka '@MainActor @Sendable (Optional<StoreTransaction>, CustomerInfo) -> ()') to '(StoreTransaction?, CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
329 |             .onPreferenceChange(PurchasedResultPreferenceKey.self) { result in
330 |                 if let result, !result.userCancelled {
331 |                     self.handler(result.transaction, result.customerInfo)
    |                          `- warning: converting function value of type 'PurchaseCompletedHandler' (aka '@MainActor @Sendable (Optional<StoreTransaction>, CustomerInfo) -> ()') to '(StoreTransaction?, CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
332 |                 }
333 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:351:26: warning: converting function value of type 'PurchaseCancelledHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
349 |             .onPreferenceChange(PurchasedResultPreferenceKey.self) { result in
350 |                 if let result, result.userCancelled {
351 |                     self.handler()
    |                          `- warning: converting function value of type 'PurchaseCancelledHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
352 |                 }
353 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:367:26: warning: converting function value of type 'RestoreStartedHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
365 |             .onPreferenceChange(RestoreInProgressPreferenceKey.self) { inProgress in
366 |                 if inProgress {
367 |                     self.handler()
    |                          `- warning: converting function value of type 'RestoreStartedHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
368 |                 }
369 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:383:26: warning: converting function value of type 'PurchaseOrRestoreCompletedHandler' (aka '@MainActor @Sendable (CustomerInfo) -> ()') to '(CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
381 |             .onPreferenceChange(RestoredCustomerInfoPreferenceKey.self) { customerInfo in
382 |                 if let customerInfo {
383 |                     self.handler(customerInfo)
    |                          `- warning: converting function value of type 'PurchaseOrRestoreCompletedHandler' (aka '@MainActor @Sendable (CustomerInfo) -> ()') to '(CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
384 |                 }
385 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:399:26: warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
397 |             .onPreferenceChange(PurchaseErrorPreferenceKey.self) { error in
398 |                 if let error {
399 |                     self.handler(error)
    |                          `- warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
400 |                 }
401 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:415:26: warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
413 |             .onPreferenceChange(RestoreErrorPreferenceKey.self) { error in
414 |                 if let error {
415 |                     self.handler(error)
    |                          `- warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
416 |                 }
417 |             }
[966/1069] Compiling RevenueCatUI ProgressView.swift
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PresentPaywallFooter.swift:404:26: warning: converting function value of type 'PaywallTierChangeHandler' (aka '@MainActor @Sendable (PaywallData.Tier, String) -> ()') to '(PaywallData.Tier, String) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
402 |             .onPreferenceChange(PaywallCurrentTierPreferenceKey.self) { data in
403 |                 if let data {
404 |                     self.handler(data.tier, data.localizedName)
    |                          `- warning: converting function value of type 'PaywallTierChangeHandler' (aka '@MainActor @Sendable (PaywallData.Tier, String) -> ()') to '(PaywallData.Tier, String) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
405 |                 }
406 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:307:26: warning: converting function value of type 'PurchaseOfPackageStartedHandler' (aka '@MainActor @Sendable (Package) -> ()') to '(Package) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
305 |             .onPreferenceChange(PurchaseInProgressPreferenceKey.self) { package in
306 |                 if let package {
307 |                     self.handler(package)
    |                          `- warning: converting function value of type 'PurchaseOfPackageStartedHandler' (aka '@MainActor @Sendable (Package) -> ()') to '(Package) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
308 |                 }
309 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:331:26: warning: converting function value of type 'PurchaseCompletedHandler' (aka '@MainActor @Sendable (Optional<StoreTransaction>, CustomerInfo) -> ()') to '(StoreTransaction?, CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
329 |             .onPreferenceChange(PurchasedResultPreferenceKey.self) { result in
330 |                 if let result, !result.userCancelled {
331 |                     self.handler(result.transaction, result.customerInfo)
    |                          `- warning: converting function value of type 'PurchaseCompletedHandler' (aka '@MainActor @Sendable (Optional<StoreTransaction>, CustomerInfo) -> ()') to '(StoreTransaction?, CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
332 |                 }
333 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:351:26: warning: converting function value of type 'PurchaseCancelledHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
349 |             .onPreferenceChange(PurchasedResultPreferenceKey.self) { result in
350 |                 if let result, result.userCancelled {
351 |                     self.handler()
    |                          `- warning: converting function value of type 'PurchaseCancelledHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
352 |                 }
353 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:367:26: warning: converting function value of type 'RestoreStartedHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
365 |             .onPreferenceChange(RestoreInProgressPreferenceKey.self) { inProgress in
366 |                 if inProgress {
367 |                     self.handler()
    |                          `- warning: converting function value of type 'RestoreStartedHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
368 |                 }
369 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:383:26: warning: converting function value of type 'PurchaseOrRestoreCompletedHandler' (aka '@MainActor @Sendable (CustomerInfo) -> ()') to '(CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
381 |             .onPreferenceChange(RestoredCustomerInfoPreferenceKey.self) { customerInfo in
382 |                 if let customerInfo {
383 |                     self.handler(customerInfo)
    |                          `- warning: converting function value of type 'PurchaseOrRestoreCompletedHandler' (aka '@MainActor @Sendable (CustomerInfo) -> ()') to '(CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
384 |                 }
385 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:399:26: warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
397 |             .onPreferenceChange(PurchaseErrorPreferenceKey.self) { error in
398 |                 if let error {
399 |                     self.handler(error)
    |                          `- warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
400 |                 }
401 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:415:26: warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
413 |             .onPreferenceChange(RestoreErrorPreferenceKey.self) { error in
414 |                 if let error {
415 |                     self.handler(error)
    |                          `- warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
416 |                 }
417 |             }
[967/1069] Compiling RevenueCatUI PurchaseButton.swift
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PresentPaywallFooter.swift:404:26: warning: converting function value of type 'PaywallTierChangeHandler' (aka '@MainActor @Sendable (PaywallData.Tier, String) -> ()') to '(PaywallData.Tier, String) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
402 |             .onPreferenceChange(PaywallCurrentTierPreferenceKey.self) { data in
403 |                 if let data {
404 |                     self.handler(data.tier, data.localizedName)
    |                          `- warning: converting function value of type 'PaywallTierChangeHandler' (aka '@MainActor @Sendable (PaywallData.Tier, String) -> ()') to '(PaywallData.Tier, String) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
405 |                 }
406 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:307:26: warning: converting function value of type 'PurchaseOfPackageStartedHandler' (aka '@MainActor @Sendable (Package) -> ()') to '(Package) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
305 |             .onPreferenceChange(PurchaseInProgressPreferenceKey.self) { package in
306 |                 if let package {
307 |                     self.handler(package)
    |                          `- warning: converting function value of type 'PurchaseOfPackageStartedHandler' (aka '@MainActor @Sendable (Package) -> ()') to '(Package) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
308 |                 }
309 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:331:26: warning: converting function value of type 'PurchaseCompletedHandler' (aka '@MainActor @Sendable (Optional<StoreTransaction>, CustomerInfo) -> ()') to '(StoreTransaction?, CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
329 |             .onPreferenceChange(PurchasedResultPreferenceKey.self) { result in
330 |                 if let result, !result.userCancelled {
331 |                     self.handler(result.transaction, result.customerInfo)
    |                          `- warning: converting function value of type 'PurchaseCompletedHandler' (aka '@MainActor @Sendable (Optional<StoreTransaction>, CustomerInfo) -> ()') to '(StoreTransaction?, CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
332 |                 }
333 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:351:26: warning: converting function value of type 'PurchaseCancelledHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
349 |             .onPreferenceChange(PurchasedResultPreferenceKey.self) { result in
350 |                 if let result, result.userCancelled {
351 |                     self.handler()
    |                          `- warning: converting function value of type 'PurchaseCancelledHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
352 |                 }
353 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:367:26: warning: converting function value of type 'RestoreStartedHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
365 |             .onPreferenceChange(RestoreInProgressPreferenceKey.self) { inProgress in
366 |                 if inProgress {
367 |                     self.handler()
    |                          `- warning: converting function value of type 'RestoreStartedHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
368 |                 }
369 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:383:26: warning: converting function value of type 'PurchaseOrRestoreCompletedHandler' (aka '@MainActor @Sendable (CustomerInfo) -> ()') to '(CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
381 |             .onPreferenceChange(RestoredCustomerInfoPreferenceKey.self) { customerInfo in
382 |                 if let customerInfo {
383 |                     self.handler(customerInfo)
    |                          `- warning: converting function value of type 'PurchaseOrRestoreCompletedHandler' (aka '@MainActor @Sendable (CustomerInfo) -> ()') to '(CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
384 |                 }
385 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:399:26: warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
397 |             .onPreferenceChange(PurchaseErrorPreferenceKey.self) { error in
398 |                 if let error {
399 |                     self.handler(error)
    |                          `- warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
400 |                 }
401 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:415:26: warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
413 |             .onPreferenceChange(RestoreErrorPreferenceKey.self) { error in
414 |                 if let error {
415 |                     self.handler(error)
    |                          `- warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
416 |                 }
417 |             }
[968/1069] Compiling RevenueCatUI RemoteImage.swift
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PresentPaywallFooter.swift:404:26: warning: converting function value of type 'PaywallTierChangeHandler' (aka '@MainActor @Sendable (PaywallData.Tier, String) -> ()') to '(PaywallData.Tier, String) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
402 |             .onPreferenceChange(PaywallCurrentTierPreferenceKey.self) { data in
403 |                 if let data {
404 |                     self.handler(data.tier, data.localizedName)
    |                          `- warning: converting function value of type 'PaywallTierChangeHandler' (aka '@MainActor @Sendable (PaywallData.Tier, String) -> ()') to '(PaywallData.Tier, String) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
405 |                 }
406 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:307:26: warning: converting function value of type 'PurchaseOfPackageStartedHandler' (aka '@MainActor @Sendable (Package) -> ()') to '(Package) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
305 |             .onPreferenceChange(PurchaseInProgressPreferenceKey.self) { package in
306 |                 if let package {
307 |                     self.handler(package)
    |                          `- warning: converting function value of type 'PurchaseOfPackageStartedHandler' (aka '@MainActor @Sendable (Package) -> ()') to '(Package) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
308 |                 }
309 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:331:26: warning: converting function value of type 'PurchaseCompletedHandler' (aka '@MainActor @Sendable (Optional<StoreTransaction>, CustomerInfo) -> ()') to '(StoreTransaction?, CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
329 |             .onPreferenceChange(PurchasedResultPreferenceKey.self) { result in
330 |                 if let result, !result.userCancelled {
331 |                     self.handler(result.transaction, result.customerInfo)
    |                          `- warning: converting function value of type 'PurchaseCompletedHandler' (aka '@MainActor @Sendable (Optional<StoreTransaction>, CustomerInfo) -> ()') to '(StoreTransaction?, CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
332 |                 }
333 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:351:26: warning: converting function value of type 'PurchaseCancelledHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
349 |             .onPreferenceChange(PurchasedResultPreferenceKey.self) { result in
350 |                 if let result, result.userCancelled {
351 |                     self.handler()
    |                          `- warning: converting function value of type 'PurchaseCancelledHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
352 |                 }
353 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:367:26: warning: converting function value of type 'RestoreStartedHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
365 |             .onPreferenceChange(RestoreInProgressPreferenceKey.self) { inProgress in
366 |                 if inProgress {
367 |                     self.handler()
    |                          `- warning: converting function value of type 'RestoreStartedHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
368 |                 }
369 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:383:26: warning: converting function value of type 'PurchaseOrRestoreCompletedHandler' (aka '@MainActor @Sendable (CustomerInfo) -> ()') to '(CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
381 |             .onPreferenceChange(RestoredCustomerInfoPreferenceKey.self) { customerInfo in
382 |                 if let customerInfo {
383 |                     self.handler(customerInfo)
    |                          `- warning: converting function value of type 'PurchaseOrRestoreCompletedHandler' (aka '@MainActor @Sendable (CustomerInfo) -> ()') to '(CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
384 |                 }
385 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:399:26: warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
397 |             .onPreferenceChange(PurchaseErrorPreferenceKey.self) { error in
398 |                 if let error {
399 |                     self.handler(error)
    |                          `- warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
400 |                 }
401 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:415:26: warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
413 |             .onPreferenceChange(RestoreErrorPreferenceKey.self) { error in
414 |                 if let error {
415 |                     self.handler(error)
    |                          `- warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
416 |                 }
417 |             }
[969/1069] Compiling RevenueCatUI SafariView.swift
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PresentPaywallFooter.swift:404:26: warning: converting function value of type 'PaywallTierChangeHandler' (aka '@MainActor @Sendable (PaywallData.Tier, String) -> ()') to '(PaywallData.Tier, String) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
402 |             .onPreferenceChange(PaywallCurrentTierPreferenceKey.self) { data in
403 |                 if let data {
404 |                     self.handler(data.tier, data.localizedName)
    |                          `- warning: converting function value of type 'PaywallTierChangeHandler' (aka '@MainActor @Sendable (PaywallData.Tier, String) -> ()') to '(PaywallData.Tier, String) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
405 |                 }
406 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:307:26: warning: converting function value of type 'PurchaseOfPackageStartedHandler' (aka '@MainActor @Sendable (Package) -> ()') to '(Package) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
305 |             .onPreferenceChange(PurchaseInProgressPreferenceKey.self) { package in
306 |                 if let package {
307 |                     self.handler(package)
    |                          `- warning: converting function value of type 'PurchaseOfPackageStartedHandler' (aka '@MainActor @Sendable (Package) -> ()') to '(Package) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
308 |                 }
309 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:331:26: warning: converting function value of type 'PurchaseCompletedHandler' (aka '@MainActor @Sendable (Optional<StoreTransaction>, CustomerInfo) -> ()') to '(StoreTransaction?, CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
329 |             .onPreferenceChange(PurchasedResultPreferenceKey.self) { result in
330 |                 if let result, !result.userCancelled {
331 |                     self.handler(result.transaction, result.customerInfo)
    |                          `- warning: converting function value of type 'PurchaseCompletedHandler' (aka '@MainActor @Sendable (Optional<StoreTransaction>, CustomerInfo) -> ()') to '(StoreTransaction?, CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
332 |                 }
333 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:351:26: warning: converting function value of type 'PurchaseCancelledHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
349 |             .onPreferenceChange(PurchasedResultPreferenceKey.self) { result in
350 |                 if let result, result.userCancelled {
351 |                     self.handler()
    |                          `- warning: converting function value of type 'PurchaseCancelledHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
352 |                 }
353 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:367:26: warning: converting function value of type 'RestoreStartedHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
365 |             .onPreferenceChange(RestoreInProgressPreferenceKey.self) { inProgress in
366 |                 if inProgress {
367 |                     self.handler()
    |                          `- warning: converting function value of type 'RestoreStartedHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
368 |                 }
369 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:383:26: warning: converting function value of type 'PurchaseOrRestoreCompletedHandler' (aka '@MainActor @Sendable (CustomerInfo) -> ()') to '(CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
381 |             .onPreferenceChange(RestoredCustomerInfoPreferenceKey.self) { customerInfo in
382 |                 if let customerInfo {
383 |                     self.handler(customerInfo)
    |                          `- warning: converting function value of type 'PurchaseOrRestoreCompletedHandler' (aka '@MainActor @Sendable (CustomerInfo) -> ()') to '(CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
384 |                 }
385 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:399:26: warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
397 |             .onPreferenceChange(PurchaseErrorPreferenceKey.self) { error in
398 |                 if let error {
399 |                     self.handler(error)
    |                          `- warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
400 |                 }
401 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:415:26: warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
413 |             .onPreferenceChange(RestoreErrorPreferenceKey.self) { error in
414 |                 if let error {
415 |                     self.handler(error)
    |                          `- warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
416 |                 }
417 |             }
[970/1069] Compiling RevenueCatUI TemplateBackgroundImageView.swift
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PresentPaywallFooter.swift:404:26: warning: converting function value of type 'PaywallTierChangeHandler' (aka '@MainActor @Sendable (PaywallData.Tier, String) -> ()') to '(PaywallData.Tier, String) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
402 |             .onPreferenceChange(PaywallCurrentTierPreferenceKey.self) { data in
403 |                 if let data {
404 |                     self.handler(data.tier, data.localizedName)
    |                          `- warning: converting function value of type 'PaywallTierChangeHandler' (aka '@MainActor @Sendable (PaywallData.Tier, String) -> ()') to '(PaywallData.Tier, String) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
405 |                 }
406 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:307:26: warning: converting function value of type 'PurchaseOfPackageStartedHandler' (aka '@MainActor @Sendable (Package) -> ()') to '(Package) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
305 |             .onPreferenceChange(PurchaseInProgressPreferenceKey.self) { package in
306 |                 if let package {
307 |                     self.handler(package)
    |                          `- warning: converting function value of type 'PurchaseOfPackageStartedHandler' (aka '@MainActor @Sendable (Package) -> ()') to '(Package) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
308 |                 }
309 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:331:26: warning: converting function value of type 'PurchaseCompletedHandler' (aka '@MainActor @Sendable (Optional<StoreTransaction>, CustomerInfo) -> ()') to '(StoreTransaction?, CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
329 |             .onPreferenceChange(PurchasedResultPreferenceKey.self) { result in
330 |                 if let result, !result.userCancelled {
331 |                     self.handler(result.transaction, result.customerInfo)
    |                          `- warning: converting function value of type 'PurchaseCompletedHandler' (aka '@MainActor @Sendable (Optional<StoreTransaction>, CustomerInfo) -> ()') to '(StoreTransaction?, CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
332 |                 }
333 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:351:26: warning: converting function value of type 'PurchaseCancelledHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
349 |             .onPreferenceChange(PurchasedResultPreferenceKey.self) { result in
350 |                 if let result, result.userCancelled {
351 |                     self.handler()
    |                          `- warning: converting function value of type 'PurchaseCancelledHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
352 |                 }
353 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:367:26: warning: converting function value of type 'RestoreStartedHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
365 |             .onPreferenceChange(RestoreInProgressPreferenceKey.self) { inProgress in
366 |                 if inProgress {
367 |                     self.handler()
    |                          `- warning: converting function value of type 'RestoreStartedHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
368 |                 }
369 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:383:26: warning: converting function value of type 'PurchaseOrRestoreCompletedHandler' (aka '@MainActor @Sendable (CustomerInfo) -> ()') to '(CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
381 |             .onPreferenceChange(RestoredCustomerInfoPreferenceKey.self) { customerInfo in
382 |                 if let customerInfo {
383 |                     self.handler(customerInfo)
    |                          `- warning: converting function value of type 'PurchaseOrRestoreCompletedHandler' (aka '@MainActor @Sendable (CustomerInfo) -> ()') to '(CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
384 |                 }
385 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:399:26: warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
397 |             .onPreferenceChange(PurchaseErrorPreferenceKey.self) { error in
398 |                 if let error {
399 |                     self.handler(error)
    |                          `- warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
400 |                 }
401 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:415:26: warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
413 |             .onPreferenceChange(RestoreErrorPreferenceKey.self) { error in
414 |                 if let error {
415 |                     self.handler(error)
    |                          `- warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
416 |                 }
417 |             }
[971/1069] Compiling RevenueCatUI TemplatePackageSetting.swift
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PresentPaywallFooter.swift:404:26: warning: converting function value of type 'PaywallTierChangeHandler' (aka '@MainActor @Sendable (PaywallData.Tier, String) -> ()') to '(PaywallData.Tier, String) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
402 |             .onPreferenceChange(PaywallCurrentTierPreferenceKey.self) { data in
403 |                 if let data {
404 |                     self.handler(data.tier, data.localizedName)
    |                          `- warning: converting function value of type 'PaywallTierChangeHandler' (aka '@MainActor @Sendable (PaywallData.Tier, String) -> ()') to '(PaywallData.Tier, String) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
405 |                 }
406 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:307:26: warning: converting function value of type 'PurchaseOfPackageStartedHandler' (aka '@MainActor @Sendable (Package) -> ()') to '(Package) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
305 |             .onPreferenceChange(PurchaseInProgressPreferenceKey.self) { package in
306 |                 if let package {
307 |                     self.handler(package)
    |                          `- warning: converting function value of type 'PurchaseOfPackageStartedHandler' (aka '@MainActor @Sendable (Package) -> ()') to '(Package) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
308 |                 }
309 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:331:26: warning: converting function value of type 'PurchaseCompletedHandler' (aka '@MainActor @Sendable (Optional<StoreTransaction>, CustomerInfo) -> ()') to '(StoreTransaction?, CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
329 |             .onPreferenceChange(PurchasedResultPreferenceKey.self) { result in
330 |                 if let result, !result.userCancelled {
331 |                     self.handler(result.transaction, result.customerInfo)
    |                          `- warning: converting function value of type 'PurchaseCompletedHandler' (aka '@MainActor @Sendable (Optional<StoreTransaction>, CustomerInfo) -> ()') to '(StoreTransaction?, CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
332 |                 }
333 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:351:26: warning: converting function value of type 'PurchaseCancelledHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
349 |             .onPreferenceChange(PurchasedResultPreferenceKey.self) { result in
350 |                 if let result, result.userCancelled {
351 |                     self.handler()
    |                          `- warning: converting function value of type 'PurchaseCancelledHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
352 |                 }
353 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:367:26: warning: converting function value of type 'RestoreStartedHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
365 |             .onPreferenceChange(RestoreInProgressPreferenceKey.self) { inProgress in
366 |                 if inProgress {
367 |                     self.handler()
    |                          `- warning: converting function value of type 'RestoreStartedHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
368 |                 }
369 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:383:26: warning: converting function value of type 'PurchaseOrRestoreCompletedHandler' (aka '@MainActor @Sendable (CustomerInfo) -> ()') to '(CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
381 |             .onPreferenceChange(RestoredCustomerInfoPreferenceKey.self) { customerInfo in
382 |                 if let customerInfo {
383 |                     self.handler(customerInfo)
    |                          `- warning: converting function value of type 'PurchaseOrRestoreCompletedHandler' (aka '@MainActor @Sendable (CustomerInfo) -> ()') to '(CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
384 |                 }
385 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:399:26: warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
397 |             .onPreferenceChange(PurchaseErrorPreferenceKey.self) { error in
398 |                 if let error {
399 |                     self.handler(error)
    |                          `- warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
400 |                 }
401 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:415:26: warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
413 |             .onPreferenceChange(RestoreErrorPreferenceKey.self) { error in
414 |                 if let error {
415 |                     self.handler(error)
    |                          `- warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
416 |                 }
417 |             }
[972/1069] Compiling RevenueCatUI TierSelectorView.swift
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PresentPaywallFooter.swift:404:26: warning: converting function value of type 'PaywallTierChangeHandler' (aka '@MainActor @Sendable (PaywallData.Tier, String) -> ()') to '(PaywallData.Tier, String) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
402 |             .onPreferenceChange(PaywallCurrentTierPreferenceKey.self) { data in
403 |                 if let data {
404 |                     self.handler(data.tier, data.localizedName)
    |                          `- warning: converting function value of type 'PaywallTierChangeHandler' (aka '@MainActor @Sendable (PaywallData.Tier, String) -> ()') to '(PaywallData.Tier, String) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
405 |                 }
406 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:307:26: warning: converting function value of type 'PurchaseOfPackageStartedHandler' (aka '@MainActor @Sendable (Package) -> ()') to '(Package) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
305 |             .onPreferenceChange(PurchaseInProgressPreferenceKey.self) { package in
306 |                 if let package {
307 |                     self.handler(package)
    |                          `- warning: converting function value of type 'PurchaseOfPackageStartedHandler' (aka '@MainActor @Sendable (Package) -> ()') to '(Package) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
308 |                 }
309 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:331:26: warning: converting function value of type 'PurchaseCompletedHandler' (aka '@MainActor @Sendable (Optional<StoreTransaction>, CustomerInfo) -> ()') to '(StoreTransaction?, CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
329 |             .onPreferenceChange(PurchasedResultPreferenceKey.self) { result in
330 |                 if let result, !result.userCancelled {
331 |                     self.handler(result.transaction, result.customerInfo)
    |                          `- warning: converting function value of type 'PurchaseCompletedHandler' (aka '@MainActor @Sendable (Optional<StoreTransaction>, CustomerInfo) -> ()') to '(StoreTransaction?, CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
332 |                 }
333 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:351:26: warning: converting function value of type 'PurchaseCancelledHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
349 |             .onPreferenceChange(PurchasedResultPreferenceKey.self) { result in
350 |                 if let result, result.userCancelled {
351 |                     self.handler()
    |                          `- warning: converting function value of type 'PurchaseCancelledHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
352 |                 }
353 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:367:26: warning: converting function value of type 'RestoreStartedHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
365 |             .onPreferenceChange(RestoreInProgressPreferenceKey.self) { inProgress in
366 |                 if inProgress {
367 |                     self.handler()
    |                          `- warning: converting function value of type 'RestoreStartedHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
368 |                 }
369 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:383:26: warning: converting function value of type 'PurchaseOrRestoreCompletedHandler' (aka '@MainActor @Sendable (CustomerInfo) -> ()') to '(CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
381 |             .onPreferenceChange(RestoredCustomerInfoPreferenceKey.self) { customerInfo in
382 |                 if let customerInfo {
383 |                     self.handler(customerInfo)
    |                          `- warning: converting function value of type 'PurchaseOrRestoreCompletedHandler' (aka '@MainActor @Sendable (CustomerInfo) -> ()') to '(CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
384 |                 }
385 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:399:26: warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
397 |             .onPreferenceChange(PurchaseErrorPreferenceKey.self) { error in
398 |                 if let error {
399 |                     self.handler(error)
    |                          `- warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
400 |                 }
401 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:415:26: warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
413 |             .onPreferenceChange(RestoreErrorPreferenceKey.self) { error in
414 |                 if let error {
415 |                     self.handler(error)
    |                          `- warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
416 |                 }
417 |             }
[973/1069] Compiling RevenueCatUI resource_bundle_accessor.swift
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PresentPaywallFooter.swift:404:26: warning: converting function value of type 'PaywallTierChangeHandler' (aka '@MainActor @Sendable (PaywallData.Tier, String) -> ()') to '(PaywallData.Tier, String) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
402 |             .onPreferenceChange(PaywallCurrentTierPreferenceKey.self) { data in
403 |                 if let data {
404 |                     self.handler(data.tier, data.localizedName)
    |                          `- warning: converting function value of type 'PaywallTierChangeHandler' (aka '@MainActor @Sendable (PaywallData.Tier, String) -> ()') to '(PaywallData.Tier, String) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
405 |                 }
406 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:307:26: warning: converting function value of type 'PurchaseOfPackageStartedHandler' (aka '@MainActor @Sendable (Package) -> ()') to '(Package) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
305 |             .onPreferenceChange(PurchaseInProgressPreferenceKey.self) { package in
306 |                 if let package {
307 |                     self.handler(package)
    |                          `- warning: converting function value of type 'PurchaseOfPackageStartedHandler' (aka '@MainActor @Sendable (Package) -> ()') to '(Package) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
308 |                 }
309 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:331:26: warning: converting function value of type 'PurchaseCompletedHandler' (aka '@MainActor @Sendable (Optional<StoreTransaction>, CustomerInfo) -> ()') to '(StoreTransaction?, CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
329 |             .onPreferenceChange(PurchasedResultPreferenceKey.self) { result in
330 |                 if let result, !result.userCancelled {
331 |                     self.handler(result.transaction, result.customerInfo)
    |                          `- warning: converting function value of type 'PurchaseCompletedHandler' (aka '@MainActor @Sendable (Optional<StoreTransaction>, CustomerInfo) -> ()') to '(StoreTransaction?, CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
332 |                 }
333 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:351:26: warning: converting function value of type 'PurchaseCancelledHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
349 |             .onPreferenceChange(PurchasedResultPreferenceKey.self) { result in
350 |                 if let result, result.userCancelled {
351 |                     self.handler()
    |                          `- warning: converting function value of type 'PurchaseCancelledHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
352 |                 }
353 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:367:26: warning: converting function value of type 'RestoreStartedHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
365 |             .onPreferenceChange(RestoreInProgressPreferenceKey.self) { inProgress in
366 |                 if inProgress {
367 |                     self.handler()
    |                          `- warning: converting function value of type 'RestoreStartedHandler' (aka '@MainActor @Sendable () -> ()') to '() -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
368 |                 }
369 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:383:26: warning: converting function value of type 'PurchaseOrRestoreCompletedHandler' (aka '@MainActor @Sendable (CustomerInfo) -> ()') to '(CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
381 |             .onPreferenceChange(RestoredCustomerInfoPreferenceKey.self) { customerInfo in
382 |                 if let customerInfo {
383 |                     self.handler(customerInfo)
    |                          `- warning: converting function value of type 'PurchaseOrRestoreCompletedHandler' (aka '@MainActor @Sendable (CustomerInfo) -> ()') to '(CustomerInfo) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
384 |                 }
385 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:399:26: warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
397 |             .onPreferenceChange(PurchaseErrorPreferenceKey.self) { error in
398 |                 if let error {
399 |                     self.handler(error)
    |                          `- warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
400 |                 }
401 |             }
/Users/admin/builder/spi-builder-workspace/RevenueCatUI/View+PurchaseRestoreCompleted.swift:415:26: warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
413 |             .onPreferenceChange(RestoreErrorPreferenceKey.self) { error in
414 |                 if let error {
415 |                     self.handler(error)
    |                          `- warning: converting function value of type 'PurchaseFailureHandler' (aka '@MainActor @Sendable (NSError) -> ()') to '(NSError) -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
416 |                 }
417 |             }
[974/1069] Compiling RevenueCatUI PaywallViewConfiguration.swift
[975/1069] Compiling RevenueCatUI PaywallViewMode+Extensions.swift
[976/1069] Compiling RevenueCatUI ProcessedLocalizedConfiguration.swift
[977/1069] Compiling RevenueCatUI Strings.swift
[978/1069] Compiling RevenueCatUI TemplateViewConfiguration+Extensions.swift
[979/1069] Compiling RevenueCatUI TemplateViewConfiguration+Images.swift
[980/1069] Compiling RevenueCatUI TemplateViewConfiguration.swift
[981/1069] Compiling RevenueCatUI TestData.swift
[982/1069] Compiling RevenueCatUI UserInterfaceIdiom.swift
[983/1069] Compiling RevenueCatUI Variables.swift
[984/1069] Compiling RevenueCatUI VirtualCurrenciesFixtures.swift
[985/1069] Compiling RevenueCatUI Bundle+Extensions.swift
[986/1069] Compiling RevenueCatUI ColorInformation+MultiScheme.swift
[987/1069] Compiling RevenueCatUI EmergeRenderingMode.swift
[988/1069] Compiling RevenueCatUI ImageLoader.swift
[989/1069] Compiling RevenueCatUI Logger.swift
[990/1069] Compiling RevenueCatUI Optional+Extensions.swift
[991/1069] Compiling RevenueCatUI Package+VariableDataProvider.swift
[992/1069] Compiling RevenueCatUI PaywallData+Default.swift
[993/1069] Compiling RevenueCatUI PreviewHelpers.swift
[994/1069] Compiling RevenueCatUI RuntimeUtils.swift
[995/1069] Compiling RevenueCatUI StoreProduct+Extensions.swift
[996/1069] Compiling RevenueCatUI StoreProductDiscount+Extensions.swift
[997/1069] Compiling RevenueCatUI SubscriptionPeriod+Extensions.swift
[998/1069] Compiling RevenueCatUI TabControlComponentViewModel.swift
[999/1069] Compiling RevenueCatUI TabControlToggleComponentView.swift
[1000/1069] Compiling RevenueCatUI TabControlToggleComponentViewModel.swift
[1001/1069] Compiling RevenueCatUI TabsComponentView.swift
[1002/1069] Compiling RevenueCatUI TabsComponentViewModel.swift
[1003/1069] Compiling RevenueCatUI TextComponentView.swift
[1004/1069] Compiling RevenueCatUI TextComponentViewModel.swift
[1005/1069] Compiling RevenueCatUI TimelineComponentView.swift
[1006/1069] Compiling RevenueCatUI TimelineComponentViewModel.swift
[1007/1069] Compiling RevenueCatUI IntroOfferEligibilityContext.swift
[1008/1069] Compiling RevenueCatUI OpenSheet.swift
[1009/1069] Compiling RevenueCatUI PackageContext.swift
[1010/1069] Compiling RevenueCatUI PaywallPromoOfferCache.swift
[1011/1069] Compiling RevenueCatUI ScreenCondition.swift
[1012/1069] Compiling RevenueCatUI LocaleExtensions.swift
[1013/1069] Compiling RevenueCatUI LocaleFinder.swift
[1014/1069] Compiling RevenueCatUI LocalizationDictionaryExtensions.swift
[1015/1069] Compiling RevenueCatUI PaywallsV2View.swift
[1016/1069] Compiling RevenueCatUI PreviewMock.swift
[1017/1069] Compiling RevenueCatUI ButtonWithFooterPreview.swift
[1018/1069] Compiling RevenueCatUI FallbackComponentPreview.swift
[1019/1069] Compiling RevenueCatUI FamilySharingTogglePreview.swift
[1020/1069] Compiling RevenueCatUI MultiTierPreview.swift
[1021/1069] Compiling RevenueCatUI PurchaseButtonInPackagePreview.swift
[1022/1069] Compiling RevenueCatUI FeedbackSurveyViewModel.swift
[1023/1069] Compiling RevenueCatUI NoSubscriptionsCardViewModel.swift
[1024/1069] Compiling RevenueCatUI PromotionalOfferViewModel.swift
[1025/1069] Compiling RevenueCatUI PurchaseDetailItem.swift
[1026/1069] Compiling RevenueCatUI PurchaseDetailViewModel.swift
[1027/1069] Compiling RevenueCatUI PurchaseHistoryViewModel.swift
[1028/1069] Compiling RevenueCatUI PurchaseInformation+History.swift
[1029/1069] Compiling RevenueCatUI RelevantPurchasesListViewModel.swift
[1030/1069] Compiling RevenueCatUI RestorePurchasesAlertViewModel.swift
[1031/1069] Compiling RevenueCatUI SubscriptionDetailViewModel.swift
[1032/1069] Compiling RevenueCatUI VirtualCurrencyBalancesScreenViewModel.swift
[1033/1069] Compiling RevenueCatUI ActiveSubscriptionButtonsView.swift
[1034/1069] Compiling RevenueCatUI AppUpdateWarningView.swift
[1035/1069] Compiling RevenueCatUI CompatibilityLabeledContent.swift
[1036/1069] Compiling RevenueCatUI CompatibilityNavigationStack.swift
[1037/1069] Compiling RevenueCatUI CompatibilityTopBarTrailing.swift
[1038/1069] Compiling RevenueCatUI CustomerCenterNavigationLink.swift
[1039/1069] Compiling RevenueCatUI CustomerCenterNavigationOptions.swift
[1040/1069] Compiling RevenueCatUI CustomerCenterView.swift
[1041/1069] Compiling RevenueCatUI FallbackNoSubscriptionsView.swift
[1042/1069] Compiling RevenueCatUI FeedbackSurveyView.swift
[1043/1069] Compiling RevenueCatUI ManageSubscriptionsButtonsView.swift
[1044/1069] Compiling RevenueCatUI NoSubscriptionsCardView.swift
[1045/1069] Compiling RevenueCatUI PromotionalOfferView.swift
[1046/1069] Compiling RevenueCatUI TemplateView+MultiTier.swift
[1047/1069] Compiling RevenueCatUI VersionDetector.swift
[1048/1069] Compiling RevenueCatUI ConsistentPackageContentView.swift
[1049/1069] Compiling RevenueCatUI ConsistentTierContentView.swift
[1050/1069] Compiling RevenueCatUI FitToAspectRatio.swift
[1051/1069] Compiling RevenueCatUI FooterHidingModifier.swift
[1052/1069] Compiling RevenueCatUI ViewExtensions.swift
[1053/1069] Compiling RevenueCatUI PaywallFontProvider.swift
[1054/1069] Compiling RevenueCatUI PaywallView.swift
[1055/1069] Compiling RevenueCatUI MockPurchases.swift
[1056/1069] Compiling RevenueCatUI PaywallPurchasesType.swift
[1057/1069] Compiling RevenueCatUI PurchaseHandler+TestData.swift
[1058/1069] Compiling RevenueCatUI PurchaseHandler.swift
[1059/1069] Compiling RevenueCatUI WatchTemplateView.swift
[1060/1069] Compiling RevenueCatUI Template1View.swift
[1061/1069] Compiling RevenueCatUI Template2View.swift
[1062/1069] Compiling RevenueCatUI Template3View.swift
[1063/1069] Compiling RevenueCatUI Template4View.swift
[1064/1069] Compiling RevenueCatUI Template5View.swift
[1065/1069] Compiling RevenueCatUI Template7View.swift
[1066/1069] Compiling RevenueCatUI TemplateViewType.swift
[1067/1069] Compiling RevenueCatUI BottomSheetView.swift
[1068/1069] Compiling RevenueCatUI ButtonComponentView.swift
[1069/1069] Compiling RevenueCatUI ButtonComponentViewModel.swift
Build complete! (46.69s)
Fetching https://github.com/pointfreeco/swift-snapshot-testing
[1/15367] Fetching swift-snapshot-testing
Fetched https://github.com/pointfreeco/swift-snapshot-testing from cache (3.05s)
Fetching https://github.com/quick/nimble
[1/19635] Fetching nimble
Fetched https://github.com/quick/nimble from cache (1.81s)
Computing version for https://github.com/quick/nimble
Computed https://github.com/quick/nimble at 13.7.1 (0.47s)
Fetching https://github.com/mattgallagher/CwlPreconditionTesting.git
[1/1257] Fetching cwlpreconditiontesting
Fetched https://github.com/mattgallagher/CwlPreconditionTesting.git from cache (0.83s)
Computing version for https://github.com/mattgallagher/CwlPreconditionTesting.git
Computed https://github.com/mattgallagher/CwlPreconditionTesting.git at 2.2.2 (0.78s)
Fetching https://github.com/mattgallagher/CwlCatchException.git
[1/460] Fetching cwlcatchexception
Fetched https://github.com/mattgallagher/CwlCatchException.git from cache (0.78s)
Computing version for https://github.com/mattgallagher/CwlCatchException.git
Computed https://github.com/mattgallagher/CwlCatchException.git at 2.2.1 (0.58s)
Creating working copy for https://github.com/mattgallagher/CwlCatchException.git
Working copy of https://github.com/mattgallagher/CwlCatchException.git resolved at 2.2.1
Creating working copy for https://github.com/pointfreeco/swift-snapshot-testing
Working copy of https://github.com/pointfreeco/swift-snapshot-testing resolved at 26ed3a2b4a2df47917ca9b790a57f91285b923fb
Creating working copy for https://github.com/quick/nimble
Working copy of https://github.com/quick/nimble resolved at 13.7.1
Creating working copy for https://github.com/mattgallagher/CwlPreconditionTesting.git
Working copy of https://github.com/mattgallagher/CwlPreconditionTesting.git resolved at 2.2.2
warning: 'spi-builder-workspace': Invalid Exclude '/Users/admin/builder/spi-builder-workspace/Tests/RevenueCatUITests/Templates/__Snapshots__': File not found.
warning: 'spi-builder-workspace': ignoring broken symlink /Users/admin/builder/spi-builder-workspace/Tests/RevenueCatUITests/PaywallsV2/__PreviewResources__
warning: 'spi-builder-workspace': Invalid Resource 'PaywallsV2/__PreviewResources__': 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/RevenueCatUI/RevenueCatUIDev.xctestplan
warning: 'nimble': found 1 file(s) which are unhandled; explicitly declare them as resources or exclude from the target
    /Users/admin/builder/spi-builder-workspace/.build/checkouts/nimble/Sources/Nimble/PrivacyInfo.xcprivacy
Build complete.
{
  "default_localization" : "en",
  "dependencies" : [
    {
      "identity" : "nimble",
      "requirement" : {
        "exact" : [
          "13.7.1"
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/quick/nimble"
    },
    {
      "identity" : "swift-snapshot-testing",
      "requirement" : {
        "revision" : [
          "26ed3a2b4a2df47917ca9b790a57f91285b923fb"
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/pointfreeco/swift-snapshot-testing"
    }
  ],
  "manifest_display_name" : "RevenueCat",
  "name" : "RevenueCat",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "10.15"
    },
    {
      "name" : "watchos",
      "version" : "6.2"
    },
    {
      "name" : "tvos",
      "version" : "13.0"
    },
    {
      "name" : "ios",
      "version" : "13.0"
    },
    {
      "name" : "visionos",
      "version" : "1.0"
    }
  ],
  "products" : [
    {
      "name" : "RevenueCat",
      "targets" : [
        "RevenueCat"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "RevenueCat_CustomEntitlementComputation",
      "targets" : [
        "RevenueCat_CustomEntitlementComputation"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "ReceiptParser",
      "targets" : [
        "ReceiptParser"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "RevenueCatUI",
      "targets" : [
        "RevenueCatUI"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "RevenueCat_CustomEntitlementComputation",
      "module_type" : "SwiftTarget",
      "name" : "RevenueCat_CustomEntitlementComputation",
      "path" : "CustomEntitlementComputation",
      "product_memberships" : [
        "RevenueCat_CustomEntitlementComputation"
      ],
      "resources" : [
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/CustomEntitlementComputation/PrivacyInfo.xcprivacy",
          "rule" : {
            "copy" : {
            }
          }
        }
      ],
      "sources" : [
        "Attribution/ASIdManagerProxy.swift",
        "Attribution/AttributionData.swift",
        "Attribution/AttributionFetcher.swift",
        "Attribution/AttributionNetwork.swift",
        "Attribution/AttributionPoster.swift",
        "Attribution/AttributionTypeFactory.swift",
        "Attribution/TrackingManagerProxy.swift",
        "Caching/CacheStatus.swift",
        "Caching/DeviceCache.swift",
        "Caching/FileRepository.swift",
        "Caching/InMemoryCachedObject.swift",
        "Caching/KeyedDeferredValueStore.swift",
        "Caching/LargeItemCacheType.swift",
        "CodableExtensions/PeriodType+Extensions.swift",
        "CodableExtensions/PurchaseOwnershipType+Extensions.swift",
        "CodableExtensions/Store+Extensions.swift",
        "CustomerCenter/CustomerCenterConfigData.swift",
        "CustomerCenter/CustomerCenterPresentationMode.swift",
        "CustomerCenter/Events/CustomerCenterEvent.swift",
        "CustomerCenter/Events/EventsRequest+CustomerCenter.swift",
        "DeepLink/DeepLinkParser.swift",
        "Diagnostics/DiagnosticsEvent.swift",
        "Diagnostics/DiagnosticsFileHandler.swift",
        "Diagnostics/DiagnosticsTracker.swift",
        "Diagnostics/FileHandler.swift",
        "Diagnostics/Networking/DiagnosticsEventsRequest.swift",
        "Diagnostics/Networking/DiagnosticsHTTPRequestPath.swift",
        "Diagnostics/Networking/DiagnosticsPostOperation.swift",
        "Diagnostics/Networking/DiagnosticsSynchronizer.swift",
        "DocCDocumentation/EmptyFile.swift",
        "Error Handling/Assertions.swift",
        "Error Handling/BackendError.swift",
        "Error Handling/BackendErrorCode.swift",
        "Error Handling/DescribableError.swift",
        "Error Handling/ErrorCode.swift",
        "Error Handling/ErrorDetails.swift",
        "Error Handling/ErrorUtils.swift",
        "Error Handling/PurchasesError.swift",
        "Error Handling/SKError+Extensions.swift",
        "Error Handling/StoreKitError+Extensions.swift",
        "Error Handling/StoreKitErrorHelper.swift",
        "Events/FeatureEvent.swift",
        "Events/Networking/EventsRequest.swift",
        "Events/StoredEvent.swift",
        "Events/StoredEventSerializer.swift",
        "FoundationExtensions/Array+Extensions.swift",
        "FoundationExtensions/AsyncExtensions.swift",
        "FoundationExtensions/Data+Extensions.swift",
        "FoundationExtensions/Date+Extensions.swift",
        "FoundationExtensions/Decoder+Extensions.swift",
        "FoundationExtensions/Dictionary+Extensions.swift",
        "FoundationExtensions/DispatchTimeInterval+Extensions.swift",
        "FoundationExtensions/Error+Extensions.swift",
        "FoundationExtensions/Integer+Extensions.swift",
        "FoundationExtensions/Locale+Extensions.swift",
        "FoundationExtensions/OperationQueue+Extensions.swift",
        "FoundationExtensions/Operators+Extensions.swift",
        "FoundationExtensions/Optional+Extensions.swift",
        "FoundationExtensions/Result+Extensions.swift",
        "FoundationExtensions/Set+Extensions.swift",
        "FoundationExtensions/String+Extensions.swift",
        "FoundationExtensions/TimeInterval+Extensions.swift",
        "FoundationExtensions/UIApplication+RCExtensions.swift",
        "FoundationExtensions/UserDefaults+Extensions.swift",
        "Identity/CustomerInfo+ActiveDates.swift",
        "Identity/CustomerInfo+NonSubscriptions.swift",
        "Identity/CustomerInfo.swift",
        "Identity/CustomerInfoManager.swift",
        "Identity/IdentityManager.swift",
        "Identity/ProductPaidPrice.swift",
        "Identity/SubscriptionInfo.swift",
        "LocalReceiptParsing/BasicTypes/ASN1Container.swift",
        "LocalReceiptParsing/BasicTypes/ASN1ObjectIdentifier.swift",
        "LocalReceiptParsing/BasicTypes/AppleReceipt.swift",
        "LocalReceiptParsing/BasicTypes/InAppPurchase.swift",
        "LocalReceiptParsing/Builders/ASN1ContainerBuilder.swift",
        "LocalReceiptParsing/Builders/ASN1ObjectIdentifierBuilder.swift",
        "LocalReceiptParsing/Builders/AppleReceiptBuilder.swift",
        "LocalReceiptParsing/Builders/InAppPurchaseBuilder.swift",
        "LocalReceiptParsing/DataConverters/ArraySlice_UInt8+Extensions.swift",
        "LocalReceiptParsing/DataConverters/Codable+Extensions.swift",
        "LocalReceiptParsing/DataConverters/DateFormatter+Extensions.swift",
        "LocalReceiptParsing/DataConverters/UInt8+Extensions.swift",
        "LocalReceiptParsing/Helpers/FileReader.swift",
        "LocalReceiptParsing/Helpers/LoggerType.swift",
        "LocalReceiptParsing/Helpers/ProcessInfo+Extensions.swift",
        "LocalReceiptParsing/Helpers/ReceiptParserLogger.swift",
        "LocalReceiptParsing/Helpers/ReceiptStrings.swift",
        "LocalReceiptParsing/LocalReceiptFetcher.swift",
        "LocalReceiptParsing/PurchasesReceiptParser.swift",
        "LocalReceiptParsing/ReceiptParsingError.swift",
        "Logging/LogIntent.swift",
        "Logging/Logger.swift",
        "Logging/Strings/AnalyticsStrings.swift",
        "Logging/Strings/AttributionStrings.swift",
        "Logging/Strings/BackendErrorStrings.swift",
        "Logging/Strings/CodableStrings.swift",
        "Logging/Strings/ConfigureStrings.swift",
        "Logging/Strings/CustomerInfoStrings.swift",
        "Logging/Strings/DiagnosticsStrings.swift",
        "Logging/Strings/ETagStrings.swift",
        "Logging/Strings/EligibilityStrings.swift",
        "Logging/Strings/FileRepositoryStrings.swift",
        "Logging/Strings/IdentityStrings.swift",
        "Logging/Strings/ManageSubscriptionsStrings.swift",
        "Logging/Strings/NetworkStrings.swift",
        "Logging/Strings/OfferingStrings.swift",
        "Logging/Strings/OfflineEntitlementsStrings.swift",
        "Logging/Strings/PaywallsStrings.swift",
        "Logging/Strings/PurchaseStrings.swift",
        "Logging/Strings/SigningStrings.swift",
        "Logging/Strings/StoreKitStrings.swift",
        "Logging/Strings/Strings.swift",
        "Logging/Strings/VirtualCurrencyStrings.swift",
        "Logging/Strings/WebRedemptionStrings.swift",
        "Misc/Box.swift",
        "Misc/Codable/AnyDecodable.swift",
        "Misc/Codable/AnyEncodable.swift",
        "Misc/Codable/DefaultDecodable.swift",
        "Misc/Codable/EnsureNonEmptyCollectionDecodable.swift",
        "Misc/Codable/IgnoreHashable.swift",
        "Misc/Codable/NonEmptyStringDecodable.swift",
        "Misc/Codable/RawDataContainer.swift",
        "Misc/Concurrency/Atomic.swift",
        "Misc/Concurrency/Lock.swift",
        "Misc/Concurrency/OperationDispatcher.swift",
        "Misc/Concurrency/Purchases+async.swift",
        "Misc/Concurrency/Purchases+nonasync.swift",
        "Misc/Concurrency/SynchronizedUserDefaults.swift",
        "Misc/DangerousSettings.swift",
        "Misc/DateAndTime/Clock.swift",
        "Misc/DateAndTime/DateExtensions.swift",
        "Misc/DateAndTime/DateProvider.swift",
        "Misc/DateAndTime/ISODurationFormatter.swift",
        "Misc/DateAndTime/ISOPeriodFormatter.swift",
        "Misc/DateAndTime/TimingUtil.swift",
        "Misc/Deprecations.swift",
        "Misc/Either.swift",
        "Misc/Locale/PreferredLocalesProvider.swift",
        "Misc/MacDevice.swift",
        "Misc/MapAppStoreDetector.swift",
        "Misc/Obsoletions.swift",
        "Misc/PlatformInfo.swift",
        "Misc/PriceFormatterProvider.swift",
        "Misc/RateLimiter.swift",
        "Misc/SandboxEnvironmentDetector.swift",
        "Misc/StoreKitVersion.swift",
        "Misc/SystemInfo.swift",
        "Networking/Backend.swift",
        "Networking/BackendConfiguration.swift",
        "Networking/Caching/CacheFetchPolicy.swift",
        "Networking/Caching/CallbackCache.swift",
        "Networking/Caching/CallbackCacheStatus.swift",
        "Networking/Caching/CustomerCenterConfigCallback.swift",
        "Networking/Caching/CustomerInfoCallback.swift",
        "Networking/Caching/LogInCallback.swift",
        "Networking/Caching/OfferingsCallback.swift",
        "Networking/Caching/ProductEntitlementMappingCallback.swift",
        "Networking/Caching/VirtualCurrenciesCallback.swift",
        "Networking/Caching/WebBillingProductsCallback.swift",
        "Networking/Caching/WebOfferingProductsCallback.swift",
        "Networking/CustomerAPI.swift",
        "Networking/CustomerCenterConfigAPI.swift",
        "Networking/HTTPClient/DNSChecker.swift",
        "Networking/HTTPClient/ETagManager.swift",
        "Networking/HTTPClient/ErrorResponse.swift",
        "Networking/HTTPClient/HTTPClient.swift",
        "Networking/HTTPClient/HTTPRequest.swift",
        "Networking/HTTPClient/HTTPRequestBody.swift",
        "Networking/HTTPClient/HTTPRequestPath.swift",
        "Networking/HTTPClient/HTTPResponse.swift",
        "Networking/HTTPClient/HTTPResponseBody.swift",
        "Networking/HTTPClient/HTTPStatusCode.swift",
        "Networking/HTTPClient/NetworkError.swift",
        "Networking/HTTPClient/RedirectLoggerTaskDelegate.swift",
        "Networking/HTTPClient/SimpleNetworkServiceType.swift",
        "Networking/IdentityAPI.swift",
        "Networking/InternalAPI.swift",
        "Networking/OfferingsAPI.swift",
        "Networking/OfflineEntitlementsAPI.swift",
        "Networking/Operations/GetCustomerCenterConfigOperation.swift",
        "Networking/Operations/GetCustomerInfoOperation.swift",
        "Networking/Operations/GetIntroEligibilityOperation.swift",
        "Networking/Operations/GetOfferingsOperation.swift",
        "Networking/Operations/GetProductEntitlementMappingOperation.swift",
        "Networking/Operations/GetVirtualCurrenciesOperation.swift",
        "Networking/Operations/GetWebBillingProductsOperation.swift",
        "Networking/Operations/GetWebOfferingProductsOperation.swift",
        "Networking/Operations/Handling/CustomerInfoResponseHandler.swift",
        "Networking/Operations/HealthOperation.swift",
        "Networking/Operations/HealthReportAvailabilityOperation.swift",
        "Networking/Operations/HealthReportOperation.swift",
        "Networking/Operations/LogInOperation.swift",
        "Networking/Operations/NetworkOperation.swift",
        "Networking/Operations/PostAdServicesTokenOperation.swift",
        "Networking/Operations/PostAttributionDataOperation.swift",
        "Networking/Operations/PostOfferForSigningOperation.swift",
        "Networking/Operations/PostReceiptDataOperation.swift",
        "Networking/Operations/PostRedeemWebPurchaseOperation.swift",
        "Networking/Operations/PostSubscriberAttributesOperation.swift",
        "Networking/RedeemWebPurchaseAPI.swift",
        "Networking/Responses/CustomerCenterConfigResponse.swift",
        "Networking/Responses/CustomerInfoResponse.swift",
        "Networking/Responses/GetIntroEligibilityResponse.swift",
        "Networking/Responses/HealthReportAvailabilityResponse.swift",
        "Networking/Responses/HealthReportResponse.swift",
        "Networking/Responses/OfferingsResponse.swift",
        "Networking/Responses/PostOfferResponse.swift",
        "Networking/Responses/ProductEntitlementMappingResponse.swift",
        "Networking/Responses/RevenueCatUI/PaywallComponentsData.swift",
        "Networking/Responses/RevenueCatUI/UIConfig.swift",
        "Networking/Responses/VirtualCurrenciesResponse.swift",
        "Networking/Responses/WebBillingProductsResponse.swift",
        "Networking/Responses/WebOfferingProductsResponse.swift",
        "Networking/VirtualCurrenciesAPI.swift",
        "Networking/WebBillingAPI.swift",
        "Networking/WebBillingHTTPRequestPath.swift",
        "OfflineEntitlements/CustomerInfo+OfflineEntitlements.swift",
        "OfflineEntitlements/OfflineCustomerInfoCreator.swift",
        "OfflineEntitlements/OfflineEntitlementsManager.swift",
        "OfflineEntitlements/ProductEntitlementMapping.swift",
        "OfflineEntitlements/ProductEntitlementMappingFetcher.swift",
        "OfflineEntitlements/PurchasedProductsFetcher.swift",
        "OfflineEntitlements/PurchasedSK2Product.swift",
        "Paywalls/Components/Common/Background.swift",
        "Paywalls/Components/Common/Border.swift",
        "Paywalls/Components/Common/ComponentOverrides.swift",
        "Paywalls/Components/Common/Dimension.swift",
        "Paywalls/Components/Common/PaywallComponentBase.swift",
        "Paywalls/Components/Common/PaywallComponentLocalization.swift",
        "Paywalls/Components/Common/PaywallComponentPropertyTypes.swift",
        "Paywalls/Components/PaywallButtonComponent.swift",
        "Paywalls/Components/PaywallCarouselComponent.swift",
        "Paywalls/Components/PaywallIconComponent.swift",
        "Paywalls/Components/PaywallImageComponent.swift",
        "Paywalls/Components/PaywallPackageComponent.swift",
        "Paywalls/Components/PaywallPurchaseButtonComponent.swift",
        "Paywalls/Components/PaywallStackComponent.swift",
        "Paywalls/Components/PaywallStickyFooterComponent.swift",
        "Paywalls/Components/PaywallTabsComponent.swift",
        "Paywalls/Components/PaywallTextComponent.swift",
        "Paywalls/Components/PaywallTimelineComponent.swift",
        "Paywalls/Components/PaywallV2CacheWarming.swift",
        "Paywalls/Components/PaywallVideoComponent.swift",
        "Paywalls/Components/Transitions/PaywallAnimation.swift",
        "Paywalls/Components/Transitions/PaywallTransition.swift",
        "Paywalls/Events/Networking/EventsRequest+Paywall.swift",
        "Paywalls/Events/Networking/PaywallHTTPRequestPath.swift",
        "Paywalls/Events/Networking/PostPaywallEventsOperation.swift",
        "Paywalls/Events/PaywallEvent.swift",
        "Paywalls/Events/PaywallEventStore.swift",
        "Paywalls/Events/PaywallEventsManager.swift",
        "Paywalls/PaywallCacheWarming.swift",
        "Paywalls/PaywallColor.swift",
        "Paywalls/PaywallData+Localization.swift",
        "Paywalls/PaywallData.swift",
        "Paywalls/PaywallFontManagerType.swift",
        "Paywalls/PaywallViewMode.swift",
        "Paywalls/SubscriptionHistoryTracker.swift",
        "Purchasing/CachingProductsManager.swift",
        "Purchasing/CachingTrialOrIntroPriceEligibilityChecker.swift",
        "Purchasing/Configuration.swift",
        "Purchasing/EntitlementInfo.swift",
        "Purchasing/EntitlementInfos.swift",
        "Purchasing/IntroEligibility.swift",
        "Purchasing/IntroEligibilityCalculator.swift",
        "Purchasing/NonSubscriptionTransaction.swift",
        "Purchasing/Offering.swift",
        "Purchasing/Offerings.swift",
        "Purchasing/OfferingsFactory.swift",
        "Purchasing/OfferingsManager.swift",
        "Purchasing/Package.swift",
        "Purchasing/PackageType.swift",
        "Purchasing/ProductRequestData+Initialization.swift",
        "Purchasing/ProductRequestData.swift",
        "Purchasing/ProductsManager.swift",
        "Purchasing/ProductsManagerFactory.swift",
        "Purchasing/ProductsManagerType.swift",
        "Purchasing/ProductsRequestFactory.swift",
        "Purchasing/PurchaseOwnershipType.swift",
        "Purchasing/Purchases/Attribution.swift",
        "Purchasing/Purchases/PurchaseParams.swift",
        "Purchasing/Purchases/Purchases.swift",
        "Purchasing/Purchases/PurchasesAreCompletedBy.swift",
        "Purchasing/Purchases/PurchasesDelegate.swift",
        "Purchasing/Purchases/PurchasesOrchestrator.swift",
        "Purchasing/Purchases/PurchasesType.swift",
        "Purchasing/Purchases/TransactionPoster.swift",
        "Purchasing/ReceiptFetcher.swift",
        "Purchasing/ReceiptRefreshPolicy.swift",
        "Purchasing/SimulatedStore/SimulatedStoreProduct.swift",
        "Purchasing/SimulatedStore/SimulatedStoreProductsManager.swift",
        "Purchasing/SimulatedStore/SimulatedStorePurchaseHandler.swift",
        "Purchasing/SimulatedStore/SimulatedStorePurchaseUI.swift",
        "Purchasing/SimulatedStore/SimulatedStoreTransaction.swift",
        "Purchasing/SimulatedStore/WebBillingProduct+SimulatedStoreProduct.swift",
        "Purchasing/StoreKit1/PaymentQueueWrapper.swift",
        "Purchasing/StoreKit1/ProductsFetcherSK1.swift",
        "Purchasing/StoreKit1/StoreKit1Wrapper.swift",
        "Purchasing/StoreKit1/StoreKitRequestFetcher.swift",
        "Purchasing/StoreKit2/Observer Mode/StoreKit2ObserverModePurchaseDetector.swift",
        "Purchasing/StoreKit2/ProductsFetcherSK2.swift",
        "Purchasing/StoreKit2/SK2AppTransaction.swift",
        "Purchasing/StoreKit2/SK2BeginRefundRequestHelper.swift",
        "Purchasing/StoreKit2/StoreKit2PurchaseIntentListener.swift",
        "Purchasing/StoreKit2/StoreKit2Receipt.swift",
        "Purchasing/StoreKit2/StoreKit2StorefrontListener.swift",
        "Purchasing/StoreKit2/StoreKit2TransactionFetcher.swift",
        "Purchasing/StoreKit2/StoreKit2TransactionListener.swift",
        "Purchasing/StoreKit2/Win-Back Offers/WinBackOfferEligibilityCalculator.swift",
        "Purchasing/StoreKit2/Win-Back Offers/WinBackOfferEligibilityCalculatorType.swift",
        "Purchasing/StoreKitAbstractions/EncodedAppleReceipt.swift",
        "Purchasing/StoreKitAbstractions/ProductType.swift",
        "Purchasing/StoreKitAbstractions/PromotionalOffer.swift",
        "Purchasing/StoreKitAbstractions/SK1StoreProduct.swift",
        "Purchasing/StoreKitAbstractions/SK1StoreProductDiscount.swift",
        "Purchasing/StoreKitAbstractions/SK1StoreTransaction.swift",
        "Purchasing/StoreKitAbstractions/SK1Storefront.swift",
        "Purchasing/StoreKitAbstractions/SK2StoreProduct.swift",
        "Purchasing/StoreKitAbstractions/SK2StoreProductDiscount.swift",
        "Purchasing/StoreKitAbstractions/SK2StoreTransaction.swift",
        "Purchasing/StoreKitAbstractions/SK2Storefront.swift",
        "Purchasing/StoreKitAbstractions/StoreEnvironment.swift",
        "Purchasing/StoreKitAbstractions/StoreKitWorkarounds.swift",
        "Purchasing/StoreKitAbstractions/StoreProduct.swift",
        "Purchasing/StoreKitAbstractions/StoreProductDiscount.swift",
        "Purchasing/StoreKitAbstractions/StoreTransaction.swift",
        "Purchasing/StoreKitAbstractions/Storefront.swift",
        "Purchasing/StoreKitAbstractions/StorefrontProvider.swift",
        "Purchasing/StoreKitAbstractions/SubscriptionPeriod.swift",
        "Purchasing/StoreKitAbstractions/Test Data/TestStoreProduct.swift",
        "Purchasing/StoreKitAbstractions/Test Data/TestStoreProductDiscount.swift",
        "Purchasing/StoreKitAbstractions/WinBackOffer.swift",
        "Purchasing/TransactionsFactory.swift",
        "Purchasing/TransactionsManager.swift",
        "Purchasing/TrialOrIntroPriceEligibilityChecker.swift",
        "Security/FakeSigning.swift",
        "Security/HTTPRequest+Signing.swift",
        "Security/HTTPRequestBody+Signing.swift",
        "Security/Signing+ResponseVerification.swift",
        "Security/Signing.swift",
        "Security/VerificationResult.swift",
        "SubscriberAttributes/AttributionDataMigrator.swift",
        "SubscriberAttributes/AttributionKey.swift",
        "SubscriberAttributes/ReservedSubscriberAttributes.swift",
        "SubscriberAttributes/SubscriberAttribute.swift",
        "SubscriberAttributes/SubscriberAttributesManager.swift",
        "Support/BeginRefundRequestHelper.swift",
        "Support/DebugUI/DebugContentViews.swift",
        "Support/DebugUI/DebugView.swift",
        "Support/DebugUI/DebugViewController.swift",
        "Support/DebugUI/DebugViewModel.swift",
        "Support/DebugUI/DebugViewSheetPresentation.swift",
        "Support/DebugUI/ProductStatus+Icon.swift",
        "Support/DebugUI/SDKHealthCheckStatus+Icon.swift",
        "Support/DebugUI/SDKHealthStatus+Icon.swift",
        "Support/FrameworkDisambiguation.swift",
        "Support/HealthReport+Validate.swift",
        "Support/ManageSubscriptionsHelper.swift",
        "Support/PaymentAuthorizationProvider.swift",
        "Support/PaywallExtensions.swift",
        "Support/PurchasesDiagnostics.swift",
        "Support/SDKHealthError+CustomNSError.swift",
        "Support/SDKHealthManager.swift",
        "Support/StoreMessageType.swift",
        "Support/StoreMessagesHelper.swift",
        "Support/SwiftVersionCheck.swift",
        "Virtual Currencies/VirtualCurrencies.swift",
        "Virtual Currencies/VirtualCurrency.swift",
        "Virtual Currencies/VirtualCurrencyManager.swift",
        "WebPurchaseRedemption/URL+WebPurchaseRedemption.swift",
        "WebPurchaseRedemption/WebPurchaseRedemption.swift",
        "WebPurchaseRedemption/WebPurchaseRedemptionHelper.swift",
        "WebPurchaseRedemption/WebPurchaseRedemptionResult.swift"
      ],
      "type" : "library"
    },
    {
      "c99name" : "RevenueCatUITests",
      "module_type" : "SwiftTarget",
      "name" : "RevenueCatUITests",
      "path" : "Tests/RevenueCatUITests",
      "product_dependencies" : [
        "Nimble",
        "SnapshotTesting"
      ],
      "resources" : [
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/RevenueCatUITests/Resources/background.heic",
          "rule" : {
            "copy" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/RevenueCatUITests/Resources/header.heic",
          "rule" : {
            "copy" : {
            }
          }
        }
      ],
      "sources" : [
        "BaseSnapshotTest.swift",
        "CustomerCenter/BaseManageSubscriptionViewModelTests.swift",
        "CustomerCenter/ContactSupportUtilitiesTests.swift",
        "CustomerCenter/CustomActionDataTests.swift",
        "CustomerCenter/CustomerCenterActionWrapperTests.swift",
        "CustomerCenter/CustomerCenterViewModelTests.swift",
        "CustomerCenter/DiscountsHandlerTests.swift",
        "CustomerCenter/FeedbackSurveyViewModelTests.swift",
        "CustomerCenter/PromotionalOfferViewModelTests.swift",
        "CustomerCenter/PurchaseCardViewBadgeTests.swift",
        "CustomerCenter/PurchaseInformationTests.swift",
        "CustomerCenter/SubscriptionDetailViewModelTests.swift",
        "CustomerCenter/VirtualCurrencyBalancesScreenViewModelTests.swift",
        "Data/LocalizedAlertErrorTests.swift",
        "Data/PackageVariablesTests.swift",
        "Data/PaywallDataValidationTests.swift",
        "Data/SemanticVersionTests.swift",
        "Data/TemplateViewConfigurationTests.swift",
        "Data/VariablesTests.swift",
        "Helpers/AsyncTestHelpers.swift",
        "Helpers/AvailabilityChecks.swift",
        "Helpers/CurrentTestCaseTracker.swift",
        "Helpers/DataExtensions.swift",
        "Helpers/ImageSnapshot.swift",
        "Helpers/OSVersionEquivalent.swift",
        "Helpers/SnapshotTesting+Extensions.swift",
        "Helpers/TestCase.swift",
        "ImageLoaderTests.swift",
        "LocalizationTests.swift",
        "Mocks/MockStoreProductDiscount.swift",
        "Mocks/MockTransaction.swift",
        "PaywallFooterTests.swift",
        "PaywallViewEventsTests.swift",
        "PaywallsV2/LocaleFinderTests.swift",
        "PaywallsV2/PaywallPreviewResourcesLoader.swift",
        "PaywallsV2/PresentedPartialsTests.swift",
        "PaywallsV2/TakeScreenshot.swift",
        "PaywallsV2/VariableHandlerV2Tests.swift",
        "PresentIfNeededTests.swift",
        "PurchaseCompletedHandlerTests.swift",
        "Purchasing/PurchaseHandlerTests.swift",
        "Templates/ExternalPurchaseAndRestoreTests.swift",
        "Templates/OtherPaywallViewTests.swift",
        "Templates/PaywallViewDynamicTypeTests.swift",
        "Templates/PaywallViewLocalizationTests.swift",
        "Templates/Template1ViewTests.swift",
        "Templates/Template2ViewTests.swift",
        "Templates/Template3ViewTests.swift",
        "Templates/Template4ViewTests.swift",
        "Templates/Template5ViewTests.swift",
        "Templates/Template7ViewTests.swift"
      ],
      "target_dependencies" : [
        "RevenueCatUI"
      ],
      "type" : "test"
    },
    {
      "c99name" : "RevenueCatUI",
      "module_type" : "SwiftTarget",
      "name" : "RevenueCatUI",
      "path" : "RevenueCatUI",
      "product_memberships" : [
        "RevenueCatUI"
      ],
      "resources" : [
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/RevenueCatUI/Resources/ar.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "ar"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/RevenueCatUI/Resources/az.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "az"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/RevenueCatUI/Resources/background.jpg",
          "rule" : {
            "copy" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/RevenueCatUI/Resources/bg.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "bg"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/RevenueCatUI/Resources/ca.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "ca"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/RevenueCatUI/Resources/cs.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "cs"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/RevenueCatUI/Resources/da.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "da"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/RevenueCatUI/Resources/de.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "de"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/RevenueCatUI/Resources/el.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "el"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/RevenueCatUI/Resources/en.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "en"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/RevenueCatUI/Resources/en_AU.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "en_au"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/RevenueCatUI/Resources/en_CA.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "en_ca"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/RevenueCatUI/Resources/en_GB.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "en_gb"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/RevenueCatUI/Resources/en_US.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "en_us"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/RevenueCatUI/Resources/es_419.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "es_419"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/RevenueCatUI/Resources/es_ES.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "es_es"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/RevenueCatUI/Resources/fi.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "fi"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/RevenueCatUI/Resources/fr_CA.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "fr_ca"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/RevenueCatUI/Resources/fr_FR.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "fr_fr"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/RevenueCatUI/Resources/he.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "he"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/RevenueCatUI/Resources/hi.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "hi"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/RevenueCatUI/Resources/hr.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "hr"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/RevenueCatUI/Resources/hu.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "hu"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/RevenueCatUI/Resources/icons.xcassets",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/RevenueCatUI/Resources/id.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "id"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/RevenueCatUI/Resources/it.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "it"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/RevenueCatUI/Resources/ja.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "ja"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/RevenueCatUI/Resources/kk.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "kk"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/RevenueCatUI/Resources/ko.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "ko"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/RevenueCatUI/Resources/ms.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "ms"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/RevenueCatUI/Resources/nl.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "nl"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/RevenueCatUI/Resources/no.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "no"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/RevenueCatUI/Resources/pl.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "pl"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/RevenueCatUI/Resources/pt_BR.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "pt_br"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/RevenueCatUI/Resources/pt_PT.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "pt_pt"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/RevenueCatUI/Resources/ro.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "ro"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/RevenueCatUI/Resources/ru.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "ru"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/RevenueCatUI/Resources/sk.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "sk"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/RevenueCatUI/Resources/sv.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "sv"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/RevenueCatUI/Resources/th.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "th"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/RevenueCatUI/Resources/tr.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "tr"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/RevenueCatUI/Resources/uk.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "uk"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/RevenueCatUI/Resources/vi.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "vi"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/RevenueCatUI/Resources/zh_Hans.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "zh_hans"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/RevenueCatUI/Resources/zh_Hant.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "zh_hant"
            }
          }
        }
      ],
      "sources" : [
        "Binding+Extensions.swift",
        "CrossPlatform/PlatformBezierPath.swift",
        "CrossPlatform/PlatformColor.swift",
        "CrossPlatform/PlatformFont.swift",
        "CrossPlatform/PlatformImage.swift",
        "CustomerCenter/Abstractions/CustomerCenterPurchasesType.swift",
        "CustomerCenter/Actions/CustomerCenter+PreferenceKeys.swift",
        "CustomerCenter/Actions/CustomerCenterConfigData.HelpPath+PurchaseInformation.swift",
        "CustomerCenter/Actions/CustomerCenterView+Actions.swift",
        "CustomerCenter/ButtonStyles.swift",
        "CustomerCenter/ColorFromAppearance.swift",
        "CustomerCenter/ContactSupportUtilities.swift",
        "CustomerCenter/CustomerInfo+CurrentEntitlement.swift",
        "CustomerCenter/Data/CustomActionData.swift",
        "CustomerCenter/Data/CustomerCenterAction.swift",
        "CustomerCenter/Data/CustomerCenterActionViewModifier.swift",
        "CustomerCenter/Data/CustomerCenterActionWrapper.swift",
        "CustomerCenter/Data/CustomerCenterConfigData+Mock.swift",
        "CustomerCenter/Data/CustomerCenterEnvironment.swift",
        "CustomerCenter/Data/CustomerCenterError.swift",
        "CustomerCenter/Data/CustomerCenterManagementOption.swift",
        "CustomerCenter/Data/CustomerCenterPurchases.swift",
        "CustomerCenter/Data/DiscountsHandler.swift",
        "CustomerCenter/Data/EntitlementInfo+Extensions.swift",
        "CustomerCenter/Data/FeedbackSurveyData.swift",
        "CustomerCenter/Data/LoadPromotionalOfferUseCase.swift",
        "CustomerCenter/Data/PromotionalOfferData.swift",
        "CustomerCenter/Data/PurchaseInformation+Mock.swift",
        "CustomerCenter/Data/PurchaseInformation.swift",
        "CustomerCenter/Data/SemanticVersion.swift",
        "CustomerCenter/Data/Transaction.swift",
        "CustomerCenter/Extensions/CustomerCenterConfigDataSupport+URL.swift",
        "CustomerCenter/Extensions/CustomerInfo+SeeAllPurchases.swift",
        "CustomerCenter/Extensions/PurchaseInformation+Creation.swift",
        "CustomerCenter/Mocks/MockCustomerCenterPurchases.swift",
        "CustomerCenter/Mocks/MockCustomerCenterStoreKitUtilities.swift",
        "CustomerCenter/Mocks/MockLoadPromotionalOfferUseCase.swift",
        "CustomerCenter/Mocks/PurchaseInformationFixtures.swift",
        "CustomerCenter/URLUtilities.swift",
        "CustomerCenter/Utilities/CustomerCenterLocalizationStrings.swift",
        "CustomerCenter/Utilities/CustomerCenterStoreKitUtilities.swift",
        "CustomerCenter/Utilities/CustomerCenterStoreKitUtilitiesType.swift",
        "CustomerCenter/Utilities/CustomerCenterStylingUtilities.swift",
        "CustomerCenter/Utilities/IdentifiableURL.swift",
        "CustomerCenter/View+PresentCustomerCenter.swift",
        "CustomerCenter/ViewModels/BaseManageSubscriptionViewModel.swift",
        "CustomerCenter/ViewModels/CustomerCenterViewModel.swift",
        "CustomerCenter/ViewModels/CustomerCenterViewState.swift",
        "CustomerCenter/ViewModels/FeedbackSurveyViewModel.swift",
        "CustomerCenter/ViewModels/NoSubscriptionsCardViewModel.swift",
        "CustomerCenter/ViewModels/PromotionalOfferViewModel.swift",
        "CustomerCenter/ViewModels/PurchaseHistory/PurchaseDetailItem.swift",
        "CustomerCenter/ViewModels/PurchaseHistory/PurchaseDetailViewModel.swift",
        "CustomerCenter/ViewModels/PurchaseHistory/PurchaseHistoryViewModel.swift",
        "CustomerCenter/ViewModels/PurchaseHistory/PurchaseInformation+History.swift",
        "CustomerCenter/ViewModels/RelevantPurchasesListViewModel.swift",
        "CustomerCenter/ViewModels/RestorePurchasesAlertViewModel.swift",
        "CustomerCenter/ViewModels/SubscriptionDetailViewModel.swift",
        "CustomerCenter/ViewModels/VirtualCurrencyBalancesScreenViewModel.swift",
        "CustomerCenter/Views/ActiveSubscriptionButtonsView.swift",
        "CustomerCenter/Views/AppUpdateWarningView.swift",
        "CustomerCenter/Views/CompatibilityLabeledContent.swift",
        "CustomerCenter/Views/CompatibilityNavigationStack.swift",
        "CustomerCenter/Views/CompatibilityTopBarTrailing.swift",
        "CustomerCenter/Views/CustomerCenterNavigationLink.swift",
        "CustomerCenter/Views/CustomerCenterNavigationOptions.swift",
        "CustomerCenter/Views/CustomerCenterView.swift",
        "CustomerCenter/Views/FallbackNoSubscriptionsView.swift",
        "CustomerCenter/Views/FeedbackSurveyView.swift",
        "CustomerCenter/Views/ManageSubscriptionsButtonsView.swift",
        "CustomerCenter/Views/NoSubscriptionsCardView.swift",
        "CustomerCenter/Views/PromotionalOfferView.swift",
        "CustomerCenter/Views/PurchaseCardView.swift",
        "CustomerCenter/Views/PurchaseHistory/PurchaseDetailView.swift",
        "CustomerCenter/Views/PurchaseHistory/PurchaseHistoryView.swift",
        "CustomerCenter/Views/RelevantPurchasesListView.swift",
        "CustomerCenter/Views/RestorePurchasesAlert.swift",
        "CustomerCenter/Views/ScrollViewSection.swift",
        "CustomerCenter/Views/ScrollViewWithOSBackground.swift",
        "CustomerCenter/Views/SubscriptionDetailView.swift",
        "CustomerCenter/Views/TintedProgressView.swift",
        "CustomerCenter/Views/UIKit Compatibility/CustomerCenterViewController.swift",
        "CustomerCenter/Views/Virtual Currencies/VirtualCurrenciesScrollViewWithOSBackgroundSection.swift",
        "CustomerCenter/Views/Virtual Currencies/VirtualCurrencyBalanceListRow.swift",
        "CustomerCenter/Views/Virtual Currencies/VirtualCurrencyBalancesScreen.swift",
        "Data/Constants.swift",
        "Data/CustomerInfoFixtures.swift",
        "Data/Errors/PaywallError.swift",
        "Data/Errors/TemplateError.swift",
        "Data/IntroEligibility/IntroEligibilityViewModel.swift",
        "Data/IntroEligibility/TrialOrIntroEligibilityChecker+TestData.swift",
        "Data/IntroEligibility/TrialOrIntroEligibilityChecker.swift",
        "Data/Localization.swift",
        "Data/LocalizedAlertError.swift",
        "Data/PaywallData+Validation.swift",
        "Data/PaywallTemplate.swift",
        "Data/PaywallViewConfiguration.swift",
        "Data/PaywallViewMode+Extensions.swift",
        "Data/ProcessedLocalizedConfiguration.swift",
        "Data/Strings.swift",
        "Data/TemplateViewConfiguration+Extensions.swift",
        "Data/TemplateViewConfiguration+Images.swift",
        "Data/TemplateViewConfiguration.swift",
        "Data/TestData.swift",
        "Data/UserInterfaceIdiom.swift",
        "Data/Variables.swift",
        "Data/VirtualCurrenciesFixtures.swift",
        "Helpers/Bundle+Extensions.swift",
        "Helpers/ColorInformation+MultiScheme.swift",
        "Helpers/EmergeRenderingMode.swift",
        "Helpers/ImageLoader.swift",
        "Helpers/Logger.swift",
        "Helpers/Optional+Extensions.swift",
        "Helpers/Package+VariableDataProvider.swift",
        "Helpers/PaywallData+Default.swift",
        "Helpers/PreviewHelpers.swift",
        "Helpers/RuntimeUtils.swift",
        "Helpers/StoreProduct+Extensions.swift",
        "Helpers/StoreProductDiscount+Extensions.swift",
        "Helpers/SubscriptionPeriod+Extensions.swift",
        "Helpers/TemplateView+MultiTier.swift",
        "Helpers/VersionDetector.swift",
        "Modifiers/ConsistentPackageContentView.swift",
        "Modifiers/ConsistentTierContentView.swift",
        "Modifiers/FitToAspectRatio.swift",
        "Modifiers/FooterHidingModifier.swift",
        "Modifiers/ViewExtensions.swift",
        "PaywallFontProvider.swift",
        "PaywallView.swift",
        "Purchasing/MockPurchases.swift",
        "Purchasing/PaywallPurchasesType.swift",
        "Purchasing/PurchaseHandler+TestData.swift",
        "Purchasing/PurchaseHandler.swift",
        "Templates/Other platforms/WatchTemplateView.swift",
        "Templates/Template1View.swift",
        "Templates/Template2View.swift",
        "Templates/Template3View.swift",
        "Templates/Template4View.swift",
        "Templates/Template5View.swift",
        "Templates/Template7View.swift",
        "Templates/TemplateViewType.swift",
        "Templates/V2/Components/Button/BottomSheetView.swift",
        "Templates/V2/Components/Button/ButtonComponentView.swift",
        "Templates/V2/Components/Button/ButtonComponentViewModel.swift",
        "Templates/V2/Components/Carousel/CarouselComponentView.swift",
        "Templates/V2/Components/Carousel/CarouselComponentViewModel.swift",
        "Templates/V2/Components/ComponentsView.swift",
        "Templates/V2/Components/Icon/IconComponentView.swift",
        "Templates/V2/Components/Icon/IconComponentViewModel.swift",
        "Templates/V2/Components/Image/ImageComponentView.swift",
        "Templates/V2/Components/Image/ImageComponentViewModel.swift",
        "Templates/V2/Components/Packages/Package/ComponentViewState.swift",
        "Templates/V2/Components/Packages/Package/PackageComponentView.swift",
        "Templates/V2/Components/Packages/Package/PackageComponentViewModel.swift",
        "Templates/V2/Components/Packages/PurchaseButton/PurchaseButtonComponentView.swift",
        "Templates/V2/Components/Packages/PurchaseButton/PurchaseButtonComponentViewModel.swift",
        "Templates/V2/Components/Root/RootView.swift",
        "Templates/V2/Components/Root/RootViewModel.swift",
        "Templates/V2/Components/Stack/FlexHStack.swift",
        "Templates/V2/Components/Stack/FlexVStack.swift",
        "Templates/V2/Components/Stack/JustifyContent.swift",
        "Templates/V2/Components/Stack/StackComponentView.swift",
        "Templates/V2/Components/Stack/StackComponentViewModel.swift",
        "Templates/V2/Components/StickyFooter/StickyFooterComponentView.swift",
        "Templates/V2/Components/StickyFooter/StickyFooterComponentViewModel.swift",
        "Templates/V2/Components/Tabs/TabControlButtonComponentView.swift",
        "Templates/V2/Components/Tabs/TabControlButtonComponentViewModel.swift",
        "Templates/V2/Components/Tabs/TabControlComponentView.swift",
        "Templates/V2/Components/Tabs/TabControlComponentViewModel.swift",
        "Templates/V2/Components/Tabs/TabControlToggleComponentView.swift",
        "Templates/V2/Components/Tabs/TabControlToggleComponentViewModel.swift",
        "Templates/V2/Components/Tabs/TabsComponentView.swift",
        "Templates/V2/Components/Tabs/TabsComponentViewModel.swift",
        "Templates/V2/Components/Text/TextComponentView.swift",
        "Templates/V2/Components/Text/TextComponentViewModel.swift",
        "Templates/V2/Components/Timeline/TimelineComponentView.swift",
        "Templates/V2/Components/Timeline/TimelineComponentViewModel.swift",
        "Templates/V2/EnvironmentObjects/IntroOfferEligibilityContext.swift",
        "Templates/V2/EnvironmentObjects/OpenSheet.swift",
        "Templates/V2/EnvironmentObjects/PackageContext.swift",
        "Templates/V2/EnvironmentObjects/PaywallPromoOfferCache.swift",
        "Templates/V2/EnvironmentObjects/ScreenCondition.swift",
        "Templates/V2/Localizations/LocaleExtensions.swift",
        "Templates/V2/Localizations/LocaleFinder.swift",
        "Templates/V2/Localizations/LocalizationDictionaryExtensions.swift",
        "Templates/V2/PaywallsV2View.swift",
        "Templates/V2/Previews/PreviewMock.swift",
        "Templates/V2/Previews/TemplateComponentsViewPreviews/ButtonWithFooterPreview.swift",
        "Templates/V2/Previews/TemplateComponentsViewPreviews/FallbackComponentPreview.swift",
        "Templates/V2/Previews/TemplateComponentsViewPreviews/FamilySharingTogglePreview.swift",
        "Templates/V2/Previews/TemplateComponentsViewPreviews/MultiTierPreview.swift",
        "Templates/V2/Previews/TemplateComponentsViewPreviews/PurchaseButtonInPackagePreview.swift",
        "Templates/V2/Previews/TemplateComponentsViewPreviews/Template1Preview.swift",
        "Templates/V2/Variables/VariableHandlerV2.swift",
        "Templates/V2/ViewHelpers/BackgroundStyle.swift",
        "Templates/V2/ViewHelpers/BadgeModifier.swift",
        "Templates/V2/ViewHelpers/DisplayableColor.swift",
        "Templates/V2/ViewHelpers/Fill.swift",
        "Templates/V2/ViewHelpers/FixMacButtonsModifier.swift",
        "Templates/V2/ViewHelpers/ForegroundColorScheme.swift",
        "Templates/V2/ViewHelpers/NavigatetoURL.swift",
        "Templates/V2/ViewHelpers/ProgressViewModifier.swift",
        "Templates/V2/ViewHelpers/ShadowModifier.swift",
        "Templates/V2/ViewHelpers/Shape.swift",
        "Templates/V2/ViewHelpers/SizeModifier.swift",
        "Templates/V2/ViewHelpers/TransitionModifier.swift",
        "Templates/V2/ViewModelHelpers/LocalizationProvider.swift",
        "Templates/V2/ViewModelHelpers/PackageValidator.swift",
        "Templates/V2/ViewModelHelpers/PaywallComponentTypeTransformers.swift",
        "Templates/V2/ViewModelHelpers/PaywallComponentViewModel.swift",
        "Templates/V2/ViewModelHelpers/PresentedPartials.swift",
        "Templates/V2/ViewModelHelpers/UIConfigProvider.swift",
        "Templates/V2/ViewModelHelpers/VideoComponentViewModel.swift",
        "Templates/V2/ViewModelHelpers/ViewModelFactory.swift",
        "UIKit/PaywallFooterViewController.swift",
        "UIKit/PaywallViewController.swift",
        "View+OnRedeemWebPurchaseAttempt.swift",
        "View+PresentPaywall.swift",
        "View+PresentPaywallFooter.swift",
        "View+PurchaseRestoreCompleted.swift",
        "Views/AsyncButton.swift",
        "Views/CompatibilityContentUnavailableView.swift",
        "Views/DebugErrorView.swift",
        "Views/ErrorDisplay.swift",
        "Views/ErrorView.swift",
        "Views/FooterView.swift",
        "Views/GradientView.swift",
        "Views/IconView.swift",
        "Views/IntroEligibilityStateView.swift",
        "Views/LoadingPaywallView.swift",
        "Views/PackageButtonStyle.swift",
        "Views/ProgressView.swift",
        "Views/PurchaseButton.swift",
        "Views/RemoteImage.swift",
        "Views/SafariView.swift",
        "Views/TemplateBackgroundImageView.swift",
        "Views/TemplatePackageSetting.swift",
        "Views/TierSelectorView.swift"
      ],
      "target_dependencies" : [
        "RevenueCat"
      ],
      "type" : "library"
    },
    {
      "c99name" : "RevenueCat",
      "module_type" : "SwiftTarget",
      "name" : "RevenueCat",
      "path" : "Sources",
      "product_memberships" : [
        "RevenueCat",
        "RevenueCatUI"
      ],
      "resources" : [
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/PrivacyInfo.xcprivacy",
          "rule" : {
            "copy" : {
            }
          }
        }
      ],
      "sources" : [
        "Attribution/ASIdManagerProxy.swift",
        "Attribution/AttributionData.swift",
        "Attribution/AttributionFetcher.swift",
        "Attribution/AttributionNetwork.swift",
        "Attribution/AttributionPoster.swift",
        "Attribution/AttributionTypeFactory.swift",
        "Attribution/TrackingManagerProxy.swift",
        "Caching/CacheStatus.swift",
        "Caching/DeviceCache.swift",
        "Caching/FileRepository.swift",
        "Caching/InMemoryCachedObject.swift",
        "Caching/KeyedDeferredValueStore.swift",
        "Caching/LargeItemCacheType.swift",
        "CodableExtensions/PeriodType+Extensions.swift",
        "CodableExtensions/PurchaseOwnershipType+Extensions.swift",
        "CodableExtensions/Store+Extensions.swift",
        "CustomerCenter/CustomerCenterConfigData.swift",
        "CustomerCenter/CustomerCenterPresentationMode.swift",
        "CustomerCenter/Events/CustomerCenterEvent.swift",
        "CustomerCenter/Events/EventsRequest+CustomerCenter.swift",
        "DeepLink/DeepLinkParser.swift",
        "Diagnostics/DiagnosticsEvent.swift",
        "Diagnostics/DiagnosticsFileHandler.swift",
        "Diagnostics/DiagnosticsTracker.swift",
        "Diagnostics/FileHandler.swift",
        "Diagnostics/Networking/DiagnosticsEventsRequest.swift",
        "Diagnostics/Networking/DiagnosticsHTTPRequestPath.swift",
        "Diagnostics/Networking/DiagnosticsPostOperation.swift",
        "Diagnostics/Networking/DiagnosticsSynchronizer.swift",
        "DocCDocumentation/EmptyFile.swift",
        "Error Handling/Assertions.swift",
        "Error Handling/BackendError.swift",
        "Error Handling/BackendErrorCode.swift",
        "Error Handling/DescribableError.swift",
        "Error Handling/ErrorCode.swift",
        "Error Handling/ErrorDetails.swift",
        "Error Handling/ErrorUtils.swift",
        "Error Handling/PurchasesError.swift",
        "Error Handling/SKError+Extensions.swift",
        "Error Handling/StoreKitError+Extensions.swift",
        "Error Handling/StoreKitErrorHelper.swift",
        "Events/FeatureEvent.swift",
        "Events/Networking/EventsRequest.swift",
        "Events/StoredEvent.swift",
        "Events/StoredEventSerializer.swift",
        "FoundationExtensions/Array+Extensions.swift",
        "FoundationExtensions/AsyncExtensions.swift",
        "FoundationExtensions/Data+Extensions.swift",
        "FoundationExtensions/Date+Extensions.swift",
        "FoundationExtensions/Decoder+Extensions.swift",
        "FoundationExtensions/Dictionary+Extensions.swift",
        "FoundationExtensions/DispatchTimeInterval+Extensions.swift",
        "FoundationExtensions/Error+Extensions.swift",
        "FoundationExtensions/Integer+Extensions.swift",
        "FoundationExtensions/Locale+Extensions.swift",
        "FoundationExtensions/OperationQueue+Extensions.swift",
        "FoundationExtensions/Operators+Extensions.swift",
        "FoundationExtensions/Optional+Extensions.swift",
        "FoundationExtensions/Result+Extensions.swift",
        "FoundationExtensions/Set+Extensions.swift",
        "FoundationExtensions/String+Extensions.swift",
        "FoundationExtensions/TimeInterval+Extensions.swift",
        "FoundationExtensions/UIApplication+RCExtensions.swift",
        "FoundationExtensions/UserDefaults+Extensions.swift",
        "Identity/CustomerInfo+ActiveDates.swift",
        "Identity/CustomerInfo+NonSubscriptions.swift",
        "Identity/CustomerInfo.swift",
        "Identity/CustomerInfoManager.swift",
        "Identity/IdentityManager.swift",
        "Identity/ProductPaidPrice.swift",
        "Identity/SubscriptionInfo.swift",
        "LocalReceiptParsing/BasicTypes/ASN1Container.swift",
        "LocalReceiptParsing/BasicTypes/ASN1ObjectIdentifier.swift",
        "LocalReceiptParsing/BasicTypes/AppleReceipt.swift",
        "LocalReceiptParsing/BasicTypes/InAppPurchase.swift",
        "LocalReceiptParsing/Builders/ASN1ContainerBuilder.swift",
        "LocalReceiptParsing/Builders/ASN1ObjectIdentifierBuilder.swift",
        "LocalReceiptParsing/Builders/AppleReceiptBuilder.swift",
        "LocalReceiptParsing/Builders/InAppPurchaseBuilder.swift",
        "LocalReceiptParsing/DataConverters/ArraySlice_UInt8+Extensions.swift",
        "LocalReceiptParsing/DataConverters/Codable+Extensions.swift",
        "LocalReceiptParsing/DataConverters/DateFormatter+Extensions.swift",
        "LocalReceiptParsing/DataConverters/UInt8+Extensions.swift",
        "LocalReceiptParsing/Helpers/FileReader.swift",
        "LocalReceiptParsing/Helpers/LoggerType.swift",
        "LocalReceiptParsing/Helpers/ProcessInfo+Extensions.swift",
        "LocalReceiptParsing/Helpers/ReceiptParserLogger.swift",
        "LocalReceiptParsing/Helpers/ReceiptStrings.swift",
        "LocalReceiptParsing/LocalReceiptFetcher.swift",
        "LocalReceiptParsing/PurchasesReceiptParser.swift",
        "LocalReceiptParsing/ReceiptParsingError.swift",
        "Logging/LogIntent.swift",
        "Logging/Logger.swift",
        "Logging/Strings/AnalyticsStrings.swift",
        "Logging/Strings/AttributionStrings.swift",
        "Logging/Strings/BackendErrorStrings.swift",
        "Logging/Strings/CodableStrings.swift",
        "Logging/Strings/ConfigureStrings.swift",
        "Logging/Strings/CustomerInfoStrings.swift",
        "Logging/Strings/DiagnosticsStrings.swift",
        "Logging/Strings/ETagStrings.swift",
        "Logging/Strings/EligibilityStrings.swift",
        "Logging/Strings/FileRepositoryStrings.swift",
        "Logging/Strings/IdentityStrings.swift",
        "Logging/Strings/ManageSubscriptionsStrings.swift",
        "Logging/Strings/NetworkStrings.swift",
        "Logging/Strings/OfferingStrings.swift",
        "Logging/Strings/OfflineEntitlementsStrings.swift",
        "Logging/Strings/PaywallsStrings.swift",
        "Logging/Strings/PurchaseStrings.swift",
        "Logging/Strings/SigningStrings.swift",
        "Logging/Strings/StoreKitStrings.swift",
        "Logging/Strings/Strings.swift",
        "Logging/Strings/VirtualCurrencyStrings.swift",
        "Logging/Strings/WebRedemptionStrings.swift",
        "Misc/Box.swift",
        "Misc/Codable/AnyDecodable.swift",
        "Misc/Codable/AnyEncodable.swift",
        "Misc/Codable/DefaultDecodable.swift",
        "Misc/Codable/EnsureNonEmptyCollectionDecodable.swift",
        "Misc/Codable/IgnoreHashable.swift",
        "Misc/Codable/NonEmptyStringDecodable.swift",
        "Misc/Codable/RawDataContainer.swift",
        "Misc/Concurrency/Atomic.swift",
        "Misc/Concurrency/Lock.swift",
        "Misc/Concurrency/OperationDispatcher.swift",
        "Misc/Concurrency/Purchases+async.swift",
        "Misc/Concurrency/Purchases+nonasync.swift",
        "Misc/Concurrency/SynchronizedUserDefaults.swift",
        "Misc/DangerousSettings.swift",
        "Misc/DateAndTime/Clock.swift",
        "Misc/DateAndTime/DateExtensions.swift",
        "Misc/DateAndTime/DateProvider.swift",
        "Misc/DateAndTime/ISODurationFormatter.swift",
        "Misc/DateAndTime/ISOPeriodFormatter.swift",
        "Misc/DateAndTime/TimingUtil.swift",
        "Misc/Deprecations.swift",
        "Misc/Either.swift",
        "Misc/Locale/PreferredLocalesProvider.swift",
        "Misc/MacDevice.swift",
        "Misc/MapAppStoreDetector.swift",
        "Misc/Obsoletions.swift",
        "Misc/PlatformInfo.swift",
        "Misc/PriceFormatterProvider.swift",
        "Misc/RateLimiter.swift",
        "Misc/SandboxEnvironmentDetector.swift",
        "Misc/StoreKitVersion.swift",
        "Misc/SystemInfo.swift",
        "Networking/Backend.swift",
        "Networking/BackendConfiguration.swift",
        "Networking/Caching/CacheFetchPolicy.swift",
        "Networking/Caching/CallbackCache.swift",
        "Networking/Caching/CallbackCacheStatus.swift",
        "Networking/Caching/CustomerCenterConfigCallback.swift",
        "Networking/Caching/CustomerInfoCallback.swift",
        "Networking/Caching/LogInCallback.swift",
        "Networking/Caching/OfferingsCallback.swift",
        "Networking/Caching/ProductEntitlementMappingCallback.swift",
        "Networking/Caching/VirtualCurrenciesCallback.swift",
        "Networking/Caching/WebBillingProductsCallback.swift",
        "Networking/Caching/WebOfferingProductsCallback.swift",
        "Networking/CustomerAPI.swift",
        "Networking/CustomerCenterConfigAPI.swift",
        "Networking/HTTPClient/DNSChecker.swift",
        "Networking/HTTPClient/ETagManager.swift",
        "Networking/HTTPClient/ErrorResponse.swift",
        "Networking/HTTPClient/HTTPClient.swift",
        "Networking/HTTPClient/HTTPRequest.swift",
        "Networking/HTTPClient/HTTPRequestBody.swift",
        "Networking/HTTPClient/HTTPRequestPath.swift",
        "Networking/HTTPClient/HTTPResponse.swift",
        "Networking/HTTPClient/HTTPResponseBody.swift",
        "Networking/HTTPClient/HTTPStatusCode.swift",
        "Networking/HTTPClient/NetworkError.swift",
        "Networking/HTTPClient/RedirectLoggerTaskDelegate.swift",
        "Networking/HTTPClient/SimpleNetworkServiceType.swift",
        "Networking/IdentityAPI.swift",
        "Networking/InternalAPI.swift",
        "Networking/OfferingsAPI.swift",
        "Networking/OfflineEntitlementsAPI.swift",
        "Networking/Operations/GetCustomerCenterConfigOperation.swift",
        "Networking/Operations/GetCustomerInfoOperation.swift",
        "Networking/Operations/GetIntroEligibilityOperation.swift",
        "Networking/Operations/GetOfferingsOperation.swift",
        "Networking/Operations/GetProductEntitlementMappingOperation.swift",
        "Networking/Operations/GetVirtualCurrenciesOperation.swift",
        "Networking/Operations/GetWebBillingProductsOperation.swift",
        "Networking/Operations/GetWebOfferingProductsOperation.swift",
        "Networking/Operations/Handling/CustomerInfoResponseHandler.swift",
        "Networking/Operations/HealthOperation.swift",
        "Networking/Operations/HealthReportAvailabilityOperation.swift",
        "Networking/Operations/HealthReportOperation.swift",
        "Networking/Operations/LogInOperation.swift",
        "Networking/Operations/NetworkOperation.swift",
        "Networking/Operations/PostAdServicesTokenOperation.swift",
        "Networking/Operations/PostAttributionDataOperation.swift",
        "Networking/Operations/PostOfferForSigningOperation.swift",
        "Networking/Operations/PostReceiptDataOperation.swift",
        "Networking/Operations/PostRedeemWebPurchaseOperation.swift",
        "Networking/Operations/PostSubscriberAttributesOperation.swift",
        "Networking/RedeemWebPurchaseAPI.swift",
        "Networking/Responses/CustomerCenterConfigResponse.swift",
        "Networking/Responses/CustomerInfoResponse.swift",
        "Networking/Responses/GetIntroEligibilityResponse.swift",
        "Networking/Responses/HealthReportAvailabilityResponse.swift",
        "Networking/Responses/HealthReportResponse.swift",
        "Networking/Responses/OfferingsResponse.swift",
        "Networking/Responses/PostOfferResponse.swift",
        "Networking/Responses/ProductEntitlementMappingResponse.swift",
        "Networking/Responses/RevenueCatUI/PaywallComponentsData.swift",
        "Networking/Responses/RevenueCatUI/UIConfig.swift",
        "Networking/Responses/VirtualCurrenciesResponse.swift",
        "Networking/Responses/WebBillingProductsResponse.swift",
        "Networking/Responses/WebOfferingProductsResponse.swift",
        "Networking/VirtualCurrenciesAPI.swift",
        "Networking/WebBillingAPI.swift",
        "Networking/WebBillingHTTPRequestPath.swift",
        "OfflineEntitlements/CustomerInfo+OfflineEntitlements.swift",
        "OfflineEntitlements/OfflineCustomerInfoCreator.swift",
        "OfflineEntitlements/OfflineEntitlementsManager.swift",
        "OfflineEntitlements/ProductEntitlementMapping.swift",
        "OfflineEntitlements/ProductEntitlementMappingFetcher.swift",
        "OfflineEntitlements/PurchasedProductsFetcher.swift",
        "OfflineEntitlements/PurchasedSK2Product.swift",
        "Paywalls/Components/Common/Background.swift",
        "Paywalls/Components/Common/Border.swift",
        "Paywalls/Components/Common/ComponentOverrides.swift",
        "Paywalls/Components/Common/Dimension.swift",
        "Paywalls/Components/Common/PaywallComponentBase.swift",
        "Paywalls/Components/Common/PaywallComponentLocalization.swift",
        "Paywalls/Components/Common/PaywallComponentPropertyTypes.swift",
        "Paywalls/Components/PaywallButtonComponent.swift",
        "Paywalls/Components/PaywallCarouselComponent.swift",
        "Paywalls/Components/PaywallIconComponent.swift",
        "Paywalls/Components/PaywallImageComponent.swift",
        "Paywalls/Components/PaywallPackageComponent.swift",
        "Paywalls/Components/PaywallPurchaseButtonComponent.swift",
        "Paywalls/Components/PaywallStackComponent.swift",
        "Paywalls/Components/PaywallStickyFooterComponent.swift",
        "Paywalls/Components/PaywallTabsComponent.swift",
        "Paywalls/Components/PaywallTextComponent.swift",
        "Paywalls/Components/PaywallTimelineComponent.swift",
        "Paywalls/Components/PaywallV2CacheWarming.swift",
        "Paywalls/Components/PaywallVideoComponent.swift",
        "Paywalls/Components/Transitions/PaywallAnimation.swift",
        "Paywalls/Components/Transitions/PaywallTransition.swift",
        "Paywalls/Events/Networking/EventsRequest+Paywall.swift",
        "Paywalls/Events/Networking/PaywallHTTPRequestPath.swift",
        "Paywalls/Events/Networking/PostPaywallEventsOperation.swift",
        "Paywalls/Events/PaywallEvent.swift",
        "Paywalls/Events/PaywallEventStore.swift",
        "Paywalls/Events/PaywallEventsManager.swift",
        "Paywalls/PaywallCacheWarming.swift",
        "Paywalls/PaywallColor.swift",
        "Paywalls/PaywallData+Localization.swift",
        "Paywalls/PaywallData.swift",
        "Paywalls/PaywallFontManagerType.swift",
        "Paywalls/PaywallViewMode.swift",
        "Paywalls/SubscriptionHistoryTracker.swift",
        "Purchasing/CachingProductsManager.swift",
        "Purchasing/CachingTrialOrIntroPriceEligibilityChecker.swift",
        "Purchasing/Configuration.swift",
        "Purchasing/EntitlementInfo.swift",
        "Purchasing/EntitlementInfos.swift",
        "Purchasing/IntroEligibility.swift",
        "Purchasing/IntroEligibilityCalculator.swift",
        "Purchasing/NonSubscriptionTransaction.swift",
        "Purchasing/Offering.swift",
        "Purchasing/Offerings.swift",
        "Purchasing/OfferingsFactory.swift",
        "Purchasing/OfferingsManager.swift",
        "Purchasing/Package.swift",
        "Purchasing/PackageType.swift",
        "Purchasing/ProductRequestData+Initialization.swift",
        "Purchasing/ProductRequestData.swift",
        "Purchasing/ProductsManager.swift",
        "Purchasing/ProductsManagerFactory.swift",
        "Purchasing/ProductsManagerType.swift",
        "Purchasing/ProductsRequestFactory.swift",
        "Purchasing/PurchaseOwnershipType.swift",
        "Purchasing/Purchases/Attribution.swift",
        "Purchasing/Purchases/PurchaseParams.swift",
        "Purchasing/Purchases/Purchases.swift",
        "Purchasing/Purchases/PurchasesAreCompletedBy.swift",
        "Purchasing/Purchases/PurchasesDelegate.swift",
        "Purchasing/Purchases/PurchasesOrchestrator.swift",
        "Purchasing/Purchases/PurchasesType.swift",
        "Purchasing/Purchases/TransactionPoster.swift",
        "Purchasing/ReceiptFetcher.swift",
        "Purchasing/ReceiptRefreshPolicy.swift",
        "Purchasing/SimulatedStore/SimulatedStoreProduct.swift",
        "Purchasing/SimulatedStore/SimulatedStoreProductsManager.swift",
        "Purchasing/SimulatedStore/SimulatedStorePurchaseHandler.swift",
        "Purchasing/SimulatedStore/SimulatedStorePurchaseUI.swift",
        "Purchasing/SimulatedStore/SimulatedStoreTransaction.swift",
        "Purchasing/SimulatedStore/WebBillingProduct+SimulatedStoreProduct.swift",
        "Purchasing/StoreKit1/PaymentQueueWrapper.swift",
        "Purchasing/StoreKit1/ProductsFetcherSK1.swift",
        "Purchasing/StoreKit1/StoreKit1Wrapper.swift",
        "Purchasing/StoreKit1/StoreKitRequestFetcher.swift",
        "Purchasing/StoreKit2/Observer Mode/StoreKit2ObserverModePurchaseDetector.swift",
        "Purchasing/StoreKit2/ProductsFetcherSK2.swift",
        "Purchasing/StoreKit2/SK2AppTransaction.swift",
        "Purchasing/StoreKit2/SK2BeginRefundRequestHelper.swift",
        "Purchasing/StoreKit2/StoreKit2PurchaseIntentListener.swift",
        "Purchasing/StoreKit2/StoreKit2Receipt.swift",
        "Purchasing/StoreKit2/StoreKit2StorefrontListener.swift",
        "Purchasing/StoreKit2/StoreKit2TransactionFetcher.swift",
        "Purchasing/StoreKit2/StoreKit2TransactionListener.swift",
        "Purchasing/StoreKit2/Win-Back Offers/WinBackOfferEligibilityCalculator.swift",
        "Purchasing/StoreKit2/Win-Back Offers/WinBackOfferEligibilityCalculatorType.swift",
        "Purchasing/StoreKitAbstractions/EncodedAppleReceipt.swift",
        "Purchasing/StoreKitAbstractions/ProductType.swift",
        "Purchasing/StoreKitAbstractions/PromotionalOffer.swift",
        "Purchasing/StoreKitAbstractions/SK1StoreProduct.swift",
        "Purchasing/StoreKitAbstractions/SK1StoreProductDiscount.swift",
        "Purchasing/StoreKitAbstractions/SK1StoreTransaction.swift",
        "Purchasing/StoreKitAbstractions/SK1Storefront.swift",
        "Purchasing/StoreKitAbstractions/SK2StoreProduct.swift",
        "Purchasing/StoreKitAbstractions/SK2StoreProductDiscount.swift",
        "Purchasing/StoreKitAbstractions/SK2StoreTransaction.swift",
        "Purchasing/StoreKitAbstractions/SK2Storefront.swift",
        "Purchasing/StoreKitAbstractions/StoreEnvironment.swift",
        "Purchasing/StoreKitAbstractions/StoreKitWorkarounds.swift",
        "Purchasing/StoreKitAbstractions/StoreProduct.swift",
        "Purchasing/StoreKitAbstractions/StoreProductDiscount.swift",
        "Purchasing/StoreKitAbstractions/StoreTransaction.swift",
        "Purchasing/StoreKitAbstractions/Storefront.swift",
        "Purchasing/StoreKitAbstractions/StorefrontProvider.swift",
        "Purchasing/StoreKitAbstractions/SubscriptionPeriod.swift",
        "Purchasing/StoreKitAbstractions/Test Data/TestStoreProduct.swift",
        "Purchasing/StoreKitAbstractions/Test Data/TestStoreProductDiscount.swift",
        "Purchasing/StoreKitAbstractions/WinBackOffer.swift",
        "Purchasing/TransactionsFactory.swift",
        "Purchasing/TransactionsManager.swift",
        "Purchasing/TrialOrIntroPriceEligibilityChecker.swift",
        "Security/FakeSigning.swift",
        "Security/HTTPRequest+Signing.swift",
        "Security/HTTPRequestBody+Signing.swift",
        "Security/Signing+ResponseVerification.swift",
        "Security/Signing.swift",
        "Security/VerificationResult.swift",
        "SubscriberAttributes/AttributionDataMigrator.swift",
        "SubscriberAttributes/AttributionKey.swift",
        "SubscriberAttributes/ReservedSubscriberAttributes.swift",
        "SubscriberAttributes/SubscriberAttribute.swift",
        "SubscriberAttributes/SubscriberAttributesManager.swift",
        "Support/BeginRefundRequestHelper.swift",
        "Support/DebugUI/DebugContentViews.swift",
        "Support/DebugUI/DebugView.swift",
        "Support/DebugUI/DebugViewController.swift",
        "Support/DebugUI/DebugViewModel.swift",
        "Support/DebugUI/DebugViewSheetPresentation.swift",
        "Support/DebugUI/ProductStatus+Icon.swift",
        "Support/DebugUI/SDKHealthCheckStatus+Icon.swift",
        "Support/DebugUI/SDKHealthStatus+Icon.swift",
        "Support/FrameworkDisambiguation.swift",
        "Support/HealthReport+Validate.swift",
        "Support/ManageSubscriptionsHelper.swift",
        "Support/PaymentAuthorizationProvider.swift",
        "Support/PaywallExtensions.swift",
        "Support/PurchasesDiagnostics.swift",
        "Support/SDKHealthError+CustomNSError.swift",
        "Support/SDKHealthManager.swift",
        "Support/StoreMessageType.swift",
        "Support/StoreMessagesHelper.swift",
        "Support/SwiftVersionCheck.swift",
        "Virtual Currencies/VirtualCurrencies.swift",
        "Virtual Currencies/VirtualCurrency.swift",
        "Virtual Currencies/VirtualCurrencyManager.swift",
        "WebPurchaseRedemption/URL+WebPurchaseRedemption.swift",
        "WebPurchaseRedemption/WebPurchaseRedemption.swift",
        "WebPurchaseRedemption/WebPurchaseRedemptionHelper.swift",
        "WebPurchaseRedemption/WebPurchaseRedemptionResult.swift"
      ],
      "type" : "library"
    },
    {
      "c99name" : "ReceiptParserTests",
      "module_type" : "SwiftTarget",
      "name" : "ReceiptParserTests",
      "path" : "Tests/ReceiptParserTests",
      "product_dependencies" : [
        "Nimble"
      ],
      "sources" : [
        "Helpers/MockBundle.swift",
        "ReceiptParserFetchingTests.swift"
      ],
      "target_dependencies" : [
        "ReceiptParser"
      ],
      "type" : "test"
    },
    {
      "c99name" : "ReceiptParser",
      "module_type" : "SwiftTarget",
      "name" : "ReceiptParser",
      "path" : "LocalReceiptParsing",
      "product_memberships" : [
        "ReceiptParser"
      ],
      "sources" : [
        "BasicTypes/ASN1Container.swift",
        "BasicTypes/ASN1ObjectIdentifier.swift",
        "BasicTypes/AppleReceipt.swift",
        "BasicTypes/InAppPurchase.swift",
        "Builders/ASN1ContainerBuilder.swift",
        "Builders/ASN1ObjectIdentifierBuilder.swift",
        "Builders/AppleReceiptBuilder.swift",
        "Builders/InAppPurchaseBuilder.swift",
        "DataConverters/ArraySlice_UInt8+Extensions.swift",
        "DataConverters/Codable+Extensions.swift",
        "DataConverters/DateFormatter+Extensions.swift",
        "DataConverters/UInt8+Extensions.swift",
        "Helpers/FileReader.swift",
        "Helpers/LoggerType.swift",
        "Helpers/ProcessInfo+Extensions.swift",
        "Helpers/ReceiptParserLogger.swift",
        "Helpers/ReceiptStrings.swift",
        "LocalReceiptFetcher.swift",
        "PurchasesReceiptParser.swift",
        "ReceiptParser-only-files/PurchasesReceiptParser+Extensions.swift",
        "ReceiptParsingError.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.9"
}
warning: 'spi-builder-workspace': Invalid Exclude '/Users/admin/builder/spi-builder-workspace/Tests/RevenueCatUITests/Templates/__Snapshots__': File not found.
warning: 'spi-builder-workspace': ignoring broken symlink /Users/admin/builder/spi-builder-workspace/Tests/RevenueCatUITests/PaywallsV2/__PreviewResources__
warning: 'spi-builder-workspace': Invalid Resource 'PaywallsV2/__PreviewResources__': File not found.
Done.