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.1 for macOS (SPM) on 26 Apr 2025 14:25:29 UTC.

Swift 6 data race errors: 5

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/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.03s)
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.1
Building package at path:  $PWD
https://github.com/vegather/Disruptive.git
https://github.com/vegather/Disruptive.git
{
  "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"
}
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/20] Compiling Disruptive Project.swift
[4/20] Compiling Disruptive Organization.swift
[5/20] Compiling Disruptive Permissions.swift
[6/20] Compiling Disruptive Device.swift
[7/20] Compiling Disruptive Event.swift
[8/20] 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: add '@MainActor' to make static property 'defaultSession' part of global actor 'MainActor'
    |                        `- 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
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
    |                         `- 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
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
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
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
    |                                                                 `- 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
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
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
196 |             }
197 |
198 |             diagnostics.setParseStart()
    |             `- warning: mutation of captured var 'diagnostics' in concurrently-executing code
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
207 |             }
208 |
209 |             diagnostics.setParseEnd()
    |             `- warning: mutation of captured var 'diagnostics' in concurrently-executing code
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
208 |
209 |             diagnostics.setParseEnd()
210 |             diagnostics.logDiagnostics(responseData: data)
    |             `- warning: reference to captured var 'diagnostics' in concurrently-executing code
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 {
[9/20] 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: add '@MainActor' to make static property 'defaultSession' part of global actor 'MainActor'
    |                        `- 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
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
    |                         `- 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
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
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
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
    |                                                                 `- 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
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
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
196 |             }
197 |
198 |             diagnostics.setParseStart()
    |             `- warning: mutation of captured var 'diagnostics' in concurrently-executing code
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
207 |             }
208 |
209 |             diagnostics.setParseEnd()
    |             `- warning: mutation of captured var 'diagnostics' in concurrently-executing code
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
208 |
209 |             diagnostics.setParseEnd()
210 |             diagnostics.logDiagnostics(responseData: data)
    |             `- warning: reference to captured var 'diagnostics' in concurrently-executing code
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 {
[10/20] 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: add '@MainActor' to make static property 'sseConfig' part of global actor 'MainActor'
    |                        `- 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
[11/20] 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: add '@MainActor' to make static property 'sseConfig' part of global actor 'MainActor'
    |                        `- 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
[12/20] Compiling Disruptive Errors.swift
[13/20] Compiling Disruptive EventTypes.swift
[14/20] Compiling Disruptive DTLog.swift
[15/20] Compiling Disruptive Diagnostics.swift
[16/20] 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: add '@MainActor' to make static property 'loggingEnabled' part of global actor 'MainActor'
   |                       `- 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/20] 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: add '@MainActor' to make static property 'loggingEnabled' part of global actor 'MainActor'
   |                       `- 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/20] 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: add '@MainActor' to make static property 'loggingEnabled' part of global actor 'MainActor'
   |                       `- 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: add '@MainActor' to make static property 'defaultSession' part of global actor 'MainActor'
    |                        `- 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: add '@MainActor' to make static property 'sseConfig' part of global actor 'MainActor'
    |                        `- 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
[19/20] Compiling Disruptive JWT.swift
[20/20] Compiling Disruptive NetworkTypes.swift
[21/21] Compiling Disruptive Stream.swift
Build complete! (6.54s)
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.