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 Disruptive, reference 2.0.0 (2fe973), with Swift 6.0 for macOS (SPM) on 28 Nov 2024 05:05:54 UTC.

Swift 6 data race errors: 5

Build Command

env DEVELOPER_DIR=/Applications/Xcode-16.1.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.58.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/vegather/Disruptive.git
Reference: 2.0.0
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/vegather/Disruptive
 * tag               2.0.0      -> FETCH_HEAD
HEAD is now at 2fe9734 Link tweaks
Cloned https://github.com/vegather/Disruptive.git
Revision (git rev-parse @):
2fe9734bb6362e982f99a72087128d5805e51499
SUCCESS checkout https://github.com/vegather/Disruptive.git at 2.0.0
========================================
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": "disruptive",
      "name": "Disruptive",
      "url": "https://github.com/vegather/Disruptive.git",
      "version": "unspecified",
      "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/Disruptive",
      "dependencies": [
      ]
    }
  ]
}
Fetching https://github.com/vegather/Disruptive.git
[1/6130] Fetching disruptive
Fetched https://github.com/vegather/Disruptive.git from cache (1.15s)
Creating working copy for https://github.com/vegather/Disruptive.git
Working copy of https://github.com/vegather/Disruptive.git resolved at 2.0.0 (2fe9734)
warning: '.resolve-product-dependencies': dependency 'disruptive' is not used by any target
Found 0 product dependencies
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.0
Building package at path:  $PWD
https://github.com/vegather/Disruptive.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.1.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--7754E27361AE5C74.txt
[3/20] Compiling Disruptive Project.swift
[4/21] Compiling Disruptive Device.swift
[5/21] Compiling Disruptive Event.swift
[6/21] Compiling Disruptive Organization.swift
[7/21] Compiling Disruptive Permissions.swift
[8/21] Compiling Disruptive ServerSentEvents.swift
/Users/admin/builder/spi-builder-workspace/Sources/Disruptive/Helpers/ServerSentEvents.swift:14:24: warning: static property 'sseConfig' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 12 |
 13 | public class ServerSentEvents: NSObject {
 14 |     private static var sseConfig: URLSessionConfiguration = {
    |                        |- warning: static property 'sseConfig' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                        |- note: convert 'sseConfig' to a 'let' constant to make 'Sendable' shared state immutable
    |                        |- note: annotate 'sseConfig' with '@MainActor' if property should only be accessed from the main actor
    |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 15 |         let config = URLSessionConfiguration.default
 16 |         config.timeoutIntervalForRequest  = .greatestFiniteMagnitude
/Users/admin/builder/spi-builder-workspace/Sources/Disruptive/Helpers/ServerSentEvents.swift:13:14: warning: non-final class 'ServerSentEvents' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
 11 | // Reference: https://www.w3.org/TR/eventsource/
 12 |
 13 | public class ServerSentEvents: NSObject {
    |              `- warning: non-final class 'ServerSentEvents' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
 14 |     private static var sseConfig: URLSessionConfiguration = {
 15 |         let config = URLSessionConfiguration.default
/Users/admin/builder/spi-builder-workspace/Sources/Disruptive/Helpers/ServerSentEvents.swift:28:17: warning: stored property 'session' of 'Sendable'-conforming class 'ServerSentEvents' is mutable; this is an error in the Swift 6 language mode
 26 |     }()
 27 |
 28 |     private var session: URLSession!
    |                 `- warning: stored property 'session' of 'Sendable'-conforming class 'ServerSentEvents' is mutable; this is an error in the Swift 6 language mode
 29 |     private var task: URLSessionTask?
 30 |     private let request: Request
[9/21] Compiling Disruptive Utils.swift
/Users/admin/builder/spi-builder-workspace/Sources/Disruptive/Helpers/ServerSentEvents.swift:14:24: warning: static property 'sseConfig' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 12 |
 13 | public class ServerSentEvents: NSObject {
 14 |     private static var sseConfig: URLSessionConfiguration = {
    |                        |- warning: static property 'sseConfig' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                        |- note: convert 'sseConfig' to a 'let' constant to make 'Sendable' shared state immutable
    |                        |- note: annotate 'sseConfig' with '@MainActor' if property should only be accessed from the main actor
    |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 15 |         let config = URLSessionConfiguration.default
 16 |         config.timeoutIntervalForRequest  = .greatestFiniteMagnitude
/Users/admin/builder/spi-builder-workspace/Sources/Disruptive/Helpers/ServerSentEvents.swift:13:14: warning: non-final class 'ServerSentEvents' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
 11 | // Reference: https://www.w3.org/TR/eventsource/
 12 |
 13 | public class ServerSentEvents: NSObject {
    |              `- warning: non-final class 'ServerSentEvents' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
 14 |     private static var sseConfig: URLSessionConfiguration = {
 15 |         let config = URLSessionConfiguration.default
/Users/admin/builder/spi-builder-workspace/Sources/Disruptive/Helpers/ServerSentEvents.swift:28:17: warning: stored property 'session' of 'Sendable'-conforming class 'ServerSentEvents' is mutable; this is an error in the Swift 6 language mode
 26 |     }()
 27 |
 28 |     private var session: URLSession!
    |                 `- warning: stored property 'session' of 'Sendable'-conforming class 'ServerSentEvents' is mutable; this is an error in the Swift 6 language mode
 29 |     private var task: URLSessionTask?
 30 |     private let request: Request
[10/21] Compiling Disruptive Requests.swift
/Users/admin/builder/spi-builder-workspace/Sources/Disruptive/Helpers/Requests.swift:108:24: warning: static property 'defaultSession' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
106 | extension Request {
107 |     /// Creates a URL session with a 20 second timeout
108 |     private static var defaultSession: URLSession = {
    |                        |- warning: static property 'defaultSession' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                        |- note: convert 'defaultSession' to a 'let' constant to make 'Sendable' shared state immutable
    |                        |- note: annotate 'defaultSession' with '@MainActor' if property should only be accessed from the main actor
    |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
109 |         let config = URLSessionConfiguration.default
110 |         config.timeoutIntervalForRequest  = 20
/Users/admin/builder/spi-builder-workspace/Sources/Disruptive/Helpers/Requests.swift:161:25: warning: capture of 'completion' with non-sendable type '(Result<T, DisruptiveError>) -> ()' in a `@Sendable` closure; this is an error in the Swift 6 language mode
159 |                     DTLog("Request to \(urlString) resulted in error: \(dtErr)")
160 |                     DispatchQueue.main.async {
161 |                         completion(.failure(dtErr))
    |                         |- warning: capture of 'completion' with non-sendable type '(Result<T, DisruptiveError>) -> ()' 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'
162 |                     }
163 |                     return
/Users/admin/builder/spi-builder-workspace/Sources/Disruptive/Helpers/Requests.swift:147:13: warning: mutation of captured var 'diagnostics' in concurrently-executing code; this is an error in the Swift 6 language mode
145 |
146 |         let task = Request.defaultSession.dataTask(with: urlReq) { data, response, error in
147 |             diagnostics.setNetworkEnd()
    |             `- warning: mutation of captured var 'diagnostics' in concurrently-executing code; this is an error in the Swift 6 language mode
148 |
149 |             let urlString = urlReq.url!.absoluteString
/Users/admin/builder/spi-builder-workspace/Sources/Disruptive/Helpers/Requests.swift:172:65: warning: capture of 'completion' with non-sendable type '(Result<T, DisruptiveError>) -> ()' in a `@Sendable` closure; this is an error in the Swift 6 language mode
170 |                     // Dispatch the same request again after waiting
171 |                     DispatchQueue.global().asyncAfter(deadline: .now() + .seconds(retryAfter)) {
172 |                         self.send(decoder: decoder, completion: completion)
    |                                                                 |- warning: capture of 'completion' with non-sendable type '(Result<T, DisruptiveError>) -> ()' 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'
173 |                     }
174 |
/Users/admin/builder/spi-builder-workspace/Sources/Disruptive/Helpers/Requests.swift:191:17: warning: reference to captured var 'diagnostics' in concurrently-executing code; this is an error in the Swift 6 language mode
189 |             // to the `Decodable` protocol
190 |             if T.self == EmptyResponse.self {
191 |                 diagnostics.logDiagnostics(responseData: nil)
    |                 `- warning: reference to captured var 'diagnostics' in concurrently-executing code; this is an error in the Swift 6 language mode
192 |                 DispatchQueue.main.async {
193 |                     completion(.success(EmptyResponse() as! T))
/Users/admin/builder/spi-builder-workspace/Sources/Disruptive/Helpers/Requests.swift:198:13: warning: mutation of captured var 'diagnostics' in concurrently-executing code; this is an error in the Swift 6 language mode
196 |             }
197 |
198 |             diagnostics.setParseStart()
    |             `- warning: mutation of captured var 'diagnostics' in concurrently-executing code; this is an error in the Swift 6 language mode
199 |
200 |             // Parse the returned data
/Users/admin/builder/spi-builder-workspace/Sources/Disruptive/Helpers/Requests.swift:209:13: warning: mutation of captured var 'diagnostics' in concurrently-executing code; this is an error in the Swift 6 language mode
207 |             }
208 |
209 |             diagnostics.setParseEnd()
    |             `- warning: mutation of captured var 'diagnostics' in concurrently-executing code; this is an error in the Swift 6 language mode
210 |             diagnostics.logDiagnostics(responseData: data)
211 |
/Users/admin/builder/spi-builder-workspace/Sources/Disruptive/Helpers/Requests.swift:210:13: warning: reference to captured var 'diagnostics' in concurrently-executing code; this is an error in the Swift 6 language mode
208 |
209 |             diagnostics.setParseEnd()
210 |             diagnostics.logDiagnostics(responseData: data)
    |             `- warning: reference to captured var 'diagnostics' in concurrently-executing code; this is an error in the Swift 6 language mode
211 |
212 |             DispatchQueue.main.async {
/Users/admin/builder/spi-builder-workspace/Sources/Disruptive/Helpers/Requests.swift:138:17: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
136 |             DTLog("Failed to create URLRequest from request: \(self)", isError: true)
137 |             DispatchQueue.main.async {
138 |                 completion(.failure(.unknownError))
    |                 |- 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
139 |             }
140 |             return
/Users/admin/builder/spi-builder-workspace/Sources/Disruptive/Helpers/Requests.swift:425:37: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
423 |                                 // This was the last page
424 |                                 DispatchQueue.main.async {
425 |                                     completion(.success(updatedResultsArray))
    |                                     |- 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
426 |                                 }
427 |                             } else {
/Users/admin/builder/spi-builder-workspace/Sources/Disruptive/Helpers/Requests.swift:425:57: warning: sending 'updatedResultsArray' risks causing data races; this is an error in the Swift 6 language mode
423 |                                 // This was the last page
424 |                                 DispatchQueue.main.async {
425 |                                     completion(.success(updatedResultsArray))
    |                                                         |- warning: sending 'updatedResultsArray' risks causing data races; this is an error in the Swift 6 language mode
    |                                                         `- note: task-isolated 'updatedResultsArray' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
426 |                                 }
427 |                             } else {
[11/21] Compiling Disruptive RetryScheme.swift
/Users/admin/builder/spi-builder-workspace/Sources/Disruptive/Helpers/Requests.swift:108:24: warning: static property 'defaultSession' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
106 | extension Request {
107 |     /// Creates a URL session with a 20 second timeout
108 |     private static var defaultSession: URLSession = {
    |                        |- warning: static property 'defaultSession' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                        |- note: convert 'defaultSession' to a 'let' constant to make 'Sendable' shared state immutable
    |                        |- note: annotate 'defaultSession' with '@MainActor' if property should only be accessed from the main actor
    |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
109 |         let config = URLSessionConfiguration.default
110 |         config.timeoutIntervalForRequest  = 20
/Users/admin/builder/spi-builder-workspace/Sources/Disruptive/Helpers/Requests.swift:161:25: warning: capture of 'completion' with non-sendable type '(Result<T, DisruptiveError>) -> ()' in a `@Sendable` closure; this is an error in the Swift 6 language mode
159 |                     DTLog("Request to \(urlString) resulted in error: \(dtErr)")
160 |                     DispatchQueue.main.async {
161 |                         completion(.failure(dtErr))
    |                         |- warning: capture of 'completion' with non-sendable type '(Result<T, DisruptiveError>) -> ()' 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'
162 |                     }
163 |                     return
/Users/admin/builder/spi-builder-workspace/Sources/Disruptive/Helpers/Requests.swift:147:13: warning: mutation of captured var 'diagnostics' in concurrently-executing code; this is an error in the Swift 6 language mode
145 |
146 |         let task = Request.defaultSession.dataTask(with: urlReq) { data, response, error in
147 |             diagnostics.setNetworkEnd()
    |             `- warning: mutation of captured var 'diagnostics' in concurrently-executing code; this is an error in the Swift 6 language mode
148 |
149 |             let urlString = urlReq.url!.absoluteString
/Users/admin/builder/spi-builder-workspace/Sources/Disruptive/Helpers/Requests.swift:172:65: warning: capture of 'completion' with non-sendable type '(Result<T, DisruptiveError>) -> ()' in a `@Sendable` closure; this is an error in the Swift 6 language mode
170 |                     // Dispatch the same request again after waiting
171 |                     DispatchQueue.global().asyncAfter(deadline: .now() + .seconds(retryAfter)) {
172 |                         self.send(decoder: decoder, completion: completion)
    |                                                                 |- warning: capture of 'completion' with non-sendable type '(Result<T, DisruptiveError>) -> ()' 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'
173 |                     }
174 |
/Users/admin/builder/spi-builder-workspace/Sources/Disruptive/Helpers/Requests.swift:191:17: warning: reference to captured var 'diagnostics' in concurrently-executing code; this is an error in the Swift 6 language mode
189 |             // to the `Decodable` protocol
190 |             if T.self == EmptyResponse.self {
191 |                 diagnostics.logDiagnostics(responseData: nil)
    |                 `- warning: reference to captured var 'diagnostics' in concurrently-executing code; this is an error in the Swift 6 language mode
192 |                 DispatchQueue.main.async {
193 |                     completion(.success(EmptyResponse() as! T))
/Users/admin/builder/spi-builder-workspace/Sources/Disruptive/Helpers/Requests.swift:198:13: warning: mutation of captured var 'diagnostics' in concurrently-executing code; this is an error in the Swift 6 language mode
196 |             }
197 |
198 |             diagnostics.setParseStart()
    |             `- warning: mutation of captured var 'diagnostics' in concurrently-executing code; this is an error in the Swift 6 language mode
199 |
200 |             // Parse the returned data
/Users/admin/builder/spi-builder-workspace/Sources/Disruptive/Helpers/Requests.swift:209:13: warning: mutation of captured var 'diagnostics' in concurrently-executing code; this is an error in the Swift 6 language mode
207 |             }
208 |
209 |             diagnostics.setParseEnd()
    |             `- warning: mutation of captured var 'diagnostics' in concurrently-executing code; this is an error in the Swift 6 language mode
210 |             diagnostics.logDiagnostics(responseData: data)
211 |
/Users/admin/builder/spi-builder-workspace/Sources/Disruptive/Helpers/Requests.swift:210:13: warning: reference to captured var 'diagnostics' in concurrently-executing code; this is an error in the Swift 6 language mode
208 |
209 |             diagnostics.setParseEnd()
210 |             diagnostics.logDiagnostics(responseData: data)
    |             `- warning: reference to captured var 'diagnostics' in concurrently-executing code; this is an error in the Swift 6 language mode
211 |
212 |             DispatchQueue.main.async {
/Users/admin/builder/spi-builder-workspace/Sources/Disruptive/Helpers/Requests.swift:138:17: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
136 |             DTLog("Failed to create URLRequest from request: \(self)", isError: true)
137 |             DispatchQueue.main.async {
138 |                 completion(.failure(.unknownError))
    |                 |- 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
139 |             }
140 |             return
/Users/admin/builder/spi-builder-workspace/Sources/Disruptive/Helpers/Requests.swift:425:37: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
423 |                                 // This was the last page
424 |                                 DispatchQueue.main.async {
425 |                                     completion(.success(updatedResultsArray))
    |                                     |- 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
426 |                                 }
427 |                             } else {
/Users/admin/builder/spi-builder-workspace/Sources/Disruptive/Helpers/Requests.swift:425:57: warning: sending 'updatedResultsArray' risks causing data races; this is an error in the Swift 6 language mode
423 |                                 // This was the last page
424 |                                 DispatchQueue.main.async {
425 |                                     completion(.success(updatedResultsArray))
    |                                                         |- warning: sending 'updatedResultsArray' risks causing data races; this is an error in the Swift 6 language mode
    |                                                         `- note: task-isolated 'updatedResultsArray' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
426 |                                 }
427 |                             } else {
[12/21] Compiling Disruptive Errors.swift
[13/21] Compiling Disruptive EventTypes.swift
[14/21] Compiling Disruptive DTLog.swift
/Users/admin/builder/spi-builder-workspace/Sources/Disruptive/Disruptive.swift:31:23: warning: static property 'loggingEnabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
29 |
30 |     /// Whether or not the DisruptiveAPI should log to the console. Defaults to `false`
31 |     public static var loggingEnabled = false
   |                       |- warning: static property 'loggingEnabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: convert 'loggingEnabled' to a 'let' constant to make 'Sendable' shared state immutable
   |                       |- note: annotate 'loggingEnabled' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
32 |
33 |     /// The authentication mechanism used by `Disruptive`. This will be
[15/21] Compiling Disruptive Diagnostics.swift
/Users/admin/builder/spi-builder-workspace/Sources/Disruptive/Disruptive.swift:31:23: warning: static property 'loggingEnabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
29 |
30 |     /// Whether or not the DisruptiveAPI should log to the console. Defaults to `false`
31 |     public static var loggingEnabled = false
   |                       |- warning: static property 'loggingEnabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: convert 'loggingEnabled' to a 'let' constant to make 'Sendable' shared state immutable
   |                       |- note: annotate 'loggingEnabled' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
32 |
33 |     /// The authentication mechanism used by `Disruptive`. This will be
[16/21] Compiling Disruptive Disruptive.swift
/Users/admin/builder/spi-builder-workspace/Sources/Disruptive/Disruptive.swift:31:23: warning: static property 'loggingEnabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
29 |
30 |     /// Whether or not the DisruptiveAPI should log to the console. Defaults to `false`
31 |     public static var loggingEnabled = false
   |                       |- warning: static property 'loggingEnabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: convert 'loggingEnabled' to a 'let' constant to make 'Sendable' shared state immutable
   |                       |- note: annotate 'loggingEnabled' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
32 |
33 |     /// The authentication mechanism used by `Disruptive`. This will be
/Users/admin/builder/spi-builder-workspace/Sources/Disruptive/Helpers/Authentication.swift:258:29: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
256 |                         DTLog("OAuth2 authentication successful")
257 |                         DispatchQueue.main.async {
258 |                             self?.auth = Auth(
    |                             |- 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
259 |                                 token: "Bearer \(response.accessToken)",
260 |                                 expirationDate: Date(timeIntervalSinceNow: TimeInterval(response.expiresIn))
/Users/admin/builder/spi-builder-workspace/Sources/Disruptive/Helpers/Authentication.swift:262:29: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
260 |                                 expirationDate: Date(timeIntervalSinceNow: TimeInterval(response.expiresIn))
261 |                             )
262 |                             completion(.success(()))
    |                             |- 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
263 |                         }
264 |                     case .failure(let e):
/Users/admin/builder/spi-builder-workspace/Sources/Disruptive/Helpers/Authentication.swift:267:29: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
265 |                         DTLog("OAuth2 authentication failed with error: \(e)")
266 |                         DispatchQueue.main.async {
267 |                             completion(.failure(e))
    |                             |- 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
268 |                         }
269 |                 }
[17/21] Compiling Disruptive Authentication.swift
/Users/admin/builder/spi-builder-workspace/Sources/Disruptive/Disruptive.swift:31:23: warning: static property 'loggingEnabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
29 |
30 |     /// Whether or not the DisruptiveAPI should log to the console. Defaults to `false`
31 |     public static var loggingEnabled = false
   |                       |- warning: static property 'loggingEnabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: convert 'loggingEnabled' to a 'let' constant to make 'Sendable' shared state immutable
   |                       |- note: annotate 'loggingEnabled' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
32 |
33 |     /// The authentication mechanism used by `Disruptive`. This will be
/Users/admin/builder/spi-builder-workspace/Sources/Disruptive/Helpers/Authentication.swift:258:29: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
256 |                         DTLog("OAuth2 authentication successful")
257 |                         DispatchQueue.main.async {
258 |                             self?.auth = Auth(
    |                             |- 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
259 |                                 token: "Bearer \(response.accessToken)",
260 |                                 expirationDate: Date(timeIntervalSinceNow: TimeInterval(response.expiresIn))
/Users/admin/builder/spi-builder-workspace/Sources/Disruptive/Helpers/Authentication.swift:262:29: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
260 |                                 expirationDate: Date(timeIntervalSinceNow: TimeInterval(response.expiresIn))
261 |                             )
262 |                             completion(.success(()))
    |                             |- 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
263 |                         }
264 |                     case .failure(let e):
/Users/admin/builder/spi-builder-workspace/Sources/Disruptive/Helpers/Authentication.swift:267:29: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
265 |                         DTLog("OAuth2 authentication failed with error: \(e)")
266 |                         DispatchQueue.main.async {
267 |                             completion(.failure(e))
    |                             |- 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
268 |                         }
269 |                 }
[18/21] Compiling Disruptive JWT.swift
[19/21] Compiling Disruptive NetworkTypes.swift
[20/21] Emitting module Disruptive
/Users/admin/builder/spi-builder-workspace/Sources/Disruptive/Disruptive.swift:31:23: warning: static property 'loggingEnabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
29 |
30 |     /// Whether or not the DisruptiveAPI should log to the console. Defaults to `false`
31 |     public static var loggingEnabled = false
   |                       |- warning: static property 'loggingEnabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: convert 'loggingEnabled' to a 'let' constant to make 'Sendable' shared state immutable
   |                       |- note: annotate 'loggingEnabled' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
32 |
33 |     /// The authentication mechanism used by `Disruptive`. This will be
/Users/admin/builder/spi-builder-workspace/Sources/Disruptive/Helpers/Requests.swift:108:24: warning: static property 'defaultSession' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
106 | extension Request {
107 |     /// Creates a URL session with a 20 second timeout
108 |     private static var defaultSession: URLSession = {
    |                        |- warning: static property 'defaultSession' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                        |- note: convert 'defaultSession' to a 'let' constant to make 'Sendable' shared state immutable
    |                        |- note: annotate 'defaultSession' with '@MainActor' if property should only be accessed from the main actor
    |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
109 |         let config = URLSessionConfiguration.default
110 |         config.timeoutIntervalForRequest  = 20
/Users/admin/builder/spi-builder-workspace/Sources/Disruptive/Helpers/ServerSentEvents.swift:14:24: warning: static property 'sseConfig' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 12 |
 13 | public class ServerSentEvents: NSObject {
 14 |     private static var sseConfig: URLSessionConfiguration = {
    |                        |- warning: static property 'sseConfig' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                        |- note: convert 'sseConfig' to a 'let' constant to make 'Sendable' shared state immutable
    |                        |- note: annotate 'sseConfig' with '@MainActor' if property should only be accessed from the main actor
    |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 15 |         let config = URLSessionConfiguration.default
 16 |         config.timeoutIntervalForRequest  = .greatestFiniteMagnitude
/Users/admin/builder/spi-builder-workspace/Sources/Disruptive/Helpers/ServerSentEvents.swift:13:14: warning: non-final class 'ServerSentEvents' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
 11 | // Reference: https://www.w3.org/TR/eventsource/
 12 |
 13 | public class ServerSentEvents: NSObject {
    |              `- warning: non-final class 'ServerSentEvents' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
 14 |     private static var sseConfig: URLSessionConfiguration = {
 15 |         let config = URLSessionConfiguration.default
/Users/admin/builder/spi-builder-workspace/Sources/Disruptive/Helpers/ServerSentEvents.swift:28:17: warning: stored property 'session' of 'Sendable'-conforming class 'ServerSentEvents' is mutable; this is an error in the Swift 6 language mode
 26 |     }()
 27 |
 28 |     private var session: URLSession!
    |                 `- warning: stored property 'session' of 'Sendable'-conforming class 'ServerSentEvents' is mutable; this is an error in the Swift 6 language mode
 29 |     private var task: URLSessionTask?
 30 |     private let request: Request
[21/21] Compiling Disruptive Stream.swift
Build complete! (12.74s)
Build complete.
{
  "dependencies" : [
  ],
  "manifest_display_name" : "Disruptive",
  "name" : "Disruptive",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "ios",
      "version" : "13.0"
    },
    {
      "name" : "macos",
      "version" : "10.15"
    }
  ],
  "products" : [
    {
      "name" : "Disruptive",
      "targets" : [
        "Disruptive"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "DisruptiveTests",
      "module_type" : "SwiftTarget",
      "name" : "DisruptiveTests",
      "path" : "Tests/DisruptiveTests",
      "sources" : [
        "DisruptiveTests.swift",
        "XCTestManifests.swift"
      ],
      "target_dependencies" : [
        "Disruptive"
      ],
      "type" : "test"
    },
    {
      "c99name" : "Disruptive",
      "module_type" : "SwiftTarget",
      "name" : "Disruptive",
      "path" : "Sources/Disruptive",
      "product_memberships" : [
        "Disruptive"
      ],
      "sources" : [
        "Disruptive.swift",
        "Helpers/Authentication.swift",
        "Helpers/DTLog.swift",
        "Helpers/Diagnostics.swift",
        "Helpers/Errors.swift",
        "Helpers/EventTypes.swift",
        "Helpers/JWT.swift",
        "Helpers/NetworkTypes.swift",
        "Helpers/Requests.swift",
        "Helpers/RetryScheme.swift",
        "Helpers/ServerSentEvents.swift",
        "Helpers/Utils.swift",
        "Resources/Device.swift",
        "Resources/Event.swift",
        "Resources/Organization.swift",
        "Resources/Permissions.swift",
        "Resources/Project.swift",
        "Resources/Stream.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.3"
}
Done.