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 blue-triangle, reference 3.14.1 (efd6ba), with Swift 6.1 for macOS (SPM) on 6 Jun 2025 16:13:11 UTC.

Swift 6 data race errors: 37

Build Command

env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures

Build Log

     |                         |- note: add '@MainActor' to make static property 'payloadCache' part of global actor 'MainActor'
     |                         `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 283 |         PayloadCache.init(configuration.cacheMemoryLimit,
 284 |                           expiry: configuration.cacheExpiryDuration)
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/CrashReportManager.swift:37:33: warning: capture of 'self' with non-sendable type 'CrashReportManager?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
  8 | import Foundation
  9 |
 10 | final class CrashReportManager: CrashReportManaging {
    |             `- note: class 'CrashReportManager' does not conform to the 'Sendable' protocol
 11 |
 12 |     private let crashReportPersistence: CrashReportPersisting.Type
    :
 35 |         self.intervalProvider = intervalProvider
 36 |         self.startupTask = Task.delayed(byTimeInterval: Constants.startupDelay, priority: .utility) { [weak self] in
 37 |             guard let session = self?.session() else {
    |                                 `- warning: capture of 'self' with non-sendable type 'CrashReportManager?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 38 |                 return
 39 |             }
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/CrashReportPersistence.swift:18:24: warning: static property 'logger' is not concurrency-safe because non-'Sendable' type 'any Logging' may have shared mutable state; this is an error in the Swift 6 language mode
16 |
17 | struct CrashReportPersistence: CrashReportPersisting {
18 |     private static let logger = BTLogger.live
   |                        |- warning: static property 'logger' is not concurrency-safe because non-'Sendable' type 'any Logging' may have shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: add '@MainActor' to make static property 'logger' part of global actor 'MainActor'
   |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
19 |
20 |     private static var persistence: Persistence? {
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/Protocols/Logging.swift:10:10: note: protocol 'Logging' does not conform to the 'Sendable' protocol
 8 | import Foundation
 9 |
10 | protocol Logging {
   |          `- note: protocol 'Logging' does not conform to the 'Sendable' protocol
11 |     var enableDebug: Bool { get set }
12 |
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/DisableModeSessionManager.swift:99:14: warning: capture of 'self' with non-sendable type 'DisableModeSessionManager?' in a '@Sendable' closure
 28 | /// - Note: This session manager is used exclusively when `enableAllTracking` is false.
 29 | ///
 30 | class DisableModeSessionManager : SessionManagerProtocol {
    |       `- note: class 'DisableModeSessionManager' does not conform to the 'Sendable' protocol
 31 |
 32 |     private var expirationDurationInMS: Millisecond = 30 * 60 * 1000
    :
 97 |      private func updateRemoteConfig(){
 98 |          queue.async { [weak self] in
 99 |              self?.updater.update(true) {}
    |              `- warning: capture of 'self' with non-sendable type 'DisableModeSessionManager?' in a '@Sendable' closure
100 |          }
101 |      }
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:930:14: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 928 |         }
 929 |
 930 |         Task {
     |              `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 931 |             await capturedRequestCollector?.start(page: page, startTime: startTime)
     |                                                         `- note: closure captures 'page' which is accessible to code in the current task
 932 |         }
 933 |     }
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:931:45: warning: sending 'page' risks causing data races; this is an error in the Swift 6 language mode
 929 |
 930 |         Task {
 931 |             await capturedRequestCollector?.start(page: page, startTime: startTime)
     |                                             |- warning: sending 'page' risks causing data races; this is an error in the Swift 6 language mode
     |                                             `- note: sending task-isolated 'page' to actor-isolated instance method 'start(page:startTime:)' risks causing data races between actor-isolated and task-isolated uses
 932 |         }
 933 |     }
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:953:14: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 951 |
 952 |     static func captureRequest(timer: InternalTimer, response: URLResponse?) {
 953 |         Task {
     |              `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 954 |             await capturedRequestCollector?.collect(timer: timer, response: response)
     |                                                            `- note: closure captures 'timer' which is accessible to code in the current task
 955 |         }
 956 |     }
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:954:45: warning: sending 'timer' risks causing data races; this is an error in the Swift 6 language mode
 952 |     static func captureRequest(timer: InternalTimer, response: URLResponse?) {
 953 |         Task {
 954 |             await capturedRequestCollector?.collect(timer: timer, response: response)
     |                                             |- warning: sending 'timer' risks causing data races; this is an error in the Swift 6 language mode
     |                                             `- note: sending task-isolated 'timer' to actor-isolated instance method 'collect(timer:response:)' risks causing data races between actor-isolated and task-isolated uses
 955 |         }
 956 |     }
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:959:14: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 957 |
 958 |     internal static func captureRequest(timer: InternalTimer, response: CustomResponse) {
 959 |         Task {
     |              `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 960 |             await capturedRequestCollector?.collect(timer: timer, response: response)
     |                                                            `- note: closure captures 'timer' which is accessible to code in the current task
 961 |         }
 962 |     }
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:960:45: warning: sending 'timer' risks causing data races; this is an error in the Swift 6 language mode
 958 |     internal static func captureRequest(timer: InternalTimer, response: CustomResponse) {
 959 |         Task {
 960 |             await capturedRequestCollector?.collect(timer: timer, response: response)
     |                                             |- warning: sending 'timer' risks causing data races; this is an error in the Swift 6 language mode
     |                                             `- note: sending task-isolated 'timer' to actor-isolated instance method 'collect(timer:response:)' risks causing data races between actor-isolated and task-isolated uses
 961 |         }
 962 |     }
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:969:14: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 967 |     ///   - tuple: The asynchronously-delivered tuple containing the request contents as a Data instance and a URLResponse.
 968 |     static func captureRequest(timer: InternalTimer, tuple: (Data, URLResponse)) {
 969 |         Task {
     |              `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 970 |             await capturedRequestCollector?.collect(timer: timer, response: tuple.1)
     |                                                            `- note: closure captures 'timer' which is accessible to code in the current task
 971 |         }
 972 |     }
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:970:45: warning: sending 'timer' risks causing data races; this is an error in the Swift 6 language mode
 968 |     static func captureRequest(timer: InternalTimer, tuple: (Data, URLResponse)) {
 969 |         Task {
 970 |             await capturedRequestCollector?.collect(timer: timer, response: tuple.1)
     |                                             |- warning: sending 'timer' risks causing data races; this is an error in the Swift 6 language mode
     |                                             `- note: sending task-isolated 'timer' to actor-isolated instance method 'collect(timer:response:)' risks causing data races between actor-isolated and task-isolated uses
 971 |         }
 972 |     }
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:975:14: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 973 |
 974 |     static func captureRequest(timer: InternalTimer, request : URLRequest, error: Error?) {
 975 |         Task {
     |              `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 976 |             await capturedRequestCollector?.collect(timer: timer, request: request, error: error)
     |                                                            `- note: closure captures 'timer' which is accessible to code in the current task
 977 |         }
 978 |     }
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:976:45: warning: sending 'timer' risks causing data races; this is an error in the Swift 6 language mode
 974 |     static func captureRequest(timer: InternalTimer, request : URLRequest, error: Error?) {
 975 |         Task {
 976 |             await capturedRequestCollector?.collect(timer: timer, request: request, error: error)
     |                                             |- warning: sending 'timer' risks causing data races; this is an error in the Swift 6 language mode
     |                                             `- note: sending task-isolated 'timer' to actor-isolated instance method 'collect(timer:request:error:)' risks causing data races between actor-isolated and task-isolated uses
 977 |         }
 978 |     }
[121/124] Compiling BlueTriangle CrashReportManager.swift
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BTLogger.swift:118:16: warning: static property 'live' is not concurrency-safe because non-'Sendable' type 'any Logging' may have shared mutable state; this is an error in the Swift 6 language mode
116 |
117 | extension BTLogger {
118 |     static let live: Logging = {
    |                |- warning: static property 'live' is not concurrency-safe because non-'Sendable' type 'any Logging' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: add '@MainActor' to make static property 'live' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
119 |         BTLogger()
120 |     }()
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/Protocols/Logging.swift:10:10: note: protocol 'Logging' does not conform to the 'Sendable' protocol
 8 | import Foundation
 9 |
10 | protocol Logging {
   |          `- note: protocol 'Logging' does not conform to the 'Sendable' protocol
11 |     var enableDebug: Bool { get set }
12 |
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BTSignalCrashReporter.swift:58:40: warning: capture of 'self' with non-sendable type 'BTSignalCrashReporter?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 24 |
 25 |
 26 | class BTSignalCrashReporter {
    |       `- note: class 'BTSignalCrashReporter' does not conform to the 'Sendable' protocol
 27 |
 28 |     private let  directory : String
    :
 56 |         case .nsException:
 57 |             self.startupTask = Task.delayed(byTimeInterval: Constants.startupDelay, priority: .utility) { [weak self] in
 58 |                 guard let strongSelf = self else {
    |                                        `- warning: capture of 'self' with non-sendable type 'BTSignalCrashReporter?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 59 |                     return
 60 |                 }
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BTSignalCrashReporter.swift:91:37: warning: capture of 'self' with non-sendable type 'BTSignalCrashReporter?' in a '@Sendable' closure
 24 |
 25 |
 26 | class BTSignalCrashReporter {
    |       `- note: class 'BTSignalCrashReporter' does not conform to the 'Sendable' protocol
 27 |
 28 |     private let  directory : String
    :
 89 |         DispatchQueue.global(qos: .utility).async { [weak self] in
 90 |             do {
 91 |                 if let strongSelf = self, let session_id = crash.btt_session_id, session_id.count > 0, let sessionId = UInt64(session_id){
    |                                     `- warning: capture of 'self' with non-sendable type 'BTSignalCrashReporter?' in a '@Sendable' closure
 92 |                     var sessionCopy = session
 93 |                     sessionCopy.sessionID = sessionId
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BTSignalCrashReporter.swift:92:39: warning: capture of 'session' with non-sendable type 'Session' in a '@Sendable' closure
 90 |             do {
 91 |                 if let strongSelf = self, let session_id = crash.btt_session_id, session_id.count > 0, let sessionId = UInt64(session_id){
 92 |                     var sessionCopy = session
    |                                       `- warning: capture of 'session' with non-sendable type 'Session' in a '@Sendable' closure
 93 |                     sessionCopy.sessionID = sessionId
 94 |                     let pageName = (crash.btt_page_name ?? "").count > 0 ? crash.btt_page_name : Constants.crashID
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/Models/Session.swift:10:8: note: consider making struct 'Session' conform to the 'Sendable' protocol
 8 | import Foundation
 9 |
10 | struct Session: Equatable {
   |        `- note: consider making struct 'Session' conform to the 'Sendable' protocol
11 |     let wcd = 1
12 |     let eventType = 9
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BTTimer.swift:250:20: warning: static property 'live' is not concurrency-safe because non-'Sendable' type 'BTTimer.Configuration' may have shared mutable state; this is an error in the Swift 6 language mode
230 | // MARK: - Supporting Types
231 | extension BTTimer {
232 |     struct Configuration {
    |            `- note: consider making struct 'Configuration' conform to the 'Sendable' protocol
233 |         let timeIntervalProvider: () -> TimeInterval
234 |
    :
248 |         }
249 |
250 |         static let live = Self(
    |                    |- warning: static property 'live' is not concurrency-safe because non-'Sendable' type 'BTTimer.Configuration' may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: add '@MainActor' to make static property 'live' part of global actor 'MainActor'
    |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
251 |             timeIntervalProvider: { Date().timeIntervalSince1970 }
252 |         )
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:22:25: warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
  20 | final public class BlueTriangle: NSObject {
  21 |
  22 |     internal static var configuration = BlueTriangleConfiguration()
     |                         |- warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                         |- note: convert 'configuration' to a 'let' constant to make 'Sendable' shared state immutable
     |                         |- note: add '@MainActor' to make static property 'configuration' part of global actor 'MainActor'
     |                         `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
  23 |
  24 |     private static var _screenTracker: BTTScreenLifecycleTracker?
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:24:24: warning: static property '_screenTracker' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
  22 |     internal static var configuration = BlueTriangleConfiguration()
  23 |
  24 |     private static var _screenTracker: BTTScreenLifecycleTracker?
     |                        |- warning: static property '_screenTracker' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert '_screenTracker' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property '_screenTracker' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
  25 |     internal static var screenTracker: BTTScreenLifecycleTracker?{
  26 |         get {
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:33:24: warning: static property '_networkStateMonitor' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
  31 |         }
  32 |     }
  33 |     private static var _networkStateMonitor: NetworkStateMonitorProtocol?
     |                        |- warning: static property '_networkStateMonitor' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert '_networkStateMonitor' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property '_networkStateMonitor' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
  34 |     internal static var networkStateMonitor: NetworkStateMonitorProtocol?{
  35 |         get {
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:43:24: warning: static property '_appEventObserver' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
  41 |     }
  42 |
  43 |     private static var _appEventObserver: AppEventObserver?
     |                        |- warning: static property '_appEventObserver' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert '_appEventObserver' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property '_appEventObserver' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
  44 |     internal static var appEventObserver: AppEventObserver?{
  45 |         get {
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:53:24: warning: static property '_nsExeptionReporter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
  51 |     }
  52 |
  53 |     private static var _nsExeptionReporter: CrashReportManaging?
     |                        |- warning: static property '_nsExeptionReporter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert '_nsExeptionReporter' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property '_nsExeptionReporter' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
  54 |     private static var nsExeptionReporter: CrashReportManaging?{
  55 |         get {
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:63:24: warning: static property '_signalCrashReporter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
  61 |     }
  62 |
  63 |     private static var _signalCrashReporter: BTSignalCrashReporter?
     |                        |- warning: static property '_signalCrashReporter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert '_signalCrashReporter' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property '_signalCrashReporter' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
  64 |     internal static var signalCrashReporter: BTSignalCrashReporter?{
  65 |         get {
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:73:24: warning: static property '_launchTimeReporter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
  71 |     }
  72 |
  73 |     private static var _launchTimeReporter : LaunchTimeReporter?
     |                        |- warning: static property '_launchTimeReporter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert '_launchTimeReporter' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property '_launchTimeReporter' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
  74 |     internal static var launchTimeReporter : LaunchTimeReporter?{
  75 |         get {
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:83:24: warning: static property '_memoryWarningWatchDog' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
  81 |     }
  82 |
  83 |     private static var _memoryWarningWatchDog : MemoryWarningWatchDog?
     |                        |- warning: static property '_memoryWarningWatchDog' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert '_memoryWarningWatchDog' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property '_memoryWarningWatchDog' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
  84 |     internal static var memoryWarningWatchDog : MemoryWarningWatchDog?{
  85 |         get {
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:93:24: warning: static property '_anrWatchDog' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
  91 |     }
  92 |
  93 |     private static var _anrWatchDog : ANRWatchDog?
     |                        |- warning: static property '_anrWatchDog' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert '_anrWatchDog' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property '_anrWatchDog' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
  94 |     internal static var anrWatchDog : ANRWatchDog?{
  95 |         get {
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:103:24: warning: static property '_sessionManager' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 101 |     }
 102 |
 103 |     private static var _sessionManager : SessionManagerProtocol?
     |                        |- warning: static property '_sessionManager' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert '_sessionManager' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property '_sessionManager' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 104 |     private static var sessionManager : SessionManagerProtocol?{
 105 |         get {
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:113:25: warning: static property 'clarityConnector' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 111 |     }
 112 |
 113 |     internal static var clarityConnector = ClaritySessionConnector(logger: logger)
     |                         |- warning: static property 'clarityConnector' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                         |- note: convert 'clarityConnector' to a 'let' constant to make 'Sendable' shared state immutable
     |                         |- note: add '@MainActor' to make static property 'clarityConnector' part of global actor 'MainActor'
     |                         `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 114 |
 115 |     internal static var enableAllTracking: Bool = {
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:115:25: warning: static property 'enableAllTracking' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 113 |     internal static var clarityConnector = ClaritySessionConnector(logger: logger)
 114 |
 115 |     internal static var enableAllTracking: Bool = {
     |                         |- warning: static property 'enableAllTracking' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                         |- note: convert 'enableAllTracking' to a 'let' constant to make 'Sendable' shared state immutable
     |                         |- note: add '@MainActor' to make static property 'enableAllTracking' part of global actor 'MainActor'
     |                         `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 116 |         let value = configRepo.isEnableAllTracking()
 117 |         return  value
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:120:24: warning: static property 'configRepo' is not concurrency-safe because non-'Sendable' type 'BTTConfigurationRepo' may have shared mutable state; this is an error in the Swift 6 language mode
 118 |     }()
 119 |
 120 |     private static let configRepo: BTTConfigurationRepo = {
     |                        |- warning: static property 'configRepo' is not concurrency-safe because non-'Sendable' type 'BTTConfigurationRepo' may have shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: add '@MainActor' to make static property 'configRepo' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 121 |         let config = BTTConfigurationRepo(BTTRemoteConfig.defaultConfig)
 122 |         return  config
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/DynamicConfig/BTTConfigurationRepo.swift:17:7: note: class 'BTTConfigurationRepo' does not conform to the 'Sendable' protocol
 15 | }
 16 |
 17 | class BTTConfigurationRepo : ConfigurationRepo{
    |       `- note: class 'BTTConfigurationRepo' does not conform to the 'Sendable' protocol
 18 |
 19 |     private let queue = DispatchQueue(label: "com.bluetriangle.configurationRepo", attributes: .concurrent)
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:125:25: warning: static property 'disableModeSessionManager' is not concurrency-safe because non-'Sendable' type 'any SessionManagerProtocol' may have shared mutable state; this is an error in the Swift 6 language mode
 123 |     }()
 124 |
 125 |     internal static let disableModeSessionManager : SessionManagerProtocol = {
     |                         |- warning: static property 'disableModeSessionManager' is not concurrency-safe because non-'Sendable' type 'any SessionManagerProtocol' may have shared mutable state; this is an error in the Swift 6 language mode
     |                         |- note: add '@MainActor' to make static property 'disableModeSessionManager' part of global actor 'MainActor'
     |                         `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 126 |         let configFetcher  =  BTTConfigurationFetcher()
 127 |         let configSyncer = BTTStoredConfigSyncer(configRepo: configRepo, logger: logger)
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/SessionManager.swift:18:10: note: protocol 'SessionManagerProtocol' does not conform to the 'Sendable' protocol
 16 | #endif
 17 |
 18 | protocol SessionManagerProtocol  {
    |          `- note: protocol 'SessionManagerProtocol' does not conform to the 'Sendable' protocol
 19 |     func start(with expiry : Millisecond)
 20 |     func getSessionData() -> SessionData?
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:132:25: warning: static property 'enabledModeSessionManager' is not concurrency-safe because non-'Sendable' type 'any SessionManagerProtocol' may have shared mutable state; this is an error in the Swift 6 language mode
 130 |     }()
 131 |
 132 |     internal static let enabledModeSessionManager : SessionManagerProtocol = {
     |                         |- warning: static property 'enabledModeSessionManager' is not concurrency-safe because non-'Sendable' type 'any SessionManagerProtocol' may have shared mutable state; this is an error in the Swift 6 language mode
     |                         |- note: add '@MainActor' to make static property 'enabledModeSessionManager' part of global actor 'MainActor'
     |                         `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 133 |         let configFetcher  =  BTTConfigurationFetcher()
 134 |         let configSyncer = BTTStoredConfigSyncer(configRepo: configRepo, logger: logger)
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/SessionManager.swift:18:10: note: protocol 'SessionManagerProtocol' does not conform to the 'Sendable' protocol
 16 | #endif
 17 |
 18 | protocol SessionManagerProtocol  {
    |          `- note: protocol 'SessionManagerProtocol' does not conform to the 'Sendable' protocol
 19 |     func start(with expiry : Millisecond)
 20 |     func getSessionData() -> SessionData?
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:142:24: warning: static property 'activeTimers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 140 |     private static let lock = NSLock()
 141 |     private static let trackingLock = NSRecursiveLock()
 142 |     private static var activeTimers = [BTTimer]()
     |                        |- warning: static property 'activeTimers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert 'activeTimers' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property 'activeTimers' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 143 | #if os(iOS)
 144 |     private static let matricKitWatchDog = MetricKitWatchDog()
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:210:24: warning: static property '_session' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 208 |     }
 209 |
 210 |     private static var _session: Session? = {
     |                        |- warning: static property '_session' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert '_session' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property '_session' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 211 |         configuration.makeSession()
 212 |     }()
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:239:24: warning: static property 'logger' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 237 |     }
 238 |
 239 |     private static var logger: Logging = {
     |                        |- warning: static property 'logger' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert 'logger' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property 'logger' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 240 |         configuration.makeLogger()
 241 |     }()
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:244:24: warning: static property 'uploader' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 242 |
 243 |
 244 |     private static var uploader: Uploading = {
     |                        |- warning: static property 'uploader' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert 'uploader' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property 'uploader' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 245 |         configuration.uploaderConfiguration.makeUploader(
 246 |             logger: logger,
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:252:24: warning: static property 'timerFactory' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 250 |     }()
 251 |
 252 |     private static var timerFactory: (Page, BTTimer.TimerType) -> BTTimer = {
     |                        |- warning: static property 'timerFactory' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert 'timerFactory' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property 'timerFactory' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 253 |         configuration.timerConfiguration.makeTimerFactory(
 254 |             logger: logger,
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:258:24: warning: static property 'internalTimerFactory' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 256 |     }()
 257 |
 258 |     private static var internalTimerFactory: () -> InternalTimer = {
     |                        |- warning: static property 'internalTimerFactory' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert 'internalTimerFactory' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property 'internalTimerFactory' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 259 |         configuration.internalTimerConfiguration.makeTimerFactory(logger: logger)
 260 |     }()
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:262:24: warning: static property 'shouldCaptureRequests' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 260 |     }()
 261 |
 262 |     private static var shouldCaptureRequests: Bool = {
     |                        |- warning: static property 'shouldCaptureRequests' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert 'shouldCaptureRequests' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property 'shouldCaptureRequests' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 263 |         sessionData()?.shouldNetworkCapture ?? false
 264 |     }()
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:274:36: warning: static property 'initialized' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 272 |     ///            enable/disable state via the Remote Configuration Updater.
 273 |     ///
 274 |     public private(set) static var initialized = false
     |                                    |- warning: static property 'initialized' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                                    |- note: convert 'initialized' to a 'let' constant to make 'Sendable' shared state immutable
     |                                    |- note: add '@MainActor' to make static property 'initialized' part of global actor 'MainActor'
     |                                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 275 |
 276 |     private static var capturedRequestCollector: CapturedRequestCollecting? = {
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:276:24: warning: static property 'capturedRequestCollector' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 274 |     public private(set) static var initialized = false
 275 |
 276 |     private static var capturedRequestCollector: CapturedRequestCollecting? = {
     |                        |- warning: static property 'capturedRequestCollector' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert 'capturedRequestCollector' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property 'capturedRequestCollector' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 277 |         return makeCapturedRequestCollector()
 278 |     }()
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:282:25: warning: static property 'payloadCache' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 280 |
 281 |     //Cache components
 282 |     internal static var payloadCache : PayloadCacheProtocol = {
     |                         |- warning: static property 'payloadCache' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                         |- note: convert 'payloadCache' to a 'let' constant to make 'Sendable' shared state immutable
     |                         |- note: add '@MainActor' to make static property 'payloadCache' part of global actor 'MainActor'
     |                         `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 283 |         PayloadCache.init(configuration.cacheMemoryLimit,
 284 |                           expiry: configuration.cacheExpiryDuration)
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/CrashReportManager.swift:37:33: warning: capture of 'self' with non-sendable type 'CrashReportManager?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
  8 | import Foundation
  9 |
 10 | final class CrashReportManager: CrashReportManaging {
    |             `- note: class 'CrashReportManager' does not conform to the 'Sendable' protocol
 11 |
 12 |     private let crashReportPersistence: CrashReportPersisting.Type
    :
 35 |         self.intervalProvider = intervalProvider
 36 |         self.startupTask = Task.delayed(byTimeInterval: Constants.startupDelay, priority: .utility) { [weak self] in
 37 |             guard let session = self?.session() else {
    |                                 `- warning: capture of 'self' with non-sendable type 'CrashReportManager?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 38 |                 return
 39 |             }
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/CrashReportPersistence.swift:18:24: warning: static property 'logger' is not concurrency-safe because non-'Sendable' type 'any Logging' may have shared mutable state; this is an error in the Swift 6 language mode
16 |
17 | struct CrashReportPersistence: CrashReportPersisting {
18 |     private static let logger = BTLogger.live
   |                        |- warning: static property 'logger' is not concurrency-safe because non-'Sendable' type 'any Logging' may have shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: add '@MainActor' to make static property 'logger' part of global actor 'MainActor'
   |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
19 |
20 |     private static var persistence: Persistence? {
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/Protocols/Logging.swift:10:10: note: protocol 'Logging' does not conform to the 'Sendable' protocol
 8 | import Foundation
 9 |
10 | protocol Logging {
   |          `- note: protocol 'Logging' does not conform to the 'Sendable' protocol
11 |     var enableDebug: Bool { get set }
12 |
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/DisableModeSessionManager.swift:99:14: warning: capture of 'self' with non-sendable type 'DisableModeSessionManager?' in a '@Sendable' closure
 28 | /// - Note: This session manager is used exclusively when `enableAllTracking` is false.
 29 | ///
 30 | class DisableModeSessionManager : SessionManagerProtocol {
    |       `- note: class 'DisableModeSessionManager' does not conform to the 'Sendable' protocol
 31 |
 32 |     private var expirationDurationInMS: Millisecond = 30 * 60 * 1000
    :
 97 |      private func updateRemoteConfig(){
 98 |          queue.async { [weak self] in
 99 |              self?.updater.update(true) {}
    |              `- warning: capture of 'self' with non-sendable type 'DisableModeSessionManager?' in a '@Sendable' closure
100 |          }
101 |      }
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:930:14: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 928 |         }
 929 |
 930 |         Task {
     |              `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 931 |             await capturedRequestCollector?.start(page: page, startTime: startTime)
     |                                                         `- note: closure captures 'page' which is accessible to code in the current task
 932 |         }
 933 |     }
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:931:45: warning: sending 'page' risks causing data races; this is an error in the Swift 6 language mode
 929 |
 930 |         Task {
 931 |             await capturedRequestCollector?.start(page: page, startTime: startTime)
     |                                             |- warning: sending 'page' risks causing data races; this is an error in the Swift 6 language mode
     |                                             `- note: sending task-isolated 'page' to actor-isolated instance method 'start(page:startTime:)' risks causing data races between actor-isolated and task-isolated uses
 932 |         }
 933 |     }
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:953:14: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 951 |
 952 |     static func captureRequest(timer: InternalTimer, response: URLResponse?) {
 953 |         Task {
     |              `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 954 |             await capturedRequestCollector?.collect(timer: timer, response: response)
     |                                                            `- note: closure captures 'timer' which is accessible to code in the current task
 955 |         }
 956 |     }
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:954:45: warning: sending 'timer' risks causing data races; this is an error in the Swift 6 language mode
 952 |     static func captureRequest(timer: InternalTimer, response: URLResponse?) {
 953 |         Task {
 954 |             await capturedRequestCollector?.collect(timer: timer, response: response)
     |                                             |- warning: sending 'timer' risks causing data races; this is an error in the Swift 6 language mode
     |                                             `- note: sending task-isolated 'timer' to actor-isolated instance method 'collect(timer:response:)' risks causing data races between actor-isolated and task-isolated uses
 955 |         }
 956 |     }
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:959:14: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 957 |
 958 |     internal static func captureRequest(timer: InternalTimer, response: CustomResponse) {
 959 |         Task {
     |              `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 960 |             await capturedRequestCollector?.collect(timer: timer, response: response)
     |                                                            `- note: closure captures 'timer' which is accessible to code in the current task
 961 |         }
 962 |     }
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:960:45: warning: sending 'timer' risks causing data races; this is an error in the Swift 6 language mode
 958 |     internal static func captureRequest(timer: InternalTimer, response: CustomResponse) {
 959 |         Task {
 960 |             await capturedRequestCollector?.collect(timer: timer, response: response)
     |                                             |- warning: sending 'timer' risks causing data races; this is an error in the Swift 6 language mode
     |                                             `- note: sending task-isolated 'timer' to actor-isolated instance method 'collect(timer:response:)' risks causing data races between actor-isolated and task-isolated uses
 961 |         }
 962 |     }
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:969:14: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 967 |     ///   - tuple: The asynchronously-delivered tuple containing the request contents as a Data instance and a URLResponse.
 968 |     static func captureRequest(timer: InternalTimer, tuple: (Data, URLResponse)) {
 969 |         Task {
     |              `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 970 |             await capturedRequestCollector?.collect(timer: timer, response: tuple.1)
     |                                                            `- note: closure captures 'timer' which is accessible to code in the current task
 971 |         }
 972 |     }
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:970:45: warning: sending 'timer' risks causing data races; this is an error in the Swift 6 language mode
 968 |     static func captureRequest(timer: InternalTimer, tuple: (Data, URLResponse)) {
 969 |         Task {
 970 |             await capturedRequestCollector?.collect(timer: timer, response: tuple.1)
     |                                             |- warning: sending 'timer' risks causing data races; this is an error in the Swift 6 language mode
     |                                             `- note: sending task-isolated 'timer' to actor-isolated instance method 'collect(timer:response:)' risks causing data races between actor-isolated and task-isolated uses
 971 |         }
 972 |     }
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:975:14: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 973 |
 974 |     static func captureRequest(timer: InternalTimer, request : URLRequest, error: Error?) {
 975 |         Task {
     |              `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 976 |             await capturedRequestCollector?.collect(timer: timer, request: request, error: error)
     |                                                            `- note: closure captures 'timer' which is accessible to code in the current task
 977 |         }
 978 |     }
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:976:45: warning: sending 'timer' risks causing data races; this is an error in the Swift 6 language mode
 974 |     static func captureRequest(timer: InternalTimer, request : URLRequest, error: Error?) {
 975 |         Task {
 976 |             await capturedRequestCollector?.collect(timer: timer, request: request, error: error)
     |                                             |- warning: sending 'timer' risks causing data races; this is an error in the Swift 6 language mode
     |                                             `- note: sending task-isolated 'timer' to actor-isolated instance method 'collect(timer:request:error:)' risks causing data races between actor-isolated and task-isolated uses
 977 |         }
 978 |     }
[122/124] Compiling BlueTriangle CrashReportPersistence.swift
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BTLogger.swift:118:16: warning: static property 'live' is not concurrency-safe because non-'Sendable' type 'any Logging' may have shared mutable state; this is an error in the Swift 6 language mode
116 |
117 | extension BTLogger {
118 |     static let live: Logging = {
    |                |- warning: static property 'live' is not concurrency-safe because non-'Sendable' type 'any Logging' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: add '@MainActor' to make static property 'live' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
119 |         BTLogger()
120 |     }()
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/Protocols/Logging.swift:10:10: note: protocol 'Logging' does not conform to the 'Sendable' protocol
 8 | import Foundation
 9 |
10 | protocol Logging {
   |          `- note: protocol 'Logging' does not conform to the 'Sendable' protocol
11 |     var enableDebug: Bool { get set }
12 |
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BTSignalCrashReporter.swift:58:40: warning: capture of 'self' with non-sendable type 'BTSignalCrashReporter?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 24 |
 25 |
 26 | class BTSignalCrashReporter {
    |       `- note: class 'BTSignalCrashReporter' does not conform to the 'Sendable' protocol
 27 |
 28 |     private let  directory : String
    :
 56 |         case .nsException:
 57 |             self.startupTask = Task.delayed(byTimeInterval: Constants.startupDelay, priority: .utility) { [weak self] in
 58 |                 guard let strongSelf = self else {
    |                                        `- warning: capture of 'self' with non-sendable type 'BTSignalCrashReporter?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 59 |                     return
 60 |                 }
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BTSignalCrashReporter.swift:91:37: warning: capture of 'self' with non-sendable type 'BTSignalCrashReporter?' in a '@Sendable' closure
 24 |
 25 |
 26 | class BTSignalCrashReporter {
    |       `- note: class 'BTSignalCrashReporter' does not conform to the 'Sendable' protocol
 27 |
 28 |     private let  directory : String
    :
 89 |         DispatchQueue.global(qos: .utility).async { [weak self] in
 90 |             do {
 91 |                 if let strongSelf = self, let session_id = crash.btt_session_id, session_id.count > 0, let sessionId = UInt64(session_id){
    |                                     `- warning: capture of 'self' with non-sendable type 'BTSignalCrashReporter?' in a '@Sendable' closure
 92 |                     var sessionCopy = session
 93 |                     sessionCopy.sessionID = sessionId
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BTSignalCrashReporter.swift:92:39: warning: capture of 'session' with non-sendable type 'Session' in a '@Sendable' closure
 90 |             do {
 91 |                 if let strongSelf = self, let session_id = crash.btt_session_id, session_id.count > 0, let sessionId = UInt64(session_id){
 92 |                     var sessionCopy = session
    |                                       `- warning: capture of 'session' with non-sendable type 'Session' in a '@Sendable' closure
 93 |                     sessionCopy.sessionID = sessionId
 94 |                     let pageName = (crash.btt_page_name ?? "").count > 0 ? crash.btt_page_name : Constants.crashID
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/Models/Session.swift:10:8: note: consider making struct 'Session' conform to the 'Sendable' protocol
 8 | import Foundation
 9 |
10 | struct Session: Equatable {
   |        `- note: consider making struct 'Session' conform to the 'Sendable' protocol
11 |     let wcd = 1
12 |     let eventType = 9
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BTTimer.swift:250:20: warning: static property 'live' is not concurrency-safe because non-'Sendable' type 'BTTimer.Configuration' may have shared mutable state; this is an error in the Swift 6 language mode
230 | // MARK: - Supporting Types
231 | extension BTTimer {
232 |     struct Configuration {
    |            `- note: consider making struct 'Configuration' conform to the 'Sendable' protocol
233 |         let timeIntervalProvider: () -> TimeInterval
234 |
    :
248 |         }
249 |
250 |         static let live = Self(
    |                    |- warning: static property 'live' is not concurrency-safe because non-'Sendable' type 'BTTimer.Configuration' may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: add '@MainActor' to make static property 'live' part of global actor 'MainActor'
    |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
251 |             timeIntervalProvider: { Date().timeIntervalSince1970 }
252 |         )
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:22:25: warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
  20 | final public class BlueTriangle: NSObject {
  21 |
  22 |     internal static var configuration = BlueTriangleConfiguration()
     |                         |- warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                         |- note: convert 'configuration' to a 'let' constant to make 'Sendable' shared state immutable
     |                         |- note: add '@MainActor' to make static property 'configuration' part of global actor 'MainActor'
     |                         `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
  23 |
  24 |     private static var _screenTracker: BTTScreenLifecycleTracker?
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:24:24: warning: static property '_screenTracker' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
  22 |     internal static var configuration = BlueTriangleConfiguration()
  23 |
  24 |     private static var _screenTracker: BTTScreenLifecycleTracker?
     |                        |- warning: static property '_screenTracker' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert '_screenTracker' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property '_screenTracker' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
  25 |     internal static var screenTracker: BTTScreenLifecycleTracker?{
  26 |         get {
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:33:24: warning: static property '_networkStateMonitor' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
  31 |         }
  32 |     }
  33 |     private static var _networkStateMonitor: NetworkStateMonitorProtocol?
     |                        |- warning: static property '_networkStateMonitor' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert '_networkStateMonitor' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property '_networkStateMonitor' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
  34 |     internal static var networkStateMonitor: NetworkStateMonitorProtocol?{
  35 |         get {
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:43:24: warning: static property '_appEventObserver' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
  41 |     }
  42 |
  43 |     private static var _appEventObserver: AppEventObserver?
     |                        |- warning: static property '_appEventObserver' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert '_appEventObserver' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property '_appEventObserver' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
  44 |     internal static var appEventObserver: AppEventObserver?{
  45 |         get {
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:53:24: warning: static property '_nsExeptionReporter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
  51 |     }
  52 |
  53 |     private static var _nsExeptionReporter: CrashReportManaging?
     |                        |- warning: static property '_nsExeptionReporter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert '_nsExeptionReporter' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property '_nsExeptionReporter' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
  54 |     private static var nsExeptionReporter: CrashReportManaging?{
  55 |         get {
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:63:24: warning: static property '_signalCrashReporter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
  61 |     }
  62 |
  63 |     private static var _signalCrashReporter: BTSignalCrashReporter?
     |                        |- warning: static property '_signalCrashReporter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert '_signalCrashReporter' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property '_signalCrashReporter' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
  64 |     internal static var signalCrashReporter: BTSignalCrashReporter?{
  65 |         get {
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:73:24: warning: static property '_launchTimeReporter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
  71 |     }
  72 |
  73 |     private static var _launchTimeReporter : LaunchTimeReporter?
     |                        |- warning: static property '_launchTimeReporter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert '_launchTimeReporter' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property '_launchTimeReporter' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
  74 |     internal static var launchTimeReporter : LaunchTimeReporter?{
  75 |         get {
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:83:24: warning: static property '_memoryWarningWatchDog' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
  81 |     }
  82 |
  83 |     private static var _memoryWarningWatchDog : MemoryWarningWatchDog?
     |                        |- warning: static property '_memoryWarningWatchDog' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert '_memoryWarningWatchDog' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property '_memoryWarningWatchDog' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
  84 |     internal static var memoryWarningWatchDog : MemoryWarningWatchDog?{
  85 |         get {
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:93:24: warning: static property '_anrWatchDog' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
  91 |     }
  92 |
  93 |     private static var _anrWatchDog : ANRWatchDog?
     |                        |- warning: static property '_anrWatchDog' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert '_anrWatchDog' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property '_anrWatchDog' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
  94 |     internal static var anrWatchDog : ANRWatchDog?{
  95 |         get {
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:103:24: warning: static property '_sessionManager' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 101 |     }
 102 |
 103 |     private static var _sessionManager : SessionManagerProtocol?
     |                        |- warning: static property '_sessionManager' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert '_sessionManager' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property '_sessionManager' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 104 |     private static var sessionManager : SessionManagerProtocol?{
 105 |         get {
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:113:25: warning: static property 'clarityConnector' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 111 |     }
 112 |
 113 |     internal static var clarityConnector = ClaritySessionConnector(logger: logger)
     |                         |- warning: static property 'clarityConnector' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                         |- note: convert 'clarityConnector' to a 'let' constant to make 'Sendable' shared state immutable
     |                         |- note: add '@MainActor' to make static property 'clarityConnector' part of global actor 'MainActor'
     |                         `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 114 |
 115 |     internal static var enableAllTracking: Bool = {
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:115:25: warning: static property 'enableAllTracking' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 113 |     internal static var clarityConnector = ClaritySessionConnector(logger: logger)
 114 |
 115 |     internal static var enableAllTracking: Bool = {
     |                         |- warning: static property 'enableAllTracking' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                         |- note: convert 'enableAllTracking' to a 'let' constant to make 'Sendable' shared state immutable
     |                         |- note: add '@MainActor' to make static property 'enableAllTracking' part of global actor 'MainActor'
     |                         `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 116 |         let value = configRepo.isEnableAllTracking()
 117 |         return  value
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:120:24: warning: static property 'configRepo' is not concurrency-safe because non-'Sendable' type 'BTTConfigurationRepo' may have shared mutable state; this is an error in the Swift 6 language mode
 118 |     }()
 119 |
 120 |     private static let configRepo: BTTConfigurationRepo = {
     |                        |- warning: static property 'configRepo' is not concurrency-safe because non-'Sendable' type 'BTTConfigurationRepo' may have shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: add '@MainActor' to make static property 'configRepo' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 121 |         let config = BTTConfigurationRepo(BTTRemoteConfig.defaultConfig)
 122 |         return  config
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/DynamicConfig/BTTConfigurationRepo.swift:17:7: note: class 'BTTConfigurationRepo' does not conform to the 'Sendable' protocol
 15 | }
 16 |
 17 | class BTTConfigurationRepo : ConfigurationRepo{
    |       `- note: class 'BTTConfigurationRepo' does not conform to the 'Sendable' protocol
 18 |
 19 |     private let queue = DispatchQueue(label: "com.bluetriangle.configurationRepo", attributes: .concurrent)
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:125:25: warning: static property 'disableModeSessionManager' is not concurrency-safe because non-'Sendable' type 'any SessionManagerProtocol' may have shared mutable state; this is an error in the Swift 6 language mode
 123 |     }()
 124 |
 125 |     internal static let disableModeSessionManager : SessionManagerProtocol = {
     |                         |- warning: static property 'disableModeSessionManager' is not concurrency-safe because non-'Sendable' type 'any SessionManagerProtocol' may have shared mutable state; this is an error in the Swift 6 language mode
     |                         |- note: add '@MainActor' to make static property 'disableModeSessionManager' part of global actor 'MainActor'
     |                         `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 126 |         let configFetcher  =  BTTConfigurationFetcher()
 127 |         let configSyncer = BTTStoredConfigSyncer(configRepo: configRepo, logger: logger)
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/SessionManager.swift:18:10: note: protocol 'SessionManagerProtocol' does not conform to the 'Sendable' protocol
 16 | #endif
 17 |
 18 | protocol SessionManagerProtocol  {
    |          `- note: protocol 'SessionManagerProtocol' does not conform to the 'Sendable' protocol
 19 |     func start(with expiry : Millisecond)
 20 |     func getSessionData() -> SessionData?
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:132:25: warning: static property 'enabledModeSessionManager' is not concurrency-safe because non-'Sendable' type 'any SessionManagerProtocol' may have shared mutable state; this is an error in the Swift 6 language mode
 130 |     }()
 131 |
 132 |     internal static let enabledModeSessionManager : SessionManagerProtocol = {
     |                         |- warning: static property 'enabledModeSessionManager' is not concurrency-safe because non-'Sendable' type 'any SessionManagerProtocol' may have shared mutable state; this is an error in the Swift 6 language mode
     |                         |- note: add '@MainActor' to make static property 'enabledModeSessionManager' part of global actor 'MainActor'
     |                         `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 133 |         let configFetcher  =  BTTConfigurationFetcher()
 134 |         let configSyncer = BTTStoredConfigSyncer(configRepo: configRepo, logger: logger)
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/SessionManager.swift:18:10: note: protocol 'SessionManagerProtocol' does not conform to the 'Sendable' protocol
 16 | #endif
 17 |
 18 | protocol SessionManagerProtocol  {
    |          `- note: protocol 'SessionManagerProtocol' does not conform to the 'Sendable' protocol
 19 |     func start(with expiry : Millisecond)
 20 |     func getSessionData() -> SessionData?
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:142:24: warning: static property 'activeTimers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 140 |     private static let lock = NSLock()
 141 |     private static let trackingLock = NSRecursiveLock()
 142 |     private static var activeTimers = [BTTimer]()
     |                        |- warning: static property 'activeTimers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert 'activeTimers' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property 'activeTimers' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 143 | #if os(iOS)
 144 |     private static let matricKitWatchDog = MetricKitWatchDog()
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:210:24: warning: static property '_session' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 208 |     }
 209 |
 210 |     private static var _session: Session? = {
     |                        |- warning: static property '_session' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert '_session' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property '_session' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 211 |         configuration.makeSession()
 212 |     }()
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:239:24: warning: static property 'logger' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 237 |     }
 238 |
 239 |     private static var logger: Logging = {
     |                        |- warning: static property 'logger' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert 'logger' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property 'logger' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 240 |         configuration.makeLogger()
 241 |     }()
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:244:24: warning: static property 'uploader' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 242 |
 243 |
 244 |     private static var uploader: Uploading = {
     |                        |- warning: static property 'uploader' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert 'uploader' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property 'uploader' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 245 |         configuration.uploaderConfiguration.makeUploader(
 246 |             logger: logger,
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:252:24: warning: static property 'timerFactory' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 250 |     }()
 251 |
 252 |     private static var timerFactory: (Page, BTTimer.TimerType) -> BTTimer = {
     |                        |- warning: static property 'timerFactory' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert 'timerFactory' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property 'timerFactory' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 253 |         configuration.timerConfiguration.makeTimerFactory(
 254 |             logger: logger,
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:258:24: warning: static property 'internalTimerFactory' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 256 |     }()
 257 |
 258 |     private static var internalTimerFactory: () -> InternalTimer = {
     |                        |- warning: static property 'internalTimerFactory' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert 'internalTimerFactory' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property 'internalTimerFactory' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 259 |         configuration.internalTimerConfiguration.makeTimerFactory(logger: logger)
 260 |     }()
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:262:24: warning: static property 'shouldCaptureRequests' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 260 |     }()
 261 |
 262 |     private static var shouldCaptureRequests: Bool = {
     |                        |- warning: static property 'shouldCaptureRequests' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert 'shouldCaptureRequests' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property 'shouldCaptureRequests' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 263 |         sessionData()?.shouldNetworkCapture ?? false
 264 |     }()
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:274:36: warning: static property 'initialized' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 272 |     ///            enable/disable state via the Remote Configuration Updater.
 273 |     ///
 274 |     public private(set) static var initialized = false
     |                                    |- warning: static property 'initialized' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                                    |- note: convert 'initialized' to a 'let' constant to make 'Sendable' shared state immutable
     |                                    |- note: add '@MainActor' to make static property 'initialized' part of global actor 'MainActor'
     |                                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 275 |
 276 |     private static var capturedRequestCollector: CapturedRequestCollecting? = {
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:276:24: warning: static property 'capturedRequestCollector' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 274 |     public private(set) static var initialized = false
 275 |
 276 |     private static var capturedRequestCollector: CapturedRequestCollecting? = {
     |                        |- warning: static property 'capturedRequestCollector' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert 'capturedRequestCollector' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property 'capturedRequestCollector' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 277 |         return makeCapturedRequestCollector()
 278 |     }()
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:282:25: warning: static property 'payloadCache' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 280 |
 281 |     //Cache components
 282 |     internal static var payloadCache : PayloadCacheProtocol = {
     |                         |- warning: static property 'payloadCache' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                         |- note: convert 'payloadCache' to a 'let' constant to make 'Sendable' shared state immutable
     |                         |- note: add '@MainActor' to make static property 'payloadCache' part of global actor 'MainActor'
     |                         `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 283 |         PayloadCache.init(configuration.cacheMemoryLimit,
 284 |                           expiry: configuration.cacheExpiryDuration)
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/CrashReportManager.swift:37:33: warning: capture of 'self' with non-sendable type 'CrashReportManager?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
  8 | import Foundation
  9 |
 10 | final class CrashReportManager: CrashReportManaging {
    |             `- note: class 'CrashReportManager' does not conform to the 'Sendable' protocol
 11 |
 12 |     private let crashReportPersistence: CrashReportPersisting.Type
    :
 35 |         self.intervalProvider = intervalProvider
 36 |         self.startupTask = Task.delayed(byTimeInterval: Constants.startupDelay, priority: .utility) { [weak self] in
 37 |             guard let session = self?.session() else {
    |                                 `- warning: capture of 'self' with non-sendable type 'CrashReportManager?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 38 |                 return
 39 |             }
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/CrashReportPersistence.swift:18:24: warning: static property 'logger' is not concurrency-safe because non-'Sendable' type 'any Logging' may have shared mutable state; this is an error in the Swift 6 language mode
16 |
17 | struct CrashReportPersistence: CrashReportPersisting {
18 |     private static let logger = BTLogger.live
   |                        |- warning: static property 'logger' is not concurrency-safe because non-'Sendable' type 'any Logging' may have shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: add '@MainActor' to make static property 'logger' part of global actor 'MainActor'
   |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
19 |
20 |     private static var persistence: Persistence? {
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/Protocols/Logging.swift:10:10: note: protocol 'Logging' does not conform to the 'Sendable' protocol
 8 | import Foundation
 9 |
10 | protocol Logging {
   |          `- note: protocol 'Logging' does not conform to the 'Sendable' protocol
11 |     var enableDebug: Bool { get set }
12 |
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/DisableModeSessionManager.swift:99:14: warning: capture of 'self' with non-sendable type 'DisableModeSessionManager?' in a '@Sendable' closure
 28 | /// - Note: This session manager is used exclusively when `enableAllTracking` is false.
 29 | ///
 30 | class DisableModeSessionManager : SessionManagerProtocol {
    |       `- note: class 'DisableModeSessionManager' does not conform to the 'Sendable' protocol
 31 |
 32 |     private var expirationDurationInMS: Millisecond = 30 * 60 * 1000
    :
 97 |      private func updateRemoteConfig(){
 98 |          queue.async { [weak self] in
 99 |              self?.updater.update(true) {}
    |              `- warning: capture of 'self' with non-sendable type 'DisableModeSessionManager?' in a '@Sendable' closure
100 |          }
101 |      }
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:930:14: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 928 |         }
 929 |
 930 |         Task {
     |              `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 931 |             await capturedRequestCollector?.start(page: page, startTime: startTime)
     |                                                         `- note: closure captures 'page' which is accessible to code in the current task
 932 |         }
 933 |     }
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:931:45: warning: sending 'page' risks causing data races; this is an error in the Swift 6 language mode
 929 |
 930 |         Task {
 931 |             await capturedRequestCollector?.start(page: page, startTime: startTime)
     |                                             |- warning: sending 'page' risks causing data races; this is an error in the Swift 6 language mode
     |                                             `- note: sending task-isolated 'page' to actor-isolated instance method 'start(page:startTime:)' risks causing data races between actor-isolated and task-isolated uses
 932 |         }
 933 |     }
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:953:14: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 951 |
 952 |     static func captureRequest(timer: InternalTimer, response: URLResponse?) {
 953 |         Task {
     |              `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 954 |             await capturedRequestCollector?.collect(timer: timer, response: response)
     |                                                            `- note: closure captures 'timer' which is accessible to code in the current task
 955 |         }
 956 |     }
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:954:45: warning: sending 'timer' risks causing data races; this is an error in the Swift 6 language mode
 952 |     static func captureRequest(timer: InternalTimer, response: URLResponse?) {
 953 |         Task {
 954 |             await capturedRequestCollector?.collect(timer: timer, response: response)
     |                                             |- warning: sending 'timer' risks causing data races; this is an error in the Swift 6 language mode
     |                                             `- note: sending task-isolated 'timer' to actor-isolated instance method 'collect(timer:response:)' risks causing data races between actor-isolated and task-isolated uses
 955 |         }
 956 |     }
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:959:14: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 957 |
 958 |     internal static func captureRequest(timer: InternalTimer, response: CustomResponse) {
 959 |         Task {
     |              `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 960 |             await capturedRequestCollector?.collect(timer: timer, response: response)
     |                                                            `- note: closure captures 'timer' which is accessible to code in the current task
 961 |         }
 962 |     }
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:960:45: warning: sending 'timer' risks causing data races; this is an error in the Swift 6 language mode
 958 |     internal static func captureRequest(timer: InternalTimer, response: CustomResponse) {
 959 |         Task {
 960 |             await capturedRequestCollector?.collect(timer: timer, response: response)
     |                                             |- warning: sending 'timer' risks causing data races; this is an error in the Swift 6 language mode
     |                                             `- note: sending task-isolated 'timer' to actor-isolated instance method 'collect(timer:response:)' risks causing data races between actor-isolated and task-isolated uses
 961 |         }
 962 |     }
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:969:14: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 967 |     ///   - tuple: The asynchronously-delivered tuple containing the request contents as a Data instance and a URLResponse.
 968 |     static func captureRequest(timer: InternalTimer, tuple: (Data, URLResponse)) {
 969 |         Task {
     |              `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 970 |             await capturedRequestCollector?.collect(timer: timer, response: tuple.1)
     |                                                            `- note: closure captures 'timer' which is accessible to code in the current task
 971 |         }
 972 |     }
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:970:45: warning: sending 'timer' risks causing data races; this is an error in the Swift 6 language mode
 968 |     static func captureRequest(timer: InternalTimer, tuple: (Data, URLResponse)) {
 969 |         Task {
 970 |             await capturedRequestCollector?.collect(timer: timer, response: tuple.1)
     |                                             |- warning: sending 'timer' risks causing data races; this is an error in the Swift 6 language mode
     |                                             `- note: sending task-isolated 'timer' to actor-isolated instance method 'collect(timer:response:)' risks causing data races between actor-isolated and task-isolated uses
 971 |         }
 972 |     }
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:975:14: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 973 |
 974 |     static func captureRequest(timer: InternalTimer, request : URLRequest, error: Error?) {
 975 |         Task {
     |              `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 976 |             await capturedRequestCollector?.collect(timer: timer, request: request, error: error)
     |                                                            `- note: closure captures 'timer' which is accessible to code in the current task
 977 |         }
 978 |     }
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:976:45: warning: sending 'timer' risks causing data races; this is an error in the Swift 6 language mode
 974 |     static func captureRequest(timer: InternalTimer, request : URLRequest, error: Error?) {
 975 |         Task {
 976 |             await capturedRequestCollector?.collect(timer: timer, request: request, error: error)
     |                                             |- warning: sending 'timer' risks causing data races; this is an error in the Swift 6 language mode
     |                                             `- note: sending task-isolated 'timer' to actor-isolated instance method 'collect(timer:request:error:)' risks causing data races between actor-isolated and task-isolated uses
 977 |         }
 978 |     }
[123/124] Compiling BlueTriangle Device.swift
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BTLogger.swift:118:16: warning: static property 'live' is not concurrency-safe because non-'Sendable' type 'any Logging' may have shared mutable state; this is an error in the Swift 6 language mode
116 |
117 | extension BTLogger {
118 |     static let live: Logging = {
    |                |- warning: static property 'live' is not concurrency-safe because non-'Sendable' type 'any Logging' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: add '@MainActor' to make static property 'live' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
119 |         BTLogger()
120 |     }()
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/Protocols/Logging.swift:10:10: note: protocol 'Logging' does not conform to the 'Sendable' protocol
 8 | import Foundation
 9 |
10 | protocol Logging {
   |          `- note: protocol 'Logging' does not conform to the 'Sendable' protocol
11 |     var enableDebug: Bool { get set }
12 |
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BTSignalCrashReporter.swift:58:40: warning: capture of 'self' with non-sendable type 'BTSignalCrashReporter?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 24 |
 25 |
 26 | class BTSignalCrashReporter {
    |       `- note: class 'BTSignalCrashReporter' does not conform to the 'Sendable' protocol
 27 |
 28 |     private let  directory : String
    :
 56 |         case .nsException:
 57 |             self.startupTask = Task.delayed(byTimeInterval: Constants.startupDelay, priority: .utility) { [weak self] in
 58 |                 guard let strongSelf = self else {
    |                                        `- warning: capture of 'self' with non-sendable type 'BTSignalCrashReporter?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 59 |                     return
 60 |                 }
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BTSignalCrashReporter.swift:91:37: warning: capture of 'self' with non-sendable type 'BTSignalCrashReporter?' in a '@Sendable' closure
 24 |
 25 |
 26 | class BTSignalCrashReporter {
    |       `- note: class 'BTSignalCrashReporter' does not conform to the 'Sendable' protocol
 27 |
 28 |     private let  directory : String
    :
 89 |         DispatchQueue.global(qos: .utility).async { [weak self] in
 90 |             do {
 91 |                 if let strongSelf = self, let session_id = crash.btt_session_id, session_id.count > 0, let sessionId = UInt64(session_id){
    |                                     `- warning: capture of 'self' with non-sendable type 'BTSignalCrashReporter?' in a '@Sendable' closure
 92 |                     var sessionCopy = session
 93 |                     sessionCopy.sessionID = sessionId
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BTSignalCrashReporter.swift:92:39: warning: capture of 'session' with non-sendable type 'Session' in a '@Sendable' closure
 90 |             do {
 91 |                 if let strongSelf = self, let session_id = crash.btt_session_id, session_id.count > 0, let sessionId = UInt64(session_id){
 92 |                     var sessionCopy = session
    |                                       `- warning: capture of 'session' with non-sendable type 'Session' in a '@Sendable' closure
 93 |                     sessionCopy.sessionID = sessionId
 94 |                     let pageName = (crash.btt_page_name ?? "").count > 0 ? crash.btt_page_name : Constants.crashID
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/Models/Session.swift:10:8: note: consider making struct 'Session' conform to the 'Sendable' protocol
 8 | import Foundation
 9 |
10 | struct Session: Equatable {
   |        `- note: consider making struct 'Session' conform to the 'Sendable' protocol
11 |     let wcd = 1
12 |     let eventType = 9
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BTTimer.swift:250:20: warning: static property 'live' is not concurrency-safe because non-'Sendable' type 'BTTimer.Configuration' may have shared mutable state; this is an error in the Swift 6 language mode
230 | // MARK: - Supporting Types
231 | extension BTTimer {
232 |     struct Configuration {
    |            `- note: consider making struct 'Configuration' conform to the 'Sendable' protocol
233 |         let timeIntervalProvider: () -> TimeInterval
234 |
    :
248 |         }
249 |
250 |         static let live = Self(
    |                    |- warning: static property 'live' is not concurrency-safe because non-'Sendable' type 'BTTimer.Configuration' may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: add '@MainActor' to make static property 'live' part of global actor 'MainActor'
    |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
251 |             timeIntervalProvider: { Date().timeIntervalSince1970 }
252 |         )
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:22:25: warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
  20 | final public class BlueTriangle: NSObject {
  21 |
  22 |     internal static var configuration = BlueTriangleConfiguration()
     |                         |- warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                         |- note: convert 'configuration' to a 'let' constant to make 'Sendable' shared state immutable
     |                         |- note: add '@MainActor' to make static property 'configuration' part of global actor 'MainActor'
     |                         `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
  23 |
  24 |     private static var _screenTracker: BTTScreenLifecycleTracker?
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:24:24: warning: static property '_screenTracker' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
  22 |     internal static var configuration = BlueTriangleConfiguration()
  23 |
  24 |     private static var _screenTracker: BTTScreenLifecycleTracker?
     |                        |- warning: static property '_screenTracker' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert '_screenTracker' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property '_screenTracker' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
  25 |     internal static var screenTracker: BTTScreenLifecycleTracker?{
  26 |         get {
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:33:24: warning: static property '_networkStateMonitor' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
  31 |         }
  32 |     }
  33 |     private static var _networkStateMonitor: NetworkStateMonitorProtocol?
     |                        |- warning: static property '_networkStateMonitor' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert '_networkStateMonitor' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property '_networkStateMonitor' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
  34 |     internal static var networkStateMonitor: NetworkStateMonitorProtocol?{
  35 |         get {
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:43:24: warning: static property '_appEventObserver' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
  41 |     }
  42 |
  43 |     private static var _appEventObserver: AppEventObserver?
     |                        |- warning: static property '_appEventObserver' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert '_appEventObserver' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property '_appEventObserver' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
  44 |     internal static var appEventObserver: AppEventObserver?{
  45 |         get {
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:53:24: warning: static property '_nsExeptionReporter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
  51 |     }
  52 |
  53 |     private static var _nsExeptionReporter: CrashReportManaging?
     |                        |- warning: static property '_nsExeptionReporter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert '_nsExeptionReporter' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property '_nsExeptionReporter' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
  54 |     private static var nsExeptionReporter: CrashReportManaging?{
  55 |         get {
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:63:24: warning: static property '_signalCrashReporter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
  61 |     }
  62 |
  63 |     private static var _signalCrashReporter: BTSignalCrashReporter?
     |                        |- warning: static property '_signalCrashReporter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert '_signalCrashReporter' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property '_signalCrashReporter' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
  64 |     internal static var signalCrashReporter: BTSignalCrashReporter?{
  65 |         get {
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:73:24: warning: static property '_launchTimeReporter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
  71 |     }
  72 |
  73 |     private static var _launchTimeReporter : LaunchTimeReporter?
     |                        |- warning: static property '_launchTimeReporter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert '_launchTimeReporter' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property '_launchTimeReporter' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
  74 |     internal static var launchTimeReporter : LaunchTimeReporter?{
  75 |         get {
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:83:24: warning: static property '_memoryWarningWatchDog' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
  81 |     }
  82 |
  83 |     private static var _memoryWarningWatchDog : MemoryWarningWatchDog?
     |                        |- warning: static property '_memoryWarningWatchDog' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert '_memoryWarningWatchDog' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property '_memoryWarningWatchDog' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
  84 |     internal static var memoryWarningWatchDog : MemoryWarningWatchDog?{
  85 |         get {
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:93:24: warning: static property '_anrWatchDog' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
  91 |     }
  92 |
  93 |     private static var _anrWatchDog : ANRWatchDog?
     |                        |- warning: static property '_anrWatchDog' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert '_anrWatchDog' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property '_anrWatchDog' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
  94 |     internal static var anrWatchDog : ANRWatchDog?{
  95 |         get {
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:103:24: warning: static property '_sessionManager' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 101 |     }
 102 |
 103 |     private static var _sessionManager : SessionManagerProtocol?
     |                        |- warning: static property '_sessionManager' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert '_sessionManager' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property '_sessionManager' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 104 |     private static var sessionManager : SessionManagerProtocol?{
 105 |         get {
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:113:25: warning: static property 'clarityConnector' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 111 |     }
 112 |
 113 |     internal static var clarityConnector = ClaritySessionConnector(logger: logger)
     |                         |- warning: static property 'clarityConnector' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                         |- note: convert 'clarityConnector' to a 'let' constant to make 'Sendable' shared state immutable
     |                         |- note: add '@MainActor' to make static property 'clarityConnector' part of global actor 'MainActor'
     |                         `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 114 |
 115 |     internal static var enableAllTracking: Bool = {
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:115:25: warning: static property 'enableAllTracking' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 113 |     internal static var clarityConnector = ClaritySessionConnector(logger: logger)
 114 |
 115 |     internal static var enableAllTracking: Bool = {
     |                         |- warning: static property 'enableAllTracking' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                         |- note: convert 'enableAllTracking' to a 'let' constant to make 'Sendable' shared state immutable
     |                         |- note: add '@MainActor' to make static property 'enableAllTracking' part of global actor 'MainActor'
     |                         `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 116 |         let value = configRepo.isEnableAllTracking()
 117 |         return  value
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:120:24: warning: static property 'configRepo' is not concurrency-safe because non-'Sendable' type 'BTTConfigurationRepo' may have shared mutable state; this is an error in the Swift 6 language mode
 118 |     }()
 119 |
 120 |     private static let configRepo: BTTConfigurationRepo = {
     |                        |- warning: static property 'configRepo' is not concurrency-safe because non-'Sendable' type 'BTTConfigurationRepo' may have shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: add '@MainActor' to make static property 'configRepo' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 121 |         let config = BTTConfigurationRepo(BTTRemoteConfig.defaultConfig)
 122 |         return  config
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/DynamicConfig/BTTConfigurationRepo.swift:17:7: note: class 'BTTConfigurationRepo' does not conform to the 'Sendable' protocol
 15 | }
 16 |
 17 | class BTTConfigurationRepo : ConfigurationRepo{
    |       `- note: class 'BTTConfigurationRepo' does not conform to the 'Sendable' protocol
 18 |
 19 |     private let queue = DispatchQueue(label: "com.bluetriangle.configurationRepo", attributes: .concurrent)
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:125:25: warning: static property 'disableModeSessionManager' is not concurrency-safe because non-'Sendable' type 'any SessionManagerProtocol' may have shared mutable state; this is an error in the Swift 6 language mode
 123 |     }()
 124 |
 125 |     internal static let disableModeSessionManager : SessionManagerProtocol = {
     |                         |- warning: static property 'disableModeSessionManager' is not concurrency-safe because non-'Sendable' type 'any SessionManagerProtocol' may have shared mutable state; this is an error in the Swift 6 language mode
     |                         |- note: add '@MainActor' to make static property 'disableModeSessionManager' part of global actor 'MainActor'
     |                         `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 126 |         let configFetcher  =  BTTConfigurationFetcher()
 127 |         let configSyncer = BTTStoredConfigSyncer(configRepo: configRepo, logger: logger)
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/SessionManager.swift:18:10: note: protocol 'SessionManagerProtocol' does not conform to the 'Sendable' protocol
 16 | #endif
 17 |
 18 | protocol SessionManagerProtocol  {
    |          `- note: protocol 'SessionManagerProtocol' does not conform to the 'Sendable' protocol
 19 |     func start(with expiry : Millisecond)
 20 |     func getSessionData() -> SessionData?
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:132:25: warning: static property 'enabledModeSessionManager' is not concurrency-safe because non-'Sendable' type 'any SessionManagerProtocol' may have shared mutable state; this is an error in the Swift 6 language mode
 130 |     }()
 131 |
 132 |     internal static let enabledModeSessionManager : SessionManagerProtocol = {
     |                         |- warning: static property 'enabledModeSessionManager' is not concurrency-safe because non-'Sendable' type 'any SessionManagerProtocol' may have shared mutable state; this is an error in the Swift 6 language mode
     |                         |- note: add '@MainActor' to make static property 'enabledModeSessionManager' part of global actor 'MainActor'
     |                         `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 133 |         let configFetcher  =  BTTConfigurationFetcher()
 134 |         let configSyncer = BTTStoredConfigSyncer(configRepo: configRepo, logger: logger)
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/SessionManager.swift:18:10: note: protocol 'SessionManagerProtocol' does not conform to the 'Sendable' protocol
 16 | #endif
 17 |
 18 | protocol SessionManagerProtocol  {
    |          `- note: protocol 'SessionManagerProtocol' does not conform to the 'Sendable' protocol
 19 |     func start(with expiry : Millisecond)
 20 |     func getSessionData() -> SessionData?
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:142:24: warning: static property 'activeTimers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 140 |     private static let lock = NSLock()
 141 |     private static let trackingLock = NSRecursiveLock()
 142 |     private static var activeTimers = [BTTimer]()
     |                        |- warning: static property 'activeTimers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert 'activeTimers' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property 'activeTimers' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 143 | #if os(iOS)
 144 |     private static let matricKitWatchDog = MetricKitWatchDog()
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:210:24: warning: static property '_session' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 208 |     }
 209 |
 210 |     private static var _session: Session? = {
     |                        |- warning: static property '_session' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert '_session' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property '_session' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 211 |         configuration.makeSession()
 212 |     }()
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:239:24: warning: static property 'logger' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 237 |     }
 238 |
 239 |     private static var logger: Logging = {
     |                        |- warning: static property 'logger' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert 'logger' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property 'logger' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 240 |         configuration.makeLogger()
 241 |     }()
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:244:24: warning: static property 'uploader' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 242 |
 243 |
 244 |     private static var uploader: Uploading = {
     |                        |- warning: static property 'uploader' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert 'uploader' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property 'uploader' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 245 |         configuration.uploaderConfiguration.makeUploader(
 246 |             logger: logger,
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:252:24: warning: static property 'timerFactory' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 250 |     }()
 251 |
 252 |     private static var timerFactory: (Page, BTTimer.TimerType) -> BTTimer = {
     |                        |- warning: static property 'timerFactory' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert 'timerFactory' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property 'timerFactory' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 253 |         configuration.timerConfiguration.makeTimerFactory(
 254 |             logger: logger,
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:258:24: warning: static property 'internalTimerFactory' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 256 |     }()
 257 |
 258 |     private static var internalTimerFactory: () -> InternalTimer = {
     |                        |- warning: static property 'internalTimerFactory' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert 'internalTimerFactory' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property 'internalTimerFactory' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 259 |         configuration.internalTimerConfiguration.makeTimerFactory(logger: logger)
 260 |     }()
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:262:24: warning: static property 'shouldCaptureRequests' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 260 |     }()
 261 |
 262 |     private static var shouldCaptureRequests: Bool = {
     |                        |- warning: static property 'shouldCaptureRequests' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert 'shouldCaptureRequests' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property 'shouldCaptureRequests' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 263 |         sessionData()?.shouldNetworkCapture ?? false
 264 |     }()
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:274:36: warning: static property 'initialized' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 272 |     ///            enable/disable state via the Remote Configuration Updater.
 273 |     ///
 274 |     public private(set) static var initialized = false
     |                                    |- warning: static property 'initialized' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                                    |- note: convert 'initialized' to a 'let' constant to make 'Sendable' shared state immutable
     |                                    |- note: add '@MainActor' to make static property 'initialized' part of global actor 'MainActor'
     |                                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 275 |
 276 |     private static var capturedRequestCollector: CapturedRequestCollecting? = {
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:276:24: warning: static property 'capturedRequestCollector' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 274 |     public private(set) static var initialized = false
 275 |
 276 |     private static var capturedRequestCollector: CapturedRequestCollecting? = {
     |                        |- warning: static property 'capturedRequestCollector' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert 'capturedRequestCollector' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property 'capturedRequestCollector' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 277 |         return makeCapturedRequestCollector()
 278 |     }()
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:282:25: warning: static property 'payloadCache' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 280 |
 281 |     //Cache components
 282 |     internal static var payloadCache : PayloadCacheProtocol = {
     |                         |- warning: static property 'payloadCache' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                         |- note: convert 'payloadCache' to a 'let' constant to make 'Sendable' shared state immutable
     |                         |- note: add '@MainActor' to make static property 'payloadCache' part of global actor 'MainActor'
     |                         `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 283 |         PayloadCache.init(configuration.cacheMemoryLimit,
 284 |                           expiry: configuration.cacheExpiryDuration)
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/CrashReportManager.swift:37:33: warning: capture of 'self' with non-sendable type 'CrashReportManager?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
  8 | import Foundation
  9 |
 10 | final class CrashReportManager: CrashReportManaging {
    |             `- note: class 'CrashReportManager' does not conform to the 'Sendable' protocol
 11 |
 12 |     private let crashReportPersistence: CrashReportPersisting.Type
    :
 35 |         self.intervalProvider = intervalProvider
 36 |         self.startupTask = Task.delayed(byTimeInterval: Constants.startupDelay, priority: .utility) { [weak self] in
 37 |             guard let session = self?.session() else {
    |                                 `- warning: capture of 'self' with non-sendable type 'CrashReportManager?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 38 |                 return
 39 |             }
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/CrashReportPersistence.swift:18:24: warning: static property 'logger' is not concurrency-safe because non-'Sendable' type 'any Logging' may have shared mutable state; this is an error in the Swift 6 language mode
16 |
17 | struct CrashReportPersistence: CrashReportPersisting {
18 |     private static let logger = BTLogger.live
   |                        |- warning: static property 'logger' is not concurrency-safe because non-'Sendable' type 'any Logging' may have shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: add '@MainActor' to make static property 'logger' part of global actor 'MainActor'
   |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
19 |
20 |     private static var persistence: Persistence? {
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/Protocols/Logging.swift:10:10: note: protocol 'Logging' does not conform to the 'Sendable' protocol
 8 | import Foundation
 9 |
10 | protocol Logging {
   |          `- note: protocol 'Logging' does not conform to the 'Sendable' protocol
11 |     var enableDebug: Bool { get set }
12 |
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/DisableModeSessionManager.swift:99:14: warning: capture of 'self' with non-sendable type 'DisableModeSessionManager?' in a '@Sendable' closure
 28 | /// - Note: This session manager is used exclusively when `enableAllTracking` is false.
 29 | ///
 30 | class DisableModeSessionManager : SessionManagerProtocol {
    |       `- note: class 'DisableModeSessionManager' does not conform to the 'Sendable' protocol
 31 |
 32 |     private var expirationDurationInMS: Millisecond = 30 * 60 * 1000
    :
 97 |      private func updateRemoteConfig(){
 98 |          queue.async { [weak self] in
 99 |              self?.updater.update(true) {}
    |              `- warning: capture of 'self' with non-sendable type 'DisableModeSessionManager?' in a '@Sendable' closure
100 |          }
101 |      }
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:930:14: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 928 |         }
 929 |
 930 |         Task {
     |              `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 931 |             await capturedRequestCollector?.start(page: page, startTime: startTime)
     |                                                         `- note: closure captures 'page' which is accessible to code in the current task
 932 |         }
 933 |     }
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:931:45: warning: sending 'page' risks causing data races; this is an error in the Swift 6 language mode
 929 |
 930 |         Task {
 931 |             await capturedRequestCollector?.start(page: page, startTime: startTime)
     |                                             |- warning: sending 'page' risks causing data races; this is an error in the Swift 6 language mode
     |                                             `- note: sending task-isolated 'page' to actor-isolated instance method 'start(page:startTime:)' risks causing data races between actor-isolated and task-isolated uses
 932 |         }
 933 |     }
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:953:14: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 951 |
 952 |     static func captureRequest(timer: InternalTimer, response: URLResponse?) {
 953 |         Task {
     |              `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 954 |             await capturedRequestCollector?.collect(timer: timer, response: response)
     |                                                            `- note: closure captures 'timer' which is accessible to code in the current task
 955 |         }
 956 |     }
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:954:45: warning: sending 'timer' risks causing data races; this is an error in the Swift 6 language mode
 952 |     static func captureRequest(timer: InternalTimer, response: URLResponse?) {
 953 |         Task {
 954 |             await capturedRequestCollector?.collect(timer: timer, response: response)
     |                                             |- warning: sending 'timer' risks causing data races; this is an error in the Swift 6 language mode
     |                                             `- note: sending task-isolated 'timer' to actor-isolated instance method 'collect(timer:response:)' risks causing data races between actor-isolated and task-isolated uses
 955 |         }
 956 |     }
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:959:14: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 957 |
 958 |     internal static func captureRequest(timer: InternalTimer, response: CustomResponse) {
 959 |         Task {
     |              `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 960 |             await capturedRequestCollector?.collect(timer: timer, response: response)
     |                                                            `- note: closure captures 'timer' which is accessible to code in the current task
 961 |         }
 962 |     }
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:960:45: warning: sending 'timer' risks causing data races; this is an error in the Swift 6 language mode
 958 |     internal static func captureRequest(timer: InternalTimer, response: CustomResponse) {
 959 |         Task {
 960 |             await capturedRequestCollector?.collect(timer: timer, response: response)
     |                                             |- warning: sending 'timer' risks causing data races; this is an error in the Swift 6 language mode
     |                                             `- note: sending task-isolated 'timer' to actor-isolated instance method 'collect(timer:response:)' risks causing data races between actor-isolated and task-isolated uses
 961 |         }
 962 |     }
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:969:14: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 967 |     ///   - tuple: The asynchronously-delivered tuple containing the request contents as a Data instance and a URLResponse.
 968 |     static func captureRequest(timer: InternalTimer, tuple: (Data, URLResponse)) {
 969 |         Task {
     |              `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 970 |             await capturedRequestCollector?.collect(timer: timer, response: tuple.1)
     |                                                            `- note: closure captures 'timer' which is accessible to code in the current task
 971 |         }
 972 |     }
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:970:45: warning: sending 'timer' risks causing data races; this is an error in the Swift 6 language mode
 968 |     static func captureRequest(timer: InternalTimer, tuple: (Data, URLResponse)) {
 969 |         Task {
 970 |             await capturedRequestCollector?.collect(timer: timer, response: tuple.1)
     |                                             |- warning: sending 'timer' risks causing data races; this is an error in the Swift 6 language mode
     |                                             `- note: sending task-isolated 'timer' to actor-isolated instance method 'collect(timer:response:)' risks causing data races between actor-isolated and task-isolated uses
 971 |         }
 972 |     }
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:975:14: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 973 |
 974 |     static func captureRequest(timer: InternalTimer, request : URLRequest, error: Error?) {
 975 |         Task {
     |              `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 976 |             await capturedRequestCollector?.collect(timer: timer, request: request, error: error)
     |                                                            `- note: closure captures 'timer' which is accessible to code in the current task
 977 |         }
 978 |     }
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:976:45: warning: sending 'timer' risks causing data races; this is an error in the Swift 6 language mode
 974 |     static func captureRequest(timer: InternalTimer, request : URLRequest, error: Error?) {
 975 |         Task {
 976 |             await capturedRequestCollector?.collect(timer: timer, request: request, error: error)
     |                                             |- warning: sending 'timer' risks causing data races; this is an error in the Swift 6 language mode
     |                                             `- note: sending task-isolated 'timer' to actor-isolated instance method 'collect(timer:request:error:)' risks causing data races between actor-isolated and task-isolated uses
 977 |         }
 978 |     }
[124/124] Compiling BlueTriangle DisableModeSessionManager.swift
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BTLogger.swift:118:16: warning: static property 'live' is not concurrency-safe because non-'Sendable' type 'any Logging' may have shared mutable state; this is an error in the Swift 6 language mode
116 |
117 | extension BTLogger {
118 |     static let live: Logging = {
    |                |- warning: static property 'live' is not concurrency-safe because non-'Sendable' type 'any Logging' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: add '@MainActor' to make static property 'live' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
119 |         BTLogger()
120 |     }()
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/Protocols/Logging.swift:10:10: note: protocol 'Logging' does not conform to the 'Sendable' protocol
 8 | import Foundation
 9 |
10 | protocol Logging {
   |          `- note: protocol 'Logging' does not conform to the 'Sendable' protocol
11 |     var enableDebug: Bool { get set }
12 |
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BTSignalCrashReporter.swift:58:40: warning: capture of 'self' with non-sendable type 'BTSignalCrashReporter?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 24 |
 25 |
 26 | class BTSignalCrashReporter {
    |       `- note: class 'BTSignalCrashReporter' does not conform to the 'Sendable' protocol
 27 |
 28 |     private let  directory : String
    :
 56 |         case .nsException:
 57 |             self.startupTask = Task.delayed(byTimeInterval: Constants.startupDelay, priority: .utility) { [weak self] in
 58 |                 guard let strongSelf = self else {
    |                                        `- warning: capture of 'self' with non-sendable type 'BTSignalCrashReporter?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 59 |                     return
 60 |                 }
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BTSignalCrashReporter.swift:91:37: warning: capture of 'self' with non-sendable type 'BTSignalCrashReporter?' in a '@Sendable' closure
 24 |
 25 |
 26 | class BTSignalCrashReporter {
    |       `- note: class 'BTSignalCrashReporter' does not conform to the 'Sendable' protocol
 27 |
 28 |     private let  directory : String
    :
 89 |         DispatchQueue.global(qos: .utility).async { [weak self] in
 90 |             do {
 91 |                 if let strongSelf = self, let session_id = crash.btt_session_id, session_id.count > 0, let sessionId = UInt64(session_id){
    |                                     `- warning: capture of 'self' with non-sendable type 'BTSignalCrashReporter?' in a '@Sendable' closure
 92 |                     var sessionCopy = session
 93 |                     sessionCopy.sessionID = sessionId
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BTSignalCrashReporter.swift:92:39: warning: capture of 'session' with non-sendable type 'Session' in a '@Sendable' closure
 90 |             do {
 91 |                 if let strongSelf = self, let session_id = crash.btt_session_id, session_id.count > 0, let sessionId = UInt64(session_id){
 92 |                     var sessionCopy = session
    |                                       `- warning: capture of 'session' with non-sendable type 'Session' in a '@Sendable' closure
 93 |                     sessionCopy.sessionID = sessionId
 94 |                     let pageName = (crash.btt_page_name ?? "").count > 0 ? crash.btt_page_name : Constants.crashID
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/Models/Session.swift:10:8: note: consider making struct 'Session' conform to the 'Sendable' protocol
 8 | import Foundation
 9 |
10 | struct Session: Equatable {
   |        `- note: consider making struct 'Session' conform to the 'Sendable' protocol
11 |     let wcd = 1
12 |     let eventType = 9
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BTTimer.swift:250:20: warning: static property 'live' is not concurrency-safe because non-'Sendable' type 'BTTimer.Configuration' may have shared mutable state; this is an error in the Swift 6 language mode
230 | // MARK: - Supporting Types
231 | extension BTTimer {
232 |     struct Configuration {
    |            `- note: consider making struct 'Configuration' conform to the 'Sendable' protocol
233 |         let timeIntervalProvider: () -> TimeInterval
234 |
    :
248 |         }
249 |
250 |         static let live = Self(
    |                    |- warning: static property 'live' is not concurrency-safe because non-'Sendable' type 'BTTimer.Configuration' may have shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: add '@MainActor' to make static property 'live' part of global actor 'MainActor'
    |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
251 |             timeIntervalProvider: { Date().timeIntervalSince1970 }
252 |         )
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:22:25: warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
  20 | final public class BlueTriangle: NSObject {
  21 |
  22 |     internal static var configuration = BlueTriangleConfiguration()
     |                         |- warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                         |- note: convert 'configuration' to a 'let' constant to make 'Sendable' shared state immutable
     |                         |- note: add '@MainActor' to make static property 'configuration' part of global actor 'MainActor'
     |                         `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
  23 |
  24 |     private static var _screenTracker: BTTScreenLifecycleTracker?
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:24:24: warning: static property '_screenTracker' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
  22 |     internal static var configuration = BlueTriangleConfiguration()
  23 |
  24 |     private static var _screenTracker: BTTScreenLifecycleTracker?
     |                        |- warning: static property '_screenTracker' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert '_screenTracker' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property '_screenTracker' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
  25 |     internal static var screenTracker: BTTScreenLifecycleTracker?{
  26 |         get {
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:33:24: warning: static property '_networkStateMonitor' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
  31 |         }
  32 |     }
  33 |     private static var _networkStateMonitor: NetworkStateMonitorProtocol?
     |                        |- warning: static property '_networkStateMonitor' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert '_networkStateMonitor' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property '_networkStateMonitor' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
  34 |     internal static var networkStateMonitor: NetworkStateMonitorProtocol?{
  35 |         get {
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:43:24: warning: static property '_appEventObserver' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
  41 |     }
  42 |
  43 |     private static var _appEventObserver: AppEventObserver?
     |                        |- warning: static property '_appEventObserver' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert '_appEventObserver' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property '_appEventObserver' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
  44 |     internal static var appEventObserver: AppEventObserver?{
  45 |         get {
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:53:24: warning: static property '_nsExeptionReporter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
  51 |     }
  52 |
  53 |     private static var _nsExeptionReporter: CrashReportManaging?
     |                        |- warning: static property '_nsExeptionReporter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert '_nsExeptionReporter' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property '_nsExeptionReporter' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
  54 |     private static var nsExeptionReporter: CrashReportManaging?{
  55 |         get {
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:63:24: warning: static property '_signalCrashReporter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
  61 |     }
  62 |
  63 |     private static var _signalCrashReporter: BTSignalCrashReporter?
     |                        |- warning: static property '_signalCrashReporter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert '_signalCrashReporter' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property '_signalCrashReporter' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
  64 |     internal static var signalCrashReporter: BTSignalCrashReporter?{
  65 |         get {
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:73:24: warning: static property '_launchTimeReporter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
  71 |     }
  72 |
  73 |     private static var _launchTimeReporter : LaunchTimeReporter?
     |                        |- warning: static property '_launchTimeReporter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert '_launchTimeReporter' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property '_launchTimeReporter' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
  74 |     internal static var launchTimeReporter : LaunchTimeReporter?{
  75 |         get {
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:83:24: warning: static property '_memoryWarningWatchDog' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
  81 |     }
  82 |
  83 |     private static var _memoryWarningWatchDog : MemoryWarningWatchDog?
     |                        |- warning: static property '_memoryWarningWatchDog' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert '_memoryWarningWatchDog' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property '_memoryWarningWatchDog' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
  84 |     internal static var memoryWarningWatchDog : MemoryWarningWatchDog?{
  85 |         get {
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:93:24: warning: static property '_anrWatchDog' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
  91 |     }
  92 |
  93 |     private static var _anrWatchDog : ANRWatchDog?
     |                        |- warning: static property '_anrWatchDog' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert '_anrWatchDog' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property '_anrWatchDog' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
  94 |     internal static var anrWatchDog : ANRWatchDog?{
  95 |         get {
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:103:24: warning: static property '_sessionManager' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 101 |     }
 102 |
 103 |     private static var _sessionManager : SessionManagerProtocol?
     |                        |- warning: static property '_sessionManager' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert '_sessionManager' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property '_sessionManager' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 104 |     private static var sessionManager : SessionManagerProtocol?{
 105 |         get {
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:113:25: warning: static property 'clarityConnector' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 111 |     }
 112 |
 113 |     internal static var clarityConnector = ClaritySessionConnector(logger: logger)
     |                         |- warning: static property 'clarityConnector' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                         |- note: convert 'clarityConnector' to a 'let' constant to make 'Sendable' shared state immutable
     |                         |- note: add '@MainActor' to make static property 'clarityConnector' part of global actor 'MainActor'
     |                         `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 114 |
 115 |     internal static var enableAllTracking: Bool = {
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:115:25: warning: static property 'enableAllTracking' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 113 |     internal static var clarityConnector = ClaritySessionConnector(logger: logger)
 114 |
 115 |     internal static var enableAllTracking: Bool = {
     |                         |- warning: static property 'enableAllTracking' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                         |- note: convert 'enableAllTracking' to a 'let' constant to make 'Sendable' shared state immutable
     |                         |- note: add '@MainActor' to make static property 'enableAllTracking' part of global actor 'MainActor'
     |                         `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 116 |         let value = configRepo.isEnableAllTracking()
 117 |         return  value
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:120:24: warning: static property 'configRepo' is not concurrency-safe because non-'Sendable' type 'BTTConfigurationRepo' may have shared mutable state; this is an error in the Swift 6 language mode
 118 |     }()
 119 |
 120 |     private static let configRepo: BTTConfigurationRepo = {
     |                        |- warning: static property 'configRepo' is not concurrency-safe because non-'Sendable' type 'BTTConfigurationRepo' may have shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: add '@MainActor' to make static property 'configRepo' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 121 |         let config = BTTConfigurationRepo(BTTRemoteConfig.defaultConfig)
 122 |         return  config
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/DynamicConfig/BTTConfigurationRepo.swift:17:7: note: class 'BTTConfigurationRepo' does not conform to the 'Sendable' protocol
 15 | }
 16 |
 17 | class BTTConfigurationRepo : ConfigurationRepo{
    |       `- note: class 'BTTConfigurationRepo' does not conform to the 'Sendable' protocol
 18 |
 19 |     private let queue = DispatchQueue(label: "com.bluetriangle.configurationRepo", attributes: .concurrent)
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:125:25: warning: static property 'disableModeSessionManager' is not concurrency-safe because non-'Sendable' type 'any SessionManagerProtocol' may have shared mutable state; this is an error in the Swift 6 language mode
 123 |     }()
 124 |
 125 |     internal static let disableModeSessionManager : SessionManagerProtocol = {
     |                         |- warning: static property 'disableModeSessionManager' is not concurrency-safe because non-'Sendable' type 'any SessionManagerProtocol' may have shared mutable state; this is an error in the Swift 6 language mode
     |                         |- note: add '@MainActor' to make static property 'disableModeSessionManager' part of global actor 'MainActor'
     |                         `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 126 |         let configFetcher  =  BTTConfigurationFetcher()
 127 |         let configSyncer = BTTStoredConfigSyncer(configRepo: configRepo, logger: logger)
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/SessionManager.swift:18:10: note: protocol 'SessionManagerProtocol' does not conform to the 'Sendable' protocol
 16 | #endif
 17 |
 18 | protocol SessionManagerProtocol  {
    |          `- note: protocol 'SessionManagerProtocol' does not conform to the 'Sendable' protocol
 19 |     func start(with expiry : Millisecond)
 20 |     func getSessionData() -> SessionData?
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:132:25: warning: static property 'enabledModeSessionManager' is not concurrency-safe because non-'Sendable' type 'any SessionManagerProtocol' may have shared mutable state; this is an error in the Swift 6 language mode
 130 |     }()
 131 |
 132 |     internal static let enabledModeSessionManager : SessionManagerProtocol = {
     |                         |- warning: static property 'enabledModeSessionManager' is not concurrency-safe because non-'Sendable' type 'any SessionManagerProtocol' may have shared mutable state; this is an error in the Swift 6 language mode
     |                         |- note: add '@MainActor' to make static property 'enabledModeSessionManager' part of global actor 'MainActor'
     |                         `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 133 |         let configFetcher  =  BTTConfigurationFetcher()
 134 |         let configSyncer = BTTStoredConfigSyncer(configRepo: configRepo, logger: logger)
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/SessionManager.swift:18:10: note: protocol 'SessionManagerProtocol' does not conform to the 'Sendable' protocol
 16 | #endif
 17 |
 18 | protocol SessionManagerProtocol  {
    |          `- note: protocol 'SessionManagerProtocol' does not conform to the 'Sendable' protocol
 19 |     func start(with expiry : Millisecond)
 20 |     func getSessionData() -> SessionData?
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:142:24: warning: static property 'activeTimers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 140 |     private static let lock = NSLock()
 141 |     private static let trackingLock = NSRecursiveLock()
 142 |     private static var activeTimers = [BTTimer]()
     |                        |- warning: static property 'activeTimers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert 'activeTimers' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property 'activeTimers' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 143 | #if os(iOS)
 144 |     private static let matricKitWatchDog = MetricKitWatchDog()
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:210:24: warning: static property '_session' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 208 |     }
 209 |
 210 |     private static var _session: Session? = {
     |                        |- warning: static property '_session' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert '_session' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property '_session' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 211 |         configuration.makeSession()
 212 |     }()
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:239:24: warning: static property 'logger' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 237 |     }
 238 |
 239 |     private static var logger: Logging = {
     |                        |- warning: static property 'logger' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert 'logger' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property 'logger' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 240 |         configuration.makeLogger()
 241 |     }()
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:244:24: warning: static property 'uploader' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 242 |
 243 |
 244 |     private static var uploader: Uploading = {
     |                        |- warning: static property 'uploader' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert 'uploader' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property 'uploader' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 245 |         configuration.uploaderConfiguration.makeUploader(
 246 |             logger: logger,
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:252:24: warning: static property 'timerFactory' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 250 |     }()
 251 |
 252 |     private static var timerFactory: (Page, BTTimer.TimerType) -> BTTimer = {
     |                        |- warning: static property 'timerFactory' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert 'timerFactory' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property 'timerFactory' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 253 |         configuration.timerConfiguration.makeTimerFactory(
 254 |             logger: logger,
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:258:24: warning: static property 'internalTimerFactory' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 256 |     }()
 257 |
 258 |     private static var internalTimerFactory: () -> InternalTimer = {
     |                        |- warning: static property 'internalTimerFactory' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert 'internalTimerFactory' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property 'internalTimerFactory' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 259 |         configuration.internalTimerConfiguration.makeTimerFactory(logger: logger)
 260 |     }()
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:262:24: warning: static property 'shouldCaptureRequests' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 260 |     }()
 261 |
 262 |     private static var shouldCaptureRequests: Bool = {
     |                        |- warning: static property 'shouldCaptureRequests' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert 'shouldCaptureRequests' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property 'shouldCaptureRequests' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 263 |         sessionData()?.shouldNetworkCapture ?? false
 264 |     }()
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:274:36: warning: static property 'initialized' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 272 |     ///            enable/disable state via the Remote Configuration Updater.
 273 |     ///
 274 |     public private(set) static var initialized = false
     |                                    |- warning: static property 'initialized' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                                    |- note: convert 'initialized' to a 'let' constant to make 'Sendable' shared state immutable
     |                                    |- note: add '@MainActor' to make static property 'initialized' part of global actor 'MainActor'
     |                                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 275 |
 276 |     private static var capturedRequestCollector: CapturedRequestCollecting? = {
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:276:24: warning: static property 'capturedRequestCollector' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 274 |     public private(set) static var initialized = false
 275 |
 276 |     private static var capturedRequestCollector: CapturedRequestCollecting? = {
     |                        |- warning: static property 'capturedRequestCollector' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                        |- note: convert 'capturedRequestCollector' to a 'let' constant to make 'Sendable' shared state immutable
     |                        |- note: add '@MainActor' to make static property 'capturedRequestCollector' part of global actor 'MainActor'
     |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 277 |         return makeCapturedRequestCollector()
 278 |     }()
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:282:25: warning: static property 'payloadCache' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 280 |
 281 |     //Cache components
 282 |     internal static var payloadCache : PayloadCacheProtocol = {
     |                         |- warning: static property 'payloadCache' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                         |- note: convert 'payloadCache' to a 'let' constant to make 'Sendable' shared state immutable
     |                         |- note: add '@MainActor' to make static property 'payloadCache' part of global actor 'MainActor'
     |                         `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 283 |         PayloadCache.init(configuration.cacheMemoryLimit,
 284 |                           expiry: configuration.cacheExpiryDuration)
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/CrashReportManager.swift:37:33: warning: capture of 'self' with non-sendable type 'CrashReportManager?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
  8 | import Foundation
  9 |
 10 | final class CrashReportManager: CrashReportManaging {
    |             `- note: class 'CrashReportManager' does not conform to the 'Sendable' protocol
 11 |
 12 |     private let crashReportPersistence: CrashReportPersisting.Type
    :
 35 |         self.intervalProvider = intervalProvider
 36 |         self.startupTask = Task.delayed(byTimeInterval: Constants.startupDelay, priority: .utility) { [weak self] in
 37 |             guard let session = self?.session() else {
    |                                 `- warning: capture of 'self' with non-sendable type 'CrashReportManager?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 38 |                 return
 39 |             }
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/CrashReportPersistence.swift:18:24: warning: static property 'logger' is not concurrency-safe because non-'Sendable' type 'any Logging' may have shared mutable state; this is an error in the Swift 6 language mode
16 |
17 | struct CrashReportPersistence: CrashReportPersisting {
18 |     private static let logger = BTLogger.live
   |                        |- warning: static property 'logger' is not concurrency-safe because non-'Sendable' type 'any Logging' may have shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: add '@MainActor' to make static property 'logger' part of global actor 'MainActor'
   |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
19 |
20 |     private static var persistence: Persistence? {
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/Protocols/Logging.swift:10:10: note: protocol 'Logging' does not conform to the 'Sendable' protocol
 8 | import Foundation
 9 |
10 | protocol Logging {
   |          `- note: protocol 'Logging' does not conform to the 'Sendable' protocol
11 |     var enableDebug: Bool { get set }
12 |
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/DisableModeSessionManager.swift:99:14: warning: capture of 'self' with non-sendable type 'DisableModeSessionManager?' in a '@Sendable' closure
 28 | /// - Note: This session manager is used exclusively when `enableAllTracking` is false.
 29 | ///
 30 | class DisableModeSessionManager : SessionManagerProtocol {
    |       `- note: class 'DisableModeSessionManager' does not conform to the 'Sendable' protocol
 31 |
 32 |     private var expirationDurationInMS: Millisecond = 30 * 60 * 1000
    :
 97 |      private func updateRemoteConfig(){
 98 |          queue.async { [weak self] in
 99 |              self?.updater.update(true) {}
    |              `- warning: capture of 'self' with non-sendable type 'DisableModeSessionManager?' in a '@Sendable' closure
100 |          }
101 |      }
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:930:14: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 928 |         }
 929 |
 930 |         Task {
     |              `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 931 |             await capturedRequestCollector?.start(page: page, startTime: startTime)
     |                                                         `- note: closure captures 'page' which is accessible to code in the current task
 932 |         }
 933 |     }
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:931:45: warning: sending 'page' risks causing data races; this is an error in the Swift 6 language mode
 929 |
 930 |         Task {
 931 |             await capturedRequestCollector?.start(page: page, startTime: startTime)
     |                                             |- warning: sending 'page' risks causing data races; this is an error in the Swift 6 language mode
     |                                             `- note: sending task-isolated 'page' to actor-isolated instance method 'start(page:startTime:)' risks causing data races between actor-isolated and task-isolated uses
 932 |         }
 933 |     }
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:953:14: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 951 |
 952 |     static func captureRequest(timer: InternalTimer, response: URLResponse?) {
 953 |         Task {
     |              `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 954 |             await capturedRequestCollector?.collect(timer: timer, response: response)
     |                                                            `- note: closure captures 'timer' which is accessible to code in the current task
 955 |         }
 956 |     }
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:954:45: warning: sending 'timer' risks causing data races; this is an error in the Swift 6 language mode
 952 |     static func captureRequest(timer: InternalTimer, response: URLResponse?) {
 953 |         Task {
 954 |             await capturedRequestCollector?.collect(timer: timer, response: response)
     |                                             |- warning: sending 'timer' risks causing data races; this is an error in the Swift 6 language mode
     |                                             `- note: sending task-isolated 'timer' to actor-isolated instance method 'collect(timer:response:)' risks causing data races between actor-isolated and task-isolated uses
 955 |         }
 956 |     }
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:959:14: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 957 |
 958 |     internal static func captureRequest(timer: InternalTimer, response: CustomResponse) {
 959 |         Task {
     |              `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 960 |             await capturedRequestCollector?.collect(timer: timer, response: response)
     |                                                            `- note: closure captures 'timer' which is accessible to code in the current task
 961 |         }
 962 |     }
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:960:45: warning: sending 'timer' risks causing data races; this is an error in the Swift 6 language mode
 958 |     internal static func captureRequest(timer: InternalTimer, response: CustomResponse) {
 959 |         Task {
 960 |             await capturedRequestCollector?.collect(timer: timer, response: response)
     |                                             |- warning: sending 'timer' risks causing data races; this is an error in the Swift 6 language mode
     |                                             `- note: sending task-isolated 'timer' to actor-isolated instance method 'collect(timer:response:)' risks causing data races between actor-isolated and task-isolated uses
 961 |         }
 962 |     }
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:969:14: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 967 |     ///   - tuple: The asynchronously-delivered tuple containing the request contents as a Data instance and a URLResponse.
 968 |     static func captureRequest(timer: InternalTimer, tuple: (Data, URLResponse)) {
 969 |         Task {
     |              `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 970 |             await capturedRequestCollector?.collect(timer: timer, response: tuple.1)
     |                                                            `- note: closure captures 'timer' which is accessible to code in the current task
 971 |         }
 972 |     }
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:970:45: warning: sending 'timer' risks causing data races; this is an error in the Swift 6 language mode
 968 |     static func captureRequest(timer: InternalTimer, tuple: (Data, URLResponse)) {
 969 |         Task {
 970 |             await capturedRequestCollector?.collect(timer: timer, response: tuple.1)
     |                                             |- warning: sending 'timer' risks causing data races; this is an error in the Swift 6 language mode
     |                                             `- note: sending task-isolated 'timer' to actor-isolated instance method 'collect(timer:response:)' risks causing data races between actor-isolated and task-isolated uses
 971 |         }
 972 |     }
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:975:14: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 973 |
 974 |     static func captureRequest(timer: InternalTimer, request : URLRequest, error: Error?) {
 975 |         Task {
     |              `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 976 |             await capturedRequestCollector?.collect(timer: timer, request: request, error: error)
     |                                                            `- note: closure captures 'timer' which is accessible to code in the current task
 977 |         }
 978 |     }
/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/BlueTriangle.swift:976:45: warning: sending 'timer' risks causing data races; this is an error in the Swift 6 language mode
 974 |     static func captureRequest(timer: InternalTimer, request : URLRequest, error: Error?) {
 975 |         Task {
 976 |             await capturedRequestCollector?.collect(timer: timer, request: request, error: error)
     |                                             |- warning: sending 'timer' risks causing data races; this is an error in the Swift 6 language mode
     |                                             `- note: sending task-isolated 'timer' to actor-isolated instance method 'collect(timer:request:error:)' risks causing data races between actor-isolated and task-isolated uses
 977 |         }
 978 |     }
Build complete! (9.51s)
Build complete.
{
  "dependencies" : [
  ],
  "manifest_display_name" : "blue-triangle",
  "name" : "blue-triangle",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "ios",
      "version" : "13.0"
    },
    {
      "name" : "tvos",
      "version" : "13.0"
    },
    {
      "name" : "watchos",
      "version" : "6.0"
    },
    {
      "name" : "macos",
      "version" : "10.15"
    }
  ],
  "products" : [
    {
      "name" : "BlueTriangle",
      "targets" : [
        "BlueTriangle"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "ObjcCompatibilityTests",
      "module_type" : "ClangTarget",
      "name" : "ObjcCompatibilityTests",
      "path" : "Tests/ObjcCompatibilityTests",
      "sources" : [
        "ObjcCompatibilityTests.m"
      ],
      "target_dependencies" : [
        "BlueTriangle"
      ],
      "type" : "test"
    },
    {
      "c99name" : "BlueTriangleTests",
      "module_type" : "SwiftTarget",
      "name" : "BlueTriangleTests",
      "path" : "Tests/BlueTriangleTests",
      "sources" : [
        "AnyCodableTests.swift",
        "App/CollectionViewController.swift",
        "App/Extensions/UIColor+Utils.swift",
        "App/ImageCell.swift",
        "App/Models/Album.swift",
        "App/Models/Photo.swift",
        "App/Models/SingleSection.swift",
        "App/Models/ViewState.swift",
        "App/NetworkClientMock.swift",
        "BTTConfigurationFetcherTests.swift",
        "BTTConfigurationRepoTests.swift",
        "BTTConfigurationUpdaterTests.swift",
        "BTTimerTests.swift",
        "BlueTriangleTests.swift",
        "CaptureRateProbabilityTest.swift",
        "CaptureTimerManagerTests.swift",
        "ContentTypeTests.swift",
        "CrashReportManagerTests.swift",
        "DeviceTests.swift",
        "InitiatorTypeTests.swift",
        "Mocks/CaptureTimerManagerMock.swift",
        "Mocks/CapturedRequestCollectorMock.swift",
        "Mocks/CrashReportPersistenceMock.swift",
        "Mocks/LoggerMock.swift",
        "Mocks/Mock.swift",
        "Mocks/MockBTTConfigurationFetcher.swift",
        "Mocks/MockBTTConfigurationRepo.swift",
        "Mocks/MockRemoteConfigURL.swift",
        "Mocks/PerformanceMonitorMock.swift",
        "Mocks/ResourceUsageMock.swift",
        "Mocks/SystemLoggerMock.swift",
        "Mocks/URLProtocolMock.swift",
        "Mocks/UploaderMock.swift",
        "NetworkCaptureDelegateTests.swift",
        "PersistenceTests.swift",
        "RequestCacheTests.swift",
        "RequestCollectionTests.swift",
        "RequestCollectorTests.swift",
        "ResourceUsageTests.swift",
        "TimerRequestBuilderTests.swift",
        "UploaderTests.swift",
        "UtilityTests.swift"
      ],
      "target_dependencies" : [
        "BlueTriangle"
      ],
      "type" : "test"
    },
    {
      "c99name" : "BlueTriangle",
      "module_type" : "SwiftTarget",
      "name" : "BlueTriangle",
      "path" : "Sources/BlueTriangle",
      "product_memberships" : [
        "BlueTriangle"
      ],
      "resources" : [
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/BlueTriangle/PrivacyInfo.xcprivacy",
          "rule" : {
            "copy" : {
            }
          }
        }
      ],
      "sources" : [
        "AppEventObserver.swift",
        "BTLogger.swift",
        "BTSignalCrashReporter.swift",
        "BTTimer.swift",
        "BlueTriangle.swift",
        "BlueTriangleConfiguration.swift",
        "ClaritySupport/ClaritySessionConnector.swift",
        "Constants.swift",
        "CrashReportManager.swift",
        "CrashReportPersistence.swift",
        "Device.swift",
        "DisableModeSessionManager.swift",
        "DynamicConfig/BTTConfigurationFetcher.swift",
        "DynamicConfig/BTTConfigurationRepo.swift",
        "DynamicConfig/BTTConfigurationUpdater.swift",
        "DynamicConfig/BTTRemoteConfig.swift",
        "DynamicConfig/BTTSavedRemoteConfig.swift",
        "DynamicConfig/BTTStoredConfigSyncer.swift",
        "DynamicConfig/RemoteConfigAckReporter.swift",
        "DynamicConfig/SessionStore.swift",
        "Extensions/Array+Vitals.swift",
        "Extensions/Bool+Utils.swift",
        "Extensions/Bundle+Utils.swift",
        "Extensions/Data+Utils.swift",
        "Extensions/Date+Utils.swift",
        "Extensions/HTTPURLResponse+ContentType.swift",
        "Extensions/JSONDecoder+Utils.swift",
        "Extensions/NSException+Utils.swift",
        "Extensions/NSLocking+Utils.swift",
        "Extensions/NSNumber+Utils.swift",
        "Extensions/NWPathMonitor+Combine.swift",
        "Extensions/NotificationName+Platform.swift",
        "Extensions/OperatingSystemVersion+Utils.swift",
        "Extensions/Publisher+Retry.swift",
        "Extensions/Task+Utils.swift",
        "Extensions/TimeInterval+Utils.swift",
        "Extensions/URL+ExpressibleByStringLiteral.swift",
        "Extensions/URLSession+NetworkCapture.swift",
        "Extensions/URLSession+Networking.swift",
        "Extensions/URLSession+Publisher.swift",
        "Extensions/UserDefault+Utils.swift",
        "Identifier.swift",
        "InternalTimer.swift",
        "MetricKit/CrashReportResponse.swift",
        "MetricKit/CrashSignal.swift",
        "MetricKit/DignosticWatchDog.swift",
        "Millisecond.swift",
        "Models/AnyCodable.swift",
        "Models/CapturedRequest.swift",
        "Models/CrashReport.swift",
        "Models/CustomCategories.swift",
        "Models/CustomNumbers.swift",
        "Models/CustomVariables.swift",
        "Models/ErrorReport.swift",
        "Models/NativeAppProperties.swift",
        "Models/Page.swift",
        "Models/PageTimeInterval.swift",
        "Models/PerformanceReport.swift",
        "Models/PurchaseConfirmation.swift",
        "Models/ResourceUsageMeasurement.swift",
        "Models/Session.swift",
        "Models/TimerRequest.swift",
        "NetworkCapture/BTTimerNetStateAccumulator.swift",
        "NetworkCapture/CaptureTimerManager.swift",
        "NetworkCapture/CapturedRequestBuilder.swift",
        "NetworkCapture/CapturedRequestCollector.swift",
        "NetworkCapture/NetworkCaptureConfiguration.swift",
        "NetworkCapture/NetworkCaptureTracker.swift",
        "NetworkCapture/NetworkStateMonitor.swift",
        "NetworkCapture/NetworkTelephonyHandler.swift",
        "NetworkCapture/RequestCollection.swift",
        "NetworkCaptureSessionDelegate.swift",
        "Offline/Payload.swift",
        "Offline/PayloadCache.swift",
        "Persistence/File.swift",
        "Persistence/Persistence.swift",
        "Persistence/PersistenceError.swift",
        "Persistence/UserLocation.swift",
        "Protocols/CaptureTimerManaging.swift",
        "Protocols/CapturedRequestCollecting.swift",
        "Protocols/CrashReportManaging.swift",
        "Protocols/CrashReportPersisting.swift",
        "Protocols/FileLocation.swift",
        "Protocols/Logging.swift",
        "Protocols/PerformanceMonitoring.swift",
        "Protocols/RequestFailureHandling.swift",
        "Protocols/ResourceMeasuring.swift",
        "Protocols/SystemLogging.swift",
        "Protocols/URLRequestConvertible.swift",
        "Protocols/Uploading.swift",
        "Request.swift",
        "RequestCache.swift",
        "RequestFailureHandler.swift",
        "SessionManager.swift",
        "TimerRequestBuilder.swift",
        "Uploader.swift",
        "Version.swift",
        "Vitals/ANR/ANRPerformanceMonitor.swift",
        "Vitals/ANR/ANRTrace/MainThreadStackTraceProvider.swift",
        "Vitals/ANR/ANRWatchDog.swift",
        "Vitals/ANR/MainThreadObserver.swift",
        "Vitals/DispatchSourceTimerPerformanceMonitor.swift",
        "Vitals/DisplayLinkPerformanceMonitor.swift",
        "Vitals/Launch/LaunchTimeMonitor.swift",
        "Vitals/Launch/LaunchTimeReporter.swift",
        "Vitals/Memory/MemoryWarningWatchDog.swift",
        "Vitals/PerformanceMonitorBuilder.swift",
        "Vitals/ResourceUsage.swift",
        "Vitals/RunLoopServices.swift",
        "Vitals/ScreenTracker/BTTScreenLifecycleTracker.swift",
        "Vitals/ScreenTracker/BTTScreenTracker.swift",
        "Vitals/ScreenTracker/BTTWebViewTracker.swift",
        "Vitals/ScreenTracker/ViewControllerLifecycleTracker.swift",
        "Vitals/ScreenTracker/ViewLifecycleTrackerModifier.swift",
        "Vitals/TimerPerformanceMonitor.swift"
      ],
      "target_dependencies" : [
        "Backtrace",
        "AppEventLogger"
      ],
      "type" : "library"
    },
    {
      "c99name" : "Backtrace",
      "module_type" : "ClangTarget",
      "name" : "Backtrace",
      "path" : "Sources/Backtrace",
      "product_memberships" : [
        "BlueTriangle"
      ],
      "sources" : [
        "backtress_extracter.c"
      ],
      "type" : "library"
    },
    {
      "c99name" : "AppEventLogger",
      "module_type" : "ClangTarget",
      "name" : "AppEventLogger",
      "path" : "Sources/AppEventLogger",
      "product_memberships" : [
        "BlueTriangle"
      ],
      "sources" : [
        "AppNotificationLogger.m",
        "NotificationLog.m",
        "SignalHandler.m"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.5"
}
Done.