The Swift Package Index logo.Swift Package Index

Track the adoption of Swift 6 strict concurrency checks for data race safety. How many packages are Ready for Swift 6?

Build Information

Successful build of Plug, reference 1.0.1 (b6af31), with Swift 6.1 for macOS (SPM) on 25 Apr 2025 00:10:10 UTC.

Swift 6 data race errors: 12

Build Command

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

Build Log

========================================
RunAll
========================================
Builder version: 4.61.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/bengottlieb/plug.git
Reference: 1.0.1
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/bengottlieb/plug
 * tag               1.0.1      -> FETCH_HEAD
HEAD is now at b6af31a Merge branch 'master' of github.com:bengottlieb/Plug
Cloned https://github.com/bengottlieb/plug.git
Revision (git rev-parse @):
b6af31a11c516000182af73a8333306c1d4b65ba
SUCCESS checkout https://github.com/bengottlieb/plug.git at 1.0.1
========================================
ResolveProductDependencies
========================================
Resolving dependencies ...
{
  "identity": ".resolve-product-dependencies",
  "name": "resolve-dependencies",
  "url": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
  "version": "unspecified",
  "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
  "dependencies": [
    {
      "identity": "plug",
      "name": "Plug",
      "url": "https://github.com/bengottlieb/plug.git",
      "version": "unspecified",
      "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/plug",
      "dependencies": [
      ]
    }
  ]
}
Fetching https://github.com/bengottlieb/plug.git
[1/2773] Fetching plug
Fetched https://github.com/bengottlieb/plug.git from cache (1.37s)
Creating working copy for https://github.com/bengottlieb/plug.git
Working copy of https://github.com/bengottlieb/plug.git resolved at 1.0.1 (b6af31a)
warning: '.resolve-product-dependencies': dependency 'plug' is not used by any target
Found 0 product dependencies
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.1
Building package at path:  $PWD
https://github.com/bengottlieb/plug.git
https://github.com/bengottlieb/plug.git
{
  "dependencies" : [
  ],
  "manifest_display_name" : "Plug",
  "name" : "Plug",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
  ],
  "products" : [
    {
      "name" : "Plug",
      "targets" : [
        "Plug"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "Plug",
      "module_type" : "SwiftTarget",
      "name" : "Plug",
      "path" : "Source/Plug",
      "product_memberships" : [
        "Plug"
      ],
      "sources" : [
        "Codable+Additions.swift",
        "ConnectionLog.swift",
        "ConnectionLogViewController.swift",
        "HTTPCookie+Plug.swift",
        "Incoming.swift",
        "JSONStringify.swift",
        "NSURLRequest+Plug.swift",
        "Plug+iOS.swift",
        "Plug.ConnectionData.swift",
        "Plug.Headers.swift",
        "Plug.swift",
        "PlugChannel.swift",
        "PlugConnection.swift",
        "PlugCredentials.swift",
        "PlugErrors.swift",
        "PlugImageConnection.swift",
        "PlugJSON.swift",
        "PlugJSONConnection.swift",
        "PlugParameters.swift",
        "PlugPersistence.swift",
        "PlugProtocols.swift",
        "Reachability.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.1"
}
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -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
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version-2F0A5646E1D333AE.txt
[3/23] Emitting module Plug
/Users/admin/builder/spi-builder-workspace/Source/Plug/Plug.swift:66:20: warning: static property 'connectionType' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 64 |
 65 | 	public static let instance = Plug()
 66 | 	public static var connectionType = ConnectionType.wifi          //let's try starting off optimistically
    |                    |- warning: static property 'connectionType' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: convert 'connectionType' to a 'let' constant to make 'Sendable' shared state immutable
    |                    |- note: add '@MainActor' to make static property 'connectionType' part of global actor 'MainActor'
    |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 67 | 	public static var online: Bool { return self.connectionType != .offline }
 68 | 	public static var logAllConnections = false { didSet {
/Users/admin/builder/spi-builder-workspace/Source/Plug/Plug.swift:68:20: warning: static property 'logAllConnections' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 66 | 	public static var connectionType = ConnectionType.wifi          //let's try starting off optimistically
 67 | 	public static var online: Bool { return self.connectionType != .offline }
 68 | 	public static var logAllConnections = false { didSet {
    |                    |- warning: static property 'logAllConnections' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: convert 'logAllConnections' to a 'let' constant to make 'Sendable' shared state immutable
    |                    |- note: add '@MainActor' to make static property 'logAllConnections' part of global actor 'MainActor'
    |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 69 | 		if self.logAllConnections, self.log == nil {
 70 | 			self.log = ConnectionLog()
/Users/admin/builder/spi-builder-workspace/Source/Plug/Plug.swift:75:20: warning: static property 'log' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 73 | 		}
 74 | 	}}
 75 | 	public static var log: ConnectionLog?
    |                    |- warning: static property 'log' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: convert 'log' to a 'let' constant to make 'Sendable' shared state immutable
    |                    |- note: add '@MainActor' to make static property 'log' part of global actor 'MainActor'
    |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 76 |
 77 | 	public struct notifications {
/Users/admin/builder/spi-builder-workspace/Source/Plug/Plug.swift:30:14: warning: non-final class 'Plug' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
 28 | }
 29 |
 30 | public class Plug: NSObject, URLSessionDelegate {
    |              `- warning: non-final class 'Plug' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
 31 | 	public enum ConnectionType: Int { case offline, wifi, cellular }
 32 | 	public enum Method: String, CustomStringConvertible, Codable { case GET = "GET", POST = "POST", DELETE = "DELETE", PUT = "PUT", PATCH = "PATCH", HEAD = "HEAD"
/Users/admin/builder/spi-builder-workspace/Source/Plug/Plug.swift:42:6: warning: stored property 'backgroundActivityHandler' of 'Sendable'-conforming class 'Plug' is mutable; this is an error in the Swift 6 language mode
 40 | 	}
 41 |
 42 | 	var backgroundActivityHandler: BackgroundActivityHandlerProtocol?
    |      `- warning: stored property 'backgroundActivityHandler' of 'Sendable'-conforming class 'Plug' is mutable; this is an error in the Swift 6 language mode
 43 | 	var networkActivityIndicator: ActivityIndicatorProtocol?
 44 |
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugChannel.swift:24:21: warning: static property 'defaultChannel' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 22 | 		public enum PauseReason: Int { case manual, offline, backgrounding }
 23 |
 24 | 		public static var defaultChannel: Channel = { return Channel(name: "default", maxSimultaneousConnections: 1)! }()
    |                     |- warning: static property 'defaultChannel' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: convert 'defaultChannel' to a 'let' constant to make 'Sendable' shared state immutable
    |                     |- note: add '@MainActor' to make static property 'defaultChannel' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 25 | 		public static var resourceChannel: Channel = { return Channel(name: "resources", maxSimultaneousConnections: 50)! }()
 26 |
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugChannel.swift:25:21: warning: static property 'resourceChannel' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 23 |
 24 | 		public static var defaultChannel: Channel = { return Channel(name: "default", maxSimultaneousConnections: 1)! }()
 25 | 		public static var resourceChannel: Channel = { return Channel(name: "resources", maxSimultaneousConnections: 50)! }()
    |                     |- warning: static property 'resourceChannel' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: convert 'resourceChannel' to a 'let' constant to make 'Sendable' shared state immutable
    |                     |- note: add '@MainActor' to make static property 'resourceChannel' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 26 |
 27 | 		static var allChannels: [String: Channel] = [:]
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugChannel.swift:27:14: warning: static property 'allChannels' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 25 | 		public static var resourceChannel: Channel = { return Channel(name: "resources", maxSimultaneousConnections: 50)! }()
 26 |
 27 | 		static var allChannels: [String: Channel] = [:]
    |              |- warning: static property 'allChannels' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |              |- note: convert 'allChannels' to a 'let' constant to make 'Sendable' shared state immutable
    |              |- note: add '@MainActor' to make static property 'allChannels' part of global actor 'MainActor'
    |              `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 28 |
 29 | 		init?(name chName: String, maxSimultaneousConnections max: Int) {
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugCredentials.swift:12:20: warning: static property 'instance' is not concurrency-safe because non-'Sendable' type 'Credentials' may have shared mutable state; this is an error in the Swift 6 language mode
 9 | import Foundation
10 |
11 | public class Credentials {
   |              `- note: class 'Credentials' does not conform to the 'Sendable' protocol
12 | 	public static let instance = Credentials()
   |                    |- warning: static property 'instance' is not concurrency-safe because non-'Sendable' type 'Credentials' may have shared mutable state; this is an error in the Swift 6 language mode
   |                    |- note: add '@MainActor' to make static property 'instance' part of global actor 'MainActor'
   |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
13 | 	var trustedDomains: [String] = []
14 |
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugJSON.swift:435:13: warning: static property 'JSONFormat' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
433 |
434 | public extension Date {
435 | 	static var JSONFormat = "yyyy-MM-dd HH:mm:ss Z"
    |             |- warning: static property 'JSONFormat' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |             |- note: convert 'JSONFormat' to a 'let' constant to make 'Sendable' shared state immutable
    |             |- note: add '@MainActor' to make static property 'JSONFormat' part of global actor 'MainActor'
    |             `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
436 |
437 | 	init?(jsonString: String?, format: String = Date.JSONFormat, formats: [String]? = nil, cachedFormatter: DateFormatter? = nil) {
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugPersistence.swift:13:27: warning: static property 'instance' is not concurrency-safe because non-'Sendable' type 'Plug.PersistenceManager' may have shared mutable state; this is an error in the Swift 6 language mode
 10 |
 11 | public extension Plug {
 12 | 	class PersistenceManager {
    |        `- note: class 'PersistenceManager' does not conform to the 'Sendable' protocol
 13 |         public static let instance = PersistenceManager()
    |                           |- warning: static property 'instance' is not concurrency-safe because non-'Sendable' type 'Plug.PersistenceManager' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'instance' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 14 |
 15 | 		public func register(_ object: PlugPersistentDelegate) {
/Users/admin/builder/spi-builder-workspace/Source/Plug/Reachability.swift:15:23: warning: static property 'instance' is not concurrency-safe because non-'Sendable' type 'Reachability?' may have shared mutable state; this is an error in the Swift 6 language mode
 12 | public enum ReachabilityError: Error { case unableToSetCallback, unableToSetDispatchQueue, unableToGetInitialFlags }
 13 |
 14 | public class Reachability {
    |              `- note: class 'Reachability' does not conform to the 'Sendable' protocol
 15 |     public static let instance = Reachability()
    |                       |- warning: static property 'instance' is not concurrency-safe because non-'Sendable' type 'Reachability?' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'instance' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 16 |
 17 |     static let reachabilityChanged = Notification.Name("reachabilityChanged")
[4/25] Compiling Plug PlugConnection.swift
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugConnection.swift:285:37: warning: capture of 'block' with non-sendable type 'PlugCompletionClosure' (aka '(Connection, Plug.ConnectionData) -> ()') in a '@Sendable' closure
283 |
284 | 		for block in self.completionBlocks {
285 | 			let op = BlockOperation(block: { block(self, data) })
    |                                     |- warning: capture of 'block' with non-sendable type 'PlugCompletionClosure' (aka '(Connection, Plug.ConnectionData) -> ()') in a '@Sendable' closure
    |                                     `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
286 | 			queue.addOperations([op], waitUntilFinished: false)
287 | 		}
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugConnection.swift:285:43: warning: capture of 'self' with non-sendable type 'Connection' in a '@Sendable' closure
 14 | extension URLRequest.CachePolicy : Codable {}
 15 |
 16 | public class Connection: Hashable, CustomStringConvertible, Codable {
    |              `- note: class 'Connection' does not conform to the 'Sendable' protocol
 17 | 	deinit {
 18 | 		self.killTimer?.invalidate()
    :
283 |
284 | 		for block in self.completionBlocks {
285 | 			let op = BlockOperation(block: { block(self, data) })
    |                                           `- warning: capture of 'self' with non-sendable type 'Connection' in a '@Sendable' closure
286 | 			queue.addOperations([op], waitUntilFinished: false)
287 | 		}
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugConnection.swift:285:49: warning: capture of 'data' with non-sendable type 'Plug.ConnectionData' in a '@Sendable' closure
283 |
284 | 		for block in self.completionBlocks {
285 | 			let op = BlockOperation(block: { block(self, data) })
    |                                                 `- warning: capture of 'data' with non-sendable type 'Plug.ConnectionData' in a '@Sendable' closure
286 | 			queue.addOperations([op], waitUntilFinished: false)
287 | 		}
/Users/admin/builder/spi-builder-workspace/Source/Plug/Plug.ConnectionData.swift:20:8: note: class 'ConnectionData' does not conform to the 'Sendable' protocol
18 |
19 | public extension Plug {
20 | 	class ConnectionData: CustomStringConvertible {
   |        `- note: class 'ConnectionData' does not conform to the 'Sendable' protocol
21 | 		public enum JSONObjectType { case dictionary, array }
22 |
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugConnection.swift:305:36: warning: capture of 'self' with non-sendable type 'Self' in a '@Sendable' closure
 14 | extension URLRequest.CachePolicy : Codable {}
 15 |
 16 | public class Connection: Hashable, CustomStringConvertible, Codable {
    |              `- note: class 'Connection' does not conform to the 'Sendable' protocol
 17 | 	deinit {
 18 | 		self.killTimer?.invalidate()
    :
303 | extension Connection {
304 | 	@discardableResult public func completion(completion: @escaping PlugCompletionClosure) -> Self {
305 | 		self.requestQueue.addOperation { self.completionBlocks.append(completion) }
    |                                    `- warning: capture of 'self' with non-sendable type 'Self' in a '@Sendable' closure
306 | 		return self
307 | 	}
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugConnection.swift:305:65: warning: capture of 'completion' with non-sendable type 'PlugCompletionClosure' (aka '(Connection, Plug.ConnectionData) -> ()') in a '@Sendable' closure
303 | extension Connection {
304 | 	@discardableResult public func completion(completion: @escaping PlugCompletionClosure) -> Self {
305 | 		self.requestQueue.addOperation { self.completionBlocks.append(completion) }
    |                                                                 |- warning: capture of 'completion' with non-sendable type 'PlugCompletionClosure' (aka '(Connection, Plug.ConnectionData) -> ()') in a '@Sendable' closure
    |                                                                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
306 | 		return self
307 | 	}
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugConnection.swift:310:36: warning: capture of 'self' with non-sendable type 'Self' in a '@Sendable' closure
 14 | extension URLRequest.CachePolicy : Codable {}
 15 |
 16 | public class Connection: Hashable, CustomStringConvertible, Codable {
    |              `- note: class 'Connection' does not conform to the 'Sendable' protocol
 17 | 	deinit {
 18 | 		self.killTimer?.invalidate()
    :
308 |
309 | 	@discardableResult public func error(completion: @escaping (Connection, Error) -> Void) -> Self {
310 | 		self.requestQueue.addOperation { self.errorBlocks.append(completion) }
    |                                    `- warning: capture of 'self' with non-sendable type 'Self' in a '@Sendable' closure
311 | 		return self
312 | 	}
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugConnection.swift:310:60: warning: capture of 'completion' with non-sendable type '(Connection, any Error) -> Void' in a '@Sendable' closure
308 |
309 | 	@discardableResult public func error(completion: @escaping (Connection, Error) -> Void) -> Self {
310 | 		self.requestQueue.addOperation { self.errorBlocks.append(completion) }
    |                                                            |- warning: capture of 'completion' with non-sendable type '(Connection, any Error) -> Void' in a '@Sendable' closure
    |                                                            `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
311 | 		return self
312 | 	}
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugConnection.swift:315:36: warning: capture of 'self' with non-sendable type 'Self' in a '@Sendable' closure
 14 | extension URLRequest.CachePolicy : Codable {}
 15 |
 16 | public class Connection: Hashable, CustomStringConvertible, Codable {
    |              `- note: class 'Connection' does not conform to the 'Sendable' protocol
 17 | 	deinit {
 18 | 		self.killTimer?.invalidate()
    :
313 |
314 | 	@discardableResult public func progress(closure: @escaping (Connection, Double) -> Void) -> Self {
315 | 		self.requestQueue.addOperation { self.progressBlocks.append(closure) }
    |                                    `- warning: capture of 'self' with non-sendable type 'Self' in a '@Sendable' closure
316 | 		return self
317 | 	}
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugConnection.swift:315:63: warning: capture of 'closure' with non-sendable type '(Connection, Double) -> Void' in a '@Sendable' closure
313 |
314 | 	@discardableResult public func progress(closure: @escaping (Connection, Double) -> Void) -> Self {
315 | 		self.requestQueue.addOperation { self.progressBlocks.append(closure) }
    |                                                               |- warning: capture of 'closure' with non-sendable type '(Connection, Double) -> Void' in a '@Sendable' closure
    |                                                               `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
316 | 		return self
317 | 	}
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugConnection.swift:492:7: warning: capture of 'data' with non-sendable type 'Plug.ConnectionData?' in a '@Sendable' closure
490 |
491 | 		self.requestQueue.addOperation {
492 | 			if data != nil || self.resultsError == nil {
    |       `- warning: capture of 'data' with non-sendable type 'Plug.ConnectionData?' in a '@Sendable' closure
493 | 				self.handleDownload(data: data ?? Plug.ConnectionData())
494 | 			} else {
/Users/admin/builder/spi-builder-workspace/Source/Plug/Plug.ConnectionData.swift:20:8: note: class 'ConnectionData' does not conform to the 'Sendable' protocol
18 |
19 | public extension Plug {
20 | 	class ConnectionData: CustomStringConvertible {
   |        `- note: class 'ConnectionData' does not conform to the 'Sendable' protocol
21 | 		public enum JSONObjectType { case dictionary, array }
22 |
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugConnection.swift:492:22: warning: capture of 'self' with non-sendable type 'Connection' in a '@Sendable' closure
 14 | extension URLRequest.CachePolicy : Codable {}
 15 |
 16 | public class Connection: Hashable, CustomStringConvertible, Codable {
    |              `- note: class 'Connection' does not conform to the 'Sendable' protocol
 17 | 	deinit {
 18 | 		self.killTimer?.invalidate()
    :
490 |
491 | 		self.requestQueue.addOperation {
492 | 			if data != nil || self.resultsError == nil {
    |                      `- warning: capture of 'self' with non-sendable type 'Connection' in a '@Sendable' closure
493 | 				self.handleDownload(data: data ?? Plug.ConnectionData())
494 | 			} else {
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugConnection.swift:492:22: warning: implicit capture of 'self' requires that 'Connection' conforms to 'Sendable'; this is an error in the Swift 6 language mode
 14 | extension URLRequest.CachePolicy : Codable {}
 15 |
 16 | public class Connection: Hashable, CustomStringConvertible, Codable {
    |              `- note: class 'Connection' does not conform to the 'Sendable' protocol
 17 | 	deinit {
 18 | 		self.killTimer?.invalidate()
    :
490 |
491 | 		self.requestQueue.addOperation {
492 | 			if data != nil || self.resultsError == nil {
    |                      `- warning: implicit capture of 'self' requires that 'Connection' conforms to 'Sendable'; this is an error in the Swift 6 language mode
493 | 				self.handleDownload(data: data ?? Plug.ConnectionData())
494 | 			} else {
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugConnection.swift:501:36: warning: capture of 'self' with non-sendable type 'Connection' in a '@Sendable' closure
 14 | extension URLRequest.CachePolicy : Codable {}
 15 |
 16 | public class Connection: Hashable, CustomStringConvertible, Codable {
    |              `- note: class 'Connection' does not conform to the 'Sendable' protocol
 17 | 	deinit {
 18 | 		self.killTimer?.invalidate()
    :
499 |
500 | 		self.subconnections.forEach { $0.complete(state: state, parent: self) }
501 | 		self.requestQueue.addOperation({ self.notifyPersistentDelegateOfCompletion() })
    |                                    `- warning: capture of 'self' with non-sendable type 'Connection' in a '@Sendable' closure
502 |
503 | 		if self.state == .completed {
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugConnection.swift:515:37: warning: capture of 'block' with non-sendable type '(Connection, any Error) -> Void' in a '@Sendable' closure
513 |
514 | 		for block in self.errorBlocks {
515 | 			let op = BlockOperation(block: { block(self, error) })
    |                                     |- warning: capture of 'block' with non-sendable type '(Connection, any Error) -> Void' in a '@Sendable' closure
    |                                     `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
516 | 			queue.addOperations([op], waitUntilFinished: false)
517 | 		}
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugConnection.swift:515:43: warning: capture of 'self' with non-sendable type 'Connection' in a '@Sendable' closure
 14 | extension URLRequest.CachePolicy : Codable {}
 15 |
 16 | public class Connection: Hashable, CustomStringConvertible, Codable {
    |              `- note: class 'Connection' does not conform to the 'Sendable' protocol
 17 | 	deinit {
 18 | 		self.killTimer?.invalidate()
    :
513 |
514 | 		for block in self.errorBlocks {
515 | 			let op = BlockOperation(block: { block(self, error) })
    |                                           `- warning: capture of 'self' with non-sendable type 'Connection' in a '@Sendable' closure
516 | 			queue.addOperations([op], waitUntilFinished: false)
517 | 		}
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugCredentials.swift:12:20: warning: static property 'instance' is not concurrency-safe because non-'Sendable' type 'Credentials' may have shared mutable state; this is an error in the Swift 6 language mode
 9 | import Foundation
10 |
11 | public class Credentials {
   |              `- note: class 'Credentials' does not conform to the 'Sendable' protocol
12 | 	public static let instance = Credentials()
   |                    |- warning: static property 'instance' is not concurrency-safe because non-'Sendable' type 'Credentials' may have shared mutable state; this is an error in the Swift 6 language mode
   |                    |- note: add '@MainActor' to make static property 'instance' part of global actor 'MainActor'
   |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
13 | 	var trustedDomains: [String] = []
14 |
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugConnection.swift:175:5: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
173 | 		if Plug.instance.autostartConnections {
174 | 			DispatchQueue.main.asyncAfter(deadline: DispatchTime.now() + 0.5) {
175 | 				self.start()
    |     |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |     `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
176 | 			}
177 | 		}
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugConnection.swift:432:31: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
430 | 				self.setupTimer(withTimeOut: timeout)
431 | 			} else {
432 | 				DispatchQueue.main.sync { self.setupTimer(withTimeOut: timeout) }
    |                               |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |                               `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
433 | 			}
434 | 		}
[5/25] Compiling Plug PlugCredentials.swift
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugConnection.swift:285:37: warning: capture of 'block' with non-sendable type 'PlugCompletionClosure' (aka '(Connection, Plug.ConnectionData) -> ()') in a '@Sendable' closure
283 |
284 | 		for block in self.completionBlocks {
285 | 			let op = BlockOperation(block: { block(self, data) })
    |                                     |- warning: capture of 'block' with non-sendable type 'PlugCompletionClosure' (aka '(Connection, Plug.ConnectionData) -> ()') in a '@Sendable' closure
    |                                     `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
286 | 			queue.addOperations([op], waitUntilFinished: false)
287 | 		}
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugConnection.swift:285:43: warning: capture of 'self' with non-sendable type 'Connection' in a '@Sendable' closure
 14 | extension URLRequest.CachePolicy : Codable {}
 15 |
 16 | public class Connection: Hashable, CustomStringConvertible, Codable {
    |              `- note: class 'Connection' does not conform to the 'Sendable' protocol
 17 | 	deinit {
 18 | 		self.killTimer?.invalidate()
    :
283 |
284 | 		for block in self.completionBlocks {
285 | 			let op = BlockOperation(block: { block(self, data) })
    |                                           `- warning: capture of 'self' with non-sendable type 'Connection' in a '@Sendable' closure
286 | 			queue.addOperations([op], waitUntilFinished: false)
287 | 		}
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugConnection.swift:285:49: warning: capture of 'data' with non-sendable type 'Plug.ConnectionData' in a '@Sendable' closure
283 |
284 | 		for block in self.completionBlocks {
285 | 			let op = BlockOperation(block: { block(self, data) })
    |                                                 `- warning: capture of 'data' with non-sendable type 'Plug.ConnectionData' in a '@Sendable' closure
286 | 			queue.addOperations([op], waitUntilFinished: false)
287 | 		}
/Users/admin/builder/spi-builder-workspace/Source/Plug/Plug.ConnectionData.swift:20:8: note: class 'ConnectionData' does not conform to the 'Sendable' protocol
18 |
19 | public extension Plug {
20 | 	class ConnectionData: CustomStringConvertible {
   |        `- note: class 'ConnectionData' does not conform to the 'Sendable' protocol
21 | 		public enum JSONObjectType { case dictionary, array }
22 |
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugConnection.swift:305:36: warning: capture of 'self' with non-sendable type 'Self' in a '@Sendable' closure
 14 | extension URLRequest.CachePolicy : Codable {}
 15 |
 16 | public class Connection: Hashable, CustomStringConvertible, Codable {
    |              `- note: class 'Connection' does not conform to the 'Sendable' protocol
 17 | 	deinit {
 18 | 		self.killTimer?.invalidate()
    :
303 | extension Connection {
304 | 	@discardableResult public func completion(completion: @escaping PlugCompletionClosure) -> Self {
305 | 		self.requestQueue.addOperation { self.completionBlocks.append(completion) }
    |                                    `- warning: capture of 'self' with non-sendable type 'Self' in a '@Sendable' closure
306 | 		return self
307 | 	}
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugConnection.swift:305:65: warning: capture of 'completion' with non-sendable type 'PlugCompletionClosure' (aka '(Connection, Plug.ConnectionData) -> ()') in a '@Sendable' closure
303 | extension Connection {
304 | 	@discardableResult public func completion(completion: @escaping PlugCompletionClosure) -> Self {
305 | 		self.requestQueue.addOperation { self.completionBlocks.append(completion) }
    |                                                                 |- warning: capture of 'completion' with non-sendable type 'PlugCompletionClosure' (aka '(Connection, Plug.ConnectionData) -> ()') in a '@Sendable' closure
    |                                                                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
306 | 		return self
307 | 	}
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugConnection.swift:310:36: warning: capture of 'self' with non-sendable type 'Self' in a '@Sendable' closure
 14 | extension URLRequest.CachePolicy : Codable {}
 15 |
 16 | public class Connection: Hashable, CustomStringConvertible, Codable {
    |              `- note: class 'Connection' does not conform to the 'Sendable' protocol
 17 | 	deinit {
 18 | 		self.killTimer?.invalidate()
    :
308 |
309 | 	@discardableResult public func error(completion: @escaping (Connection, Error) -> Void) -> Self {
310 | 		self.requestQueue.addOperation { self.errorBlocks.append(completion) }
    |                                    `- warning: capture of 'self' with non-sendable type 'Self' in a '@Sendable' closure
311 | 		return self
312 | 	}
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugConnection.swift:310:60: warning: capture of 'completion' with non-sendable type '(Connection, any Error) -> Void' in a '@Sendable' closure
308 |
309 | 	@discardableResult public func error(completion: @escaping (Connection, Error) -> Void) -> Self {
310 | 		self.requestQueue.addOperation { self.errorBlocks.append(completion) }
    |                                                            |- warning: capture of 'completion' with non-sendable type '(Connection, any Error) -> Void' in a '@Sendable' closure
    |                                                            `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
311 | 		return self
312 | 	}
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugConnection.swift:315:36: warning: capture of 'self' with non-sendable type 'Self' in a '@Sendable' closure
 14 | extension URLRequest.CachePolicy : Codable {}
 15 |
 16 | public class Connection: Hashable, CustomStringConvertible, Codable {
    |              `- note: class 'Connection' does not conform to the 'Sendable' protocol
 17 | 	deinit {
 18 | 		self.killTimer?.invalidate()
    :
313 |
314 | 	@discardableResult public func progress(closure: @escaping (Connection, Double) -> Void) -> Self {
315 | 		self.requestQueue.addOperation { self.progressBlocks.append(closure) }
    |                                    `- warning: capture of 'self' with non-sendable type 'Self' in a '@Sendable' closure
316 | 		return self
317 | 	}
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugConnection.swift:315:63: warning: capture of 'closure' with non-sendable type '(Connection, Double) -> Void' in a '@Sendable' closure
313 |
314 | 	@discardableResult public func progress(closure: @escaping (Connection, Double) -> Void) -> Self {
315 | 		self.requestQueue.addOperation { self.progressBlocks.append(closure) }
    |                                                               |- warning: capture of 'closure' with non-sendable type '(Connection, Double) -> Void' in a '@Sendable' closure
    |                                                               `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
316 | 		return self
317 | 	}
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugConnection.swift:492:7: warning: capture of 'data' with non-sendable type 'Plug.ConnectionData?' in a '@Sendable' closure
490 |
491 | 		self.requestQueue.addOperation {
492 | 			if data != nil || self.resultsError == nil {
    |       `- warning: capture of 'data' with non-sendable type 'Plug.ConnectionData?' in a '@Sendable' closure
493 | 				self.handleDownload(data: data ?? Plug.ConnectionData())
494 | 			} else {
/Users/admin/builder/spi-builder-workspace/Source/Plug/Plug.ConnectionData.swift:20:8: note: class 'ConnectionData' does not conform to the 'Sendable' protocol
18 |
19 | public extension Plug {
20 | 	class ConnectionData: CustomStringConvertible {
   |        `- note: class 'ConnectionData' does not conform to the 'Sendable' protocol
21 | 		public enum JSONObjectType { case dictionary, array }
22 |
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugConnection.swift:492:22: warning: capture of 'self' with non-sendable type 'Connection' in a '@Sendable' closure
 14 | extension URLRequest.CachePolicy : Codable {}
 15 |
 16 | public class Connection: Hashable, CustomStringConvertible, Codable {
    |              `- note: class 'Connection' does not conform to the 'Sendable' protocol
 17 | 	deinit {
 18 | 		self.killTimer?.invalidate()
    :
490 |
491 | 		self.requestQueue.addOperation {
492 | 			if data != nil || self.resultsError == nil {
    |                      `- warning: capture of 'self' with non-sendable type 'Connection' in a '@Sendable' closure
493 | 				self.handleDownload(data: data ?? Plug.ConnectionData())
494 | 			} else {
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugConnection.swift:492:22: warning: implicit capture of 'self' requires that 'Connection' conforms to 'Sendable'; this is an error in the Swift 6 language mode
 14 | extension URLRequest.CachePolicy : Codable {}
 15 |
 16 | public class Connection: Hashable, CustomStringConvertible, Codable {
    |              `- note: class 'Connection' does not conform to the 'Sendable' protocol
 17 | 	deinit {
 18 | 		self.killTimer?.invalidate()
    :
490 |
491 | 		self.requestQueue.addOperation {
492 | 			if data != nil || self.resultsError == nil {
    |                      `- warning: implicit capture of 'self' requires that 'Connection' conforms to 'Sendable'; this is an error in the Swift 6 language mode
493 | 				self.handleDownload(data: data ?? Plug.ConnectionData())
494 | 			} else {
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugConnection.swift:501:36: warning: capture of 'self' with non-sendable type 'Connection' in a '@Sendable' closure
 14 | extension URLRequest.CachePolicy : Codable {}
 15 |
 16 | public class Connection: Hashable, CustomStringConvertible, Codable {
    |              `- note: class 'Connection' does not conform to the 'Sendable' protocol
 17 | 	deinit {
 18 | 		self.killTimer?.invalidate()
    :
499 |
500 | 		self.subconnections.forEach { $0.complete(state: state, parent: self) }
501 | 		self.requestQueue.addOperation({ self.notifyPersistentDelegateOfCompletion() })
    |                                    `- warning: capture of 'self' with non-sendable type 'Connection' in a '@Sendable' closure
502 |
503 | 		if self.state == .completed {
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugConnection.swift:515:37: warning: capture of 'block' with non-sendable type '(Connection, any Error) -> Void' in a '@Sendable' closure
513 |
514 | 		for block in self.errorBlocks {
515 | 			let op = BlockOperation(block: { block(self, error) })
    |                                     |- warning: capture of 'block' with non-sendable type '(Connection, any Error) -> Void' in a '@Sendable' closure
    |                                     `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
516 | 			queue.addOperations([op], waitUntilFinished: false)
517 | 		}
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugConnection.swift:515:43: warning: capture of 'self' with non-sendable type 'Connection' in a '@Sendable' closure
 14 | extension URLRequest.CachePolicy : Codable {}
 15 |
 16 | public class Connection: Hashable, CustomStringConvertible, Codable {
    |              `- note: class 'Connection' does not conform to the 'Sendable' protocol
 17 | 	deinit {
 18 | 		self.killTimer?.invalidate()
    :
513 |
514 | 		for block in self.errorBlocks {
515 | 			let op = BlockOperation(block: { block(self, error) })
    |                                           `- warning: capture of 'self' with non-sendable type 'Connection' in a '@Sendable' closure
516 | 			queue.addOperations([op], waitUntilFinished: false)
517 | 		}
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugCredentials.swift:12:20: warning: static property 'instance' is not concurrency-safe because non-'Sendable' type 'Credentials' may have shared mutable state; this is an error in the Swift 6 language mode
 9 | import Foundation
10 |
11 | public class Credentials {
   |              `- note: class 'Credentials' does not conform to the 'Sendable' protocol
12 | 	public static let instance = Credentials()
   |                    |- warning: static property 'instance' is not concurrency-safe because non-'Sendable' type 'Credentials' may have shared mutable state; this is an error in the Swift 6 language mode
   |                    |- note: add '@MainActor' to make static property 'instance' part of global actor 'MainActor'
   |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
13 | 	var trustedDomains: [String] = []
14 |
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugConnection.swift:175:5: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
173 | 		if Plug.instance.autostartConnections {
174 | 			DispatchQueue.main.asyncAfter(deadline: DispatchTime.now() + 0.5) {
175 | 				self.start()
    |     |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |     `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
176 | 			}
177 | 		}
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugConnection.swift:432:31: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
430 | 				self.setupTimer(withTimeOut: timeout)
431 | 			} else {
432 | 				DispatchQueue.main.sync { self.setupTimer(withTimeOut: timeout) }
    |                               |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |                               `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
433 | 			}
434 | 		}
[6/25] Compiling Plug PlugProtocols.swift
/Users/admin/builder/spi-builder-workspace/Source/Plug/Reachability.swift:15:23: warning: static property 'instance' is not concurrency-safe because non-'Sendable' type 'Reachability?' may have shared mutable state; this is an error in the Swift 6 language mode
 12 | public enum ReachabilityError: Error { case unableToSetCallback, unableToSetDispatchQueue, unableToGetInitialFlags }
 13 |
 14 | public class Reachability {
    |              `- note: class 'Reachability' does not conform to the 'Sendable' protocol
 15 |     public static let instance = Reachability()
    |                       |- warning: static property 'instance' is not concurrency-safe because non-'Sendable' type 'Reachability?' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'instance' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 16 |
 17 |     static let reachabilityChanged = Notification.Name("reachabilityChanged")
[7/25] Compiling Plug Reachability.swift
/Users/admin/builder/spi-builder-workspace/Source/Plug/Reachability.swift:15:23: warning: static property 'instance' is not concurrency-safe because non-'Sendable' type 'Reachability?' may have shared mutable state; this is an error in the Swift 6 language mode
 12 | public enum ReachabilityError: Error { case unableToSetCallback, unableToSetDispatchQueue, unableToGetInitialFlags }
 13 |
 14 | public class Reachability {
    |              `- note: class 'Reachability' does not conform to the 'Sendable' protocol
 15 |     public static let instance = Reachability()
    |                       |- warning: static property 'instance' is not concurrency-safe because non-'Sendable' type 'Reachability?' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'instance' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 16 |
 17 |     static let reachabilityChanged = Notification.Name("reachabilityChanged")
[8/25] Compiling Plug PlugJSON.swift
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugJSON.swift:435:13: warning: static property 'JSONFormat' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
433 |
434 | public extension Date {
435 | 	static var JSONFormat = "yyyy-MM-dd HH:mm:ss Z"
    |             |- warning: static property 'JSONFormat' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |             |- note: convert 'JSONFormat' to a 'let' constant to make 'Sendable' shared state immutable
    |             |- note: add '@MainActor' to make static property 'JSONFormat' part of global actor 'MainActor'
    |             `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
436 |
437 | 	init?(jsonString: String?, format: String = Date.JSONFormat, formats: [String]? = nil, cachedFormatter: DateFormatter? = nil) {
[9/25] Compiling Plug PlugJSONConnection.swift
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugJSON.swift:435:13: warning: static property 'JSONFormat' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
433 |
434 | public extension Date {
435 | 	static var JSONFormat = "yyyy-MM-dd HH:mm:ss Z"
    |             |- warning: static property 'JSONFormat' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |             |- note: convert 'JSONFormat' to a 'let' constant to make 'Sendable' shared state immutable
    |             |- note: add '@MainActor' to make static property 'JSONFormat' part of global actor 'MainActor'
    |             `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
436 |
437 | 	init?(jsonString: String?, format: String = Date.JSONFormat, formats: [String]? = nil, cachedFormatter: DateFormatter? = nil) {
[10/25] Compiling Plug Plug.swift
/Users/admin/builder/spi-builder-workspace/Source/Plug/Plug.swift:66:20: warning: static property 'connectionType' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 64 |
 65 | 	public static let instance = Plug()
 66 | 	public static var connectionType = ConnectionType.wifi          //let's try starting off optimistically
    |                    |- warning: static property 'connectionType' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: convert 'connectionType' to a 'let' constant to make 'Sendable' shared state immutable
    |                    |- note: add '@MainActor' to make static property 'connectionType' part of global actor 'MainActor'
    |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 67 | 	public static var online: Bool { return self.connectionType != .offline }
 68 | 	public static var logAllConnections = false { didSet {
/Users/admin/builder/spi-builder-workspace/Source/Plug/Plug.swift:68:20: warning: static property 'logAllConnections' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 66 | 	public static var connectionType = ConnectionType.wifi          //let's try starting off optimistically
 67 | 	public static var online: Bool { return self.connectionType != .offline }
 68 | 	public static var logAllConnections = false { didSet {
    |                    |- warning: static property 'logAllConnections' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: convert 'logAllConnections' to a 'let' constant to make 'Sendable' shared state immutable
    |                    |- note: add '@MainActor' to make static property 'logAllConnections' part of global actor 'MainActor'
    |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 69 | 		if self.logAllConnections, self.log == nil {
 70 | 			self.log = ConnectionLog()
/Users/admin/builder/spi-builder-workspace/Source/Plug/Plug.swift:75:20: warning: static property 'log' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 73 | 		}
 74 | 	}}
 75 | 	public static var log: ConnectionLog?
    |                    |- warning: static property 'log' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: convert 'log' to a 'let' constant to make 'Sendable' shared state immutable
    |                    |- note: add '@MainActor' to make static property 'log' part of global actor 'MainActor'
    |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 76 |
 77 | 	public struct notifications {
/Users/admin/builder/spi-builder-workspace/Source/Plug/Plug.swift:30:14: warning: non-final class 'Plug' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
 28 | }
 29 |
 30 | public class Plug: NSObject, URLSessionDelegate {
    |              `- warning: non-final class 'Plug' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
 31 | 	public enum ConnectionType: Int { case offline, wifi, cellular }
 32 | 	public enum Method: String, CustomStringConvertible, Codable { case GET = "GET", POST = "POST", DELETE = "DELETE", PUT = "PUT", PATCH = "PATCH", HEAD = "HEAD"
/Users/admin/builder/spi-builder-workspace/Source/Plug/Plug.swift:42:6: warning: stored property 'backgroundActivityHandler' of 'Sendable'-conforming class 'Plug' is mutable; this is an error in the Swift 6 language mode
 40 | 	}
 41 |
 42 | 	var backgroundActivityHandler: BackgroundActivityHandlerProtocol?
    |      `- warning: stored property 'backgroundActivityHandler' of 'Sendable'-conforming class 'Plug' is mutable; this is an error in the Swift 6 language mode
 43 | 	var networkActivityIndicator: ActivityIndicatorProtocol?
 44 |
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugChannel.swift:24:21: warning: static property 'defaultChannel' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 22 | 		public enum PauseReason: Int { case manual, offline, backgrounding }
 23 |
 24 | 		public static var defaultChannel: Channel = { return Channel(name: "default", maxSimultaneousConnections: 1)! }()
    |                     |- warning: static property 'defaultChannel' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: convert 'defaultChannel' to a 'let' constant to make 'Sendable' shared state immutable
    |                     |- note: add '@MainActor' to make static property 'defaultChannel' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 25 | 		public static var resourceChannel: Channel = { return Channel(name: "resources", maxSimultaneousConnections: 50)! }()
 26 |
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugChannel.swift:25:21: warning: static property 'resourceChannel' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 23 |
 24 | 		public static var defaultChannel: Channel = { return Channel(name: "default", maxSimultaneousConnections: 1)! }()
 25 | 		public static var resourceChannel: Channel = { return Channel(name: "resources", maxSimultaneousConnections: 50)! }()
    |                     |- warning: static property 'resourceChannel' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: convert 'resourceChannel' to a 'let' constant to make 'Sendable' shared state immutable
    |                     |- note: add '@MainActor' to make static property 'resourceChannel' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 26 |
 27 | 		static var allChannels: [String: Channel] = [:]
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugChannel.swift:27:14: warning: static property 'allChannels' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 25 | 		public static var resourceChannel: Channel = { return Channel(name: "resources", maxSimultaneousConnections: 50)! }()
 26 |
 27 | 		static var allChannels: [String: Channel] = [:]
    |              |- warning: static property 'allChannels' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |              |- note: convert 'allChannels' to a 'let' constant to make 'Sendable' shared state immutable
    |              |- note: add '@MainActor' to make static property 'allChannels' part of global actor 'MainActor'
    |              `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 28 |
 29 | 		init?(name chName: String, maxSimultaneousConnections max: Int) {
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugChannel.swift:204:6: warning: capture of 'connection' with non-sendable type 'Connection' in a '@Sendable' closure
202 | 				self.activeConnections.append(connection)
203 | 				self.queue.addOperation {
204 | 					connection.run()
    |      `- warning: capture of 'connection' with non-sendable type 'Connection' in a '@Sendable' closure
205 | 				}
206 | 			}
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugConnection.swift:16:14: note: class 'Connection' does not conform to the 'Sendable' protocol
 14 | extension URLRequest.CachePolicy : Codable {}
 15 |
 16 | public class Connection: Hashable, CustomStringConvertible, Codable {
    |              `- note: class 'Connection' does not conform to the 'Sendable' protocol
 17 | 	deinit {
 18 | 		self.killTimer?.invalidate()
[11/25] Compiling Plug PlugChannel.swift
/Users/admin/builder/spi-builder-workspace/Source/Plug/Plug.swift:66:20: warning: static property 'connectionType' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 64 |
 65 | 	public static let instance = Plug()
 66 | 	public static var connectionType = ConnectionType.wifi          //let's try starting off optimistically
    |                    |- warning: static property 'connectionType' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: convert 'connectionType' to a 'let' constant to make 'Sendable' shared state immutable
    |                    |- note: add '@MainActor' to make static property 'connectionType' part of global actor 'MainActor'
    |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 67 | 	public static var online: Bool { return self.connectionType != .offline }
 68 | 	public static var logAllConnections = false { didSet {
/Users/admin/builder/spi-builder-workspace/Source/Plug/Plug.swift:68:20: warning: static property 'logAllConnections' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 66 | 	public static var connectionType = ConnectionType.wifi          //let's try starting off optimistically
 67 | 	public static var online: Bool { return self.connectionType != .offline }
 68 | 	public static var logAllConnections = false { didSet {
    |                    |- warning: static property 'logAllConnections' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: convert 'logAllConnections' to a 'let' constant to make 'Sendable' shared state immutable
    |                    |- note: add '@MainActor' to make static property 'logAllConnections' part of global actor 'MainActor'
    |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 69 | 		if self.logAllConnections, self.log == nil {
 70 | 			self.log = ConnectionLog()
/Users/admin/builder/spi-builder-workspace/Source/Plug/Plug.swift:75:20: warning: static property 'log' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 73 | 		}
 74 | 	}}
 75 | 	public static var log: ConnectionLog?
    |                    |- warning: static property 'log' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: convert 'log' to a 'let' constant to make 'Sendable' shared state immutable
    |                    |- note: add '@MainActor' to make static property 'log' part of global actor 'MainActor'
    |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 76 |
 77 | 	public struct notifications {
/Users/admin/builder/spi-builder-workspace/Source/Plug/Plug.swift:30:14: warning: non-final class 'Plug' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
 28 | }
 29 |
 30 | public class Plug: NSObject, URLSessionDelegate {
    |              `- warning: non-final class 'Plug' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
 31 | 	public enum ConnectionType: Int { case offline, wifi, cellular }
 32 | 	public enum Method: String, CustomStringConvertible, Codable { case GET = "GET", POST = "POST", DELETE = "DELETE", PUT = "PUT", PATCH = "PATCH", HEAD = "HEAD"
/Users/admin/builder/spi-builder-workspace/Source/Plug/Plug.swift:42:6: warning: stored property 'backgroundActivityHandler' of 'Sendable'-conforming class 'Plug' is mutable; this is an error in the Swift 6 language mode
 40 | 	}
 41 |
 42 | 	var backgroundActivityHandler: BackgroundActivityHandlerProtocol?
    |      `- warning: stored property 'backgroundActivityHandler' of 'Sendable'-conforming class 'Plug' is mutable; this is an error in the Swift 6 language mode
 43 | 	var networkActivityIndicator: ActivityIndicatorProtocol?
 44 |
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugChannel.swift:24:21: warning: static property 'defaultChannel' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 22 | 		public enum PauseReason: Int { case manual, offline, backgrounding }
 23 |
 24 | 		public static var defaultChannel: Channel = { return Channel(name: "default", maxSimultaneousConnections: 1)! }()
    |                     |- warning: static property 'defaultChannel' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: convert 'defaultChannel' to a 'let' constant to make 'Sendable' shared state immutable
    |                     |- note: add '@MainActor' to make static property 'defaultChannel' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 25 | 		public static var resourceChannel: Channel = { return Channel(name: "resources", maxSimultaneousConnections: 50)! }()
 26 |
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugChannel.swift:25:21: warning: static property 'resourceChannel' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 23 |
 24 | 		public static var defaultChannel: Channel = { return Channel(name: "default", maxSimultaneousConnections: 1)! }()
 25 | 		public static var resourceChannel: Channel = { return Channel(name: "resources", maxSimultaneousConnections: 50)! }()
    |                     |- warning: static property 'resourceChannel' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: convert 'resourceChannel' to a 'let' constant to make 'Sendable' shared state immutable
    |                     |- note: add '@MainActor' to make static property 'resourceChannel' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 26 |
 27 | 		static var allChannels: [String: Channel] = [:]
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugChannel.swift:27:14: warning: static property 'allChannels' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 25 | 		public static var resourceChannel: Channel = { return Channel(name: "resources", maxSimultaneousConnections: 50)! }()
 26 |
 27 | 		static var allChannels: [String: Channel] = [:]
    |              |- warning: static property 'allChannels' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |              |- note: convert 'allChannels' to a 'let' constant to make 'Sendable' shared state immutable
    |              |- note: add '@MainActor' to make static property 'allChannels' part of global actor 'MainActor'
    |              `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 28 |
 29 | 		init?(name chName: String, maxSimultaneousConnections max: Int) {
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugChannel.swift:204:6: warning: capture of 'connection' with non-sendable type 'Connection' in a '@Sendable' closure
202 | 				self.activeConnections.append(connection)
203 | 				self.queue.addOperation {
204 | 					connection.run()
    |      `- warning: capture of 'connection' with non-sendable type 'Connection' in a '@Sendable' closure
205 | 				}
206 | 			}
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugConnection.swift:16:14: note: class 'Connection' does not conform to the 'Sendable' protocol
 14 | extension URLRequest.CachePolicy : Codable {}
 15 |
 16 | public class Connection: Hashable, CustomStringConvertible, Codable {
    |              `- note: class 'Connection' does not conform to the 'Sendable' protocol
 17 | 	deinit {
 18 | 		self.killTimer?.invalidate()
[12/25] Compiling Plug PlugParameters.swift
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugPersistence.swift:13:27: warning: static property 'instance' is not concurrency-safe because non-'Sendable' type 'Plug.PersistenceManager' may have shared mutable state; this is an error in the Swift 6 language mode
 10 |
 11 | public extension Plug {
 12 | 	class PersistenceManager {
    |        `- note: class 'PersistenceManager' does not conform to the 'Sendable' protocol
 13 |         public static let instance = PersistenceManager()
    |                           |- warning: static property 'instance' is not concurrency-safe because non-'Sendable' type 'Plug.PersistenceManager' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'instance' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 14 |
 15 | 		public func register(_ object: PlugPersistentDelegate) {
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugPersistence.swift:37:8: warning: capture of 'self' with non-sendable type 'Plug.PersistenceManager' in a '@Sendable' closure
 10 |
 11 | public extension Plug {
 12 | 	class PersistenceManager {
    |        `- note: class 'PersistenceManager' does not conform to the 'Sendable' protocol
 13 |         public static let instance = PersistenceManager()
 14 |
    :
 35 | 		func register(_ connection: Connection) {
 36 | 			self.queue.addOperation {
 37 | 				if self.persistentConnections.firstIndex(of: connection) == nil {
    |        `- warning: capture of 'self' with non-sendable type 'Plug.PersistenceManager' in a '@Sendable' closure
 38 | 					self.persistentConnections.append(connection)
 39 | 					self.queuePersistentConnectionSave()
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugPersistence.swift:37:50: warning: capture of 'connection' with non-sendable type 'Connection' in a '@Sendable' closure
 35 | 		func register(_ connection: Connection) {
 36 | 			self.queue.addOperation {
 37 | 				if self.persistentConnections.firstIndex(of: connection) == nil {
    |                                                  `- warning: capture of 'connection' with non-sendable type 'Connection' in a '@Sendable' closure
 38 | 					self.persistentConnections.append(connection)
 39 | 					self.queuePersistentConnectionSave()
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugConnection.swift:16:14: note: class 'Connection' does not conform to the 'Sendable' protocol
 14 | extension URLRequest.CachePolicy : Codable {}
 15 |
 16 | public class Connection: Hashable, CustomStringConvertible, Codable {
    |              `- note: class 'Connection' does not conform to the 'Sendable' protocol
 17 | 	deinit {
 18 | 		self.killTimer?.invalidate()
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugPersistence.swift:46:20: warning: capture of 'self' with non-sendable type 'Plug.PersistenceManager' in a '@Sendable' closure
 10 |
 11 | public extension Plug {
 12 | 	class PersistenceManager {
    |        `- note: class 'PersistenceManager' does not conform to the 'Sendable' protocol
 13 |         public static let instance = PersistenceManager()
 14 |
    :
 44 | 		func unregister(_ connection: Connection) {
 45 | 			self.queue.addOperation {
 46 | 				if let index = self.persistentConnections.firstIndex(of: connection) {
    |                    `- warning: capture of 'self' with non-sendable type 'Plug.PersistenceManager' in a '@Sendable' closure
 47 | 					self.persistentConnections.remove(at: index)
 48 | 					self.queuePersistentConnectionSave()
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugPersistence.swift:46:62: warning: capture of 'connection' with non-sendable type 'Connection' in a '@Sendable' closure
 44 | 		func unregister(_ connection: Connection) {
 45 | 			self.queue.addOperation {
 46 | 				if let index = self.persistentConnections.firstIndex(of: connection) {
    |                                                              `- warning: capture of 'connection' with non-sendable type 'Connection' in a '@Sendable' closure
 47 | 					self.persistentConnections.remove(at: index)
 48 | 					self.queuePersistentConnectionSave()
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugConnection.swift:16:14: note: class 'Connection' does not conform to the 'Sendable' protocol
 14 | extension URLRequest.CachePolicy : Codable {}
 15 |
 16 | public class Connection: Hashable, CustomStringConvertible, Codable {
    |              `- note: class 'Connection' does not conform to the 'Sendable' protocol
 17 | 	deinit {
 18 | 		self.killTimer?.invalidate()
[13/25] Compiling Plug PlugPersistence.swift
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugPersistence.swift:13:27: warning: static property 'instance' is not concurrency-safe because non-'Sendable' type 'Plug.PersistenceManager' may have shared mutable state; this is an error in the Swift 6 language mode
 10 |
 11 | public extension Plug {
 12 | 	class PersistenceManager {
    |        `- note: class 'PersistenceManager' does not conform to the 'Sendable' protocol
 13 |         public static let instance = PersistenceManager()
    |                           |- warning: static property 'instance' is not concurrency-safe because non-'Sendable' type 'Plug.PersistenceManager' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'instance' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 14 |
 15 | 		public func register(_ object: PlugPersistentDelegate) {
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugPersistence.swift:37:8: warning: capture of 'self' with non-sendable type 'Plug.PersistenceManager' in a '@Sendable' closure
 10 |
 11 | public extension Plug {
 12 | 	class PersistenceManager {
    |        `- note: class 'PersistenceManager' does not conform to the 'Sendable' protocol
 13 |         public static let instance = PersistenceManager()
 14 |
    :
 35 | 		func register(_ connection: Connection) {
 36 | 			self.queue.addOperation {
 37 | 				if self.persistentConnections.firstIndex(of: connection) == nil {
    |        `- warning: capture of 'self' with non-sendable type 'Plug.PersistenceManager' in a '@Sendable' closure
 38 | 					self.persistentConnections.append(connection)
 39 | 					self.queuePersistentConnectionSave()
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugPersistence.swift:37:50: warning: capture of 'connection' with non-sendable type 'Connection' in a '@Sendable' closure
 35 | 		func register(_ connection: Connection) {
 36 | 			self.queue.addOperation {
 37 | 				if self.persistentConnections.firstIndex(of: connection) == nil {
    |                                                  `- warning: capture of 'connection' with non-sendable type 'Connection' in a '@Sendable' closure
 38 | 					self.persistentConnections.append(connection)
 39 | 					self.queuePersistentConnectionSave()
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugConnection.swift:16:14: note: class 'Connection' does not conform to the 'Sendable' protocol
 14 | extension URLRequest.CachePolicy : Codable {}
 15 |
 16 | public class Connection: Hashable, CustomStringConvertible, Codable {
    |              `- note: class 'Connection' does not conform to the 'Sendable' protocol
 17 | 	deinit {
 18 | 		self.killTimer?.invalidate()
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugPersistence.swift:46:20: warning: capture of 'self' with non-sendable type 'Plug.PersistenceManager' in a '@Sendable' closure
 10 |
 11 | public extension Plug {
 12 | 	class PersistenceManager {
    |        `- note: class 'PersistenceManager' does not conform to the 'Sendable' protocol
 13 |         public static let instance = PersistenceManager()
 14 |
    :
 44 | 		func unregister(_ connection: Connection) {
 45 | 			self.queue.addOperation {
 46 | 				if let index = self.persistentConnections.firstIndex(of: connection) {
    |                    `- warning: capture of 'self' with non-sendable type 'Plug.PersistenceManager' in a '@Sendable' closure
 47 | 					self.persistentConnections.remove(at: index)
 48 | 					self.queuePersistentConnectionSave()
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugPersistence.swift:46:62: warning: capture of 'connection' with non-sendable type 'Connection' in a '@Sendable' closure
 44 | 		func unregister(_ connection: Connection) {
 45 | 			self.queue.addOperation {
 46 | 				if let index = self.persistentConnections.firstIndex(of: connection) {
    |                                                              `- warning: capture of 'connection' with non-sendable type 'Connection' in a '@Sendable' closure
 47 | 					self.persistentConnections.remove(at: index)
 48 | 					self.queuePersistentConnectionSave()
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugConnection.swift:16:14: note: class 'Connection' does not conform to the 'Sendable' protocol
 14 | extension URLRequest.CachePolicy : Codable {}
 15 |
 16 | public class Connection: Hashable, CustomStringConvertible, Codable {
    |              `- note: class 'Connection' does not conform to the 'Sendable' protocol
 17 | 	deinit {
 18 | 		self.killTimer?.invalidate()
[14/25] Compiling Plug HTTPCookie+Plug.swift
[15/25] Compiling Plug Incoming.swift
[16/25] Compiling Plug JSONStringify.swift
[17/25] Compiling Plug PlugErrors.swift
[18/25] Compiling Plug PlugImageConnection.swift
[19/25] Compiling Plug NSURLRequest+Plug.swift
[20/25] Compiling Plug Plug+iOS.swift
[21/25] Compiling Plug Codable+Additions.swift
/Users/admin/builder/spi-builder-workspace/Source/Plug/ConnectionLog.swift:34:4: warning: capture of 'self' with non-sendable type 'ConnectionLog' in a '@Sendable' closure
 9 | import Foundation
10 |
11 | public class ConnectionLog {
   |              `- note: class 'ConnectionLog' does not conform to the 'Sendable' protocol
12 | 	struct Notifications {
13 | 		static let didLogConnection = Notification.Name("Plug:ConnectionLog.didLogConnection")
   :
32 |
33 | 		self.queue.async {
34 | 			self.logged.append(connection)
   |    `- warning: capture of 'self' with non-sendable type 'ConnectionLog' in a '@Sendable' closure
35 | 			DispatchQueue.main.async {
36 | 				NotificationCenter.default.post(name: Notifications.didLogConnection, object: connection)
/Users/admin/builder/spi-builder-workspace/Source/Plug/ConnectionLog.swift:34:23: warning: capture of 'connection' with non-sendable type 'Connection' in a '@Sendable' closure
32 |
33 | 		self.queue.async {
34 | 			self.logged.append(connection)
   |                       `- warning: capture of 'connection' with non-sendable type 'Connection' in a '@Sendable' closure
35 | 			DispatchQueue.main.async {
36 | 				NotificationCenter.default.post(name: Notifications.didLogConnection, object: connection)
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugConnection.swift:16:14: note: class 'Connection' does not conform to the 'Sendable' protocol
 14 | extension URLRequest.CachePolicy : Codable {}
 15 |
 16 | public class Connection: Hashable, CustomStringConvertible, Codable {
    |              `- note: class 'Connection' does not conform to the 'Sendable' protocol
 17 | 	deinit {
 18 | 		self.killTimer?.invalidate()
[22/25] Compiling Plug ConnectionLog.swift
/Users/admin/builder/spi-builder-workspace/Source/Plug/ConnectionLog.swift:34:4: warning: capture of 'self' with non-sendable type 'ConnectionLog' in a '@Sendable' closure
 9 | import Foundation
10 |
11 | public class ConnectionLog {
   |              `- note: class 'ConnectionLog' does not conform to the 'Sendable' protocol
12 | 	struct Notifications {
13 | 		static let didLogConnection = Notification.Name("Plug:ConnectionLog.didLogConnection")
   :
32 |
33 | 		self.queue.async {
34 | 			self.logged.append(connection)
   |    `- warning: capture of 'self' with non-sendable type 'ConnectionLog' in a '@Sendable' closure
35 | 			DispatchQueue.main.async {
36 | 				NotificationCenter.default.post(name: Notifications.didLogConnection, object: connection)
/Users/admin/builder/spi-builder-workspace/Source/Plug/ConnectionLog.swift:34:23: warning: capture of 'connection' with non-sendable type 'Connection' in a '@Sendable' closure
32 |
33 | 		self.queue.async {
34 | 			self.logged.append(connection)
   |                       `- warning: capture of 'connection' with non-sendable type 'Connection' in a '@Sendable' closure
35 | 			DispatchQueue.main.async {
36 | 				NotificationCenter.default.post(name: Notifications.didLogConnection, object: connection)
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugConnection.swift:16:14: note: class 'Connection' does not conform to the 'Sendable' protocol
 14 | extension URLRequest.CachePolicy : Codable {}
 15 |
 16 | public class Connection: Hashable, CustomStringConvertible, Codable {
    |              `- note: class 'Connection' does not conform to the 'Sendable' protocol
 17 | 	deinit {
 18 | 		self.killTimer?.invalidate()
[23/25] Compiling Plug ConnectionLogViewController.swift
/Users/admin/builder/spi-builder-workspace/Source/Plug/ConnectionLog.swift:34:4: warning: capture of 'self' with non-sendable type 'ConnectionLog' in a '@Sendable' closure
 9 | import Foundation
10 |
11 | public class ConnectionLog {
   |              `- note: class 'ConnectionLog' does not conform to the 'Sendable' protocol
12 | 	struct Notifications {
13 | 		static let didLogConnection = Notification.Name("Plug:ConnectionLog.didLogConnection")
   :
32 |
33 | 		self.queue.async {
34 | 			self.logged.append(connection)
   |    `- warning: capture of 'self' with non-sendable type 'ConnectionLog' in a '@Sendable' closure
35 | 			DispatchQueue.main.async {
36 | 				NotificationCenter.default.post(name: Notifications.didLogConnection, object: connection)
/Users/admin/builder/spi-builder-workspace/Source/Plug/ConnectionLog.swift:34:23: warning: capture of 'connection' with non-sendable type 'Connection' in a '@Sendable' closure
32 |
33 | 		self.queue.async {
34 | 			self.logged.append(connection)
   |                       `- warning: capture of 'connection' with non-sendable type 'Connection' in a '@Sendable' closure
35 | 			DispatchQueue.main.async {
36 | 				NotificationCenter.default.post(name: Notifications.didLogConnection, object: connection)
/Users/admin/builder/spi-builder-workspace/Source/Plug/PlugConnection.swift:16:14: note: class 'Connection' does not conform to the 'Sendable' protocol
 14 | extension URLRequest.CachePolicy : Codable {}
 15 |
 16 | public class Connection: Hashable, CustomStringConvertible, Codable {
    |              `- note: class 'Connection' does not conform to the 'Sendable' protocol
 17 | 	deinit {
 18 | 		self.killTimer?.invalidate()
[24/25] Compiling Plug Plug.ConnectionData.swift
[25/25] Compiling Plug Plug.Headers.swift
Build complete! (8.52s)
Build complete.
{
  "dependencies" : [
  ],
  "manifest_display_name" : "Plug",
  "name" : "Plug",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
  ],
  "products" : [
    {
      "name" : "Plug",
      "targets" : [
        "Plug"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "Plug",
      "module_type" : "SwiftTarget",
      "name" : "Plug",
      "path" : "Source/Plug",
      "product_memberships" : [
        "Plug"
      ],
      "sources" : [
        "Codable+Additions.swift",
        "ConnectionLog.swift",
        "ConnectionLogViewController.swift",
        "HTTPCookie+Plug.swift",
        "Incoming.swift",
        "JSONStringify.swift",
        "NSURLRequest+Plug.swift",
        "Plug+iOS.swift",
        "Plug.ConnectionData.swift",
        "Plug.Headers.swift",
        "Plug.swift",
        "PlugChannel.swift",
        "PlugConnection.swift",
        "PlugCredentials.swift",
        "PlugErrors.swift",
        "PlugImageConnection.swift",
        "PlugJSON.swift",
        "PlugJSONConnection.swift",
        "PlugParameters.swift",
        "PlugPersistence.swift",
        "PlugProtocols.swift",
        "Reachability.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.1"
}
Done.