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 Get, reference main (312498), with Swift 6.1 for Linux on 29 Apr 2025 16:16:05 UTC.

Swift 6 data race errors: 8

Build Command

bash -c docker run --pull=always --rm -v "checkouts-4609320-0":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.1-latest swift build --triple x86_64-unknown-linux-gnu -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures 2>&1

Build Log

========================================
RunAll
========================================
Builder version: 4.61.1
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/kean/Get.git
Reference: main
Initialized empty Git repository in /host/spi-builder-workspace/.git/
hint: Using 'master' as the name for the initial branch. This default branch name
hint: is subject to change. To configure the initial branch name to use in all
hint: of your new repositories, which will suppress this warning, call:
hint:
hint: 	git config --global init.defaultBranch <name>
hint:
hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
hint: 'development'. The just-created branch can be renamed via this command:
hint:
hint: 	git branch -m <name>
From https://github.com/kean/Get
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
HEAD is now at 3124988 Fix Swift 6 warnings
Cloned https://github.com/kean/Get.git
Revision (git rev-parse @):
31249885da1052872e0ac91a2943f62567c0d96d
SUCCESS checkout https://github.com/kean/Get.git at main
========================================
Build
========================================
Selected platform:         linux
Swift version:             6.1
Building package at path:  $PWD
https://github.com/kean/Get.git
https://github.com/kean/Get.git
WARNING: environment variable SUPPRESS_SWIFT_6_FLAGS is not set
{
  "dependencies" : [
  ],
  "manifest_display_name" : "Get",
  "name" : "Get",
  "path" : "/host/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "ios",
      "version" : "13.0"
    },
    {
      "name" : "maccatalyst",
      "version" : "13.0"
    },
    {
      "name" : "macos",
      "version" : "10.15"
    },
    {
      "name" : "watchos",
      "version" : "6.0"
    },
    {
      "name" : "tvos",
      "version" : "13.0"
    }
  ],
  "products" : [
    {
      "name" : "Get",
      "targets" : [
        "Get"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "GetTests",
      "module_type" : "SwiftTarget",
      "name" : "GetTests",
      "path" : "Tests/GetTests",
      "resources" : [
        {
          "path" : "/host/spi-builder-workspace/Tests/GetTests/Resources/user.json",
          "rule" : {
            "process" : {
            }
          }
        }
      ],
      "sources" : [
        "ClientAuthorizationTests.swift",
        "ClientDelegateTests.swift",
        "ClientIIntegrationTests.swift",
        "ClientMakeRequestsTests.swift",
        "ClientMiscTests.swift",
        "ClientSendingRequestsTests.swift",
        "ClientSessionDelegateTests.swift",
        "CodeSamplesTests.swift",
        "GitHubAPI.swift",
        "Helpers.swift",
        "Mocker/Mock.swift",
        "Mocker/Mocker.swift",
        "Mocker/MockingURLProtocol.swift",
        "Mocker/XCTest+Mocker.swift",
        "ResponseTests.swift"
      ],
      "target_dependencies" : [
        "Get"
      ],
      "type" : "test"
    },
    {
      "c99name" : "Get",
      "module_type" : "SwiftTarget",
      "name" : "Get",
      "path" : "Sources/Get",
      "product_memberships" : [
        "Get"
      ],
      "sources" : [
        "APIClient.swift",
        "APIClientDelegate.swift",
        "DataLoader.swift",
        "Request.swift",
        "Response.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.5"
}
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4609320-0":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.1-latest swift build --triple x86_64-unknown-linux-gnu -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures 2>&1
basic-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:3bdcac04179f4ed3e5b8e9dbd6e74bbf5ebc0f4fde48bbaad7d1e5c757e65bcb
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.1-latest
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version-24593BA9C3E375BF.txt
[3/8] Compiling Get Response.swift
[4/8] Compiling Get Request.swift
/host/spi-builder-workspace/Sources/Get/Request.swift:123:23: warning: static property 'get' is not concurrency-safe because non-'Sendable' type 'HTTPMethod' may have shared mutable state; this is an error in the Swift 6 language mode
110 | }
111 |
112 | public struct HTTPMethod: RawRepresentable, Hashable, ExpressibleByStringLiteral {
    |               `- note: consider making struct 'HTTPMethod' conform to the 'Sendable' protocol
113 |     public let rawValue: String
114 |
    :
121 |     }
122 |
123 |     public static let get: HTTPMethod = "GET"
    |                       |- warning: static property 'get' is not concurrency-safe because non-'Sendable' type 'HTTPMethod' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'get' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
124 |     public static let post: HTTPMethod = "POST"
125 |     public static let patch: HTTPMethod = "PATCH"
/host/spi-builder-workspace/Sources/Get/Request.swift:124:23: warning: static property 'post' is not concurrency-safe because non-'Sendable' type 'HTTPMethod' may have shared mutable state; this is an error in the Swift 6 language mode
110 | }
111 |
112 | public struct HTTPMethod: RawRepresentable, Hashable, ExpressibleByStringLiteral {
    |               `- note: consider making struct 'HTTPMethod' conform to the 'Sendable' protocol
113 |     public let rawValue: String
114 |
    :
122 |
123 |     public static let get: HTTPMethod = "GET"
124 |     public static let post: HTTPMethod = "POST"
    |                       |- warning: static property 'post' is not concurrency-safe because non-'Sendable' type 'HTTPMethod' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'post' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
125 |     public static let patch: HTTPMethod = "PATCH"
126 |     public static let put: HTTPMethod = "PUT"
/host/spi-builder-workspace/Sources/Get/Request.swift:125:23: warning: static property 'patch' is not concurrency-safe because non-'Sendable' type 'HTTPMethod' may have shared mutable state; this is an error in the Swift 6 language mode
110 | }
111 |
112 | public struct HTTPMethod: RawRepresentable, Hashable, ExpressibleByStringLiteral {
    |               `- note: consider making struct 'HTTPMethod' conform to the 'Sendable' protocol
113 |     public let rawValue: String
114 |
    :
123 |     public static let get: HTTPMethod = "GET"
124 |     public static let post: HTTPMethod = "POST"
125 |     public static let patch: HTTPMethod = "PATCH"
    |                       |- warning: static property 'patch' is not concurrency-safe because non-'Sendable' type 'HTTPMethod' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'patch' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
126 |     public static let put: HTTPMethod = "PUT"
127 |     public static let delete: HTTPMethod = "DELETE"
/host/spi-builder-workspace/Sources/Get/Request.swift:126:23: warning: static property 'put' is not concurrency-safe because non-'Sendable' type 'HTTPMethod' may have shared mutable state; this is an error in the Swift 6 language mode
110 | }
111 |
112 | public struct HTTPMethod: RawRepresentable, Hashable, ExpressibleByStringLiteral {
    |               `- note: consider making struct 'HTTPMethod' conform to the 'Sendable' protocol
113 |     public let rawValue: String
114 |
    :
124 |     public static let post: HTTPMethod = "POST"
125 |     public static let patch: HTTPMethod = "PATCH"
126 |     public static let put: HTTPMethod = "PUT"
    |                       |- warning: static property 'put' is not concurrency-safe because non-'Sendable' type 'HTTPMethod' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'put' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
127 |     public static let delete: HTTPMethod = "DELETE"
128 |     public static let options: HTTPMethod = "OPTIONS"
/host/spi-builder-workspace/Sources/Get/Request.swift:127:23: warning: static property 'delete' is not concurrency-safe because non-'Sendable' type 'HTTPMethod' may have shared mutable state; this is an error in the Swift 6 language mode
110 | }
111 |
112 | public struct HTTPMethod: RawRepresentable, Hashable, ExpressibleByStringLiteral {
    |               `- note: consider making struct 'HTTPMethod' conform to the 'Sendable' protocol
113 |     public let rawValue: String
114 |
    :
125 |     public static let patch: HTTPMethod = "PATCH"
126 |     public static let put: HTTPMethod = "PUT"
127 |     public static let delete: HTTPMethod = "DELETE"
    |                       |- warning: static property 'delete' is not concurrency-safe because non-'Sendable' type 'HTTPMethod' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'delete' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
128 |     public static let options: HTTPMethod = "OPTIONS"
129 |     public static let head: HTTPMethod = "HEAD"
/host/spi-builder-workspace/Sources/Get/Request.swift:128:23: warning: static property 'options' is not concurrency-safe because non-'Sendable' type 'HTTPMethod' may have shared mutable state; this is an error in the Swift 6 language mode
110 | }
111 |
112 | public struct HTTPMethod: RawRepresentable, Hashable, ExpressibleByStringLiteral {
    |               `- note: consider making struct 'HTTPMethod' conform to the 'Sendable' protocol
113 |     public let rawValue: String
114 |
    :
126 |     public static let put: HTTPMethod = "PUT"
127 |     public static let delete: HTTPMethod = "DELETE"
128 |     public static let options: HTTPMethod = "OPTIONS"
    |                       |- warning: static property 'options' is not concurrency-safe because non-'Sendable' type 'HTTPMethod' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'options' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
129 |     public static let head: HTTPMethod = "HEAD"
130 |     public static let trace: HTTPMethod = "TRACE"
/host/spi-builder-workspace/Sources/Get/Request.swift:129:23: warning: static property 'head' is not concurrency-safe because non-'Sendable' type 'HTTPMethod' may have shared mutable state; this is an error in the Swift 6 language mode
110 | }
111 |
112 | public struct HTTPMethod: RawRepresentable, Hashable, ExpressibleByStringLiteral {
    |               `- note: consider making struct 'HTTPMethod' conform to the 'Sendable' protocol
113 |     public let rawValue: String
114 |
    :
127 |     public static let delete: HTTPMethod = "DELETE"
128 |     public static let options: HTTPMethod = "OPTIONS"
129 |     public static let head: HTTPMethod = "HEAD"
    |                       |- warning: static property 'head' is not concurrency-safe because non-'Sendable' type 'HTTPMethod' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'head' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
130 |     public static let trace: HTTPMethod = "TRACE"
131 | }
/host/spi-builder-workspace/Sources/Get/Request.swift:130:23: warning: static property 'trace' is not concurrency-safe because non-'Sendable' type 'HTTPMethod' may have shared mutable state; this is an error in the Swift 6 language mode
110 | }
111 |
112 | public struct HTTPMethod: RawRepresentable, Hashable, ExpressibleByStringLiteral {
    |               `- note: consider making struct 'HTTPMethod' conform to the 'Sendable' protocol
113 |     public let rawValue: String
114 |
    :
128 |     public static let options: HTTPMethod = "OPTIONS"
129 |     public static let head: HTTPMethod = "HEAD"
130 |     public static let trace: HTTPMethod = "TRACE"
    |                       |- warning: static property 'trace' is not concurrency-safe because non-'Sendable' type 'HTTPMethod' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'trace' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
131 | }
132 |
[5/8] Compiling Get DataLoader.swift
/host/spi-builder-workspace/Sources/Get/DataLoader.swift:140:145: warning: passing non-sendable parameter 'completionHandler' to function expecting a @Sendable closure
136 |     }
137 |
138 |     func urlSession(_ session: URLSession, task: URLSessionTask, willPerformHTTPRedirection response: HTTPURLResponse, newRequest request: URLRequest, completionHandler: @escaping (URLRequest?) -> Void) {
    |                                                                                                                                                        `- note: parameter 'completionHandler' is implicitly non-sendable
139 | #if os(Linux)
140 |         handlers[task]?.delegate?.urlSession(session, task: task, willPerformHTTPRedirection: response, newRequest: request, completionHandler: completionHandler) ??
    |                                                                                                                                                 `- warning: passing non-sendable parameter 'completionHandler' to function expecting a @Sendable closure
141 |         userTaskDelegate?.urlSession(session, task: task, willPerformHTTPRedirection: response, newRequest: request, completionHandler: completionHandler) ??
142 |         completionHandler(request)
/host/spi-builder-workspace/Sources/Get/DataLoader.swift:141:137: warning: passing non-sendable parameter 'completionHandler' to function expecting a @Sendable closure
136 |     }
137 |
138 |     func urlSession(_ session: URLSession, task: URLSessionTask, willPerformHTTPRedirection response: HTTPURLResponse, newRequest request: URLRequest, completionHandler: @escaping (URLRequest?) -> Void) {
    |                                                                                                                                                        `- note: parameter 'completionHandler' is implicitly non-sendable
139 | #if os(Linux)
140 |         handlers[task]?.delegate?.urlSession(session, task: task, willPerformHTTPRedirection: response, newRequest: request, completionHandler: completionHandler) ??
141 |         userTaskDelegate?.urlSession(session, task: task, willPerformHTTPRedirection: response, newRequest: request, completionHandler: completionHandler) ??
    |                                                                                                                                         `- warning: passing non-sendable parameter 'completionHandler' to function expecting a @Sendable closure
142 |         completionHandler(request)
143 | #else
/host/spi-builder-workspace/Sources/Get/DataLoader.swift:170:109: warning: passing non-sendable parameter 'completionHandler' to function expecting a @Sendable closure
166 | #endif
167 |
168 |     func urlSession(_ session: URLSession, task: URLSessionTask, didReceive challenge: URLAuthenticationChallenge, completionHandler: @escaping (URLSession.AuthChallengeDisposition, URLCredential?) -> Void) {
    |                                                                                                                    `- note: parameter 'completionHandler' is implicitly non-sendable
169 | #if os(Linux)
170 |         handlers[task]?.delegate?.urlSession(session, task: task, didReceive: challenge, completionHandler: completionHandler) ??
    |                                                                                                             `- warning: passing non-sendable parameter 'completionHandler' to function expecting a @Sendable closure
171 |         userTaskDelegate?.urlSession(session, task: task, didReceive: challenge, completionHandler: completionHandler) ??
172 |         completionHandler(.performDefaultHandling, nil)
/host/spi-builder-workspace/Sources/Get/DataLoader.swift:171:101: warning: passing non-sendable parameter 'completionHandler' to function expecting a @Sendable closure
166 | #endif
167 |
168 |     func urlSession(_ session: URLSession, task: URLSessionTask, didReceive challenge: URLAuthenticationChallenge, completionHandler: @escaping (URLSession.AuthChallengeDisposition, URLCredential?) -> Void) {
    |                                                                                                                    `- note: parameter 'completionHandler' is implicitly non-sendable
169 | #if os(Linux)
170 |         handlers[task]?.delegate?.urlSession(session, task: task, didReceive: challenge, completionHandler: completionHandler) ??
171 |         userTaskDelegate?.urlSession(session, task: task, didReceive: challenge, completionHandler: completionHandler) ??
    |                                                                                                     `- warning: passing non-sendable parameter 'completionHandler' to function expecting a @Sendable closure
172 |         completionHandler(.performDefaultHandling, nil)
173 | #else
/host/spi-builder-workspace/Sources/Get/DataLoader.swift:182:120: warning: passing non-sendable parameter 'completionHandler' to function expecting a @Sendable closure
178 |     }
179 |
180 |     func urlSession(_ session: URLSession, task: URLSessionTask, willBeginDelayedRequest request: URLRequest, completionHandler: @escaping (URLSession.DelayedRequestDisposition, URLRequest?) -> Void) {
    |                                                                                                               `- note: parameter 'completionHandler' is implicitly non-sendable
181 | #if os(Linux)
182 |         handlers[task]?.delegate?.urlSession(session, task: task, willBeginDelayedRequest: request, completionHandler: completionHandler) ??
    |                                                                                                                        `- warning: passing non-sendable parameter 'completionHandler' to function expecting a @Sendable closure
183 |         userTaskDelegate?.urlSession(session, task: task, willBeginDelayedRequest: request, completionHandler: completionHandler) ??
184 |         completionHandler(.continueLoading, nil)
/host/spi-builder-workspace/Sources/Get/DataLoader.swift:183:112: warning: passing non-sendable parameter 'completionHandler' to function expecting a @Sendable closure
178 |     }
179 |
180 |     func urlSession(_ session: URLSession, task: URLSessionTask, willBeginDelayedRequest request: URLRequest, completionHandler: @escaping (URLSession.DelayedRequestDisposition, URLRequest?) -> Void) {
    |                                                                                                               `- note: parameter 'completionHandler' is implicitly non-sendable
181 | #if os(Linux)
182 |         handlers[task]?.delegate?.urlSession(session, task: task, willBeginDelayedRequest: request, completionHandler: completionHandler) ??
183 |         userTaskDelegate?.urlSession(session, task: task, willBeginDelayedRequest: request, completionHandler: completionHandler) ??
    |                                                                                                                `- warning: passing non-sendable parameter 'completionHandler' to function expecting a @Sendable closure
184 |         completionHandler(.continueLoading, nil)
185 | #else
/host/spi-builder-workspace/Sources/Get/DataLoader.swift:206:146: warning: passing non-sendable parameter 'completionHandler' to function expecting a @Sendable closure
202 |     // MARK: - URLSessionDataDelegate
203 |
204 |     func urlSession(_ session: URLSession, dataTask: URLSessionDataTask, didReceive response: URLResponse, completionHandler: @escaping (URLSession.ResponseDisposition) -> Void) {
    |                                                                                                            `- note: parameter 'completionHandler' is implicitly non-sendable
205 | #if os(Linux)
206 |         (handlers[dataTask] as? DataTaskHandler)?.dataDelegate?.urlSession(session, dataTask: dataTask, didReceive: response, completionHandler: completionHandler) ??
    |                                                                                                                                                  `- warning: passing non-sendable parameter 'completionHandler' to function expecting a @Sendable closure
207 |         userDataDelegate?.urlSession(session, dataTask: dataTask, didReceive: response, completionHandler: completionHandler) ??
208 |         completionHandler(.allow)
/host/spi-builder-workspace/Sources/Get/DataLoader.swift:207:108: warning: passing non-sendable parameter 'completionHandler' to function expecting a @Sendable closure
202 |     // MARK: - URLSessionDataDelegate
203 |
204 |     func urlSession(_ session: URLSession, dataTask: URLSessionDataTask, didReceive response: URLResponse, completionHandler: @escaping (URLSession.ResponseDisposition) -> Void) {
    |                                                                                                            `- note: parameter 'completionHandler' is implicitly non-sendable
205 | #if os(Linux)
206 |         (handlers[dataTask] as? DataTaskHandler)?.dataDelegate?.urlSession(session, dataTask: dataTask, didReceive: response, completionHandler: completionHandler) ??
207 |         userDataDelegate?.urlSession(session, dataTask: dataTask, didReceive: response, completionHandler: completionHandler) ??
    |                                                                                                            `- warning: passing non-sendable parameter 'completionHandler' to function expecting a @Sendable closure
208 |         completionHandler(.allow)
209 | #else
/host/spi-builder-workspace/Sources/Get/DataLoader.swift:245:161: warning: passing non-sendable parameter 'completionHandler' to function expecting a @Sendable closure
241 | #endif
242 |
243 |     func urlSession(_ session: URLSession, dataTask: URLSessionDataTask, willCacheResponse proposedResponse: CachedURLResponse, completionHandler: @escaping (CachedURLResponse?) -> Void) {
    |                                                                                                                                 `- note: parameter 'completionHandler' is implicitly non-sendable
244 | #if os(Linux)
245 |         (handlers[dataTask] as? DataTaskHandler)?.dataDelegate?.urlSession(session, dataTask: dataTask, willCacheResponse: proposedResponse, completionHandler: completionHandler) ??
    |                                                                                                                                                                 `- warning: passing non-sendable parameter 'completionHandler' to function expecting a @Sendable closure
246 |         userDataDelegate?.urlSession(session, dataTask: dataTask, willCacheResponse: proposedResponse, completionHandler: completionHandler)
247 |         completionHandler(proposedResponse)
/host/spi-builder-workspace/Sources/Get/DataLoader.swift:246:123: warning: passing non-sendable parameter 'completionHandler' to function expecting a @Sendable closure
241 | #endif
242 |
243 |     func urlSession(_ session: URLSession, dataTask: URLSessionDataTask, willCacheResponse proposedResponse: CachedURLResponse, completionHandler: @escaping (CachedURLResponse?) -> Void) {
    |                                                                                                                                 `- note: parameter 'completionHandler' is implicitly non-sendable
244 | #if os(Linux)
245 |         (handlers[dataTask] as? DataTaskHandler)?.dataDelegate?.urlSession(session, dataTask: dataTask, willCacheResponse: proposedResponse, completionHandler: completionHandler) ??
246 |         userDataDelegate?.urlSession(session, dataTask: dataTask, willCacheResponse: proposedResponse, completionHandler: completionHandler)
    |                                                                                                                           `- warning: passing non-sendable parameter 'completionHandler' to function expecting a @Sendable closure
247 |         completionHandler(proposedResponse)
248 | #else
/host/spi-builder-workspace/Sources/Get/DataLoader.swift:368:26: warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
355 | }
356 |
357 | func decode<T: Decodable>(_ data: Data, using decoder: JSONDecoder) async throws -> T {
    |             `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
358 |     if data.isEmpty, T.self is OptionalDecoding.Type {
359 |         return Optional<Decodable>.none as! T
    :
366 |         return string as! T
367 |     } else {
368 |         return try await Task.detached {
    |                          `- warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
369 |             try decoder.decode(T.self, from: data)
370 |         }.value
/host/spi-builder-workspace/Sources/Get/DataLoader.swift:368:31: warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
355 | }
356 |
357 | func decode<T: Decodable>(_ data: Data, using decoder: JSONDecoder) async throws -> T {
    |             `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
358 |     if data.isEmpty, T.self is OptionalDecoding.Type {
359 |         return Optional<Decodable>.none as! T
    :
366 |         return string as! T
367 |     } else {
368 |         return try await Task.detached {
    |                               `- warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
369 |             try decoder.decode(T.self, from: data)
370 |         }.value
/host/spi-builder-workspace/Sources/Get/DataLoader.swift:370:11: warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
355 | }
356 |
357 | func decode<T: Decodable>(_ data: Data, using decoder: JSONDecoder) async throws -> T {
    |             `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
358 |     if data.isEmpty, T.self is OptionalDecoding.Type {
359 |         return Optional<Decodable>.none as! T
    :
368 |         return try await Task.detached {
369 |             try decoder.decode(T.self, from: data)
370 |         }.value
    |           `- warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
371 |     }
372 | }
/host/spi-builder-workspace/Sources/Get/DataLoader.swift:351:40: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
349 |         return string.data(using: .utf8)
350 |     } else {
351 |         return try await Task.detached {
    |                                        `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
352 |             try encoder.encode(value)
    |                                `- note: closure captures 'value' which is accessible to code in the current task
353 |         }.value
354 |     }
[6/8] Compiling Get APIClientDelegate.swift
[7/8] Emitting module Get
/host/spi-builder-workspace/Sources/Get/Request.swift:123:23: warning: static property 'get' is not concurrency-safe because non-'Sendable' type 'HTTPMethod' may have shared mutable state; this is an error in the Swift 6 language mode
110 | }
111 |
112 | public struct HTTPMethod: RawRepresentable, Hashable, ExpressibleByStringLiteral {
    |               `- note: consider making struct 'HTTPMethod' conform to the 'Sendable' protocol
113 |     public let rawValue: String
114 |
    :
121 |     }
122 |
123 |     public static let get: HTTPMethod = "GET"
    |                       |- warning: static property 'get' is not concurrency-safe because non-'Sendable' type 'HTTPMethod' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'get' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
124 |     public static let post: HTTPMethod = "POST"
125 |     public static let patch: HTTPMethod = "PATCH"
/host/spi-builder-workspace/Sources/Get/Request.swift:124:23: warning: static property 'post' is not concurrency-safe because non-'Sendable' type 'HTTPMethod' may have shared mutable state; this is an error in the Swift 6 language mode
110 | }
111 |
112 | public struct HTTPMethod: RawRepresentable, Hashable, ExpressibleByStringLiteral {
    |               `- note: consider making struct 'HTTPMethod' conform to the 'Sendable' protocol
113 |     public let rawValue: String
114 |
    :
122 |
123 |     public static let get: HTTPMethod = "GET"
124 |     public static let post: HTTPMethod = "POST"
    |                       |- warning: static property 'post' is not concurrency-safe because non-'Sendable' type 'HTTPMethod' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'post' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
125 |     public static let patch: HTTPMethod = "PATCH"
126 |     public static let put: HTTPMethod = "PUT"
/host/spi-builder-workspace/Sources/Get/Request.swift:125:23: warning: static property 'patch' is not concurrency-safe because non-'Sendable' type 'HTTPMethod' may have shared mutable state; this is an error in the Swift 6 language mode
110 | }
111 |
112 | public struct HTTPMethod: RawRepresentable, Hashable, ExpressibleByStringLiteral {
    |               `- note: consider making struct 'HTTPMethod' conform to the 'Sendable' protocol
113 |     public let rawValue: String
114 |
    :
123 |     public static let get: HTTPMethod = "GET"
124 |     public static let post: HTTPMethod = "POST"
125 |     public static let patch: HTTPMethod = "PATCH"
    |                       |- warning: static property 'patch' is not concurrency-safe because non-'Sendable' type 'HTTPMethod' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'patch' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
126 |     public static let put: HTTPMethod = "PUT"
127 |     public static let delete: HTTPMethod = "DELETE"
/host/spi-builder-workspace/Sources/Get/Request.swift:126:23: warning: static property 'put' is not concurrency-safe because non-'Sendable' type 'HTTPMethod' may have shared mutable state; this is an error in the Swift 6 language mode
110 | }
111 |
112 | public struct HTTPMethod: RawRepresentable, Hashable, ExpressibleByStringLiteral {
    |               `- note: consider making struct 'HTTPMethod' conform to the 'Sendable' protocol
113 |     public let rawValue: String
114 |
    :
124 |     public static let post: HTTPMethod = "POST"
125 |     public static let patch: HTTPMethod = "PATCH"
126 |     public static let put: HTTPMethod = "PUT"
    |                       |- warning: static property 'put' is not concurrency-safe because non-'Sendable' type 'HTTPMethod' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'put' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
127 |     public static let delete: HTTPMethod = "DELETE"
128 |     public static let options: HTTPMethod = "OPTIONS"
/host/spi-builder-workspace/Sources/Get/Request.swift:127:23: warning: static property 'delete' is not concurrency-safe because non-'Sendable' type 'HTTPMethod' may have shared mutable state; this is an error in the Swift 6 language mode
110 | }
111 |
112 | public struct HTTPMethod: RawRepresentable, Hashable, ExpressibleByStringLiteral {
    |               `- note: consider making struct 'HTTPMethod' conform to the 'Sendable' protocol
113 |     public let rawValue: String
114 |
    :
125 |     public static let patch: HTTPMethod = "PATCH"
126 |     public static let put: HTTPMethod = "PUT"
127 |     public static let delete: HTTPMethod = "DELETE"
    |                       |- warning: static property 'delete' is not concurrency-safe because non-'Sendable' type 'HTTPMethod' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'delete' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
128 |     public static let options: HTTPMethod = "OPTIONS"
129 |     public static let head: HTTPMethod = "HEAD"
/host/spi-builder-workspace/Sources/Get/Request.swift:128:23: warning: static property 'options' is not concurrency-safe because non-'Sendable' type 'HTTPMethod' may have shared mutable state; this is an error in the Swift 6 language mode
110 | }
111 |
112 | public struct HTTPMethod: RawRepresentable, Hashable, ExpressibleByStringLiteral {
    |               `- note: consider making struct 'HTTPMethod' conform to the 'Sendable' protocol
113 |     public let rawValue: String
114 |
    :
126 |     public static let put: HTTPMethod = "PUT"
127 |     public static let delete: HTTPMethod = "DELETE"
128 |     public static let options: HTTPMethod = "OPTIONS"
    |                       |- warning: static property 'options' is not concurrency-safe because non-'Sendable' type 'HTTPMethod' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'options' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
129 |     public static let head: HTTPMethod = "HEAD"
130 |     public static let trace: HTTPMethod = "TRACE"
/host/spi-builder-workspace/Sources/Get/Request.swift:129:23: warning: static property 'head' is not concurrency-safe because non-'Sendable' type 'HTTPMethod' may have shared mutable state; this is an error in the Swift 6 language mode
110 | }
111 |
112 | public struct HTTPMethod: RawRepresentable, Hashable, ExpressibleByStringLiteral {
    |               `- note: consider making struct 'HTTPMethod' conform to the 'Sendable' protocol
113 |     public let rawValue: String
114 |
    :
127 |     public static let delete: HTTPMethod = "DELETE"
128 |     public static let options: HTTPMethod = "OPTIONS"
129 |     public static let head: HTTPMethod = "HEAD"
    |                       |- warning: static property 'head' is not concurrency-safe because non-'Sendable' type 'HTTPMethod' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'head' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
130 |     public static let trace: HTTPMethod = "TRACE"
131 | }
/host/spi-builder-workspace/Sources/Get/Request.swift:130:23: warning: static property 'trace' is not concurrency-safe because non-'Sendable' type 'HTTPMethod' may have shared mutable state; this is an error in the Swift 6 language mode
110 | }
111 |
112 | public struct HTTPMethod: RawRepresentable, Hashable, ExpressibleByStringLiteral {
    |               `- note: consider making struct 'HTTPMethod' conform to the 'Sendable' protocol
113 |     public let rawValue: String
114 |
    :
128 |     public static let options: HTTPMethod = "OPTIONS"
129 |     public static let head: HTTPMethod = "HEAD"
130 |     public static let trace: HTTPMethod = "TRACE"
    |                       |- warning: static property 'trace' is not concurrency-safe because non-'Sendable' type 'HTTPMethod' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'trace' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
131 | }
132 |
[8/8] Compiling Get APIClient.swift
/host/spi-builder-workspace/Sources/Get/APIClient.swift:108:34: warning: non-sendable result type 'T' cannot be sent from nonisolated context in call to global function 'decode(_:using:)'; this is an error in the Swift 6 language mode
 99 |     /// - returns: A response with a decoded body. If the response type is
100 |     /// optional and the response body is empty, returns `nil`.
101 |     @discardableResult public func send<T: Decodable>(
    |                                         `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
102 |         _ request: Request<T>,
103 |         delegate: URLSessionDataDelegate? = nil,
    :
106 |         let response = try await data(for: request, delegate: delegate, configure: configure)
107 |         let decoder = self.delegate.client(self, decoderForRequest: request) ?? self.decoder
108 |         let value: T = try await decode(response.data, using: decoder)
    |                                  `- warning: non-sendable result type 'T' cannot be sent from nonisolated context in call to global function 'decode(_:using:)'; this is an error in the Swift 6 language mode
109 |         return response.map { _ in value }
110 |     }
/host/spi-builder-workspace/Sources/Get/APIClient.swift:226:34: warning: non-sendable result type 'T' cannot be sent from nonisolated context in call to global function 'decode(_:using:)'; this is an error in the Swift 6 language mode
216 |     /// - returns: A response with a decoded body. If the response type is
217 |     /// optional and the response body is empty, returns `nil`.
218 |     @discardableResult public func upload<T: Decodable>(
    |                                           `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
219 |         for request: Request<T>,
220 |         fromFile fileURL: URL,
    :
224 |         let response = try await _upload(for: request, fromFile: fileURL, delegate: delegate, configure: configure)
225 |         let decoder = self.delegate.client(self, decoderForRequest: request) ?? self.decoder
226 |         let value: T = try await decode(response.data, using: decoder)
    |                                  `- warning: non-sendable result type 'T' cannot be sent from nonisolated context in call to global function 'decode(_:using:)'; this is an error in the Swift 6 language mode
227 |         return response.map { _ in value }
228 |     }
/host/spi-builder-workspace/Sources/Get/APIClient.swift:289:34: warning: non-sendable result type 'T' cannot be sent from nonisolated context in call to global function 'decode(_:using:)'; this is an error in the Swift 6 language mode
279 |     /// - returns: A response with a decoded body. If the response type is
280 |     /// optional and the response body is empty, returns `nil`.
281 |     @discardableResult public func upload<T: Decodable>(
    |                                           `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
282 |         for request: Request<T>,
283 |         from data: Data,
    :
287 |         let response = try await _upload(for: request, from: data, delegate: delegate, configure: configure)
288 |         let decoder = self.delegate.client(self, decoderForRequest: request) ?? self.decoder
289 |         let value: T = try await decode(response.data, using: decoder)
    |                                  `- warning: non-sendable result type 'T' cannot be sent from nonisolated context in call to global function 'decode(_:using:)'; this is an error in the Swift 6 language mode
290 |         return response.map { _ in value }
291 |     }
/host/spi-builder-workspace/Sources/Get/APIClient.swift:391:30: warning: non-sendable result type 'T' cannot be sent from nonisolated context in call to parameter 'send'; this is an error in the Swift 6 language mode
387 |     // MARK: Helpers
388 |
389 |     private func performRequest<T>(attempts: Int = 1, send: () async throws -> T) async throws -> T {
    |                                 `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
390 |         do {
391 |             return try await send()
    |                              `- warning: non-sendable result type 'T' cannot be sent from nonisolated context in call to parameter 'send'; this is an error in the Swift 6 language mode
392 |         } catch {
393 |             guard let error = error as? DataLoaderError else {
/host/spi-builder-workspace/Sources/Get/APIClient.swift:396:38: warning: sending 'self.delegate' risks causing data races; this is an error in the Swift 6 language mode
394 |                 throw error
395 |             }
396 |             guard try await delegate.client(self, shouldRetry: error.task, error: error.error, attempts: attempts) else {
    |                                      |- warning: sending 'self.delegate' risks causing data races; this is an error in the Swift 6 language mode
    |                                      `- note: sending 'self'-isolated 'self.delegate' to nonisolated instance method 'client(_:shouldRetry:error:attempts:)' risks causing data races between nonisolated and 'self'-isolated uses
397 |                 throw error.error
398 |             }
/host/spi-builder-workspace/Sources/Get/APIClient.swift:146:37: warning: sending 'self.delegate' risks causing data races; this is an error in the Swift 6 language mode
144 |         return try await performRequest {
145 |             var request = request
146 |             try await self.delegate.client(self, willSendRequest: &request)
    |                                     |- warning: sending 'self.delegate' risks causing data races; this is an error in the Swift 6 language mode
    |                                     `- note: sending 'self'-isolated 'self.delegate' to nonisolated instance method 'client(_:willSendRequest:)' risks causing data races between nonisolated and 'self'-isolated uses
147 |             let task = session.dataTask(with: request)
148 |             do {
/host/spi-builder-workspace/Sources/Get/APIClient.swift:257:37: warning: sending 'self.delegate' risks causing data races; this is an error in the Swift 6 language mode
255 |         return try await performRequest {
256 |             var request = request
257 |             try await self.delegate.client(self, willSendRequest: &request)
    |                                     |- warning: sending 'self.delegate' risks causing data races; this is an error in the Swift 6 language mode
    |                                     `- note: sending 'self'-isolated 'self.delegate' to nonisolated instance method 'client(_:willSendRequest:)' risks causing data races between nonisolated and 'self'-isolated uses
258 |             let task = session.uploadTask(with: request, fromFile: fileURL)
259 |             do {
/host/spi-builder-workspace/Sources/Get/APIClient.swift:320:37: warning: sending 'self.delegate' risks causing data races; this is an error in the Swift 6 language mode
318 |         return try await performRequest {
319 |             var request = request
320 |             try await self.delegate.client(self, willSendRequest: &request)
    |                                     |- warning: sending 'self.delegate' risks causing data races; this is an error in the Swift 6 language mode
    |                                     `- note: sending 'self'-isolated 'self.delegate' to nonisolated instance method 'client(_:willSendRequest:)' risks causing data races between nonisolated and 'self'-isolated uses
321 |             let task = session.uploadTask(with: request, from: data)
322 |             do {
Build complete! (5.48s)
Build complete.
{
  "dependencies" : [
  ],
  "manifest_display_name" : "Get",
  "name" : "Get",
  "path" : "/host/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "ios",
      "version" : "13.0"
    },
    {
      "name" : "maccatalyst",
      "version" : "13.0"
    },
    {
      "name" : "macos",
      "version" : "10.15"
    },
    {
      "name" : "watchos",
      "version" : "6.0"
    },
    {
      "name" : "tvos",
      "version" : "13.0"
    }
  ],
  "products" : [
    {
      "name" : "Get",
      "targets" : [
        "Get"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "GetTests",
      "module_type" : "SwiftTarget",
      "name" : "GetTests",
      "path" : "Tests/GetTests",
      "resources" : [
        {
          "path" : "/host/spi-builder-workspace/Tests/GetTests/Resources/user.json",
          "rule" : {
            "process" : {
            }
          }
        }
      ],
      "sources" : [
        "ClientAuthorizationTests.swift",
        "ClientDelegateTests.swift",
        "ClientIIntegrationTests.swift",
        "ClientMakeRequestsTests.swift",
        "ClientMiscTests.swift",
        "ClientSendingRequestsTests.swift",
        "ClientSessionDelegateTests.swift",
        "CodeSamplesTests.swift",
        "GitHubAPI.swift",
        "Helpers.swift",
        "Mocker/Mock.swift",
        "Mocker/Mocker.swift",
        "Mocker/MockingURLProtocol.swift",
        "Mocker/XCTest+Mocker.swift",
        "ResponseTests.swift"
      ],
      "target_dependencies" : [
        "Get"
      ],
      "type" : "test"
    },
    {
      "c99name" : "Get",
      "module_type" : "SwiftTarget",
      "name" : "Get",
      "path" : "Sources/Get",
      "product_memberships" : [
        "Get"
      ],
      "sources" : [
        "APIClient.swift",
        "APIClientDelegate.swift",
        "DataLoader.swift",
        "Request.swift",
        "Response.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.5"
}
basic-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:3bdcac04179f4ed3e5b8e9dbd6e74bbf5ebc0f4fde48bbaad7d1e5c757e65bcb
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.1-latest
Done.