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 TripKit, reference main (81ba38), with Swift 6.1 for Linux on 10 Sep 2025 01:41:19 UTC.

Swift 6 data race errors: 11

Build Command

bash -c docker run --pull=always --rm -v "checkouts-4609320-2":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/finestructure/spi-images:basic-6.1-latest swift build --triple x86_64-unknown-linux-gnu -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 2>&1

Build Log

    |                     |- note: convert 'modesToGroupInRequest' to a 'let' constant to make 'Sendable' shared state immutable
    |                     |- note: add '@MainActor' to make static property 'modesToGroupInRequest' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 30 |
 31 |   /// Optional server to use instead of ``TKServer/shared``.
/host/spi-builder-workspace/Sources/TripKitAPI/TKRouter.swift:60:28: warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
 58 |   public func cancelRequests() {
 59 |     if let queue = workerQueue {
 60 |       queue.async(execute: cancelRequestsWorker)
    |                            `- warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
 61 |     } else {
 62 |       cancelRequestsWorker()
/host/spi-builder-workspace/Sources/TripKitAPI/TKRouter.swift:107:24: warning: type 'TKAPI.RoutingResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
105 |       }
106 |
107 |       return try await withThrowingTaskGroup(of: TKAPI.RoutingResponse.self) { group in
    |                        `- warning: type 'TKAPI.RoutingResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
108 |         for modeGroup in groupedIdentifier {
109 |           _ = group.addTaskUnlessCancelled {
/host/spi-builder-workspace/Sources/TripKitAPI/model/API/RoutingAPIModel.swift:13:17: note: consider making struct 'RoutingResponse' conform to the 'Sendable' protocol
 11 | extension TKAPI {
 12 |
 13 |   public struct RoutingResponse: Codable {
    |                 `- note: consider making struct 'RoutingResponse' conform to the 'Sendable' protocol
 14 |     public let error: String?
 15 |     public var segmentTemplates: [SegmentTemplate]?
/host/spi-builder-workspace/Sources/TripKitAPI/TKRouter.swift:107:78: warning: type 'TKAPI.RoutingResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
105 |       }
106 |
107 |       return try await withThrowingTaskGroup(of: TKAPI.RoutingResponse.self) { group in
    |                                                                              `- warning: type 'TKAPI.RoutingResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
108 |         for modeGroup in groupedIdentifier {
109 |           _ = group.addTaskUnlessCancelled {
/host/spi-builder-workspace/Sources/TripKitAPI/model/API/RoutingAPIModel.swift:13:17: note: consider making struct 'RoutingResponse' conform to the 'Sendable' protocol
 11 | extension TKAPI {
 12 |
 13 |   public struct RoutingResponse: Codable {
    |                 `- note: consider making struct 'RoutingResponse' conform to the 'Sendable' protocol
 14 |     public let error: String?
 15 |     public var segmentTemplates: [SegmentTemplate]?
/host/spi-builder-workspace/Sources/TripKitAPI/TKRouter.swift:109:21: warning: type 'TKAPI.RoutingResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
107 |       return try await withThrowingTaskGroup(of: TKAPI.RoutingResponse.self) { group in
108 |         for modeGroup in groupedIdentifier {
109 |           _ = group.addTaskUnlessCancelled {
    |                     `- warning: type 'TKAPI.RoutingResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
110 |             try await Self.fetchTripsResponse(
111 |               for: request,
/host/spi-builder-workspace/Sources/TripKitAPI/model/API/RoutingAPIModel.swift:13:17: note: consider making struct 'RoutingResponse' conform to the 'Sendable' protocol
 11 | extension TKAPI {
 12 |
 13 |   public struct RoutingResponse: Codable {
    |                 `- note: consider making struct 'RoutingResponse' conform to the 'Sendable' protocol
 14 |     public let error: String?
 15 |     public var segmentTemplates: [SegmentTemplate]?
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer+Regions.swift:90:42: warning: non-sendable result type 'TKServer.Response<TKAPI.RegionsResponse>' cannot be sent from nonisolated context in call to instance method 'hit(_:_:url:parameters:headers:decoderConfig:)'; this is an error in the Swift 6 language mode
 88 |     }
 89 |
 90 |     let response = await TKServer.shared.hit(TKAPI.RegionsResponse.self, .POST, url: regionsURL, parameters: paras)
    |                                          `- warning: non-sendable result type 'TKServer.Response<TKAPI.RegionsResponse>' cannot be sent from nonisolated context in call to instance method 'hit(_:_:url:parameters:headers:decoderConfig:)'; this is an error in the Swift 6 language mode
 91 |     try Task.checkCancellation()
 92 |
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:266:17: note: consider making generic struct 'Response' conform to the 'Sendable' protocol
264 | extension TKServer {
265 |   /// Captures server response with HTTP status code, headers and typed response
266 |   public struct Response<T> {
    |                 `- note: consider making generic struct 'Response' conform to the 'Sendable' protocol
267 |
268 |     /// HTTP status code of response. Can be `nil` if request failed.
/host/spi-builder-workspace/Sources/TripKitAPI/TKRegionManager.swift:36:10: 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
 34 |   private override init() {
 35 |     super.init()
 36 |     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
 37 |       await loadRegionsFromCache()
    |             `- note: closure captures 'self' which is accessible to code in the current task
 38 |     }
 39 |   }
/host/spi-builder-workspace/Sources/TripKitAPI/TKRouter.swift:109:44: 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
107 |       return try await withThrowingTaskGroup(of: TKAPI.RoutingResponse.self) { group in
108 |         for modeGroup in groupedIdentifier {
109 |           _ = group.addTaskUnlessCancelled {
    |                                            `- 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
110 |             try await Self.fetchTripsResponse(
111 |               for: request,
    :
114 |               additional: request.additional,
115 |               config: config,
116 |               server: server
    |                       `- note: closure captures 'server' which is accessible to code in the current task
117 |             )
118 |           }
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer+Regions.swift:28:10: 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
 26 |   /// - Parameter forced: Set true to force overwriting the internal cache
 27 |   public func updateRegions(forced: Bool = false) {
 28 |     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
 29 |       try? await fetchRegions(forced: forced)
    |                  `- note: closure captures 'self' which is accessible to code in the current task
 30 |     }
 31 |   }
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer+Regions.swift:29:18: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 27 |   public func updateRegions(forced: Bool = false) {
 28 |     Task {
 29 |       try? await fetchRegions(forced: forced)
    |                  |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |                  `- note: sending task-isolated 'self' to main actor-isolated instance method 'fetchRegions(forced:)' risks causing data races between main actor-isolated and task-isolated uses
 30 |     }
 31 |   }
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer+Regions.swift:38:10: 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
 36 |       return completion(.success(()))
 37 |     }
 38 |     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
 39 |       do {
 40 |         try await fetchRegions(forced: false)
    |                   `- note: closure captures 'self' which is accessible to code in the current task
 41 |         completion(.success(()))
 42 |       } catch {
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer+Regions.swift:40:19: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 38 |     Task {
 39 |       do {
 40 |         try await fetchRegions(forced: false)
    |                   |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |                   `- note: sending task-isolated 'self' to main actor-isolated instance method 'fetchRegions(forced:)' risks causing data races between main actor-isolated and task-isolated uses
 41 |         completion(.success(()))
 42 |       } catch {
[15/60] Compiling TripKitAPI TKRegionManager.swift
/host/spi-builder-workspace/Sources/TripKitAPI/TKConfig.swift:14:21: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'TKConfig' may have shared mutable state; this is an error in the Swift 6 language mode
10 |
11 | /// A helper to access `Config.plist` in the main bundle.
12 | public class TKConfig {
   |              `- note: class 'TKConfig' does not conform to the 'Sendable' protocol
13 |
14 |   public static let shared = TKConfig()
   |                     |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'TKConfig' may have shared mutable state; this is an error in the Swift 6 language mode
   |                     |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
   |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
15 |
16 |   private init() {
/host/spi-builder-workspace/Sources/TripKitAPI/TKLog.swift:151:21: warning: static property 'loggers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
149 |   /// By default this is empty, unless TripKit is compiled with
150 |   /// a `BETA` or `DEBUG` Swift flag, then it's a ``TKConsoleLogger`` with a log level of "``LogLevel/warning``".
151 |   public static var loggers: [TKLogger] = {
    |                     |- warning: static property 'loggers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: convert 'loggers' to a 'let' constant to make 'Sendable' shared state immutable
    |                     |- note: add '@MainActor' to make static property 'loggers' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
152 |     #if BETA || DEBUG
153 |     return [TKConsoleLogger(level: .warning)]
/host/spi-builder-workspace/Sources/TripKitAPI/TKRegionManager.swift:22:21: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'TKRegionManager' may have shared mutable state; this is an error in the Swift 6 language mode
 19 | }
 20 |
 21 | public class TKRegionManager: NSObject {
    |              `- note: class 'TKRegionManager' does not conform to the 'Sendable' protocol
 22 |   public static let shared = TKRegionManager()
    |                     |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'TKRegionManager' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 23 |
 24 |   private var response: TKAPI.RegionsResponse? {
/host/spi-builder-workspace/Sources/TripKitAPI/TKRegionManager.swift:44:32: warning: type 'TKAPI.RegionsResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 42 |   public func loadRegionsFromCache() async {
 43 |     do {
 44 |       let response = try await Task<TKAPI.RegionsResponse?, Error>.detached(priority: .utility) {
    |                                `- warning: type 'TKAPI.RegionsResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 45 |         guard let data = TKRegionManager.readLocalCache() else { return nil }
 46 |         return try JSONDecoder().decode(TKAPI.RegionsResponse.self, from: data)
/host/spi-builder-workspace/Sources/TripKitAPI/model/API/RegionsAPIModel.swift:13:17: note: consider making struct 'RegionsResponse' conform to the 'Sendable' protocol
11 | extension TKAPI {
12 |
13 |   public struct RegionsResponse: Codable {
   |                 `- note: consider making struct 'RegionsResponse' conform to the 'Sendable' protocol
14 |     public let modes: [String: ModeDetails]?
15 |     public let regions: [TKRegion]?
/host/spi-builder-workspace/Sources/TripKitAPI/TKRegionManager.swift:44:68: warning: type 'TKAPI.RegionsResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 42 |   public func loadRegionsFromCache() async {
 43 |     do {
 44 |       let response = try await Task<TKAPI.RegionsResponse?, Error>.detached(priority: .utility) {
    |                                                                    `- warning: type 'TKAPI.RegionsResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 45 |         guard let data = TKRegionManager.readLocalCache() else { return nil }
 46 |         return try JSONDecoder().decode(TKAPI.RegionsResponse.self, from: data)
/host/spi-builder-workspace/Sources/TripKitAPI/model/API/RegionsAPIModel.swift:13:17: note: consider making struct 'RegionsResponse' conform to the 'Sendable' protocol
11 | extension TKAPI {
12 |
13 |   public struct RegionsResponse: Codable {
   |                 `- note: consider making struct 'RegionsResponse' conform to the 'Sendable' protocol
14 |     public let modes: [String: ModeDetails]?
15 |     public let regions: [TKRegion]?
/host/spi-builder-workspace/Sources/TripKitAPI/TKRegionManager.swift:47:9: warning: type 'TKAPI.RegionsResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 45 |         guard let data = TKRegionManager.readLocalCache() else { return nil }
 46 |         return try JSONDecoder().decode(TKAPI.RegionsResponse.self, from: data)
 47 |       }.value
    |         `- warning: type 'TKAPI.RegionsResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 48 |       if let response {
 49 |         updateRegions(from: response)
/host/spi-builder-workspace/Sources/TripKitAPI/model/API/RegionsAPIModel.swift:13:17: note: consider making struct 'RegionsResponse' conform to the 'Sendable' protocol
11 | extension TKAPI {
12 |
13 |   public struct RegionsResponse: Codable {
   |                 `- note: consider making struct 'RegionsResponse' conform to the 'Sendable' protocol
14 |     public let modes: [String: ModeDetails]?
15 |     public let regions: [TKRegion]?
/host/spi-builder-workspace/Sources/TripKitAPI/TKRegionManager.swift:44:32: warning: non-sendable type 'Task<TKAPI.RegionsResponse?, any Error>' cannot exit main actor-isolated context in call to nonisolated property 'value'; this is an error in the Swift 6 language mode
 42 |   public func loadRegionsFromCache() async {
 43 |     do {
 44 |       let response = try await Task<TKAPI.RegionsResponse?, Error>.detached(priority: .utility) {
    |                                `- warning: non-sendable type 'Task<TKAPI.RegionsResponse?, any Error>' cannot exit main actor-isolated context in call to nonisolated property 'value'; this is an error in the Swift 6 language mode
 45 |         guard let data = TKRegionManager.readLocalCache() else { return nil }
 46 |         return try JSONDecoder().decode(TKAPI.RegionsResponse.self, from: data)
/host/spi-builder-workspace/Sources/TripKitAPI/model/API/RegionsAPIModel.swift:13:17: note: consider making struct 'RegionsResponse' conform to the 'Sendable' protocol
11 | extension TKAPI {
12 |
13 |   public struct RegionsResponse: Codable {
   |                 `- note: consider making struct 'RegionsResponse' conform to the 'Sendable' protocol
14 |     public let modes: [String: ModeDetails]?
15 |     public let regions: [TKRegion]?
/host/spi-builder-workspace/Sources/TripKitAPI/TKRegionManager.swift:47:9: warning: non-sendable type 'TKAPI.RegionsResponse?' of nonisolated property 'value' cannot be sent to main actor-isolated context; this is an error in the Swift 6 language mode
 45 |         guard let data = TKRegionManager.readLocalCache() else { return nil }
 46 |         return try JSONDecoder().decode(TKAPI.RegionsResponse.self, from: data)
 47 |       }.value
    |         `- warning: non-sendable type 'TKAPI.RegionsResponse?' of nonisolated property 'value' cannot be sent to main actor-isolated context; this is an error in the Swift 6 language mode
 48 |       if let response {
 49 |         updateRegions(from: response)
/host/spi-builder-workspace/Sources/TripKitAPI/model/API/RegionsAPIModel.swift:13:17: note: consider making struct 'RegionsResponse' conform to the 'Sendable' protocol
11 | extension TKAPI {
12 |
13 |   public struct RegionsResponse: Codable {
   |                 `- note: consider making struct 'RegionsResponse' conform to the 'Sendable' protocol
14 |     public let modes: [String: ModeDetails]?
15 |     public let regions: [TKRegion]?
/host/spi-builder-workspace/Sources/TripKitAPI/TKRouter.swift:25:21: warning: static property 'defaultParameters' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 23 |
 24 |   /// Optional parameters to add to routing query. Only used by TripKit.
 25 |   public static var defaultParameters: [URLQueryItem]? = nil
    |                     |- warning: static property 'defaultParameters' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: convert 'defaultParameters' to a 'let' constant to make 'Sendable' shared state immutable
    |                     |- note: add '@MainActor' to make static property 'defaultParameters' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 26 |
 27 |   /// Optional setting to group certain modes always in a single `routing.json` when sending a
/host/spi-builder-workspace/Sources/TripKitAPI/TKRouter.swift:29:21: warning: static property 'modesToGroupInRequest' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 27 |   /// Optional setting to group certain modes always in a single `routing.json` when sending a
 28 |   /// multi-fetch request.
 29 |   public static var modesToGroupInRequest: [String]? = nil
    |                     |- warning: static property 'modesToGroupInRequest' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: convert 'modesToGroupInRequest' to a 'let' constant to make 'Sendable' shared state immutable
    |                     |- note: add '@MainActor' to make static property 'modesToGroupInRequest' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 30 |
 31 |   /// Optional server to use instead of ``TKServer/shared``.
/host/spi-builder-workspace/Sources/TripKitAPI/TKRouter.swift:60:28: warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
 58 |   public func cancelRequests() {
 59 |     if let queue = workerQueue {
 60 |       queue.async(execute: cancelRequestsWorker)
    |                            `- warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
 61 |     } else {
 62 |       cancelRequestsWorker()
/host/spi-builder-workspace/Sources/TripKitAPI/TKRouter.swift:107:24: warning: type 'TKAPI.RoutingResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
105 |       }
106 |
107 |       return try await withThrowingTaskGroup(of: TKAPI.RoutingResponse.self) { group in
    |                        `- warning: type 'TKAPI.RoutingResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
108 |         for modeGroup in groupedIdentifier {
109 |           _ = group.addTaskUnlessCancelled {
/host/spi-builder-workspace/Sources/TripKitAPI/model/API/RoutingAPIModel.swift:13:17: note: consider making struct 'RoutingResponse' conform to the 'Sendable' protocol
 11 | extension TKAPI {
 12 |
 13 |   public struct RoutingResponse: Codable {
    |                 `- note: consider making struct 'RoutingResponse' conform to the 'Sendable' protocol
 14 |     public let error: String?
 15 |     public var segmentTemplates: [SegmentTemplate]?
/host/spi-builder-workspace/Sources/TripKitAPI/TKRouter.swift:107:78: warning: type 'TKAPI.RoutingResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
105 |       }
106 |
107 |       return try await withThrowingTaskGroup(of: TKAPI.RoutingResponse.self) { group in
    |                                                                              `- warning: type 'TKAPI.RoutingResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
108 |         for modeGroup in groupedIdentifier {
109 |           _ = group.addTaskUnlessCancelled {
/host/spi-builder-workspace/Sources/TripKitAPI/model/API/RoutingAPIModel.swift:13:17: note: consider making struct 'RoutingResponse' conform to the 'Sendable' protocol
 11 | extension TKAPI {
 12 |
 13 |   public struct RoutingResponse: Codable {
    |                 `- note: consider making struct 'RoutingResponse' conform to the 'Sendable' protocol
 14 |     public let error: String?
 15 |     public var segmentTemplates: [SegmentTemplate]?
/host/spi-builder-workspace/Sources/TripKitAPI/TKRouter.swift:109:21: warning: type 'TKAPI.RoutingResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
107 |       return try await withThrowingTaskGroup(of: TKAPI.RoutingResponse.self) { group in
108 |         for modeGroup in groupedIdentifier {
109 |           _ = group.addTaskUnlessCancelled {
    |                     `- warning: type 'TKAPI.RoutingResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
110 |             try await Self.fetchTripsResponse(
111 |               for: request,
/host/spi-builder-workspace/Sources/TripKitAPI/model/API/RoutingAPIModel.swift:13:17: note: consider making struct 'RoutingResponse' conform to the 'Sendable' protocol
 11 | extension TKAPI {
 12 |
 13 |   public struct RoutingResponse: Codable {
    |                 `- note: consider making struct 'RoutingResponse' conform to the 'Sendable' protocol
 14 |     public let error: String?
 15 |     public var segmentTemplates: [SegmentTemplate]?
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer+Regions.swift:90:42: warning: non-sendable result type 'TKServer.Response<TKAPI.RegionsResponse>' cannot be sent from nonisolated context in call to instance method 'hit(_:_:url:parameters:headers:decoderConfig:)'; this is an error in the Swift 6 language mode
 88 |     }
 89 |
 90 |     let response = await TKServer.shared.hit(TKAPI.RegionsResponse.self, .POST, url: regionsURL, parameters: paras)
    |                                          `- warning: non-sendable result type 'TKServer.Response<TKAPI.RegionsResponse>' cannot be sent from nonisolated context in call to instance method 'hit(_:_:url:parameters:headers:decoderConfig:)'; this is an error in the Swift 6 language mode
 91 |     try Task.checkCancellation()
 92 |
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:266:17: note: consider making generic struct 'Response' conform to the 'Sendable' protocol
264 | extension TKServer {
265 |   /// Captures server response with HTTP status code, headers and typed response
266 |   public struct Response<T> {
    |                 `- note: consider making generic struct 'Response' conform to the 'Sendable' protocol
267 |
268 |     /// HTTP status code of response. Can be `nil` if request failed.
/host/spi-builder-workspace/Sources/TripKitAPI/TKRegionManager.swift:36:10: 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
 34 |   private override init() {
 35 |     super.init()
 36 |     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
 37 |       await loadRegionsFromCache()
    |             `- note: closure captures 'self' which is accessible to code in the current task
 38 |     }
 39 |   }
/host/spi-builder-workspace/Sources/TripKitAPI/TKRouter.swift:109:44: 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
107 |       return try await withThrowingTaskGroup(of: TKAPI.RoutingResponse.self) { group in
108 |         for modeGroup in groupedIdentifier {
109 |           _ = group.addTaskUnlessCancelled {
    |                                            `- 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
110 |             try await Self.fetchTripsResponse(
111 |               for: request,
    :
114 |               additional: request.additional,
115 |               config: config,
116 |               server: server
    |                       `- note: closure captures 'server' which is accessible to code in the current task
117 |             )
118 |           }
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer+Regions.swift:28:10: 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
 26 |   /// - Parameter forced: Set true to force overwriting the internal cache
 27 |   public func updateRegions(forced: Bool = false) {
 28 |     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
 29 |       try? await fetchRegions(forced: forced)
    |                  `- note: closure captures 'self' which is accessible to code in the current task
 30 |     }
 31 |   }
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer+Regions.swift:29:18: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 27 |   public func updateRegions(forced: Bool = false) {
 28 |     Task {
 29 |       try? await fetchRegions(forced: forced)
    |                  |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |                  `- note: sending task-isolated 'self' to main actor-isolated instance method 'fetchRegions(forced:)' risks causing data races between main actor-isolated and task-isolated uses
 30 |     }
 31 |   }
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer+Regions.swift:38:10: 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
 36 |       return completion(.success(()))
 37 |     }
 38 |     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
 39 |       do {
 40 |         try await fetchRegions(forced: false)
    |                   `- note: closure captures 'self' which is accessible to code in the current task
 41 |         completion(.success(()))
 42 |       } catch {
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer+Regions.swift:40:19: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 38 |     Task {
 39 |       do {
 40 |         try await fetchRegions(forced: false)
    |                   |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |                   `- note: sending task-isolated 'self' to main actor-isolated instance method 'fetchRegions(forced:)' risks causing data races between main actor-isolated and task-isolated uses
 41 |         completion(.success(()))
 42 |       } catch {
[16/60] Compiling TripKitAPI TKRouter.swift
/host/spi-builder-workspace/Sources/TripKitAPI/TKConfig.swift:14:21: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'TKConfig' may have shared mutable state; this is an error in the Swift 6 language mode
10 |
11 | /// A helper to access `Config.plist` in the main bundle.
12 | public class TKConfig {
   |              `- note: class 'TKConfig' does not conform to the 'Sendable' protocol
13 |
14 |   public static let shared = TKConfig()
   |                     |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'TKConfig' may have shared mutable state; this is an error in the Swift 6 language mode
   |                     |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
   |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
15 |
16 |   private init() {
/host/spi-builder-workspace/Sources/TripKitAPI/TKLog.swift:151:21: warning: static property 'loggers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
149 |   /// By default this is empty, unless TripKit is compiled with
150 |   /// a `BETA` or `DEBUG` Swift flag, then it's a ``TKConsoleLogger`` with a log level of "``LogLevel/warning``".
151 |   public static var loggers: [TKLogger] = {
    |                     |- warning: static property 'loggers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: convert 'loggers' to a 'let' constant to make 'Sendable' shared state immutable
    |                     |- note: add '@MainActor' to make static property 'loggers' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
152 |     #if BETA || DEBUG
153 |     return [TKConsoleLogger(level: .warning)]
/host/spi-builder-workspace/Sources/TripKitAPI/TKRegionManager.swift:22:21: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'TKRegionManager' may have shared mutable state; this is an error in the Swift 6 language mode
 19 | }
 20 |
 21 | public class TKRegionManager: NSObject {
    |              `- note: class 'TKRegionManager' does not conform to the 'Sendable' protocol
 22 |   public static let shared = TKRegionManager()
    |                     |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'TKRegionManager' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 23 |
 24 |   private var response: TKAPI.RegionsResponse? {
/host/spi-builder-workspace/Sources/TripKitAPI/TKRegionManager.swift:44:32: warning: type 'TKAPI.RegionsResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 42 |   public func loadRegionsFromCache() async {
 43 |     do {
 44 |       let response = try await Task<TKAPI.RegionsResponse?, Error>.detached(priority: .utility) {
    |                                `- warning: type 'TKAPI.RegionsResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 45 |         guard let data = TKRegionManager.readLocalCache() else { return nil }
 46 |         return try JSONDecoder().decode(TKAPI.RegionsResponse.self, from: data)
/host/spi-builder-workspace/Sources/TripKitAPI/model/API/RegionsAPIModel.swift:13:17: note: consider making struct 'RegionsResponse' conform to the 'Sendable' protocol
11 | extension TKAPI {
12 |
13 |   public struct RegionsResponse: Codable {
   |                 `- note: consider making struct 'RegionsResponse' conform to the 'Sendable' protocol
14 |     public let modes: [String: ModeDetails]?
15 |     public let regions: [TKRegion]?
/host/spi-builder-workspace/Sources/TripKitAPI/TKRegionManager.swift:44:68: warning: type 'TKAPI.RegionsResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 42 |   public func loadRegionsFromCache() async {
 43 |     do {
 44 |       let response = try await Task<TKAPI.RegionsResponse?, Error>.detached(priority: .utility) {
    |                                                                    `- warning: type 'TKAPI.RegionsResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 45 |         guard let data = TKRegionManager.readLocalCache() else { return nil }
 46 |         return try JSONDecoder().decode(TKAPI.RegionsResponse.self, from: data)
/host/spi-builder-workspace/Sources/TripKitAPI/model/API/RegionsAPIModel.swift:13:17: note: consider making struct 'RegionsResponse' conform to the 'Sendable' protocol
11 | extension TKAPI {
12 |
13 |   public struct RegionsResponse: Codable {
   |                 `- note: consider making struct 'RegionsResponse' conform to the 'Sendable' protocol
14 |     public let modes: [String: ModeDetails]?
15 |     public let regions: [TKRegion]?
/host/spi-builder-workspace/Sources/TripKitAPI/TKRegionManager.swift:47:9: warning: type 'TKAPI.RegionsResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 45 |         guard let data = TKRegionManager.readLocalCache() else { return nil }
 46 |         return try JSONDecoder().decode(TKAPI.RegionsResponse.self, from: data)
 47 |       }.value
    |         `- warning: type 'TKAPI.RegionsResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 48 |       if let response {
 49 |         updateRegions(from: response)
/host/spi-builder-workspace/Sources/TripKitAPI/model/API/RegionsAPIModel.swift:13:17: note: consider making struct 'RegionsResponse' conform to the 'Sendable' protocol
11 | extension TKAPI {
12 |
13 |   public struct RegionsResponse: Codable {
   |                 `- note: consider making struct 'RegionsResponse' conform to the 'Sendable' protocol
14 |     public let modes: [String: ModeDetails]?
15 |     public let regions: [TKRegion]?
/host/spi-builder-workspace/Sources/TripKitAPI/TKRegionManager.swift:44:32: warning: non-sendable type 'Task<TKAPI.RegionsResponse?, any Error>' cannot exit main actor-isolated context in call to nonisolated property 'value'; this is an error in the Swift 6 language mode
 42 |   public func loadRegionsFromCache() async {
 43 |     do {
 44 |       let response = try await Task<TKAPI.RegionsResponse?, Error>.detached(priority: .utility) {
    |                                `- warning: non-sendable type 'Task<TKAPI.RegionsResponse?, any Error>' cannot exit main actor-isolated context in call to nonisolated property 'value'; this is an error in the Swift 6 language mode
 45 |         guard let data = TKRegionManager.readLocalCache() else { return nil }
 46 |         return try JSONDecoder().decode(TKAPI.RegionsResponse.self, from: data)
/host/spi-builder-workspace/Sources/TripKitAPI/model/API/RegionsAPIModel.swift:13:17: note: consider making struct 'RegionsResponse' conform to the 'Sendable' protocol
11 | extension TKAPI {
12 |
13 |   public struct RegionsResponse: Codable {
   |                 `- note: consider making struct 'RegionsResponse' conform to the 'Sendable' protocol
14 |     public let modes: [String: ModeDetails]?
15 |     public let regions: [TKRegion]?
/host/spi-builder-workspace/Sources/TripKitAPI/TKRegionManager.swift:47:9: warning: non-sendable type 'TKAPI.RegionsResponse?' of nonisolated property 'value' cannot be sent to main actor-isolated context; this is an error in the Swift 6 language mode
 45 |         guard let data = TKRegionManager.readLocalCache() else { return nil }
 46 |         return try JSONDecoder().decode(TKAPI.RegionsResponse.self, from: data)
 47 |       }.value
    |         `- warning: non-sendable type 'TKAPI.RegionsResponse?' of nonisolated property 'value' cannot be sent to main actor-isolated context; this is an error in the Swift 6 language mode
 48 |       if let response {
 49 |         updateRegions(from: response)
/host/spi-builder-workspace/Sources/TripKitAPI/model/API/RegionsAPIModel.swift:13:17: note: consider making struct 'RegionsResponse' conform to the 'Sendable' protocol
11 | extension TKAPI {
12 |
13 |   public struct RegionsResponse: Codable {
   |                 `- note: consider making struct 'RegionsResponse' conform to the 'Sendable' protocol
14 |     public let modes: [String: ModeDetails]?
15 |     public let regions: [TKRegion]?
/host/spi-builder-workspace/Sources/TripKitAPI/TKRouter.swift:25:21: warning: static property 'defaultParameters' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 23 |
 24 |   /// Optional parameters to add to routing query. Only used by TripKit.
 25 |   public static var defaultParameters: [URLQueryItem]? = nil
    |                     |- warning: static property 'defaultParameters' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: convert 'defaultParameters' to a 'let' constant to make 'Sendable' shared state immutable
    |                     |- note: add '@MainActor' to make static property 'defaultParameters' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 26 |
 27 |   /// Optional setting to group certain modes always in a single `routing.json` when sending a
/host/spi-builder-workspace/Sources/TripKitAPI/TKRouter.swift:29:21: warning: static property 'modesToGroupInRequest' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 27 |   /// Optional setting to group certain modes always in a single `routing.json` when sending a
 28 |   /// multi-fetch request.
 29 |   public static var modesToGroupInRequest: [String]? = nil
    |                     |- warning: static property 'modesToGroupInRequest' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: convert 'modesToGroupInRequest' to a 'let' constant to make 'Sendable' shared state immutable
    |                     |- note: add '@MainActor' to make static property 'modesToGroupInRequest' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 30 |
 31 |   /// Optional server to use instead of ``TKServer/shared``.
/host/spi-builder-workspace/Sources/TripKitAPI/TKRouter.swift:60:28: warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
 58 |   public func cancelRequests() {
 59 |     if let queue = workerQueue {
 60 |       queue.async(execute: cancelRequestsWorker)
    |                            `- warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
 61 |     } else {
 62 |       cancelRequestsWorker()
/host/spi-builder-workspace/Sources/TripKitAPI/TKRouter.swift:107:24: warning: type 'TKAPI.RoutingResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
105 |       }
106 |
107 |       return try await withThrowingTaskGroup(of: TKAPI.RoutingResponse.self) { group in
    |                        `- warning: type 'TKAPI.RoutingResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
108 |         for modeGroup in groupedIdentifier {
109 |           _ = group.addTaskUnlessCancelled {
/host/spi-builder-workspace/Sources/TripKitAPI/model/API/RoutingAPIModel.swift:13:17: note: consider making struct 'RoutingResponse' conform to the 'Sendable' protocol
 11 | extension TKAPI {
 12 |
 13 |   public struct RoutingResponse: Codable {
    |                 `- note: consider making struct 'RoutingResponse' conform to the 'Sendable' protocol
 14 |     public let error: String?
 15 |     public var segmentTemplates: [SegmentTemplate]?
/host/spi-builder-workspace/Sources/TripKitAPI/TKRouter.swift:107:78: warning: type 'TKAPI.RoutingResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
105 |       }
106 |
107 |       return try await withThrowingTaskGroup(of: TKAPI.RoutingResponse.self) { group in
    |                                                                              `- warning: type 'TKAPI.RoutingResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
108 |         for modeGroup in groupedIdentifier {
109 |           _ = group.addTaskUnlessCancelled {
/host/spi-builder-workspace/Sources/TripKitAPI/model/API/RoutingAPIModel.swift:13:17: note: consider making struct 'RoutingResponse' conform to the 'Sendable' protocol
 11 | extension TKAPI {
 12 |
 13 |   public struct RoutingResponse: Codable {
    |                 `- note: consider making struct 'RoutingResponse' conform to the 'Sendable' protocol
 14 |     public let error: String?
 15 |     public var segmentTemplates: [SegmentTemplate]?
/host/spi-builder-workspace/Sources/TripKitAPI/TKRouter.swift:109:21: warning: type 'TKAPI.RoutingResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
107 |       return try await withThrowingTaskGroup(of: TKAPI.RoutingResponse.self) { group in
108 |         for modeGroup in groupedIdentifier {
109 |           _ = group.addTaskUnlessCancelled {
    |                     `- warning: type 'TKAPI.RoutingResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
110 |             try await Self.fetchTripsResponse(
111 |               for: request,
/host/spi-builder-workspace/Sources/TripKitAPI/model/API/RoutingAPIModel.swift:13:17: note: consider making struct 'RoutingResponse' conform to the 'Sendable' protocol
 11 | extension TKAPI {
 12 |
 13 |   public struct RoutingResponse: Codable {
    |                 `- note: consider making struct 'RoutingResponse' conform to the 'Sendable' protocol
 14 |     public let error: String?
 15 |     public var segmentTemplates: [SegmentTemplate]?
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer+Regions.swift:90:42: warning: non-sendable result type 'TKServer.Response<TKAPI.RegionsResponse>' cannot be sent from nonisolated context in call to instance method 'hit(_:_:url:parameters:headers:decoderConfig:)'; this is an error in the Swift 6 language mode
 88 |     }
 89 |
 90 |     let response = await TKServer.shared.hit(TKAPI.RegionsResponse.self, .POST, url: regionsURL, parameters: paras)
    |                                          `- warning: non-sendable result type 'TKServer.Response<TKAPI.RegionsResponse>' cannot be sent from nonisolated context in call to instance method 'hit(_:_:url:parameters:headers:decoderConfig:)'; this is an error in the Swift 6 language mode
 91 |     try Task.checkCancellation()
 92 |
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:266:17: note: consider making generic struct 'Response' conform to the 'Sendable' protocol
264 | extension TKServer {
265 |   /// Captures server response with HTTP status code, headers and typed response
266 |   public struct Response<T> {
    |                 `- note: consider making generic struct 'Response' conform to the 'Sendable' protocol
267 |
268 |     /// HTTP status code of response. Can be `nil` if request failed.
/host/spi-builder-workspace/Sources/TripKitAPI/TKRegionManager.swift:36:10: 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
 34 |   private override init() {
 35 |     super.init()
 36 |     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
 37 |       await loadRegionsFromCache()
    |             `- note: closure captures 'self' which is accessible to code in the current task
 38 |     }
 39 |   }
/host/spi-builder-workspace/Sources/TripKitAPI/TKRouter.swift:109:44: 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
107 |       return try await withThrowingTaskGroup(of: TKAPI.RoutingResponse.self) { group in
108 |         for modeGroup in groupedIdentifier {
109 |           _ = group.addTaskUnlessCancelled {
    |                                            `- 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
110 |             try await Self.fetchTripsResponse(
111 |               for: request,
    :
114 |               additional: request.additional,
115 |               config: config,
116 |               server: server
    |                       `- note: closure captures 'server' which is accessible to code in the current task
117 |             )
118 |           }
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer+Regions.swift:28:10: 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
 26 |   /// - Parameter forced: Set true to force overwriting the internal cache
 27 |   public func updateRegions(forced: Bool = false) {
 28 |     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
 29 |       try? await fetchRegions(forced: forced)
    |                  `- note: closure captures 'self' which is accessible to code in the current task
 30 |     }
 31 |   }
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer+Regions.swift:29:18: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 27 |   public func updateRegions(forced: Bool = false) {
 28 |     Task {
 29 |       try? await fetchRegions(forced: forced)
    |                  |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |                  `- note: sending task-isolated 'self' to main actor-isolated instance method 'fetchRegions(forced:)' risks causing data races between main actor-isolated and task-isolated uses
 30 |     }
 31 |   }
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer+Regions.swift:38:10: 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
 36 |       return completion(.success(()))
 37 |     }
 38 |     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
 39 |       do {
 40 |         try await fetchRegions(forced: false)
    |                   `- note: closure captures 'self' which is accessible to code in the current task
 41 |         completion(.success(()))
 42 |       } catch {
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer+Regions.swift:40:19: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 38 |     Task {
 39 |       do {
 40 |         try await fetchRegions(forced: false)
    |                   |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |                   `- note: sending task-isolated 'self' to main actor-isolated instance method 'fetchRegions(forced:)' risks causing data races between main actor-isolated and task-isolated uses
 41 |         completion(.success(()))
 42 |       } catch {
[17/60] Compiling TripKitAPI TKRoutingServer.swift
/host/spi-builder-workspace/Sources/TripKitAPI/TKConfig.swift:14:21: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'TKConfig' may have shared mutable state; this is an error in the Swift 6 language mode
10 |
11 | /// A helper to access `Config.plist` in the main bundle.
12 | public class TKConfig {
   |              `- note: class 'TKConfig' does not conform to the 'Sendable' protocol
13 |
14 |   public static let shared = TKConfig()
   |                     |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'TKConfig' may have shared mutable state; this is an error in the Swift 6 language mode
   |                     |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
   |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
15 |
16 |   private init() {
/host/spi-builder-workspace/Sources/TripKitAPI/TKLog.swift:151:21: warning: static property 'loggers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
149 |   /// By default this is empty, unless TripKit is compiled with
150 |   /// a `BETA` or `DEBUG` Swift flag, then it's a ``TKConsoleLogger`` with a log level of "``LogLevel/warning``".
151 |   public static var loggers: [TKLogger] = {
    |                     |- warning: static property 'loggers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: convert 'loggers' to a 'let' constant to make 'Sendable' shared state immutable
    |                     |- note: add '@MainActor' to make static property 'loggers' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
152 |     #if BETA || DEBUG
153 |     return [TKConsoleLogger(level: .warning)]
/host/spi-builder-workspace/Sources/TripKitAPI/TKRegionManager.swift:22:21: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'TKRegionManager' may have shared mutable state; this is an error in the Swift 6 language mode
 19 | }
 20 |
 21 | public class TKRegionManager: NSObject {
    |              `- note: class 'TKRegionManager' does not conform to the 'Sendable' protocol
 22 |   public static let shared = TKRegionManager()
    |                     |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'TKRegionManager' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 23 |
 24 |   private var response: TKAPI.RegionsResponse? {
/host/spi-builder-workspace/Sources/TripKitAPI/TKRegionManager.swift:44:32: warning: type 'TKAPI.RegionsResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 42 |   public func loadRegionsFromCache() async {
 43 |     do {
 44 |       let response = try await Task<TKAPI.RegionsResponse?, Error>.detached(priority: .utility) {
    |                                `- warning: type 'TKAPI.RegionsResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 45 |         guard let data = TKRegionManager.readLocalCache() else { return nil }
 46 |         return try JSONDecoder().decode(TKAPI.RegionsResponse.self, from: data)
/host/spi-builder-workspace/Sources/TripKitAPI/model/API/RegionsAPIModel.swift:13:17: note: consider making struct 'RegionsResponse' conform to the 'Sendable' protocol
11 | extension TKAPI {
12 |
13 |   public struct RegionsResponse: Codable {
   |                 `- note: consider making struct 'RegionsResponse' conform to the 'Sendable' protocol
14 |     public let modes: [String: ModeDetails]?
15 |     public let regions: [TKRegion]?
/host/spi-builder-workspace/Sources/TripKitAPI/TKRegionManager.swift:44:68: warning: type 'TKAPI.RegionsResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 42 |   public func loadRegionsFromCache() async {
 43 |     do {
 44 |       let response = try await Task<TKAPI.RegionsResponse?, Error>.detached(priority: .utility) {
    |                                                                    `- warning: type 'TKAPI.RegionsResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 45 |         guard let data = TKRegionManager.readLocalCache() else { return nil }
 46 |         return try JSONDecoder().decode(TKAPI.RegionsResponse.self, from: data)
/host/spi-builder-workspace/Sources/TripKitAPI/model/API/RegionsAPIModel.swift:13:17: note: consider making struct 'RegionsResponse' conform to the 'Sendable' protocol
11 | extension TKAPI {
12 |
13 |   public struct RegionsResponse: Codable {
   |                 `- note: consider making struct 'RegionsResponse' conform to the 'Sendable' protocol
14 |     public let modes: [String: ModeDetails]?
15 |     public let regions: [TKRegion]?
/host/spi-builder-workspace/Sources/TripKitAPI/TKRegionManager.swift:47:9: warning: type 'TKAPI.RegionsResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 45 |         guard let data = TKRegionManager.readLocalCache() else { return nil }
 46 |         return try JSONDecoder().decode(TKAPI.RegionsResponse.self, from: data)
 47 |       }.value
    |         `- warning: type 'TKAPI.RegionsResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 48 |       if let response {
 49 |         updateRegions(from: response)
/host/spi-builder-workspace/Sources/TripKitAPI/model/API/RegionsAPIModel.swift:13:17: note: consider making struct 'RegionsResponse' conform to the 'Sendable' protocol
11 | extension TKAPI {
12 |
13 |   public struct RegionsResponse: Codable {
   |                 `- note: consider making struct 'RegionsResponse' conform to the 'Sendable' protocol
14 |     public let modes: [String: ModeDetails]?
15 |     public let regions: [TKRegion]?
/host/spi-builder-workspace/Sources/TripKitAPI/TKRegionManager.swift:44:32: warning: non-sendable type 'Task<TKAPI.RegionsResponse?, any Error>' cannot exit main actor-isolated context in call to nonisolated property 'value'; this is an error in the Swift 6 language mode
 42 |   public func loadRegionsFromCache() async {
 43 |     do {
 44 |       let response = try await Task<TKAPI.RegionsResponse?, Error>.detached(priority: .utility) {
    |                                `- warning: non-sendable type 'Task<TKAPI.RegionsResponse?, any Error>' cannot exit main actor-isolated context in call to nonisolated property 'value'; this is an error in the Swift 6 language mode
 45 |         guard let data = TKRegionManager.readLocalCache() else { return nil }
 46 |         return try JSONDecoder().decode(TKAPI.RegionsResponse.self, from: data)
/host/spi-builder-workspace/Sources/TripKitAPI/model/API/RegionsAPIModel.swift:13:17: note: consider making struct 'RegionsResponse' conform to the 'Sendable' protocol
11 | extension TKAPI {
12 |
13 |   public struct RegionsResponse: Codable {
   |                 `- note: consider making struct 'RegionsResponse' conform to the 'Sendable' protocol
14 |     public let modes: [String: ModeDetails]?
15 |     public let regions: [TKRegion]?
/host/spi-builder-workspace/Sources/TripKitAPI/TKRegionManager.swift:47:9: warning: non-sendable type 'TKAPI.RegionsResponse?' of nonisolated property 'value' cannot be sent to main actor-isolated context; this is an error in the Swift 6 language mode
 45 |         guard let data = TKRegionManager.readLocalCache() else { return nil }
 46 |         return try JSONDecoder().decode(TKAPI.RegionsResponse.self, from: data)
 47 |       }.value
    |         `- warning: non-sendable type 'TKAPI.RegionsResponse?' of nonisolated property 'value' cannot be sent to main actor-isolated context; this is an error in the Swift 6 language mode
 48 |       if let response {
 49 |         updateRegions(from: response)
/host/spi-builder-workspace/Sources/TripKitAPI/model/API/RegionsAPIModel.swift:13:17: note: consider making struct 'RegionsResponse' conform to the 'Sendable' protocol
11 | extension TKAPI {
12 |
13 |   public struct RegionsResponse: Codable {
   |                 `- note: consider making struct 'RegionsResponse' conform to the 'Sendable' protocol
14 |     public let modes: [String: ModeDetails]?
15 |     public let regions: [TKRegion]?
/host/spi-builder-workspace/Sources/TripKitAPI/TKRouter.swift:25:21: warning: static property 'defaultParameters' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 23 |
 24 |   /// Optional parameters to add to routing query. Only used by TripKit.
 25 |   public static var defaultParameters: [URLQueryItem]? = nil
    |                     |- warning: static property 'defaultParameters' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: convert 'defaultParameters' to a 'let' constant to make 'Sendable' shared state immutable
    |                     |- note: add '@MainActor' to make static property 'defaultParameters' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 26 |
 27 |   /// Optional setting to group certain modes always in a single `routing.json` when sending a
/host/spi-builder-workspace/Sources/TripKitAPI/TKRouter.swift:29:21: warning: static property 'modesToGroupInRequest' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 27 |   /// Optional setting to group certain modes always in a single `routing.json` when sending a
 28 |   /// multi-fetch request.
 29 |   public static var modesToGroupInRequest: [String]? = nil
    |                     |- warning: static property 'modesToGroupInRequest' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: convert 'modesToGroupInRequest' to a 'let' constant to make 'Sendable' shared state immutable
    |                     |- note: add '@MainActor' to make static property 'modesToGroupInRequest' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 30 |
 31 |   /// Optional server to use instead of ``TKServer/shared``.
/host/spi-builder-workspace/Sources/TripKitAPI/TKRouter.swift:60:28: warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
 58 |   public func cancelRequests() {
 59 |     if let queue = workerQueue {
 60 |       queue.async(execute: cancelRequestsWorker)
    |                            `- warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
 61 |     } else {
 62 |       cancelRequestsWorker()
/host/spi-builder-workspace/Sources/TripKitAPI/TKRouter.swift:107:24: warning: type 'TKAPI.RoutingResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
105 |       }
106 |
107 |       return try await withThrowingTaskGroup(of: TKAPI.RoutingResponse.self) { group in
    |                        `- warning: type 'TKAPI.RoutingResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
108 |         for modeGroup in groupedIdentifier {
109 |           _ = group.addTaskUnlessCancelled {
/host/spi-builder-workspace/Sources/TripKitAPI/model/API/RoutingAPIModel.swift:13:17: note: consider making struct 'RoutingResponse' conform to the 'Sendable' protocol
 11 | extension TKAPI {
 12 |
 13 |   public struct RoutingResponse: Codable {
    |                 `- note: consider making struct 'RoutingResponse' conform to the 'Sendable' protocol
 14 |     public let error: String?
 15 |     public var segmentTemplates: [SegmentTemplate]?
/host/spi-builder-workspace/Sources/TripKitAPI/TKRouter.swift:107:78: warning: type 'TKAPI.RoutingResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
105 |       }
106 |
107 |       return try await withThrowingTaskGroup(of: TKAPI.RoutingResponse.self) { group in
    |                                                                              `- warning: type 'TKAPI.RoutingResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
108 |         for modeGroup in groupedIdentifier {
109 |           _ = group.addTaskUnlessCancelled {
/host/spi-builder-workspace/Sources/TripKitAPI/model/API/RoutingAPIModel.swift:13:17: note: consider making struct 'RoutingResponse' conform to the 'Sendable' protocol
 11 | extension TKAPI {
 12 |
 13 |   public struct RoutingResponse: Codable {
    |                 `- note: consider making struct 'RoutingResponse' conform to the 'Sendable' protocol
 14 |     public let error: String?
 15 |     public var segmentTemplates: [SegmentTemplate]?
/host/spi-builder-workspace/Sources/TripKitAPI/TKRouter.swift:109:21: warning: type 'TKAPI.RoutingResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
107 |       return try await withThrowingTaskGroup(of: TKAPI.RoutingResponse.self) { group in
108 |         for modeGroup in groupedIdentifier {
109 |           _ = group.addTaskUnlessCancelled {
    |                     `- warning: type 'TKAPI.RoutingResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
110 |             try await Self.fetchTripsResponse(
111 |               for: request,
/host/spi-builder-workspace/Sources/TripKitAPI/model/API/RoutingAPIModel.swift:13:17: note: consider making struct 'RoutingResponse' conform to the 'Sendable' protocol
 11 | extension TKAPI {
 12 |
 13 |   public struct RoutingResponse: Codable {
    |                 `- note: consider making struct 'RoutingResponse' conform to the 'Sendable' protocol
 14 |     public let error: String?
 15 |     public var segmentTemplates: [SegmentTemplate]?
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer+Regions.swift:90:42: warning: non-sendable result type 'TKServer.Response<TKAPI.RegionsResponse>' cannot be sent from nonisolated context in call to instance method 'hit(_:_:url:parameters:headers:decoderConfig:)'; this is an error in the Swift 6 language mode
 88 |     }
 89 |
 90 |     let response = await TKServer.shared.hit(TKAPI.RegionsResponse.self, .POST, url: regionsURL, parameters: paras)
    |                                          `- warning: non-sendable result type 'TKServer.Response<TKAPI.RegionsResponse>' cannot be sent from nonisolated context in call to instance method 'hit(_:_:url:parameters:headers:decoderConfig:)'; this is an error in the Swift 6 language mode
 91 |     try Task.checkCancellation()
 92 |
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:266:17: note: consider making generic struct 'Response' conform to the 'Sendable' protocol
264 | extension TKServer {
265 |   /// Captures server response with HTTP status code, headers and typed response
266 |   public struct Response<T> {
    |                 `- note: consider making generic struct 'Response' conform to the 'Sendable' protocol
267 |
268 |     /// HTTP status code of response. Can be `nil` if request failed.
/host/spi-builder-workspace/Sources/TripKitAPI/TKRegionManager.swift:36:10: 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
 34 |   private override init() {
 35 |     super.init()
 36 |     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
 37 |       await loadRegionsFromCache()
    |             `- note: closure captures 'self' which is accessible to code in the current task
 38 |     }
 39 |   }
/host/spi-builder-workspace/Sources/TripKitAPI/TKRouter.swift:109:44: 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
107 |       return try await withThrowingTaskGroup(of: TKAPI.RoutingResponse.self) { group in
108 |         for modeGroup in groupedIdentifier {
109 |           _ = group.addTaskUnlessCancelled {
    |                                            `- 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
110 |             try await Self.fetchTripsResponse(
111 |               for: request,
    :
114 |               additional: request.additional,
115 |               config: config,
116 |               server: server
    |                       `- note: closure captures 'server' which is accessible to code in the current task
117 |             )
118 |           }
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer+Regions.swift:28:10: 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
 26 |   /// - Parameter forced: Set true to force overwriting the internal cache
 27 |   public func updateRegions(forced: Bool = false) {
 28 |     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
 29 |       try? await fetchRegions(forced: forced)
    |                  `- note: closure captures 'self' which is accessible to code in the current task
 30 |     }
 31 |   }
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer+Regions.swift:29:18: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 27 |   public func updateRegions(forced: Bool = false) {
 28 |     Task {
 29 |       try? await fetchRegions(forced: forced)
    |                  |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |                  `- note: sending task-isolated 'self' to main actor-isolated instance method 'fetchRegions(forced:)' risks causing data races between main actor-isolated and task-isolated uses
 30 |     }
 31 |   }
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer+Regions.swift:38:10: 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
 36 |       return completion(.success(()))
 37 |     }
 38 |     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
 39 |       do {
 40 |         try await fetchRegions(forced: false)
    |                   `- note: closure captures 'self' which is accessible to code in the current task
 41 |         completion(.success(()))
 42 |       } catch {
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer+Regions.swift:40:19: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 38 |     Task {
 39 |       do {
 40 |         try await fetchRegions(forced: false)
    |                   |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |                   `- note: sending task-isolated 'self' to main actor-isolated instance method 'fetchRegions(forced:)' risks causing data races between main actor-isolated and task-isolated uses
 41 |         completion(.success(()))
 42 |       } catch {
[18/60] Compiling TripKitAPI TKServer+Regions.swift
/host/spi-builder-workspace/Sources/TripKitAPI/TKConfig.swift:14:21: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'TKConfig' may have shared mutable state; this is an error in the Swift 6 language mode
10 |
11 | /// A helper to access `Config.plist` in the main bundle.
12 | public class TKConfig {
   |              `- note: class 'TKConfig' does not conform to the 'Sendable' protocol
13 |
14 |   public static let shared = TKConfig()
   |                     |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'TKConfig' may have shared mutable state; this is an error in the Swift 6 language mode
   |                     |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
   |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
15 |
16 |   private init() {
/host/spi-builder-workspace/Sources/TripKitAPI/TKLog.swift:151:21: warning: static property 'loggers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
149 |   /// By default this is empty, unless TripKit is compiled with
150 |   /// a `BETA` or `DEBUG` Swift flag, then it's a ``TKConsoleLogger`` with a log level of "``LogLevel/warning``".
151 |   public static var loggers: [TKLogger] = {
    |                     |- warning: static property 'loggers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: convert 'loggers' to a 'let' constant to make 'Sendable' shared state immutable
    |                     |- note: add '@MainActor' to make static property 'loggers' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
152 |     #if BETA || DEBUG
153 |     return [TKConsoleLogger(level: .warning)]
/host/spi-builder-workspace/Sources/TripKitAPI/TKRegionManager.swift:22:21: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'TKRegionManager' may have shared mutable state; this is an error in the Swift 6 language mode
 19 | }
 20 |
 21 | public class TKRegionManager: NSObject {
    |              `- note: class 'TKRegionManager' does not conform to the 'Sendable' protocol
 22 |   public static let shared = TKRegionManager()
    |                     |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'TKRegionManager' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 23 |
 24 |   private var response: TKAPI.RegionsResponse? {
/host/spi-builder-workspace/Sources/TripKitAPI/TKRegionManager.swift:44:32: warning: type 'TKAPI.RegionsResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 42 |   public func loadRegionsFromCache() async {
 43 |     do {
 44 |       let response = try await Task<TKAPI.RegionsResponse?, Error>.detached(priority: .utility) {
    |                                `- warning: type 'TKAPI.RegionsResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 45 |         guard let data = TKRegionManager.readLocalCache() else { return nil }
 46 |         return try JSONDecoder().decode(TKAPI.RegionsResponse.self, from: data)
/host/spi-builder-workspace/Sources/TripKitAPI/model/API/RegionsAPIModel.swift:13:17: note: consider making struct 'RegionsResponse' conform to the 'Sendable' protocol
11 | extension TKAPI {
12 |
13 |   public struct RegionsResponse: Codable {
   |                 `- note: consider making struct 'RegionsResponse' conform to the 'Sendable' protocol
14 |     public let modes: [String: ModeDetails]?
15 |     public let regions: [TKRegion]?
/host/spi-builder-workspace/Sources/TripKitAPI/TKRegionManager.swift:44:68: warning: type 'TKAPI.RegionsResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 42 |   public func loadRegionsFromCache() async {
 43 |     do {
 44 |       let response = try await Task<TKAPI.RegionsResponse?, Error>.detached(priority: .utility) {
    |                                                                    `- warning: type 'TKAPI.RegionsResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 45 |         guard let data = TKRegionManager.readLocalCache() else { return nil }
 46 |         return try JSONDecoder().decode(TKAPI.RegionsResponse.self, from: data)
/host/spi-builder-workspace/Sources/TripKitAPI/model/API/RegionsAPIModel.swift:13:17: note: consider making struct 'RegionsResponse' conform to the 'Sendable' protocol
11 | extension TKAPI {
12 |
13 |   public struct RegionsResponse: Codable {
   |                 `- note: consider making struct 'RegionsResponse' conform to the 'Sendable' protocol
14 |     public let modes: [String: ModeDetails]?
15 |     public let regions: [TKRegion]?
/host/spi-builder-workspace/Sources/TripKitAPI/TKRegionManager.swift:47:9: warning: type 'TKAPI.RegionsResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 45 |         guard let data = TKRegionManager.readLocalCache() else { return nil }
 46 |         return try JSONDecoder().decode(TKAPI.RegionsResponse.self, from: data)
 47 |       }.value
    |         `- warning: type 'TKAPI.RegionsResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 48 |       if let response {
 49 |         updateRegions(from: response)
/host/spi-builder-workspace/Sources/TripKitAPI/model/API/RegionsAPIModel.swift:13:17: note: consider making struct 'RegionsResponse' conform to the 'Sendable' protocol
11 | extension TKAPI {
12 |
13 |   public struct RegionsResponse: Codable {
   |                 `- note: consider making struct 'RegionsResponse' conform to the 'Sendable' protocol
14 |     public let modes: [String: ModeDetails]?
15 |     public let regions: [TKRegion]?
/host/spi-builder-workspace/Sources/TripKitAPI/TKRegionManager.swift:44:32: warning: non-sendable type 'Task<TKAPI.RegionsResponse?, any Error>' cannot exit main actor-isolated context in call to nonisolated property 'value'; this is an error in the Swift 6 language mode
 42 |   public func loadRegionsFromCache() async {
 43 |     do {
 44 |       let response = try await Task<TKAPI.RegionsResponse?, Error>.detached(priority: .utility) {
    |                                `- warning: non-sendable type 'Task<TKAPI.RegionsResponse?, any Error>' cannot exit main actor-isolated context in call to nonisolated property 'value'; this is an error in the Swift 6 language mode
 45 |         guard let data = TKRegionManager.readLocalCache() else { return nil }
 46 |         return try JSONDecoder().decode(TKAPI.RegionsResponse.self, from: data)
/host/spi-builder-workspace/Sources/TripKitAPI/model/API/RegionsAPIModel.swift:13:17: note: consider making struct 'RegionsResponse' conform to the 'Sendable' protocol
11 | extension TKAPI {
12 |
13 |   public struct RegionsResponse: Codable {
   |                 `- note: consider making struct 'RegionsResponse' conform to the 'Sendable' protocol
14 |     public let modes: [String: ModeDetails]?
15 |     public let regions: [TKRegion]?
/host/spi-builder-workspace/Sources/TripKitAPI/TKRegionManager.swift:47:9: warning: non-sendable type 'TKAPI.RegionsResponse?' of nonisolated property 'value' cannot be sent to main actor-isolated context; this is an error in the Swift 6 language mode
 45 |         guard let data = TKRegionManager.readLocalCache() else { return nil }
 46 |         return try JSONDecoder().decode(TKAPI.RegionsResponse.self, from: data)
 47 |       }.value
    |         `- warning: non-sendable type 'TKAPI.RegionsResponse?' of nonisolated property 'value' cannot be sent to main actor-isolated context; this is an error in the Swift 6 language mode
 48 |       if let response {
 49 |         updateRegions(from: response)
/host/spi-builder-workspace/Sources/TripKitAPI/model/API/RegionsAPIModel.swift:13:17: note: consider making struct 'RegionsResponse' conform to the 'Sendable' protocol
11 | extension TKAPI {
12 |
13 |   public struct RegionsResponse: Codable {
   |                 `- note: consider making struct 'RegionsResponse' conform to the 'Sendable' protocol
14 |     public let modes: [String: ModeDetails]?
15 |     public let regions: [TKRegion]?
/host/spi-builder-workspace/Sources/TripKitAPI/TKRouter.swift:25:21: warning: static property 'defaultParameters' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 23 |
 24 |   /// Optional parameters to add to routing query. Only used by TripKit.
 25 |   public static var defaultParameters: [URLQueryItem]? = nil
    |                     |- warning: static property 'defaultParameters' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: convert 'defaultParameters' to a 'let' constant to make 'Sendable' shared state immutable
    |                     |- note: add '@MainActor' to make static property 'defaultParameters' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 26 |
 27 |   /// Optional setting to group certain modes always in a single `routing.json` when sending a
/host/spi-builder-workspace/Sources/TripKitAPI/TKRouter.swift:29:21: warning: static property 'modesToGroupInRequest' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 27 |   /// Optional setting to group certain modes always in a single `routing.json` when sending a
 28 |   /// multi-fetch request.
 29 |   public static var modesToGroupInRequest: [String]? = nil
    |                     |- warning: static property 'modesToGroupInRequest' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: convert 'modesToGroupInRequest' to a 'let' constant to make 'Sendable' shared state immutable
    |                     |- note: add '@MainActor' to make static property 'modesToGroupInRequest' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 30 |
 31 |   /// Optional server to use instead of ``TKServer/shared``.
/host/spi-builder-workspace/Sources/TripKitAPI/TKRouter.swift:60:28: warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
 58 |   public func cancelRequests() {
 59 |     if let queue = workerQueue {
 60 |       queue.async(execute: cancelRequestsWorker)
    |                            `- warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
 61 |     } else {
 62 |       cancelRequestsWorker()
/host/spi-builder-workspace/Sources/TripKitAPI/TKRouter.swift:107:24: warning: type 'TKAPI.RoutingResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
105 |       }
106 |
107 |       return try await withThrowingTaskGroup(of: TKAPI.RoutingResponse.self) { group in
    |                        `- warning: type 'TKAPI.RoutingResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
108 |         for modeGroup in groupedIdentifier {
109 |           _ = group.addTaskUnlessCancelled {
/host/spi-builder-workspace/Sources/TripKitAPI/model/API/RoutingAPIModel.swift:13:17: note: consider making struct 'RoutingResponse' conform to the 'Sendable' protocol
 11 | extension TKAPI {
 12 |
 13 |   public struct RoutingResponse: Codable {
    |                 `- note: consider making struct 'RoutingResponse' conform to the 'Sendable' protocol
 14 |     public let error: String?
 15 |     public var segmentTemplates: [SegmentTemplate]?
/host/spi-builder-workspace/Sources/TripKitAPI/TKRouter.swift:107:78: warning: type 'TKAPI.RoutingResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
105 |       }
106 |
107 |       return try await withThrowingTaskGroup(of: TKAPI.RoutingResponse.self) { group in
    |                                                                              `- warning: type 'TKAPI.RoutingResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
108 |         for modeGroup in groupedIdentifier {
109 |           _ = group.addTaskUnlessCancelled {
/host/spi-builder-workspace/Sources/TripKitAPI/model/API/RoutingAPIModel.swift:13:17: note: consider making struct 'RoutingResponse' conform to the 'Sendable' protocol
 11 | extension TKAPI {
 12 |
 13 |   public struct RoutingResponse: Codable {
    |                 `- note: consider making struct 'RoutingResponse' conform to the 'Sendable' protocol
 14 |     public let error: String?
 15 |     public var segmentTemplates: [SegmentTemplate]?
/host/spi-builder-workspace/Sources/TripKitAPI/TKRouter.swift:109:21: warning: type 'TKAPI.RoutingResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
107 |       return try await withThrowingTaskGroup(of: TKAPI.RoutingResponse.self) { group in
108 |         for modeGroup in groupedIdentifier {
109 |           _ = group.addTaskUnlessCancelled {
    |                     `- warning: type 'TKAPI.RoutingResponse' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
110 |             try await Self.fetchTripsResponse(
111 |               for: request,
/host/spi-builder-workspace/Sources/TripKitAPI/model/API/RoutingAPIModel.swift:13:17: note: consider making struct 'RoutingResponse' conform to the 'Sendable' protocol
 11 | extension TKAPI {
 12 |
 13 |   public struct RoutingResponse: Codable {
    |                 `- note: consider making struct 'RoutingResponse' conform to the 'Sendable' protocol
 14 |     public let error: String?
 15 |     public var segmentTemplates: [SegmentTemplate]?
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer+Regions.swift:90:42: warning: non-sendable result type 'TKServer.Response<TKAPI.RegionsResponse>' cannot be sent from nonisolated context in call to instance method 'hit(_:_:url:parameters:headers:decoderConfig:)'; this is an error in the Swift 6 language mode
 88 |     }
 89 |
 90 |     let response = await TKServer.shared.hit(TKAPI.RegionsResponse.self, .POST, url: regionsURL, parameters: paras)
    |                                          `- warning: non-sendable result type 'TKServer.Response<TKAPI.RegionsResponse>' cannot be sent from nonisolated context in call to instance method 'hit(_:_:url:parameters:headers:decoderConfig:)'; this is an error in the Swift 6 language mode
 91 |     try Task.checkCancellation()
 92 |
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:266:17: note: consider making generic struct 'Response' conform to the 'Sendable' protocol
264 | extension TKServer {
265 |   /// Captures server response with HTTP status code, headers and typed response
266 |   public struct Response<T> {
    |                 `- note: consider making generic struct 'Response' conform to the 'Sendable' protocol
267 |
268 |     /// HTTP status code of response. Can be `nil` if request failed.
/host/spi-builder-workspace/Sources/TripKitAPI/TKRegionManager.swift:36:10: 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
 34 |   private override init() {
 35 |     super.init()
 36 |     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
 37 |       await loadRegionsFromCache()
    |             `- note: closure captures 'self' which is accessible to code in the current task
 38 |     }
 39 |   }
/host/spi-builder-workspace/Sources/TripKitAPI/TKRouter.swift:109:44: 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
107 |       return try await withThrowingTaskGroup(of: TKAPI.RoutingResponse.self) { group in
108 |         for modeGroup in groupedIdentifier {
109 |           _ = group.addTaskUnlessCancelled {
    |                                            `- 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
110 |             try await Self.fetchTripsResponse(
111 |               for: request,
    :
114 |               additional: request.additional,
115 |               config: config,
116 |               server: server
    |                       `- note: closure captures 'server' which is accessible to code in the current task
117 |             )
118 |           }
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer+Regions.swift:28:10: 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
 26 |   /// - Parameter forced: Set true to force overwriting the internal cache
 27 |   public func updateRegions(forced: Bool = false) {
 28 |     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
 29 |       try? await fetchRegions(forced: forced)
    |                  `- note: closure captures 'self' which is accessible to code in the current task
 30 |     }
 31 |   }
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer+Regions.swift:29:18: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 27 |   public func updateRegions(forced: Bool = false) {
 28 |     Task {
 29 |       try? await fetchRegions(forced: forced)
    |                  |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |                  `- note: sending task-isolated 'self' to main actor-isolated instance method 'fetchRegions(forced:)' risks causing data races between main actor-isolated and task-isolated uses
 30 |     }
 31 |   }
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer+Regions.swift:38:10: 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
 36 |       return completion(.success(()))
 37 |     }
 38 |     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
 39 |       do {
 40 |         try await fetchRegions(forced: false)
    |                   `- note: closure captures 'self' which is accessible to code in the current task
 41 |         completion(.success(()))
 42 |       } catch {
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer+Regions.swift:40:19: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 38 |     Task {
 39 |       do {
 40 |         try await fetchRegions(forced: false)
    |                   |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |                   `- note: sending task-isolated 'self' to main actor-isolated instance method 'fetchRegions(forced:)' risks causing data races between main actor-isolated and task-isolated uses
 41 |         completion(.success(()))
 42 |       } catch {
[19/60] Compiling TripKitAPI TKServer.swift
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:17:21: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'TKServer' may have shared mutable state; this is an error in the Swift 6 language mode
 13 | #endif
 14 |
 15 | public class TKServer {
    |              `- note: class 'TKServer' does not conform to the 'Sendable' protocol
 16 |
 17 |   public static let shared = TKServer(isShared: true)
    |                     |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'TKServer' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 18 |
 19 |   init(isShared: Bool) {
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:622:7: warning: capture of 'info' with non-sendable type '(UUID, TKServer.Info) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
620 |         result = .success(data)
621 |       }
622 |       info(uuid, .response(request, response, result))
    |       |- warning: capture of 'info' with non-sendable type '(UUID, TKServer.Info) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
    |       `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
623 |
624 |       completion(.init(
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:624:7: warning: capture of 'completion' with non-sendable type '(TKServer.Response<Data?>) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
622 |       info(uuid, .response(request, response, result))
623 |
624 |       completion(.init(
    |       |- warning: capture of 'completion' with non-sendable type '(TKServer.Response<Data?>) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
    |       `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
625 |         statusCode: status,
626 |         headers: ((response as? HTTPURLResponse)?.allHeaderFields as? [String: Any]) ?? [:],
/host/spi-builder-workspace/Sources/TripKitAPI/extensions/Date+Helpers.swift:13:22: warning: static property 'iso8601formatter' is not concurrency-safe because non-'Sendable' type 'ISO8601DateFormatter' may have shared mutable state; this is an error in the Swift 6 language mode
11 | extension Date {
12 |
13 |   private static let iso8601formatter = ISO8601DateFormatter()
   |                      |- warning: static property 'iso8601formatter' is not concurrency-safe because non-'Sendable' type 'ISO8601DateFormatter' may have shared mutable state; this is an error in the Swift 6 language mode
   |                      |- note: add '@MainActor' to make static property 'iso8601formatter' part of global actor 'MainActor'
   |                      `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
14 |
15 |   public enum DateConversionError: Error {
Foundation.ISO8601DateFormatter:1:12: note: class 'ISO8601DateFormatter' does not conform to the 'Sendable' protocol
 1 | open class ISO8601DateFormatter : Formatter, NSSecureCoding {
   |            `- note: class 'ISO8601DateFormatter' does not conform to the 'Sendable' protocol
 2 |     open var timeZone: TimeZone! { get set }
 3 |     open var formatOptions: ISO8601DateFormatter.Options { get set }
/host/spi-builder-workspace/Sources/TripKitAPI/extensions/UserDefaults+SharedDefaults.swift:16:21: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'UserDefaults' may have shared mutable state; this is an error in the Swift 6 language mode
14 |   ///
15 |   /// Uses the suite defined if ``TKConfig/appGroupName`` is provided, or otherwise the `UserDefaults.standard`.
16 |   public static let shared: UserDefaults = {
   |                     |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'UserDefaults' may have shared mutable state; this is an error in the Swift 6 language mode
   |                     |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
   |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |     if let shared = UserDefaults(suiteName: TKConfig.shared.appGroupName) {
18 |       return shared
Foundation.UserDefaults:1:12: note: class 'UserDefaults' does not conform to the 'Sendable' protocol
 1 | open class UserDefaults : NSObject {
   |            `- note: class 'UserDefaults' does not conform to the 'Sendable' protocol
 2 |     open class var standard: UserDefaults { get }
 3 |     open class func resetStandardUserDefaults()
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:546:11: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
544 |       if callbackOnMain {
545 |         DispatchQueue.main.async {
546 |           completion(response)
    |           |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |           `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
547 |         }
548 |       } else {
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:546:22: warning: sending 'response' risks causing data races; this is an error in the Swift 6 language mode
544 |       if callbackOnMain {
545 |         DispatchQueue.main.async {
546 |           completion(response)
    |                      |- warning: sending 'response' risks causing data races; this is an error in the Swift 6 language mode
    |                      `- note: task-isolated 'response' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
547 |         }
548 |       } else {
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:303:22: warning: sending value of non-Sendable type 'TKServer.Response<Data>' risks causing data races; this is an error in the Swift 6 language mode
301 |           headers: headers)
302 |       { response in
303 |         continuation.resume(returning: response.map  { data in
    |                      |- warning: sending value of non-Sendable type 'TKServer.Response<Data>' risks causing data races; this is an error in the Swift 6 language mode
    |                      `- note: Passing task-isolated value of non-Sendable type 'TKServer.Response<Data>' as a 'sending' parameter risks causing races inbetween task-isolated uses and uses reachable from the callee
304 |           guard let data, !data.isEmpty else { throw ServerError.noData }
305 |           return data
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:326:22: warning: sending value of non-Sendable type 'TKServer.Response<Data>' risks causing data races; this is an error in the Swift 6 language mode
324 |         region: region)
325 |       { response in
326 |         continuation.resume(returning: response.map { data in
    |                      |- warning: sending value of non-Sendable type 'TKServer.Response<Data>' risks causing data races; this is an error in the Swift 6 language mode
    |                      `- note: Passing task-isolated value of non-Sendable type 'TKServer.Response<Data>' as a 'sending' parameter risks causing races inbetween task-isolated uses and uses reachable from the callee
327 |           guard let data, !data.isEmpty else { throw ServerError.noData }
328 |           return data
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:351:22: warning: sending value of non-Sendable type 'TKServer.Response<Model>' risks causing data races; this is an error in the Swift 6 language mode
349 |         callbackOnMain: false
350 |       ) { response in
351 |         continuation.resume(returning: response.map { data in
    |                      |- warning: sending value of non-Sendable type 'TKServer.Response<Model>' risks causing data races; this is an error in the Swift 6 language mode
    |                      `- note: Passing task-isolated value of non-Sendable type 'TKServer.Response<Model>' as a 'sending' parameter risks causing races inbetween task-isolated uses and uses reachable from the callee
352 |           guard let data, !data.isEmpty else { throw ServerError.noData }
353 |           return try JSONDecoder().decode(Model.self, from: data)
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:385:22: warning: sending value of non-Sendable type 'TKServer.Response<Output>' risks causing data races; this is an error in the Swift 6 language mode
383 |         callbackOnMain: false
384 |       ) { response in
385 |         continuation.resume(returning: response.map  { data in
    |                      |- warning: sending value of non-Sendable type 'TKServer.Response<Output>' risks causing data races; this is an error in the Swift 6 language mode
    |                      `- note: Passing task-isolated value of non-Sendable type 'TKServer.Response<Output>' as a 'sending' parameter risks causing races inbetween task-isolated uses and uses reachable from the callee
386 |           guard let data, !data.isEmpty else { throw ServerError.noData }
387 |           return try decoder.decode(Output.self, from: data)
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:414:22: warning: sending 'response' risks causing data races; this is an error in the Swift 6 language mode
412 |         callbackOnMain: false
413 |       ) { response in
414 |         continuation.resume(returning: response)
    |                      |- warning: sending 'response' risks causing data races; this is an error in the Swift 6 language mode
    |                      `- note: task-isolated 'response' is passed as a 'sending' parameter; Uses in callee may race with later task-isolated uses
415 |       }
416 |     }
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:437:22: warning: sending value of non-Sendable type 'TKServer.Response<Model>' risks causing data races; this is an error in the Swift 6 language mode
435 |           headers: headers)
436 |       { response in
437 |         continuation.resume(returning: response.map  { data in
    |                      |- warning: sending value of non-Sendable type 'TKServer.Response<Model>' risks causing data races; this is an error in the Swift 6 language mode
    |                      `- note: Passing task-isolated value of non-Sendable type 'TKServer.Response<Model>' as a 'sending' parameter risks causing races inbetween task-isolated uses and uses reachable from the callee
438 |           guard let data, !data.isEmpty else { throw ServerError.noData }
439 |           return try decoder.decode(Model.self, from: data)
[20/60] Compiling TripKitAPI Array+Duplicates.swift
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:17:21: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'TKServer' may have shared mutable state; this is an error in the Swift 6 language mode
 13 | #endif
 14 |
 15 | public class TKServer {
    |              `- note: class 'TKServer' does not conform to the 'Sendable' protocol
 16 |
 17 |   public static let shared = TKServer(isShared: true)
    |                     |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'TKServer' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 18 |
 19 |   init(isShared: Bool) {
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:622:7: warning: capture of 'info' with non-sendable type '(UUID, TKServer.Info) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
620 |         result = .success(data)
621 |       }
622 |       info(uuid, .response(request, response, result))
    |       |- warning: capture of 'info' with non-sendable type '(UUID, TKServer.Info) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
    |       `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
623 |
624 |       completion(.init(
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:624:7: warning: capture of 'completion' with non-sendable type '(TKServer.Response<Data?>) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
622 |       info(uuid, .response(request, response, result))
623 |
624 |       completion(.init(
    |       |- warning: capture of 'completion' with non-sendable type '(TKServer.Response<Data?>) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
    |       `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
625 |         statusCode: status,
626 |         headers: ((response as? HTTPURLResponse)?.allHeaderFields as? [String: Any]) ?? [:],
/host/spi-builder-workspace/Sources/TripKitAPI/extensions/Date+Helpers.swift:13:22: warning: static property 'iso8601formatter' is not concurrency-safe because non-'Sendable' type 'ISO8601DateFormatter' may have shared mutable state; this is an error in the Swift 6 language mode
11 | extension Date {
12 |
13 |   private static let iso8601formatter = ISO8601DateFormatter()
   |                      |- warning: static property 'iso8601formatter' is not concurrency-safe because non-'Sendable' type 'ISO8601DateFormatter' may have shared mutable state; this is an error in the Swift 6 language mode
   |                      |- note: add '@MainActor' to make static property 'iso8601formatter' part of global actor 'MainActor'
   |                      `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
14 |
15 |   public enum DateConversionError: Error {
Foundation.ISO8601DateFormatter:1:12: note: class 'ISO8601DateFormatter' does not conform to the 'Sendable' protocol
 1 | open class ISO8601DateFormatter : Formatter, NSSecureCoding {
   |            `- note: class 'ISO8601DateFormatter' does not conform to the 'Sendable' protocol
 2 |     open var timeZone: TimeZone! { get set }
 3 |     open var formatOptions: ISO8601DateFormatter.Options { get set }
/host/spi-builder-workspace/Sources/TripKitAPI/extensions/UserDefaults+SharedDefaults.swift:16:21: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'UserDefaults' may have shared mutable state; this is an error in the Swift 6 language mode
14 |   ///
15 |   /// Uses the suite defined if ``TKConfig/appGroupName`` is provided, or otherwise the `UserDefaults.standard`.
16 |   public static let shared: UserDefaults = {
   |                     |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'UserDefaults' may have shared mutable state; this is an error in the Swift 6 language mode
   |                     |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
   |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |     if let shared = UserDefaults(suiteName: TKConfig.shared.appGroupName) {
18 |       return shared
Foundation.UserDefaults:1:12: note: class 'UserDefaults' does not conform to the 'Sendable' protocol
 1 | open class UserDefaults : NSObject {
   |            `- note: class 'UserDefaults' does not conform to the 'Sendable' protocol
 2 |     open class var standard: UserDefaults { get }
 3 |     open class func resetStandardUserDefaults()
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:546:11: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
544 |       if callbackOnMain {
545 |         DispatchQueue.main.async {
546 |           completion(response)
    |           |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |           `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
547 |         }
548 |       } else {
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:546:22: warning: sending 'response' risks causing data races; this is an error in the Swift 6 language mode
544 |       if callbackOnMain {
545 |         DispatchQueue.main.async {
546 |           completion(response)
    |                      |- warning: sending 'response' risks causing data races; this is an error in the Swift 6 language mode
    |                      `- note: task-isolated 'response' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
547 |         }
548 |       } else {
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:303:22: warning: sending value of non-Sendable type 'TKServer.Response<Data>' risks causing data races; this is an error in the Swift 6 language mode
301 |           headers: headers)
302 |       { response in
303 |         continuation.resume(returning: response.map  { data in
    |                      |- warning: sending value of non-Sendable type 'TKServer.Response<Data>' risks causing data races; this is an error in the Swift 6 language mode
    |                      `- note: Passing task-isolated value of non-Sendable type 'TKServer.Response<Data>' as a 'sending' parameter risks causing races inbetween task-isolated uses and uses reachable from the callee
304 |           guard let data, !data.isEmpty else { throw ServerError.noData }
305 |           return data
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:326:22: warning: sending value of non-Sendable type 'TKServer.Response<Data>' risks causing data races; this is an error in the Swift 6 language mode
324 |         region: region)
325 |       { response in
326 |         continuation.resume(returning: response.map { data in
    |                      |- warning: sending value of non-Sendable type 'TKServer.Response<Data>' risks causing data races; this is an error in the Swift 6 language mode
    |                      `- note: Passing task-isolated value of non-Sendable type 'TKServer.Response<Data>' as a 'sending' parameter risks causing races inbetween task-isolated uses and uses reachable from the callee
327 |           guard let data, !data.isEmpty else { throw ServerError.noData }
328 |           return data
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:351:22: warning: sending value of non-Sendable type 'TKServer.Response<Model>' risks causing data races; this is an error in the Swift 6 language mode
349 |         callbackOnMain: false
350 |       ) { response in
351 |         continuation.resume(returning: response.map { data in
    |                      |- warning: sending value of non-Sendable type 'TKServer.Response<Model>' risks causing data races; this is an error in the Swift 6 language mode
    |                      `- note: Passing task-isolated value of non-Sendable type 'TKServer.Response<Model>' as a 'sending' parameter risks causing races inbetween task-isolated uses and uses reachable from the callee
352 |           guard let data, !data.isEmpty else { throw ServerError.noData }
353 |           return try JSONDecoder().decode(Model.self, from: data)
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:385:22: warning: sending value of non-Sendable type 'TKServer.Response<Output>' risks causing data races; this is an error in the Swift 6 language mode
383 |         callbackOnMain: false
384 |       ) { response in
385 |         continuation.resume(returning: response.map  { data in
    |                      |- warning: sending value of non-Sendable type 'TKServer.Response<Output>' risks causing data races; this is an error in the Swift 6 language mode
    |                      `- note: Passing task-isolated value of non-Sendable type 'TKServer.Response<Output>' as a 'sending' parameter risks causing races inbetween task-isolated uses and uses reachable from the callee
386 |           guard let data, !data.isEmpty else { throw ServerError.noData }
387 |           return try decoder.decode(Output.self, from: data)
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:414:22: warning: sending 'response' risks causing data races; this is an error in the Swift 6 language mode
412 |         callbackOnMain: false
413 |       ) { response in
414 |         continuation.resume(returning: response)
    |                      |- warning: sending 'response' risks causing data races; this is an error in the Swift 6 language mode
    |                      `- note: task-isolated 'response' is passed as a 'sending' parameter; Uses in callee may race with later task-isolated uses
415 |       }
416 |     }
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:437:22: warning: sending value of non-Sendable type 'TKServer.Response<Model>' risks causing data races; this is an error in the Swift 6 language mode
435 |           headers: headers)
436 |       { response in
437 |         continuation.resume(returning: response.map  { data in
    |                      |- warning: sending value of non-Sendable type 'TKServer.Response<Model>' risks causing data races; this is an error in the Swift 6 language mode
    |                      `- note: Passing task-isolated value of non-Sendable type 'TKServer.Response<Model>' as a 'sending' parameter risks causing races inbetween task-isolated uses and uses reachable from the callee
438 |           guard let data, !data.isEmpty else { throw ServerError.noData }
439 |           return try decoder.decode(Model.self, from: data)
[21/60] Compiling TripKitAPI Codable+Helpers.swift
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:17:21: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'TKServer' may have shared mutable state; this is an error in the Swift 6 language mode
 13 | #endif
 14 |
 15 | public class TKServer {
    |              `- note: class 'TKServer' does not conform to the 'Sendable' protocol
 16 |
 17 |   public static let shared = TKServer(isShared: true)
    |                     |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'TKServer' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 18 |
 19 |   init(isShared: Bool) {
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:622:7: warning: capture of 'info' with non-sendable type '(UUID, TKServer.Info) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
620 |         result = .success(data)
621 |       }
622 |       info(uuid, .response(request, response, result))
    |       |- warning: capture of 'info' with non-sendable type '(UUID, TKServer.Info) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
    |       `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
623 |
624 |       completion(.init(
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:624:7: warning: capture of 'completion' with non-sendable type '(TKServer.Response<Data?>) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
622 |       info(uuid, .response(request, response, result))
623 |
624 |       completion(.init(
    |       |- warning: capture of 'completion' with non-sendable type '(TKServer.Response<Data?>) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
    |       `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
625 |         statusCode: status,
626 |         headers: ((response as? HTTPURLResponse)?.allHeaderFields as? [String: Any]) ?? [:],
/host/spi-builder-workspace/Sources/TripKitAPI/extensions/Date+Helpers.swift:13:22: warning: static property 'iso8601formatter' is not concurrency-safe because non-'Sendable' type 'ISO8601DateFormatter' may have shared mutable state; this is an error in the Swift 6 language mode
11 | extension Date {
12 |
13 |   private static let iso8601formatter = ISO8601DateFormatter()
   |                      |- warning: static property 'iso8601formatter' is not concurrency-safe because non-'Sendable' type 'ISO8601DateFormatter' may have shared mutable state; this is an error in the Swift 6 language mode
   |                      |- note: add '@MainActor' to make static property 'iso8601formatter' part of global actor 'MainActor'
   |                      `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
14 |
15 |   public enum DateConversionError: Error {
Foundation.ISO8601DateFormatter:1:12: note: class 'ISO8601DateFormatter' does not conform to the 'Sendable' protocol
 1 | open class ISO8601DateFormatter : Formatter, NSSecureCoding {
   |            `- note: class 'ISO8601DateFormatter' does not conform to the 'Sendable' protocol
 2 |     open var timeZone: TimeZone! { get set }
 3 |     open var formatOptions: ISO8601DateFormatter.Options { get set }
/host/spi-builder-workspace/Sources/TripKitAPI/extensions/UserDefaults+SharedDefaults.swift:16:21: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'UserDefaults' may have shared mutable state; this is an error in the Swift 6 language mode
14 |   ///
15 |   /// Uses the suite defined if ``TKConfig/appGroupName`` is provided, or otherwise the `UserDefaults.standard`.
16 |   public static let shared: UserDefaults = {
   |                     |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'UserDefaults' may have shared mutable state; this is an error in the Swift 6 language mode
   |                     |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
   |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |     if let shared = UserDefaults(suiteName: TKConfig.shared.appGroupName) {
18 |       return shared
Foundation.UserDefaults:1:12: note: class 'UserDefaults' does not conform to the 'Sendable' protocol
 1 | open class UserDefaults : NSObject {
   |            `- note: class 'UserDefaults' does not conform to the 'Sendable' protocol
 2 |     open class var standard: UserDefaults { get }
 3 |     open class func resetStandardUserDefaults()
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:546:11: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
544 |       if callbackOnMain {
545 |         DispatchQueue.main.async {
546 |           completion(response)
    |           |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |           `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
547 |         }
548 |       } else {
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:546:22: warning: sending 'response' risks causing data races; this is an error in the Swift 6 language mode
544 |       if callbackOnMain {
545 |         DispatchQueue.main.async {
546 |           completion(response)
    |                      |- warning: sending 'response' risks causing data races; this is an error in the Swift 6 language mode
    |                      `- note: task-isolated 'response' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
547 |         }
548 |       } else {
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:303:22: warning: sending value of non-Sendable type 'TKServer.Response<Data>' risks causing data races; this is an error in the Swift 6 language mode
301 |           headers: headers)
302 |       { response in
303 |         continuation.resume(returning: response.map  { data in
    |                      |- warning: sending value of non-Sendable type 'TKServer.Response<Data>' risks causing data races; this is an error in the Swift 6 language mode
    |                      `- note: Passing task-isolated value of non-Sendable type 'TKServer.Response<Data>' as a 'sending' parameter risks causing races inbetween task-isolated uses and uses reachable from the callee
304 |           guard let data, !data.isEmpty else { throw ServerError.noData }
305 |           return data
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:326:22: warning: sending value of non-Sendable type 'TKServer.Response<Data>' risks causing data races; this is an error in the Swift 6 language mode
324 |         region: region)
325 |       { response in
326 |         continuation.resume(returning: response.map { data in
    |                      |- warning: sending value of non-Sendable type 'TKServer.Response<Data>' risks causing data races; this is an error in the Swift 6 language mode
    |                      `- note: Passing task-isolated value of non-Sendable type 'TKServer.Response<Data>' as a 'sending' parameter risks causing races inbetween task-isolated uses and uses reachable from the callee
327 |           guard let data, !data.isEmpty else { throw ServerError.noData }
328 |           return data
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:351:22: warning: sending value of non-Sendable type 'TKServer.Response<Model>' risks causing data races; this is an error in the Swift 6 language mode
349 |         callbackOnMain: false
350 |       ) { response in
351 |         continuation.resume(returning: response.map { data in
    |                      |- warning: sending value of non-Sendable type 'TKServer.Response<Model>' risks causing data races; this is an error in the Swift 6 language mode
    |                      `- note: Passing task-isolated value of non-Sendable type 'TKServer.Response<Model>' as a 'sending' parameter risks causing races inbetween task-isolated uses and uses reachable from the callee
352 |           guard let data, !data.isEmpty else { throw ServerError.noData }
353 |           return try JSONDecoder().decode(Model.self, from: data)
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:385:22: warning: sending value of non-Sendable type 'TKServer.Response<Output>' risks causing data races; this is an error in the Swift 6 language mode
383 |         callbackOnMain: false
384 |       ) { response in
385 |         continuation.resume(returning: response.map  { data in
    |                      |- warning: sending value of non-Sendable type 'TKServer.Response<Output>' risks causing data races; this is an error in the Swift 6 language mode
    |                      `- note: Passing task-isolated value of non-Sendable type 'TKServer.Response<Output>' as a 'sending' parameter risks causing races inbetween task-isolated uses and uses reachable from the callee
386 |           guard let data, !data.isEmpty else { throw ServerError.noData }
387 |           return try decoder.decode(Output.self, from: data)
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:414:22: warning: sending 'response' risks causing data races; this is an error in the Swift 6 language mode
412 |         callbackOnMain: false
413 |       ) { response in
414 |         continuation.resume(returning: response)
    |                      |- warning: sending 'response' risks causing data races; this is an error in the Swift 6 language mode
    |                      `- note: task-isolated 'response' is passed as a 'sending' parameter; Uses in callee may race with later task-isolated uses
415 |       }
416 |     }
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:437:22: warning: sending value of non-Sendable type 'TKServer.Response<Model>' risks causing data races; this is an error in the Swift 6 language mode
435 |           headers: headers)
436 |       { response in
437 |         continuation.resume(returning: response.map  { data in
    |                      |- warning: sending value of non-Sendable type 'TKServer.Response<Model>' risks causing data races; this is an error in the Swift 6 language mode
    |                      `- note: Passing task-isolated value of non-Sendable type 'TKServer.Response<Model>' as a 'sending' parameter risks causing races inbetween task-isolated uses and uses reachable from the callee
438 |           guard let data, !data.isEmpty else { throw ServerError.noData }
439 |           return try decoder.decode(Model.self, from: data)
[22/60] Compiling TripKitAPI Date+Helpers.swift
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:17:21: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'TKServer' may have shared mutable state; this is an error in the Swift 6 language mode
 13 | #endif
 14 |
 15 | public class TKServer {
    |              `- note: class 'TKServer' does not conform to the 'Sendable' protocol
 16 |
 17 |   public static let shared = TKServer(isShared: true)
    |                     |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'TKServer' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 18 |
 19 |   init(isShared: Bool) {
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:622:7: warning: capture of 'info' with non-sendable type '(UUID, TKServer.Info) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
620 |         result = .success(data)
621 |       }
622 |       info(uuid, .response(request, response, result))
    |       |- warning: capture of 'info' with non-sendable type '(UUID, TKServer.Info) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
    |       `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
623 |
624 |       completion(.init(
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:624:7: warning: capture of 'completion' with non-sendable type '(TKServer.Response<Data?>) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
622 |       info(uuid, .response(request, response, result))
623 |
624 |       completion(.init(
    |       |- warning: capture of 'completion' with non-sendable type '(TKServer.Response<Data?>) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
    |       `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
625 |         statusCode: status,
626 |         headers: ((response as? HTTPURLResponse)?.allHeaderFields as? [String: Any]) ?? [:],
/host/spi-builder-workspace/Sources/TripKitAPI/extensions/Date+Helpers.swift:13:22: warning: static property 'iso8601formatter' is not concurrency-safe because non-'Sendable' type 'ISO8601DateFormatter' may have shared mutable state; this is an error in the Swift 6 language mode
11 | extension Date {
12 |
13 |   private static let iso8601formatter = ISO8601DateFormatter()
   |                      |- warning: static property 'iso8601formatter' is not concurrency-safe because non-'Sendable' type 'ISO8601DateFormatter' may have shared mutable state; this is an error in the Swift 6 language mode
   |                      |- note: add '@MainActor' to make static property 'iso8601formatter' part of global actor 'MainActor'
   |                      `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
14 |
15 |   public enum DateConversionError: Error {
Foundation.ISO8601DateFormatter:1:12: note: class 'ISO8601DateFormatter' does not conform to the 'Sendable' protocol
 1 | open class ISO8601DateFormatter : Formatter, NSSecureCoding {
   |            `- note: class 'ISO8601DateFormatter' does not conform to the 'Sendable' protocol
 2 |     open var timeZone: TimeZone! { get set }
 3 |     open var formatOptions: ISO8601DateFormatter.Options { get set }
/host/spi-builder-workspace/Sources/TripKitAPI/extensions/UserDefaults+SharedDefaults.swift:16:21: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'UserDefaults' may have shared mutable state; this is an error in the Swift 6 language mode
14 |   ///
15 |   /// Uses the suite defined if ``TKConfig/appGroupName`` is provided, or otherwise the `UserDefaults.standard`.
16 |   public static let shared: UserDefaults = {
   |                     |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'UserDefaults' may have shared mutable state; this is an error in the Swift 6 language mode
   |                     |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
   |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |     if let shared = UserDefaults(suiteName: TKConfig.shared.appGroupName) {
18 |       return shared
Foundation.UserDefaults:1:12: note: class 'UserDefaults' does not conform to the 'Sendable' protocol
 1 | open class UserDefaults : NSObject {
   |            `- note: class 'UserDefaults' does not conform to the 'Sendable' protocol
 2 |     open class var standard: UserDefaults { get }
 3 |     open class func resetStandardUserDefaults()
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:546:11: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
544 |       if callbackOnMain {
545 |         DispatchQueue.main.async {
546 |           completion(response)
    |           |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |           `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
547 |         }
548 |       } else {
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:546:22: warning: sending 'response' risks causing data races; this is an error in the Swift 6 language mode
544 |       if callbackOnMain {
545 |         DispatchQueue.main.async {
546 |           completion(response)
    |                      |- warning: sending 'response' risks causing data races; this is an error in the Swift 6 language mode
    |                      `- note: task-isolated 'response' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
547 |         }
548 |       } else {
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:303:22: warning: sending value of non-Sendable type 'TKServer.Response<Data>' risks causing data races; this is an error in the Swift 6 language mode
301 |           headers: headers)
302 |       { response in
303 |         continuation.resume(returning: response.map  { data in
    |                      |- warning: sending value of non-Sendable type 'TKServer.Response<Data>' risks causing data races; this is an error in the Swift 6 language mode
    |                      `- note: Passing task-isolated value of non-Sendable type 'TKServer.Response<Data>' as a 'sending' parameter risks causing races inbetween task-isolated uses and uses reachable from the callee
304 |           guard let data, !data.isEmpty else { throw ServerError.noData }
305 |           return data
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:326:22: warning: sending value of non-Sendable type 'TKServer.Response<Data>' risks causing data races; this is an error in the Swift 6 language mode
324 |         region: region)
325 |       { response in
326 |         continuation.resume(returning: response.map { data in
    |                      |- warning: sending value of non-Sendable type 'TKServer.Response<Data>' risks causing data races; this is an error in the Swift 6 language mode
    |                      `- note: Passing task-isolated value of non-Sendable type 'TKServer.Response<Data>' as a 'sending' parameter risks causing races inbetween task-isolated uses and uses reachable from the callee
327 |           guard let data, !data.isEmpty else { throw ServerError.noData }
328 |           return data
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:351:22: warning: sending value of non-Sendable type 'TKServer.Response<Model>' risks causing data races; this is an error in the Swift 6 language mode
349 |         callbackOnMain: false
350 |       ) { response in
351 |         continuation.resume(returning: response.map { data in
    |                      |- warning: sending value of non-Sendable type 'TKServer.Response<Model>' risks causing data races; this is an error in the Swift 6 language mode
    |                      `- note: Passing task-isolated value of non-Sendable type 'TKServer.Response<Model>' as a 'sending' parameter risks causing races inbetween task-isolated uses and uses reachable from the callee
352 |           guard let data, !data.isEmpty else { throw ServerError.noData }
353 |           return try JSONDecoder().decode(Model.self, from: data)
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:385:22: warning: sending value of non-Sendable type 'TKServer.Response<Output>' risks causing data races; this is an error in the Swift 6 language mode
383 |         callbackOnMain: false
384 |       ) { response in
385 |         continuation.resume(returning: response.map  { data in
    |                      |- warning: sending value of non-Sendable type 'TKServer.Response<Output>' risks causing data races; this is an error in the Swift 6 language mode
    |                      `- note: Passing task-isolated value of non-Sendable type 'TKServer.Response<Output>' as a 'sending' parameter risks causing races inbetween task-isolated uses and uses reachable from the callee
386 |           guard let data, !data.isEmpty else { throw ServerError.noData }
387 |           return try decoder.decode(Output.self, from: data)
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:414:22: warning: sending 'response' risks causing data races; this is an error in the Swift 6 language mode
412 |         callbackOnMain: false
413 |       ) { response in
414 |         continuation.resume(returning: response)
    |                      |- warning: sending 'response' risks causing data races; this is an error in the Swift 6 language mode
    |                      `- note: task-isolated 'response' is passed as a 'sending' parameter; Uses in callee may race with later task-isolated uses
415 |       }
416 |     }
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:437:22: warning: sending value of non-Sendable type 'TKServer.Response<Model>' risks causing data races; this is an error in the Swift 6 language mode
435 |           headers: headers)
436 |       { response in
437 |         continuation.resume(returning: response.map  { data in
    |                      |- warning: sending value of non-Sendable type 'TKServer.Response<Model>' risks causing data races; this is an error in the Swift 6 language mode
    |                      `- note: Passing task-isolated value of non-Sendable type 'TKServer.Response<Model>' as a 'sending' parameter risks causing races inbetween task-isolated uses and uses reachable from the callee
438 |           guard let data, !data.isEmpty else { throw ServerError.noData }
439 |           return try decoder.decode(Model.self, from: data)
[23/60] Compiling TripKitAPI NSError+customError.swift
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:17:21: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'TKServer' may have shared mutable state; this is an error in the Swift 6 language mode
 13 | #endif
 14 |
 15 | public class TKServer {
    |              `- note: class 'TKServer' does not conform to the 'Sendable' protocol
 16 |
 17 |   public static let shared = TKServer(isShared: true)
    |                     |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'TKServer' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 18 |
 19 |   init(isShared: Bool) {
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:622:7: warning: capture of 'info' with non-sendable type '(UUID, TKServer.Info) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
620 |         result = .success(data)
621 |       }
622 |       info(uuid, .response(request, response, result))
    |       |- warning: capture of 'info' with non-sendable type '(UUID, TKServer.Info) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
    |       `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
623 |
624 |       completion(.init(
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:624:7: warning: capture of 'completion' with non-sendable type '(TKServer.Response<Data?>) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
622 |       info(uuid, .response(request, response, result))
623 |
624 |       completion(.init(
    |       |- warning: capture of 'completion' with non-sendable type '(TKServer.Response<Data?>) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
    |       `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
625 |         statusCode: status,
626 |         headers: ((response as? HTTPURLResponse)?.allHeaderFields as? [String: Any]) ?? [:],
/host/spi-builder-workspace/Sources/TripKitAPI/extensions/Date+Helpers.swift:13:22: warning: static property 'iso8601formatter' is not concurrency-safe because non-'Sendable' type 'ISO8601DateFormatter' may have shared mutable state; this is an error in the Swift 6 language mode
11 | extension Date {
12 |
13 |   private static let iso8601formatter = ISO8601DateFormatter()
   |                      |- warning: static property 'iso8601formatter' is not concurrency-safe because non-'Sendable' type 'ISO8601DateFormatter' may have shared mutable state; this is an error in the Swift 6 language mode
   |                      |- note: add '@MainActor' to make static property 'iso8601formatter' part of global actor 'MainActor'
   |                      `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
14 |
15 |   public enum DateConversionError: Error {
Foundation.ISO8601DateFormatter:1:12: note: class 'ISO8601DateFormatter' does not conform to the 'Sendable' protocol
 1 | open class ISO8601DateFormatter : Formatter, NSSecureCoding {
   |            `- note: class 'ISO8601DateFormatter' does not conform to the 'Sendable' protocol
 2 |     open var timeZone: TimeZone! { get set }
 3 |     open var formatOptions: ISO8601DateFormatter.Options { get set }
/host/spi-builder-workspace/Sources/TripKitAPI/extensions/UserDefaults+SharedDefaults.swift:16:21: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'UserDefaults' may have shared mutable state; this is an error in the Swift 6 language mode
14 |   ///
15 |   /// Uses the suite defined if ``TKConfig/appGroupName`` is provided, or otherwise the `UserDefaults.standard`.
16 |   public static let shared: UserDefaults = {
   |                     |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'UserDefaults' may have shared mutable state; this is an error in the Swift 6 language mode
   |                     |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
   |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |     if let shared = UserDefaults(suiteName: TKConfig.shared.appGroupName) {
18 |       return shared
Foundation.UserDefaults:1:12: note: class 'UserDefaults' does not conform to the 'Sendable' protocol
 1 | open class UserDefaults : NSObject {
   |            `- note: class 'UserDefaults' does not conform to the 'Sendable' protocol
 2 |     open class var standard: UserDefaults { get }
 3 |     open class func resetStandardUserDefaults()
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:546:11: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
544 |       if callbackOnMain {
545 |         DispatchQueue.main.async {
546 |           completion(response)
    |           |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |           `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
547 |         }
548 |       } else {
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:546:22: warning: sending 'response' risks causing data races; this is an error in the Swift 6 language mode
544 |       if callbackOnMain {
545 |         DispatchQueue.main.async {
546 |           completion(response)
    |                      |- warning: sending 'response' risks causing data races; this is an error in the Swift 6 language mode
    |                      `- note: task-isolated 'response' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
547 |         }
548 |       } else {
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:303:22: warning: sending value of non-Sendable type 'TKServer.Response<Data>' risks causing data races; this is an error in the Swift 6 language mode
301 |           headers: headers)
302 |       { response in
303 |         continuation.resume(returning: response.map  { data in
    |                      |- warning: sending value of non-Sendable type 'TKServer.Response<Data>' risks causing data races; this is an error in the Swift 6 language mode
    |                      `- note: Passing task-isolated value of non-Sendable type 'TKServer.Response<Data>' as a 'sending' parameter risks causing races inbetween task-isolated uses and uses reachable from the callee
304 |           guard let data, !data.isEmpty else { throw ServerError.noData }
305 |           return data
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:326:22: warning: sending value of non-Sendable type 'TKServer.Response<Data>' risks causing data races; this is an error in the Swift 6 language mode
324 |         region: region)
325 |       { response in
326 |         continuation.resume(returning: response.map { data in
    |                      |- warning: sending value of non-Sendable type 'TKServer.Response<Data>' risks causing data races; this is an error in the Swift 6 language mode
    |                      `- note: Passing task-isolated value of non-Sendable type 'TKServer.Response<Data>' as a 'sending' parameter risks causing races inbetween task-isolated uses and uses reachable from the callee
327 |           guard let data, !data.isEmpty else { throw ServerError.noData }
328 |           return data
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:351:22: warning: sending value of non-Sendable type 'TKServer.Response<Model>' risks causing data races; this is an error in the Swift 6 language mode
349 |         callbackOnMain: false
350 |       ) { response in
351 |         continuation.resume(returning: response.map { data in
    |                      |- warning: sending value of non-Sendable type 'TKServer.Response<Model>' risks causing data races; this is an error in the Swift 6 language mode
    |                      `- note: Passing task-isolated value of non-Sendable type 'TKServer.Response<Model>' as a 'sending' parameter risks causing races inbetween task-isolated uses and uses reachable from the callee
352 |           guard let data, !data.isEmpty else { throw ServerError.noData }
353 |           return try JSONDecoder().decode(Model.self, from: data)
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:385:22: warning: sending value of non-Sendable type 'TKServer.Response<Output>' risks causing data races; this is an error in the Swift 6 language mode
383 |         callbackOnMain: false
384 |       ) { response in
385 |         continuation.resume(returning: response.map  { data in
    |                      |- warning: sending value of non-Sendable type 'TKServer.Response<Output>' risks causing data races; this is an error in the Swift 6 language mode
    |                      `- note: Passing task-isolated value of non-Sendable type 'TKServer.Response<Output>' as a 'sending' parameter risks causing races inbetween task-isolated uses and uses reachable from the callee
386 |           guard let data, !data.isEmpty else { throw ServerError.noData }
387 |           return try decoder.decode(Output.self, from: data)
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:414:22: warning: sending 'response' risks causing data races; this is an error in the Swift 6 language mode
412 |         callbackOnMain: false
413 |       ) { response in
414 |         continuation.resume(returning: response)
    |                      |- warning: sending 'response' risks causing data races; this is an error in the Swift 6 language mode
    |                      `- note: task-isolated 'response' is passed as a 'sending' parameter; Uses in callee may race with later task-isolated uses
415 |       }
416 |     }
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:437:22: warning: sending value of non-Sendable type 'TKServer.Response<Model>' risks causing data races; this is an error in the Swift 6 language mode
435 |           headers: headers)
436 |       { response in
437 |         continuation.resume(returning: response.map  { data in
    |                      |- warning: sending value of non-Sendable type 'TKServer.Response<Model>' risks causing data races; this is an error in the Swift 6 language mode
    |                      `- note: Passing task-isolated value of non-Sendable type 'TKServer.Response<Model>' as a 'sending' parameter risks causing races inbetween task-isolated uses and uses reachable from the callee
438 |           guard let data, !data.isEmpty else { throw ServerError.noData }
439 |           return try decoder.decode(Model.self, from: data)
[24/60] Compiling TripKitAPI UserDefaults+SharedDefaults.swift
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:17:21: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'TKServer' may have shared mutable state; this is an error in the Swift 6 language mode
 13 | #endif
 14 |
 15 | public class TKServer {
    |              `- note: class 'TKServer' does not conform to the 'Sendable' protocol
 16 |
 17 |   public static let shared = TKServer(isShared: true)
    |                     |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'TKServer' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 18 |
 19 |   init(isShared: Bool) {
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:622:7: warning: capture of 'info' with non-sendable type '(UUID, TKServer.Info) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
620 |         result = .success(data)
621 |       }
622 |       info(uuid, .response(request, response, result))
    |       |- warning: capture of 'info' with non-sendable type '(UUID, TKServer.Info) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
    |       `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
623 |
624 |       completion(.init(
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:624:7: warning: capture of 'completion' with non-sendable type '(TKServer.Response<Data?>) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
622 |       info(uuid, .response(request, response, result))
623 |
624 |       completion(.init(
    |       |- warning: capture of 'completion' with non-sendable type '(TKServer.Response<Data?>) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
    |       `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
625 |         statusCode: status,
626 |         headers: ((response as? HTTPURLResponse)?.allHeaderFields as? [String: Any]) ?? [:],
/host/spi-builder-workspace/Sources/TripKitAPI/extensions/Date+Helpers.swift:13:22: warning: static property 'iso8601formatter' is not concurrency-safe because non-'Sendable' type 'ISO8601DateFormatter' may have shared mutable state; this is an error in the Swift 6 language mode
11 | extension Date {
12 |
13 |   private static let iso8601formatter = ISO8601DateFormatter()
   |                      |- warning: static property 'iso8601formatter' is not concurrency-safe because non-'Sendable' type 'ISO8601DateFormatter' may have shared mutable state; this is an error in the Swift 6 language mode
   |                      |- note: add '@MainActor' to make static property 'iso8601formatter' part of global actor 'MainActor'
   |                      `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
14 |
15 |   public enum DateConversionError: Error {
Foundation.ISO8601DateFormatter:1:12: note: class 'ISO8601DateFormatter' does not conform to the 'Sendable' protocol
 1 | open class ISO8601DateFormatter : Formatter, NSSecureCoding {
   |            `- note: class 'ISO8601DateFormatter' does not conform to the 'Sendable' protocol
 2 |     open var timeZone: TimeZone! { get set }
 3 |     open var formatOptions: ISO8601DateFormatter.Options { get set }
/host/spi-builder-workspace/Sources/TripKitAPI/extensions/UserDefaults+SharedDefaults.swift:16:21: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'UserDefaults' may have shared mutable state; this is an error in the Swift 6 language mode
14 |   ///
15 |   /// Uses the suite defined if ``TKConfig/appGroupName`` is provided, or otherwise the `UserDefaults.standard`.
16 |   public static let shared: UserDefaults = {
   |                     |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'UserDefaults' may have shared mutable state; this is an error in the Swift 6 language mode
   |                     |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
   |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |     if let shared = UserDefaults(suiteName: TKConfig.shared.appGroupName) {
18 |       return shared
Foundation.UserDefaults:1:12: note: class 'UserDefaults' does not conform to the 'Sendable' protocol
 1 | open class UserDefaults : NSObject {
   |            `- note: class 'UserDefaults' does not conform to the 'Sendable' protocol
 2 |     open class var standard: UserDefaults { get }
 3 |     open class func resetStandardUserDefaults()
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:546:11: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
544 |       if callbackOnMain {
545 |         DispatchQueue.main.async {
546 |           completion(response)
    |           |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |           `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
547 |         }
548 |       } else {
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:546:22: warning: sending 'response' risks causing data races; this is an error in the Swift 6 language mode
544 |       if callbackOnMain {
545 |         DispatchQueue.main.async {
546 |           completion(response)
    |                      |- warning: sending 'response' risks causing data races; this is an error in the Swift 6 language mode
    |                      `- note: task-isolated 'response' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
547 |         }
548 |       } else {
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:303:22: warning: sending value of non-Sendable type 'TKServer.Response<Data>' risks causing data races; this is an error in the Swift 6 language mode
301 |           headers: headers)
302 |       { response in
303 |         continuation.resume(returning: response.map  { data in
    |                      |- warning: sending value of non-Sendable type 'TKServer.Response<Data>' risks causing data races; this is an error in the Swift 6 language mode
    |                      `- note: Passing task-isolated value of non-Sendable type 'TKServer.Response<Data>' as a 'sending' parameter risks causing races inbetween task-isolated uses and uses reachable from the callee
304 |           guard let data, !data.isEmpty else { throw ServerError.noData }
305 |           return data
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:326:22: warning: sending value of non-Sendable type 'TKServer.Response<Data>' risks causing data races; this is an error in the Swift 6 language mode
324 |         region: region)
325 |       { response in
326 |         continuation.resume(returning: response.map { data in
    |                      |- warning: sending value of non-Sendable type 'TKServer.Response<Data>' risks causing data races; this is an error in the Swift 6 language mode
    |                      `- note: Passing task-isolated value of non-Sendable type 'TKServer.Response<Data>' as a 'sending' parameter risks causing races inbetween task-isolated uses and uses reachable from the callee
327 |           guard let data, !data.isEmpty else { throw ServerError.noData }
328 |           return data
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:351:22: warning: sending value of non-Sendable type 'TKServer.Response<Model>' risks causing data races; this is an error in the Swift 6 language mode
349 |         callbackOnMain: false
350 |       ) { response in
351 |         continuation.resume(returning: response.map { data in
    |                      |- warning: sending value of non-Sendable type 'TKServer.Response<Model>' risks causing data races; this is an error in the Swift 6 language mode
    |                      `- note: Passing task-isolated value of non-Sendable type 'TKServer.Response<Model>' as a 'sending' parameter risks causing races inbetween task-isolated uses and uses reachable from the callee
352 |           guard let data, !data.isEmpty else { throw ServerError.noData }
353 |           return try JSONDecoder().decode(Model.self, from: data)
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:385:22: warning: sending value of non-Sendable type 'TKServer.Response<Output>' risks causing data races; this is an error in the Swift 6 language mode
383 |         callbackOnMain: false
384 |       ) { response in
385 |         continuation.resume(returning: response.map  { data in
    |                      |- warning: sending value of non-Sendable type 'TKServer.Response<Output>' risks causing data races; this is an error in the Swift 6 language mode
    |                      `- note: Passing task-isolated value of non-Sendable type 'TKServer.Response<Output>' as a 'sending' parameter risks causing races inbetween task-isolated uses and uses reachable from the callee
386 |           guard let data, !data.isEmpty else { throw ServerError.noData }
387 |           return try decoder.decode(Output.self, from: data)
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:414:22: warning: sending 'response' risks causing data races; this is an error in the Swift 6 language mode
412 |         callbackOnMain: false
413 |       ) { response in
414 |         continuation.resume(returning: response)
    |                      |- warning: sending 'response' risks causing data races; this is an error in the Swift 6 language mode
    |                      `- note: task-isolated 'response' is passed as a 'sending' parameter; Uses in callee may race with later task-isolated uses
415 |       }
416 |     }
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:437:22: warning: sending value of non-Sendable type 'TKServer.Response<Model>' risks causing data races; this is an error in the Swift 6 language mode
435 |           headers: headers)
436 |       { response in
437 |         continuation.resume(returning: response.map  { data in
    |                      |- warning: sending value of non-Sendable type 'TKServer.Response<Model>' risks causing data races; this is an error in the Swift 6 language mode
    |                      `- note: Passing task-isolated value of non-Sendable type 'TKServer.Response<Model>' as a 'sending' parameter risks causing races inbetween task-isolated uses and uses reachable from the callee
438 |           guard let data, !data.isEmpty else { throw ServerError.noData }
439 |           return try decoder.decode(Model.self, from: data)
[25/60] Compiling TripKitAPI AlertAPIModels.swift
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:17:21: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'TKServer' may have shared mutable state; this is an error in the Swift 6 language mode
 13 | #endif
 14 |
 15 | public class TKServer {
    |              `- note: class 'TKServer' does not conform to the 'Sendable' protocol
 16 |
 17 |   public static let shared = TKServer(isShared: true)
    |                     |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'TKServer' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 18 |
 19 |   init(isShared: Bool) {
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:622:7: warning: capture of 'info' with non-sendable type '(UUID, TKServer.Info) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
620 |         result = .success(data)
621 |       }
622 |       info(uuid, .response(request, response, result))
    |       |- warning: capture of 'info' with non-sendable type '(UUID, TKServer.Info) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
    |       `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
623 |
624 |       completion(.init(
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:624:7: warning: capture of 'completion' with non-sendable type '(TKServer.Response<Data?>) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
622 |       info(uuid, .response(request, response, result))
623 |
624 |       completion(.init(
    |       |- warning: capture of 'completion' with non-sendable type '(TKServer.Response<Data?>) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
    |       `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
625 |         statusCode: status,
626 |         headers: ((response as? HTTPURLResponse)?.allHeaderFields as? [String: Any]) ?? [:],
/host/spi-builder-workspace/Sources/TripKitAPI/extensions/Date+Helpers.swift:13:22: warning: static property 'iso8601formatter' is not concurrency-safe because non-'Sendable' type 'ISO8601DateFormatter' may have shared mutable state; this is an error in the Swift 6 language mode
11 | extension Date {
12 |
13 |   private static let iso8601formatter = ISO8601DateFormatter()
   |                      |- warning: static property 'iso8601formatter' is not concurrency-safe because non-'Sendable' type 'ISO8601DateFormatter' may have shared mutable state; this is an error in the Swift 6 language mode
   |                      |- note: add '@MainActor' to make static property 'iso8601formatter' part of global actor 'MainActor'
   |                      `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
14 |
15 |   public enum DateConversionError: Error {
Foundation.ISO8601DateFormatter:1:12: note: class 'ISO8601DateFormatter' does not conform to the 'Sendable' protocol
 1 | open class ISO8601DateFormatter : Formatter, NSSecureCoding {
   |            `- note: class 'ISO8601DateFormatter' does not conform to the 'Sendable' protocol
 2 |     open var timeZone: TimeZone! { get set }
 3 |     open var formatOptions: ISO8601DateFormatter.Options { get set }
/host/spi-builder-workspace/Sources/TripKitAPI/extensions/UserDefaults+SharedDefaults.swift:16:21: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'UserDefaults' may have shared mutable state; this is an error in the Swift 6 language mode
14 |   ///
15 |   /// Uses the suite defined if ``TKConfig/appGroupName`` is provided, or otherwise the `UserDefaults.standard`.
16 |   public static let shared: UserDefaults = {
   |                     |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'UserDefaults' may have shared mutable state; this is an error in the Swift 6 language mode
   |                     |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
   |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |     if let shared = UserDefaults(suiteName: TKConfig.shared.appGroupName) {
18 |       return shared
Foundation.UserDefaults:1:12: note: class 'UserDefaults' does not conform to the 'Sendable' protocol
 1 | open class UserDefaults : NSObject {
   |            `- note: class 'UserDefaults' does not conform to the 'Sendable' protocol
 2 |     open class var standard: UserDefaults { get }
 3 |     open class func resetStandardUserDefaults()
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:546:11: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
544 |       if callbackOnMain {
545 |         DispatchQueue.main.async {
546 |           completion(response)
    |           |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |           `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
547 |         }
548 |       } else {
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:546:22: warning: sending 'response' risks causing data races; this is an error in the Swift 6 language mode
544 |       if callbackOnMain {
545 |         DispatchQueue.main.async {
546 |           completion(response)
    |                      |- warning: sending 'response' risks causing data races; this is an error in the Swift 6 language mode
    |                      `- note: task-isolated 'response' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
547 |         }
548 |       } else {
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:303:22: warning: sending value of non-Sendable type 'TKServer.Response<Data>' risks causing data races; this is an error in the Swift 6 language mode
301 |           headers: headers)
302 |       { response in
303 |         continuation.resume(returning: response.map  { data in
    |                      |- warning: sending value of non-Sendable type 'TKServer.Response<Data>' risks causing data races; this is an error in the Swift 6 language mode
    |                      `- note: Passing task-isolated value of non-Sendable type 'TKServer.Response<Data>' as a 'sending' parameter risks causing races inbetween task-isolated uses and uses reachable from the callee
304 |           guard let data, !data.isEmpty else { throw ServerError.noData }
305 |           return data
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:326:22: warning: sending value of non-Sendable type 'TKServer.Response<Data>' risks causing data races; this is an error in the Swift 6 language mode
324 |         region: region)
325 |       { response in
326 |         continuation.resume(returning: response.map { data in
    |                      |- warning: sending value of non-Sendable type 'TKServer.Response<Data>' risks causing data races; this is an error in the Swift 6 language mode
    |                      `- note: Passing task-isolated value of non-Sendable type 'TKServer.Response<Data>' as a 'sending' parameter risks causing races inbetween task-isolated uses and uses reachable from the callee
327 |           guard let data, !data.isEmpty else { throw ServerError.noData }
328 |           return data
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:351:22: warning: sending value of non-Sendable type 'TKServer.Response<Model>' risks causing data races; this is an error in the Swift 6 language mode
349 |         callbackOnMain: false
350 |       ) { response in
351 |         continuation.resume(returning: response.map { data in
    |                      |- warning: sending value of non-Sendable type 'TKServer.Response<Model>' risks causing data races; this is an error in the Swift 6 language mode
    |                      `- note: Passing task-isolated value of non-Sendable type 'TKServer.Response<Model>' as a 'sending' parameter risks causing races inbetween task-isolated uses and uses reachable from the callee
352 |           guard let data, !data.isEmpty else { throw ServerError.noData }
353 |           return try JSONDecoder().decode(Model.self, from: data)
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:385:22: warning: sending value of non-Sendable type 'TKServer.Response<Output>' risks causing data races; this is an error in the Swift 6 language mode
383 |         callbackOnMain: false
384 |       ) { response in
385 |         continuation.resume(returning: response.map  { data in
    |                      |- warning: sending value of non-Sendable type 'TKServer.Response<Output>' risks causing data races; this is an error in the Swift 6 language mode
    |                      `- note: Passing task-isolated value of non-Sendable type 'TKServer.Response<Output>' as a 'sending' parameter risks causing races inbetween task-isolated uses and uses reachable from the callee
386 |           guard let data, !data.isEmpty else { throw ServerError.noData }
387 |           return try decoder.decode(Output.self, from: data)
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:414:22: warning: sending 'response' risks causing data races; this is an error in the Swift 6 language mode
412 |         callbackOnMain: false
413 |       ) { response in
414 |         continuation.resume(returning: response)
    |                      |- warning: sending 'response' risks causing data races; this is an error in the Swift 6 language mode
    |                      `- note: task-isolated 'response' is passed as a 'sending' parameter; Uses in callee may race with later task-isolated uses
415 |       }
416 |     }
/host/spi-builder-workspace/Sources/TripKitAPI/TKServer.swift:437:22: warning: sending value of non-Sendable type 'TKServer.Response<Model>' risks causing data races; this is an error in the Swift 6 language mode
435 |           headers: headers)
436 |       { response in
437 |         continuation.resume(returning: response.map  { data in
    |                      |- warning: sending value of non-Sendable type 'TKServer.Response<Model>' risks causing data races; this is an error in the Swift 6 language mode
    |                      `- note: Passing task-isolated value of non-Sendable type 'TKServer.Response<Model>' as a 'sending' parameter risks causing races inbetween task-isolated uses and uses reachable from the callee
438 |           guard let data, !data.isEmpty else { throw ServerError.noData }
439 |           return try decoder.decode(Model.self, from: data)
[26/60] Compiling TripKitAPI DefaultEmptyArray.swift
[27/60] Compiling TripKitAPI DefaultFalse.swift
[28/60] Compiling TripKitAPI DefaultLossyArray.swift
[29/60] Compiling TripKitAPI DefaultNil.swift
[30/60] Compiling TripKitAPI DefaultTrue.swift
[31/60] Compiling TripKitAPI ISO8601OrSecondsSince1970.swift
[32/60] Compiling TripKitAPI LossyArray.swift
[33/60] Compiling TripKitAPI CLLocationCoordinate2D+EncodePolylineString.swift
/host/spi-builder-workspace/Sources/TripKitAPI/vendor/ASPolygonKit/Polygon.swift:19:8: warning: associated value 'polygonTooComplex' of 'Sendable'-conforming enum 'PolygonUnionError' has non-sendable type 'Polygon.UnionStep'; this is an error in the Swift 6 language mode
 17 |
 18 |   #if DEBUG
 19 |   case polygonTooComplex([Polygon.UnionStep])
    |        `- warning: associated value 'polygonTooComplex' of 'Sendable'-conforming enum 'PolygonUnionError' has non-sendable type 'Polygon.UnionStep'; this is an error in the Swift 6 language mode
 20 |   #else
 21 |   case polygonTooComplex
    :
 36 | public struct Polygon {
 37 |   #if DEBUG
 38 |   enum UnionStep {
    |        `- note: consider making enum 'UnionStep' conform to the 'Sendable' protocol
 39 |     case start(Polygon, Polygon, [Intersection], start: Point)
 40 |     case extendMine(partial: [Point])
[34/60] Compiling TripKitAPI Geometry.swift
/host/spi-builder-workspace/Sources/TripKitAPI/vendor/ASPolygonKit/Polygon.swift:19:8: warning: associated value 'polygonTooComplex' of 'Sendable'-conforming enum 'PolygonUnionError' has non-sendable type 'Polygon.UnionStep'; this is an error in the Swift 6 language mode
 17 |
 18 |   #if DEBUG
 19 |   case polygonTooComplex([Polygon.UnionStep])
    |        `- warning: associated value 'polygonTooComplex' of 'Sendable'-conforming enum 'PolygonUnionError' has non-sendable type 'Polygon.UnionStep'; this is an error in the Swift 6 language mode
 20 |   #else
 21 |   case polygonTooComplex
    :
 36 | public struct Polygon {
 37 |   #if DEBUG
 38 |   enum UnionStep {
    |        `- note: consider making enum 'UnionStep' conform to the 'Sendable' protocol
 39 |     case start(Polygon, Polygon, [Intersection], start: Point)
 40 |     case extendMine(partial: [Point])
[35/60] Compiling TripKitAPI MKPolygon+Union.swift
/host/spi-builder-workspace/Sources/TripKitAPI/vendor/ASPolygonKit/Polygon.swift:19:8: warning: associated value 'polygonTooComplex' of 'Sendable'-conforming enum 'PolygonUnionError' has non-sendable type 'Polygon.UnionStep'; this is an error in the Swift 6 language mode
 17 |
 18 |   #if DEBUG
 19 |   case polygonTooComplex([Polygon.UnionStep])
    |        `- warning: associated value 'polygonTooComplex' of 'Sendable'-conforming enum 'PolygonUnionError' has non-sendable type 'Polygon.UnionStep'; this is an error in the Swift 6 language mode
 20 |   #else
 21 |   case polygonTooComplex
    :
 36 | public struct Polygon {
 37 |   #if DEBUG
 38 |   enum UnionStep {
    |        `- note: consider making enum 'UnionStep' conform to the 'Sendable' protocol
 39 |     case start(Polygon, Polygon, [Intersection], start: Point)
 40 |     case extendMine(partial: [Point])
[36/60] Compiling TripKitAPI Polygon+GeoJSON.swift
/host/spi-builder-workspace/Sources/TripKitAPI/vendor/ASPolygonKit/Polygon.swift:19:8: warning: associated value 'polygonTooComplex' of 'Sendable'-conforming enum 'PolygonUnionError' has non-sendable type 'Polygon.UnionStep'; this is an error in the Swift 6 language mode
 17 |
 18 |   #if DEBUG
 19 |   case polygonTooComplex([Polygon.UnionStep])
    |        `- warning: associated value 'polygonTooComplex' of 'Sendable'-conforming enum 'PolygonUnionError' has non-sendable type 'Polygon.UnionStep'; this is an error in the Swift 6 language mode
 20 |   #else
 21 |   case polygonTooComplex
    :
 36 | public struct Polygon {
 37 |   #if DEBUG
 38 |   enum UnionStep {
    |        `- note: consider making enum 'UnionStep' conform to the 'Sendable' protocol
 39 |     case start(Polygon, Polygon, [Intersection], start: Point)
 40 |     case extendMine(partial: [Point])
[37/60] Compiling TripKitAPI Polygon.swift
/host/spi-builder-workspace/Sources/TripKitAPI/vendor/ASPolygonKit/Polygon.swift:19:8: warning: associated value 'polygonTooComplex' of 'Sendable'-conforming enum 'PolygonUnionError' has non-sendable type 'Polygon.UnionStep'; this is an error in the Swift 6 language mode
 17 |
 18 |   #if DEBUG
 19 |   case polygonTooComplex([Polygon.UnionStep])
    |        `- warning: associated value 'polygonTooComplex' of 'Sendable'-conforming enum 'PolygonUnionError' has non-sendable type 'Polygon.UnionStep'; this is an error in the Swift 6 language mode
 20 |   #else
 21 |   case polygonTooComplex
    :
 36 | public struct Polygon {
 37 |   #if DEBUG
 38 |   enum UnionStep {
    |        `- note: consider making enum 'UnionStep' conform to the 'Sendable' protocol
 39 |     case start(Polygon, Polygon, [Intersection], start: Point)
 40 |     case extendMine(partial: [Point])
[38/60] Compiling TripKitAPI QuickLookable.swift
/host/spi-builder-workspace/Sources/TripKitAPI/vendor/ASPolygonKit/Polygon.swift:19:8: warning: associated value 'polygonTooComplex' of 'Sendable'-conforming enum 'PolygonUnionError' has non-sendable type 'Polygon.UnionStep'; this is an error in the Swift 6 language mode
 17 |
 18 |   #if DEBUG
 19 |   case polygonTooComplex([Polygon.UnionStep])
    |        `- warning: associated value 'polygonTooComplex' of 'Sendable'-conforming enum 'PolygonUnionError' has non-sendable type 'Polygon.UnionStep'; this is an error in the Swift 6 language mode
 20 |   #else
 21 |   case polygonTooComplex
    :
 36 | public struct Polygon {
 37 |   #if DEBUG
 38 |   enum UnionStep {
    |        `- note: consider making enum 'UnionStep' conform to the 'Sendable' protocol
 39 |     case start(Polygon, Polygon, [Intersection], start: Point)
 40 |     case extendMine(partial: [Point])
[39/60] Compiling TripKitAPI DefaultCodable.swift
/host/spi-builder-workspace/Sources/TripKitAPI/vendor/ASPolygonKit/Polygon.swift:19:8: warning: associated value 'polygonTooComplex' of 'Sendable'-conforming enum 'PolygonUnionError' has non-sendable type 'Polygon.UnionStep'; this is an error in the Swift 6 language mode
 17 |
 18 |   #if DEBUG
 19 |   case polygonTooComplex([Polygon.UnionStep])
    |        `- warning: associated value 'polygonTooComplex' of 'Sendable'-conforming enum 'PolygonUnionError' has non-sendable type 'Polygon.UnionStep'; this is an error in the Swift 6 language mode
 20 |   #else
 21 |   case polygonTooComplex
    :
 36 | public struct Polygon {
 37 |   #if DEBUG
 38 |   enum UnionStep {
    |        `- note: consider making enum 'UnionStep' conform to the 'Sendable' protocol
 39 |     case start(Polygon, Polygon, [Intersection], start: Point)
 40 |     case extendMine(partial: [Point])
[40/60] Compiling TripKitAPI BaseAPIModels.swift
/host/spi-builder-workspace/Sources/TripKitAPI/model/API/EventAPIModel.swift:14:23: warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'TKAPI.EventsResponse' may have shared mutable state; this is an error in the Swift 6 language mode
11 | extension TKAPI {
12 |
13 |   public struct EventsResponse: Codable, Hashable {
   |                 `- note: consider making struct 'EventsResponse' conform to the 'Sendable' protocol
14 |     public static let empty: EventsResponse = EventsResponse(events: [])
   |                       |- warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'TKAPI.EventsResponse' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: add '@MainActor' to make static property 'empty' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
15 |
16 |     public let events: [Event]
/host/spi-builder-workspace/Sources/TripKitAPI/model/API/OpeningHoursAPIModel.swift:130:27: warning: static property 'weekdays' is not concurrency-safe because non-'Sendable' type '[TKAPI.OpeningHours.Day.DayOfWeek]' may have shared mutable state; this is an error in the Swift 6 language mode
118 |
119 |
120 |       public enum DayOfWeek: String, Codable {
    |                   `- note: consider making enum 'DayOfWeek' conform to the 'Sendable' protocol
121 |         case monday         = "MONDAY"
122 |         case tuesday        = "TUESDAY"
    :
128 |         case publicHoliday  = "PUBLIC_HOLIDAY"
129 |
130 |         public static let weekdays: [DayOfWeek] = [
    |                           |- warning: static property 'weekdays' is not concurrency-safe because non-'Sendable' type '[TKAPI.OpeningHours.Day.DayOfWeek]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'weekdays' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
131 |           .monday, .tuesday, .wednesday, .thursday, .friday, .saturday, .sunday
132 |         ]
[41/60] Compiling TripKitAPI DeparturesAPIModel.swift
/host/spi-builder-workspace/Sources/TripKitAPI/model/API/EventAPIModel.swift:14:23: warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'TKAPI.EventsResponse' may have shared mutable state; this is an error in the Swift 6 language mode
11 | extension TKAPI {
12 |
13 |   public struct EventsResponse: Codable, Hashable {
   |                 `- note: consider making struct 'EventsResponse' conform to the 'Sendable' protocol
14 |     public static let empty: EventsResponse = EventsResponse(events: [])
   |                       |- warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'TKAPI.EventsResponse' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: add '@MainActor' to make static property 'empty' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
15 |
16 |     public let events: [Event]
/host/spi-builder-workspace/Sources/TripKitAPI/model/API/OpeningHoursAPIModel.swift:130:27: warning: static property 'weekdays' is not concurrency-safe because non-'Sendable' type '[TKAPI.OpeningHours.Day.DayOfWeek]' may have shared mutable state; this is an error in the Swift 6 language mode
118 |
119 |
120 |       public enum DayOfWeek: String, Codable {
    |                   `- note: consider making enum 'DayOfWeek' conform to the 'Sendable' protocol
121 |         case monday         = "MONDAY"
122 |         case tuesday        = "TUESDAY"
    :
128 |         case publicHoliday  = "PUBLIC_HOLIDAY"
129 |
130 |         public static let weekdays: [DayOfWeek] = [
    |                           |- warning: static property 'weekdays' is not concurrency-safe because non-'Sendable' type '[TKAPI.OpeningHours.Day.DayOfWeek]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'weekdays' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
131 |           .monday, .tuesday, .wednesday, .thursday, .friday, .saturday, .sunday
132 |         ]
[42/60] Compiling TripKitAPI EventAPIModel.swift
/host/spi-builder-workspace/Sources/TripKitAPI/model/API/EventAPIModel.swift:14:23: warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'TKAPI.EventsResponse' may have shared mutable state; this is an error in the Swift 6 language mode
11 | extension TKAPI {
12 |
13 |   public struct EventsResponse: Codable, Hashable {
   |                 `- note: consider making struct 'EventsResponse' conform to the 'Sendable' protocol
14 |     public static let empty: EventsResponse = EventsResponse(events: [])
   |                       |- warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'TKAPI.EventsResponse' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: add '@MainActor' to make static property 'empty' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
15 |
16 |     public let events: [Event]
/host/spi-builder-workspace/Sources/TripKitAPI/model/API/OpeningHoursAPIModel.swift:130:27: warning: static property 'weekdays' is not concurrency-safe because non-'Sendable' type '[TKAPI.OpeningHours.Day.DayOfWeek]' may have shared mutable state; this is an error in the Swift 6 language mode
118 |
119 |
120 |       public enum DayOfWeek: String, Codable {
    |                   `- note: consider making enum 'DayOfWeek' conform to the 'Sendable' protocol
121 |         case monday         = "MONDAY"
122 |         case tuesday        = "TUESDAY"
    :
128 |         case publicHoliday  = "PUBLIC_HOLIDAY"
129 |
130 |         public static let weekdays: [DayOfWeek] = [
    |                           |- warning: static property 'weekdays' is not concurrency-safe because non-'Sendable' type '[TKAPI.OpeningHours.Day.DayOfWeek]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'weekdays' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
131 |           .monday, .tuesday, .wednesday, .thursday, .friday, .saturday, .sunday
132 |         ]
[43/60] Compiling TripKitAPI LatestAPIModel.swift
/host/spi-builder-workspace/Sources/TripKitAPI/model/API/EventAPIModel.swift:14:23: warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'TKAPI.EventsResponse' may have shared mutable state; this is an error in the Swift 6 language mode
11 | extension TKAPI {
12 |
13 |   public struct EventsResponse: Codable, Hashable {
   |                 `- note: consider making struct 'EventsResponse' conform to the 'Sendable' protocol
14 |     public static let empty: EventsResponse = EventsResponse(events: [])
   |                       |- warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'TKAPI.EventsResponse' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: add '@MainActor' to make static property 'empty' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
15 |
16 |     public let events: [Event]
/host/spi-builder-workspace/Sources/TripKitAPI/model/API/OpeningHoursAPIModel.swift:130:27: warning: static property 'weekdays' is not concurrency-safe because non-'Sendable' type '[TKAPI.OpeningHours.Day.DayOfWeek]' may have shared mutable state; this is an error in the Swift 6 language mode
118 |
119 |
120 |       public enum DayOfWeek: String, Codable {
    |                   `- note: consider making enum 'DayOfWeek' conform to the 'Sendable' protocol
121 |         case monday         = "MONDAY"
122 |         case tuesday        = "TUESDAY"
    :
128 |         case publicHoliday  = "PUBLIC_HOLIDAY"
129 |
130 |         public static let weekdays: [DayOfWeek] = [
    |                           |- warning: static property 'weekdays' is not concurrency-safe because non-'Sendable' type '[TKAPI.OpeningHours.Day.DayOfWeek]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'weekdays' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
131 |           .monday, .tuesday, .wednesday, .thursday, .friday, .saturday, .sunday
132 |         ]
[44/60] Compiling TripKitAPI OpeningHoursAPIModel.swift
/host/spi-builder-workspace/Sources/TripKitAPI/model/API/EventAPIModel.swift:14:23: warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'TKAPI.EventsResponse' may have shared mutable state; this is an error in the Swift 6 language mode
11 | extension TKAPI {
12 |
13 |   public struct EventsResponse: Codable, Hashable {
   |                 `- note: consider making struct 'EventsResponse' conform to the 'Sendable' protocol
14 |     public static let empty: EventsResponse = EventsResponse(events: [])
   |                       |- warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'TKAPI.EventsResponse' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: add '@MainActor' to make static property 'empty' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
15 |
16 |     public let events: [Event]
/host/spi-builder-workspace/Sources/TripKitAPI/model/API/OpeningHoursAPIModel.swift:130:27: warning: static property 'weekdays' is not concurrency-safe because non-'Sendable' type '[TKAPI.OpeningHours.Day.DayOfWeek]' may have shared mutable state; this is an error in the Swift 6 language mode
118 |
119 |
120 |       public enum DayOfWeek: String, Codable {
    |                   `- note: consider making enum 'DayOfWeek' conform to the 'Sendable' protocol
121 |         case monday         = "MONDAY"
122 |         case tuesday        = "TUESDAY"
    :
128 |         case publicHoliday  = "PUBLIC_HOLIDAY"
129 |
130 |         public static let weekdays: [DayOfWeek] = [
    |                           |- warning: static property 'weekdays' is not concurrency-safe because non-'Sendable' type '[TKAPI.OpeningHours.Day.DayOfWeek]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'weekdays' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
131 |           .monday, .tuesday, .wednesday, .thursday, .friday, .saturday, .sunday
132 |         ]
[45/60] Compiling TripKitAPI PricingTableAPIModel.swift
/host/spi-builder-workspace/Sources/TripKitAPI/model/API/EventAPIModel.swift:14:23: warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'TKAPI.EventsResponse' may have shared mutable state; this is an error in the Swift 6 language mode
11 | extension TKAPI {
12 |
13 |   public struct EventsResponse: Codable, Hashable {
   |                 `- note: consider making struct 'EventsResponse' conform to the 'Sendable' protocol
14 |     public static let empty: EventsResponse = EventsResponse(events: [])
   |                       |- warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'TKAPI.EventsResponse' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: add '@MainActor' to make static property 'empty' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
15 |
16 |     public let events: [Event]
/host/spi-builder-workspace/Sources/TripKitAPI/model/API/OpeningHoursAPIModel.swift:130:27: warning: static property 'weekdays' is not concurrency-safe because non-'Sendable' type '[TKAPI.OpeningHours.Day.DayOfWeek]' may have shared mutable state; this is an error in the Swift 6 language mode
118 |
119 |
120 |       public enum DayOfWeek: String, Codable {
    |                   `- note: consider making enum 'DayOfWeek' conform to the 'Sendable' protocol
121 |         case monday         = "MONDAY"
122 |         case tuesday        = "TUESDAY"
    :
128 |         case publicHoliday  = "PUBLIC_HOLIDAY"
129 |
130 |         public static let weekdays: [DayOfWeek] = [
    |                           |- warning: static property 'weekdays' is not concurrency-safe because non-'Sendable' type '[TKAPI.OpeningHours.Day.DayOfWeek]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'weekdays' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
131 |           .monday, .tuesday, .wednesday, .thursday, .friday, .saturday, .sunday
132 |         ]
[46/60] Compiling TripKitAPI RegionInfoAPIModel.swift
/host/spi-builder-workspace/Sources/TripKitAPI/model/API/EventAPIModel.swift:14:23: warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'TKAPI.EventsResponse' may have shared mutable state; this is an error in the Swift 6 language mode
11 | extension TKAPI {
12 |
13 |   public struct EventsResponse: Codable, Hashable {
   |                 `- note: consider making struct 'EventsResponse' conform to the 'Sendable' protocol
14 |     public static let empty: EventsResponse = EventsResponse(events: [])
   |                       |- warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'TKAPI.EventsResponse' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: add '@MainActor' to make static property 'empty' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
15 |
16 |     public let events: [Event]
/host/spi-builder-workspace/Sources/TripKitAPI/model/API/OpeningHoursAPIModel.swift:130:27: warning: static property 'weekdays' is not concurrency-safe because non-'Sendable' type '[TKAPI.OpeningHours.Day.DayOfWeek]' may have shared mutable state; this is an error in the Swift 6 language mode
118 |
119 |
120 |       public enum DayOfWeek: String, Codable {
    |                   `- note: consider making enum 'DayOfWeek' conform to the 'Sendable' protocol
121 |         case monday         = "MONDAY"
122 |         case tuesday        = "TUESDAY"
    :
128 |         case publicHoliday  = "PUBLIC_HOLIDAY"
129 |
130 |         public static let weekdays: [DayOfWeek] = [
    |                           |- warning: static property 'weekdays' is not concurrency-safe because non-'Sendable' type '[TKAPI.OpeningHours.Day.DayOfWeek]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'weekdays' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
131 |           .monday, .tuesday, .wednesday, .thursday, .friday, .saturday, .sunday
132 |         ]
[47/60] Compiling TripKitAPI TKModeInfo.swift
[48/60] Compiling TripKitAPI TKRegion.swift
[49/60] Compiling TripKitAPI TKRoutingQuery.swift
[50/60] Compiling TripKitAPI TKTransportMode.swift
[51/60] Compiling TripKitAPI TKTripCostType.swift
[52/60] Compiling TripKitAPI TKTurnByTurnMode.swift
[53/60] Compiling TripKitAPI CLLocationCoordinate2D+DecodePolylineString.swift
[54/60] Compiling TripKitAPI RegionsAPIModel.swift
[55/60] Compiling TripKitAPI RouteAPIModel.swift
[56/60] Compiling TripKitAPI RoutingAPIModel.swift
[57/60] Compiling TripKitAPI ServiceAPIModel.swift
[58/60] Compiling TripKitAPI StopAPIModel.swift
[59/60] Compiling TripKitAPI TKAPI.swift
[60/60] Compiling TripKitAPI UserAPIModel.swift
Build complete! (14.29s)
Build complete.
{
  "default_localization" : "en",
  "dependencies" : [
  ],
  "manifest_display_name" : "TripKit",
  "name" : "TripKit",
  "path" : "/host/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "ios",
      "version" : "15.0"
    },
    {
      "name" : "macos",
      "version" : "11.0"
    }
  ],
  "products" : [
    {
      "name" : "TripKitAPI",
      "targets" : [
        "TripKitAPI"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "TripKitAPI",
      "module_type" : "SwiftTarget",
      "name" : "TripKitAPI",
      "path" : "Sources/TripKitAPI",
      "product_memberships" : [
        "TripKitAPI"
      ],
      "sources" : [
        "TKAPIConfig.swift",
        "TKConfig.swift",
        "TKCrossPlatform.swift",
        "TKLog.swift",
        "TKRegionManager.swift",
        "TKRouter.swift",
        "TKRoutingServer.swift",
        "TKServer+Regions.swift",
        "TKServer.swift",
        "extensions/Array+Duplicates.swift",
        "extensions/Codable+Helpers.swift",
        "extensions/Date+Helpers.swift",
        "extensions/NSError+customError.swift",
        "extensions/UserDefaults+SharedDefaults.swift",
        "model/API/AlertAPIModels.swift",
        "model/API/BaseAPIModels.swift",
        "model/API/DeparturesAPIModel.swift",
        "model/API/EventAPIModel.swift",
        "model/API/LatestAPIModel.swift",
        "model/API/OpeningHoursAPIModel.swift",
        "model/API/PricingTableAPIModel.swift",
        "model/API/RegionInfoAPIModel.swift",
        "model/API/RegionsAPIModel.swift",
        "model/API/RouteAPIModel.swift",
        "model/API/RoutingAPIModel.swift",
        "model/API/ServiceAPIModel.swift",
        "model/API/StopAPIModel.swift",
        "model/API/TKAPI.swift",
        "model/API/UserAPIModel.swift",
        "model/API/VehicleAPIModel.swift",
        "model/TKBookingData.swift",
        "model/TKBookingTypes.swift",
        "model/TKError.swift",
        "model/TKLocalCost.swift",
        "model/TKMapTiles.swift",
        "model/TKMiniInstruction.swift",
        "model/TKModeInfo.swift",
        "model/TKRegion.swift",
        "model/TKRoutingQuery.swift",
        "model/TKTransportMode.swift",
        "model/TKTripCostType.swift",
        "model/TKTurnByTurnMode.swift",
        "vendor/ASPolygonKit/CLLocationCoordinate2D+DecodePolylineString.swift",
        "vendor/ASPolygonKit/CLLocationCoordinate2D+EncodePolylineString.swift",
        "vendor/ASPolygonKit/Geometry.swift",
        "vendor/ASPolygonKit/MKPolygon+Union.swift",
        "vendor/ASPolygonKit/Polygon+GeoJSON.swift",
        "vendor/ASPolygonKit/Polygon.swift",
        "vendor/ASPolygonKit/QuickLookable.swift",
        "vendor/BetterCodable/DefaultCodable.swift",
        "vendor/BetterCodable/DefaultEmptyArray.swift",
        "vendor/BetterCodable/DefaultFalse.swift",
        "vendor/BetterCodable/DefaultLossyArray.swift",
        "vendor/BetterCodable/DefaultNil.swift",
        "vendor/BetterCodable/DefaultTrue.swift",
        "vendor/BetterCodable/ISO8601OrSecondsSince1970.swift",
        "vendor/BetterCodable/LossyArray.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.9"
}
basic-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:99ea6d26ace67c023f359493a2ac553a612b92a7f2dee009657225f46f43aa0e
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.1-latest
Done.