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 RestBird, reference master (db51dc), with Swift 6.0 for Linux on 27 Nov 2024 22:13:31 UTC.

Swift 6 data race errors: 0

Build Command

bash -c docker run --pull=always --rm -v "checkouts-4609320-1":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.0-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.58.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/halcyonmobile/RestBird.git
Reference: master
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/halcyonmobile/RestBird
 * branch            master     -> FETCH_HEAD
 * [new branch]      master     -> origin/master
HEAD is now at db51dc7 Update podspec
Cloned https://github.com/halcyonmobile/RestBird.git
Revision (git rev-parse @):
db51dc723cf29fbae3d237205e911fdc4debbd9d
SUCCESS checkout https://github.com/halcyonmobile/RestBird.git at master
========================================
Build
========================================
Selected platform:         linux
Swift version:             6.0
Building package at path:  $PWD
https://github.com/halcyonmobile/RestBird.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4609320-1":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.0-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.0-latest: Pulling from finestructure/spi-images
Digest: sha256:47d26c99ca4f1ac0a332c85fd5b13ff4390e72115219984a57a68fe9d1063a05
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.0-latest
Fetching https://github.com/Alamofire/Alamofire.git
[1/30017] Fetching alamofire
Fetched https://github.com/Alamofire/Alamofire.git from cache (2.78s)
Computing version for https://github.com/Alamofire/Alamofire.git
Computed https://github.com/Alamofire/Alamofire.git at 5.10.2 (0.43s)
Creating working copy for https://github.com/Alamofire/Alamofire.git
Working copy of https://github.com/Alamofire/Alamofire.git resolved at 5.10.2
Building for debugging...
[0/4] Write sources
[0/4] Copying PrivacyInfo.xcprivacy
[0/4] Write sources
[3/4] Write swift-version-24593BA9C3E375BF.txt
[5/43] Compiling Alamofire NetworkReachabilityManager.swift
[6/43] Compiling Alamofire RedirectHandler.swift
[7/43] Compiling Alamofire RequestCompression.swift
[8/43] Compiling Alamofire RequestInterceptor.swift
[9/43] Compiling Alamofire ResponseSerialization.swift
[10/48] Compiling Alamofire RequestTaskMap.swift
[11/48] Compiling Alamofire Response.swift
[12/48] Compiling Alamofire Session.swift
[13/48] Compiling Alamofire SessionDelegate.swift
[14/48] Compiling Alamofire URLConvertible+URLRequestConvertible.swift
[15/48] Compiling Alamofire UploadRequest.swift
[16/48] Compiling Alamofire HTTPMethod.swift
[17/48] Compiling Alamofire Notifications.swift
[18/48] Compiling Alamofire ParameterEncoder.swift
[19/48] Compiling Alamofire ParameterEncoding.swift
[20/48] Compiling Alamofire Protected.swift
[21/48] Compiling Alamofire Request.swift
[22/48] Compiling Alamofire URLRequest+Alamofire.swift
[23/48] Compiling Alamofire URLSessionConfiguration+Alamofire.swift
[24/48] Compiling Alamofire AlamofireExtended.swift
[25/48] Compiling Alamofire AuthenticationInterceptor.swift
[26/48] Compiling Alamofire CachedResponseHandler.swift
[27/48] Compiling Alamofire Combine.swift
[28/48] Compiling Alamofire Concurrency.swift
[29/48] Compiling Alamofire EventMonitor.swift
[30/48] Compiling Alamofire MultipartFormData.swift
[31/48] Compiling Alamofire MultipartUpload.swift
[32/48] Compiling Alamofire WebSocketRequest.swift
[33/48] Compiling Alamofire DispatchQueue+Alamofire.swift
[34/48] Compiling Alamofire OperationQueue+Alamofire.swift
[35/48] Compiling Alamofire Result+Alamofire.swift
[36/48] Compiling Alamofire StringEncoding+Alamofire.swift
[37/48] Emitting module Alamofire
[38/48] Compiling Alamofire Alamofire.swift
[39/48] Compiling Alamofire AFError.swift
[40/48] Compiling Alamofire DataRequest.swift
[41/48] Compiling Alamofire DataStreamRequest.swift
[42/48] Compiling Alamofire DownloadRequest.swift
[43/48] Compiling Alamofire HTTPHeaders.swift
[44/48] Compiling Alamofire RetryPolicy.swift
[45/48] Compiling Alamofire ServerTrustEvaluation.swift
[46/48] Compiling Alamofire URLEncodedFormEncoder.swift
[47/48] Compiling Alamofire Validation.swift
[48/48] Compiling Alamofire resource_bundle_accessor.swift
[50/62] Compiling RestBird RestBird.swift
[51/62] Compiling RestBird SessionManager.swift
/host/spi-builder-workspace/Sources/RestBird/Session/SessionManager.swift:11:41: warning: using 'class' keyword to define a class-constrained protocol is deprecated; use 'AnyObject' instead
 9 | import Foundation
10 |
11 | public protocol SessionManagerDelegate: class {
   |                                         `- warning: using 'class' keyword to define a class-constrained protocol is deprecated; use 'AnyObject' instead
12 |
13 |     /// Informs delegate that a URLRequest is about to be executed.
/host/spi-builder-workspace/Sources/RestBird/Session/SessionManager.swift:33:33: warning: using 'class' keyword to define a class-constrained protocol is deprecated; use 'AnyObject' instead
31 |
32 | /// URL session interface
33 | public protocol SessionManager: class {
   |                                 `- warning: using 'class' keyword to define a class-constrained protocol is deprecated; use 'AnyObject' instead
34 |
35 |     var config: NetworkClientConfiguration { get }
[52/63] Compiling RestBird Middleware.swift
[53/63] Compiling RestBird DataRequest.swift
[54/63] Compiling RestBird ParameterEncoding.swift
[55/63] Compiling RestBird Request.swift
[56/63] Compiling RestBird EmptyResponse.swift
[57/63] Compiling RestBird MultipartRequest.swift
[58/63] Compiling RestBird Data+Codable.swift
[59/63] Compiling RestBird NetworkClient.swift
[60/63] Compiling RestBird HTTPMethod.swift
[61/63] Compiling RestBird AlamofireSessionManager.swift
/host/spi-builder-workspace/Sources/RestBird/Alamofire/AlamofireSessionManager.swift:33:35: warning: type 'Request.RequestType' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 31 |         let url = config.baseUrl + (request.suffix ?? "")
 32 |
 33 |         let dataRequest = session.request(url,
    |                                   `- warning: type 'Request.RequestType' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 34 |                                           method: request.afMethod,
 35 |                                           parameters: request.parameters,
/host/spi-builder-workspace/Sources/RestBird/Alamofire/AlamofireSessionManager.swift:48:32: warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 25 |     // MARK: - Data Task
 26 |
 27 |     public func performDataTask<Request, T>(
    |                                          `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
 28 |         request: Request,
 29 |         completion: @escaping (Result<T, Error>) -> Void
    :
 46 |         }
 47 |
 48 |         dataRequest.validate().responseDecodable(of: T.self, decoder: config.jsonDecoder, emptyResponseCodes: Set(200..<300)) { response in
    |                                `- warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 49 |             if let urlRequest = response.request, let urlResponse = response.response {
 50 |                 do {
/host/spi-builder-workspace/Sources/RestBird/Alamofire/AlamofireSessionManager.swift:49:42: warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 25 |     // MARK: - Data Task
 26 |
 27 |     public func performDataTask<Request, T>(
    |                                          `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
 28 |         request: Request,
 29 |         completion: @escaping (Result<T, Error>) -> Void
    :
 47 |
 48 |         dataRequest.validate().responseDecodable(of: T.self, decoder: config.jsonDecoder, emptyResponseCodes: Set(200..<300)) { response in
 49 |             if let urlRequest = response.request, let urlResponse = response.response {
    |                                          `- warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 50 |                 do {
 51 |                     try self.delegate?.sessionManager(self, didPerform: urlRequest, response: urlResponse, data: response.data)
/host/spi-builder-workspace/Sources/RestBird/Alamofire/AlamofireSessionManager.swift:49:78: warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 25 |     // MARK: - Data Task
 26 |
 27 |     public func performDataTask<Request, T>(
    |                                          `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
 28 |         request: Request,
 29 |         completion: @escaping (Result<T, Error>) -> Void
    :
 47 |
 48 |         dataRequest.validate().responseDecodable(of: T.self, decoder: config.jsonDecoder, emptyResponseCodes: Set(200..<300)) { response in
 49 |             if let urlRequest = response.request, let urlResponse = response.response {
    |                                                                              `- warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 50 |                 do {
 51 |                     try self.delegate?.sessionManager(self, didPerform: urlRequest, response: urlResponse, data: response.data)
/host/spi-builder-workspace/Sources/RestBird/Alamofire/AlamofireSessionManager.swift:51:123: warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 25 |     // MARK: - Data Task
 26 |
 27 |     public func performDataTask<Request, T>(
    |                                          `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
 28 |         request: Request,
 29 |         completion: @escaping (Result<T, Error>) -> Void
    :
 49 |             if let urlRequest = response.request, let urlResponse = response.response {
 50 |                 do {
 51 |                     try self.delegate?.sessionManager(self, didPerform: urlRequest, response: urlResponse, data: response.data)
    |                                                                                                                           `- warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 52 |                 } catch {
 53 |                     completion(.failure(error))
/host/spi-builder-workspace/Sources/RestBird/Alamofire/AlamofireSessionManager.swift:58:33: warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 25 |     // MARK: - Data Task
 26 |
 27 |     public func performDataTask<Request, T>(
    |                                          `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
 28 |         request: Request,
 29 |         completion: @escaping (Result<T, Error>) -> Void
    :
 56 |             }
 57 |
 58 |             completion(response.result.mapError{ $0 })
    |                                 `- warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 59 |         }
 60 |     }
/host/spi-builder-workspace/Sources/RestBird/Alamofire/AlamofireSessionManager.swift:51:25: warning: capture of 'self' with non-sendable type 'AlamofireSessionManager' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 10 | import Alamofire
 11 |
 12 | public final class AlamofireSessionManager: RestBird.SessionManager {
    |                    `- note: class 'AlamofireSessionManager' does not conform to the 'Sendable' protocol
 13 |
 14 |     public var config: NetworkClientConfiguration
    :
 49 |             if let urlRequest = response.request, let urlResponse = response.response {
 50 |                 do {
 51 |                     try self.delegate?.sessionManager(self, didPerform: urlRequest, response: urlResponse, data: response.data)
    |                         `- warning: capture of 'self' with non-sendable type 'AlamofireSessionManager' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 52 |                 } catch {
 53 |                     completion(.failure(error))
/host/spi-builder-workspace/Sources/RestBird/Alamofire/AlamofireSessionManager.swift:53:21: warning: capture of 'completion' with non-sendable type '(Result<T, any Error>) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 51 |                     try self.delegate?.sessionManager(self, didPerform: urlRequest, response: urlResponse, data: response.data)
 52 |                 } catch {
 53 |                     completion(.failure(error))
    |                     |- warning: capture of 'completion' with non-sendable type '(Result<T, any Error>) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
    |                     `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
 54 |                     return
 55 |                 }
/host/spi-builder-workspace/Sources/RestBird/Alamofire/AlamofireSessionManager.swift:95:22: warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 73 |     }
 74 |
 75 |     public func performUploadTask<Request, T>(
    |                                            `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
 76 |         request: Request,
 77 |         uploadProgress: ((Progress) -> Void)?,
    :
 93 |
 94 |                 uploadRequest?.validate()
 95 |                     .responseDecodable(of: T.self, decoder: config.jsonDecoder, emptyResponseCodes: Set(200..<300), completionHandler: { response in
    |                      `- warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 96 |                         if let urlRequest = response.request, let urlResponse = response.response {
 97 |                             do {
/host/spi-builder-workspace/Sources/RestBird/Alamofire/AlamofireSessionManager.swift:96:54: warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 73 |     }
 74 |
 75 |     public func performUploadTask<Request, T>(
    |                                            `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
 76 |         request: Request,
 77 |         uploadProgress: ((Progress) -> Void)?,
    :
 94 |                 uploadRequest?.validate()
 95 |                     .responseDecodable(of: T.self, decoder: config.jsonDecoder, emptyResponseCodes: Set(200..<300), completionHandler: { response in
 96 |                         if let urlRequest = response.request, let urlResponse = response.response {
    |                                                      `- warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 97 |                             do {
 98 |                                 try self.delegate?.sessionManager(self, didPerform: urlRequest, response: urlResponse, data: response.data)
/host/spi-builder-workspace/Sources/RestBird/Alamofire/AlamofireSessionManager.swift:96:90: warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 73 |     }
 74 |
 75 |     public func performUploadTask<Request, T>(
    |                                            `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
 76 |         request: Request,
 77 |         uploadProgress: ((Progress) -> Void)?,
    :
 94 |                 uploadRequest?.validate()
 95 |                     .responseDecodable(of: T.self, decoder: config.jsonDecoder, emptyResponseCodes: Set(200..<300), completionHandler: { response in
 96 |                         if let urlRequest = response.request, let urlResponse = response.response {
    |                                                                                          `- warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 97 |                             do {
 98 |                                 try self.delegate?.sessionManager(self, didPerform: urlRequest, response: urlResponse, data: response.data)
/host/spi-builder-workspace/Sources/RestBird/Alamofire/AlamofireSessionManager.swift:98:135: warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 73 |     }
 74 |
 75 |     public func performUploadTask<Request, T>(
    |                                            `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
 76 |         request: Request,
 77 |         uploadProgress: ((Progress) -> Void)?,
    :
 96 |                         if let urlRequest = response.request, let urlResponse = response.response {
 97 |                             do {
 98 |                                 try self.delegate?.sessionManager(self, didPerform: urlRequest, response: urlResponse, data: response.data)
    |                                                                                                                                       `- warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 99 |                             } catch {
100 |                                 completion(.failure(error))
/host/spi-builder-workspace/Sources/RestBird/Alamofire/AlamofireSessionManager.swift:104:45: warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 73 |     }
 74 |
 75 |     public func performUploadTask<Request, T>(
    |                                            `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
 76 |         request: Request,
 77 |         uploadProgress: ((Progress) -> Void)?,
    :
102 |                             }
103 |                         }
104 |                         completion(response.result.mapError{ $0 })
    |                                             `- warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
105 |                     })
106 |             }
/host/spi-builder-workspace/Sources/RestBird/Alamofire/AlamofireSessionManager.swift:125:22: warning: We should do this using Alamofire.
123 |             }
124 |
125 |             #warning("We should do this using Alamofire.")
    |                      `- warning: We should do this using Alamofire.
126 |             try? request.afParameters(using: self.config.jsonEncoder)?.forEach { (param) in
127 |                 if let value = param.value as? String {
/host/spi-builder-workspace/Sources/RestBird/Alamofire/AlamofireSessionManager.swift:143:14: warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 73 |     }
 74 |
 75 |     public func performUploadTask<Request, T>(
    |                                            `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
 76 |         request: Request,
 77 |         uploadProgress: ((Progress) -> Void)?,
    :
141 |         session.upload(multipartFormData: multipartFormData, to: url, method: request.afMethod, headers: request.afHeaders)
142 |             .validate()
143 |             .responseDecodable(of: T.self, decoder: config.jsonDecoder, emptyResponseCodes: Set(200..<300)) { response in
    |              `- warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
144 |                 completion(response.result.mapError{ $0 })
145 |         }
/host/spi-builder-workspace/Sources/RestBird/Alamofire/AlamofireSessionManager.swift:144:37: warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 73 |     }
 74 |
 75 |     public func performUploadTask<Request, T>(
    |                                            `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
 76 |         request: Request,
 77 |         uploadProgress: ((Progress) -> Void)?,
    :
142 |             .validate()
143 |             .responseDecodable(of: T.self, decoder: config.jsonDecoder, emptyResponseCodes: Set(200..<300)) { response in
144 |                 completion(response.result.mapError{ $0 })
    |                                     `- warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
145 |         }
146 |     }
/host/spi-builder-workspace/Sources/RestBird/Alamofire/AlamofireSessionManager.swift:81:13: warning: variable 'uploadRequest' was never mutated; consider changing to 'let' constant
 79 |     ) where Request : MultipartRequest, T : Decodable {
 80 |         // We need to observe when `uploadRequest` gets set as in case of `.multipart` this will be set later, in `encodingCompletion` and we can't call these methods right after `sessionManager.upload` as `uploadRequest` will be nil at that point.
 81 |         var uploadRequest: Alamofire.UploadRequest? {
    |             `- warning: variable 'uploadRequest' was never mutated; consider changing to 'let' constant
 82 |             didSet {
 83 |                 // We don't need to treat the case where `uploadRequest` is nil as that would be a failure and `completion(.failure(error))` would be called in `encodingCompletion`.
/host/spi-builder-workspace/Sources/RestBird/Alamofire/AlamofireSessionManager.swift:144:17: warning: capture of 'completion' with non-sendable type '(Result<T, any Error>) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
142 |             .validate()
143 |             .responseDecodable(of: T.self, decoder: config.jsonDecoder, emptyResponseCodes: Set(200..<300)) { response in
144 |                 completion(response.result.mapError{ $0 })
    |                 |- warning: capture of 'completion' with non-sendable type '(Result<T, any Error>) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
    |                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
145 |         }
146 |     }
[62/63] Compiling RestBird Request+Alamofire.swift
/host/spi-builder-workspace/Sources/RestBird/Alamofire/AlamofireSessionManager.swift:33:35: warning: type 'Request.RequestType' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 31 |         let url = config.baseUrl + (request.suffix ?? "")
 32 |
 33 |         let dataRequest = session.request(url,
    |                                   `- warning: type 'Request.RequestType' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 34 |                                           method: request.afMethod,
 35 |                                           parameters: request.parameters,
/host/spi-builder-workspace/Sources/RestBird/Alamofire/AlamofireSessionManager.swift:48:32: warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 25 |     // MARK: - Data Task
 26 |
 27 |     public func performDataTask<Request, T>(
    |                                          `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
 28 |         request: Request,
 29 |         completion: @escaping (Result<T, Error>) -> Void
    :
 46 |         }
 47 |
 48 |         dataRequest.validate().responseDecodable(of: T.self, decoder: config.jsonDecoder, emptyResponseCodes: Set(200..<300)) { response in
    |                                `- warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 49 |             if let urlRequest = response.request, let urlResponse = response.response {
 50 |                 do {
/host/spi-builder-workspace/Sources/RestBird/Alamofire/AlamofireSessionManager.swift:49:42: warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 25 |     // MARK: - Data Task
 26 |
 27 |     public func performDataTask<Request, T>(
    |                                          `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
 28 |         request: Request,
 29 |         completion: @escaping (Result<T, Error>) -> Void
    :
 47 |
 48 |         dataRequest.validate().responseDecodable(of: T.self, decoder: config.jsonDecoder, emptyResponseCodes: Set(200..<300)) { response in
 49 |             if let urlRequest = response.request, let urlResponse = response.response {
    |                                          `- warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 50 |                 do {
 51 |                     try self.delegate?.sessionManager(self, didPerform: urlRequest, response: urlResponse, data: response.data)
/host/spi-builder-workspace/Sources/RestBird/Alamofire/AlamofireSessionManager.swift:49:78: warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 25 |     // MARK: - Data Task
 26 |
 27 |     public func performDataTask<Request, T>(
    |                                          `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
 28 |         request: Request,
 29 |         completion: @escaping (Result<T, Error>) -> Void
    :
 47 |
 48 |         dataRequest.validate().responseDecodable(of: T.self, decoder: config.jsonDecoder, emptyResponseCodes: Set(200..<300)) { response in
 49 |             if let urlRequest = response.request, let urlResponse = response.response {
    |                                                                              `- warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 50 |                 do {
 51 |                     try self.delegate?.sessionManager(self, didPerform: urlRequest, response: urlResponse, data: response.data)
/host/spi-builder-workspace/Sources/RestBird/Alamofire/AlamofireSessionManager.swift:51:123: warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 25 |     // MARK: - Data Task
 26 |
 27 |     public func performDataTask<Request, T>(
    |                                          `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
 28 |         request: Request,
 29 |         completion: @escaping (Result<T, Error>) -> Void
    :
 49 |             if let urlRequest = response.request, let urlResponse = response.response {
 50 |                 do {
 51 |                     try self.delegate?.sessionManager(self, didPerform: urlRequest, response: urlResponse, data: response.data)
    |                                                                                                                           `- warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 52 |                 } catch {
 53 |                     completion(.failure(error))
/host/spi-builder-workspace/Sources/RestBird/Alamofire/AlamofireSessionManager.swift:58:33: warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 25 |     // MARK: - Data Task
 26 |
 27 |     public func performDataTask<Request, T>(
    |                                          `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
 28 |         request: Request,
 29 |         completion: @escaping (Result<T, Error>) -> Void
    :
 56 |             }
 57 |
 58 |             completion(response.result.mapError{ $0 })
    |                                 `- warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 59 |         }
 60 |     }
/host/spi-builder-workspace/Sources/RestBird/Alamofire/AlamofireSessionManager.swift:51:25: warning: capture of 'self' with non-sendable type 'AlamofireSessionManager' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 10 | import Alamofire
 11 |
 12 | public final class AlamofireSessionManager: RestBird.SessionManager {
    |                    `- note: class 'AlamofireSessionManager' does not conform to the 'Sendable' protocol
 13 |
 14 |     public var config: NetworkClientConfiguration
    :
 49 |             if let urlRequest = response.request, let urlResponse = response.response {
 50 |                 do {
 51 |                     try self.delegate?.sessionManager(self, didPerform: urlRequest, response: urlResponse, data: response.data)
    |                         `- warning: capture of 'self' with non-sendable type 'AlamofireSessionManager' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 52 |                 } catch {
 53 |                     completion(.failure(error))
/host/spi-builder-workspace/Sources/RestBird/Alamofire/AlamofireSessionManager.swift:53:21: warning: capture of 'completion' with non-sendable type '(Result<T, any Error>) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 51 |                     try self.delegate?.sessionManager(self, didPerform: urlRequest, response: urlResponse, data: response.data)
 52 |                 } catch {
 53 |                     completion(.failure(error))
    |                     |- warning: capture of 'completion' with non-sendable type '(Result<T, any Error>) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
    |                     `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
 54 |                     return
 55 |                 }
/host/spi-builder-workspace/Sources/RestBird/Alamofire/AlamofireSessionManager.swift:95:22: warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 73 |     }
 74 |
 75 |     public func performUploadTask<Request, T>(
    |                                            `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
 76 |         request: Request,
 77 |         uploadProgress: ((Progress) -> Void)?,
    :
 93 |
 94 |                 uploadRequest?.validate()
 95 |                     .responseDecodable(of: T.self, decoder: config.jsonDecoder, emptyResponseCodes: Set(200..<300), completionHandler: { response in
    |                      `- warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 96 |                         if let urlRequest = response.request, let urlResponse = response.response {
 97 |                             do {
/host/spi-builder-workspace/Sources/RestBird/Alamofire/AlamofireSessionManager.swift:96:54: warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 73 |     }
 74 |
 75 |     public func performUploadTask<Request, T>(
    |                                            `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
 76 |         request: Request,
 77 |         uploadProgress: ((Progress) -> Void)?,
    :
 94 |                 uploadRequest?.validate()
 95 |                     .responseDecodable(of: T.self, decoder: config.jsonDecoder, emptyResponseCodes: Set(200..<300), completionHandler: { response in
 96 |                         if let urlRequest = response.request, let urlResponse = response.response {
    |                                                      `- warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 97 |                             do {
 98 |                                 try self.delegate?.sessionManager(self, didPerform: urlRequest, response: urlResponse, data: response.data)
/host/spi-builder-workspace/Sources/RestBird/Alamofire/AlamofireSessionManager.swift:96:90: warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 73 |     }
 74 |
 75 |     public func performUploadTask<Request, T>(
    |                                            `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
 76 |         request: Request,
 77 |         uploadProgress: ((Progress) -> Void)?,
    :
 94 |                 uploadRequest?.validate()
 95 |                     .responseDecodable(of: T.self, decoder: config.jsonDecoder, emptyResponseCodes: Set(200..<300), completionHandler: { response in
 96 |                         if let urlRequest = response.request, let urlResponse = response.response {
    |                                                                                          `- warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 97 |                             do {
 98 |                                 try self.delegate?.sessionManager(self, didPerform: urlRequest, response: urlResponse, data: response.data)
/host/spi-builder-workspace/Sources/RestBird/Alamofire/AlamofireSessionManager.swift:98:135: warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 73 |     }
 74 |
 75 |     public func performUploadTask<Request, T>(
    |                                            `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
 76 |         request: Request,
 77 |         uploadProgress: ((Progress) -> Void)?,
    :
 96 |                         if let urlRequest = response.request, let urlResponse = response.response {
 97 |                             do {
 98 |                                 try self.delegate?.sessionManager(self, didPerform: urlRequest, response: urlResponse, data: response.data)
    |                                                                                                                                       `- warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 99 |                             } catch {
100 |                                 completion(.failure(error))
/host/spi-builder-workspace/Sources/RestBird/Alamofire/AlamofireSessionManager.swift:104:45: warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 73 |     }
 74 |
 75 |     public func performUploadTask<Request, T>(
    |                                            `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
 76 |         request: Request,
 77 |         uploadProgress: ((Progress) -> Void)?,
    :
102 |                             }
103 |                         }
104 |                         completion(response.result.mapError{ $0 })
    |                                             `- warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
105 |                     })
106 |             }
/host/spi-builder-workspace/Sources/RestBird/Alamofire/AlamofireSessionManager.swift:125:22: warning: We should do this using Alamofire.
123 |             }
124 |
125 |             #warning("We should do this using Alamofire.")
    |                      `- warning: We should do this using Alamofire.
126 |             try? request.afParameters(using: self.config.jsonEncoder)?.forEach { (param) in
127 |                 if let value = param.value as? String {
/host/spi-builder-workspace/Sources/RestBird/Alamofire/AlamofireSessionManager.swift:143:14: warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 73 |     }
 74 |
 75 |     public func performUploadTask<Request, T>(
    |                                            `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
 76 |         request: Request,
 77 |         uploadProgress: ((Progress) -> Void)?,
    :
141 |         session.upload(multipartFormData: multipartFormData, to: url, method: request.afMethod, headers: request.afHeaders)
142 |             .validate()
143 |             .responseDecodable(of: T.self, decoder: config.jsonDecoder, emptyResponseCodes: Set(200..<300)) { response in
    |              `- warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
144 |                 completion(response.result.mapError{ $0 })
145 |         }
/host/spi-builder-workspace/Sources/RestBird/Alamofire/AlamofireSessionManager.swift:144:37: warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
 73 |     }
 74 |
 75 |     public func performUploadTask<Request, T>(
    |                                            `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
 76 |         request: Request,
 77 |         uploadProgress: ((Progress) -> Void)?,
    :
142 |             .validate()
143 |             .responseDecodable(of: T.self, decoder: config.jsonDecoder, emptyResponseCodes: Set(200..<300)) { response in
144 |                 completion(response.result.mapError{ $0 })
    |                                     `- warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
145 |         }
146 |     }
/host/spi-builder-workspace/Sources/RestBird/Alamofire/AlamofireSessionManager.swift:81:13: warning: variable 'uploadRequest' was never mutated; consider changing to 'let' constant
 79 |     ) where Request : MultipartRequest, T : Decodable {
 80 |         // We need to observe when `uploadRequest` gets set as in case of `.multipart` this will be set later, in `encodingCompletion` and we can't call these methods right after `sessionManager.upload` as `uploadRequest` will be nil at that point.
 81 |         var uploadRequest: Alamofire.UploadRequest? {
    |             `- warning: variable 'uploadRequest' was never mutated; consider changing to 'let' constant
 82 |             didSet {
 83 |                 // We don't need to treat the case where `uploadRequest` is nil as that would be a failure and `completion(.failure(error))` would be called in `encodingCompletion`.
/host/spi-builder-workspace/Sources/RestBird/Alamofire/AlamofireSessionManager.swift:144:17: warning: capture of 'completion' with non-sendable type '(Result<T, any Error>) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
142 |             .validate()
143 |             .responseDecodable(of: T.self, decoder: config.jsonDecoder, emptyResponseCodes: Set(200..<300)) { response in
144 |                 completion(response.result.mapError{ $0 })
    |                 |- warning: capture of 'completion' with non-sendable type '(Result<T, any Error>) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
    |                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
145 |         }
146 |     }
[63/63] Emitting module RestBird
/host/spi-builder-workspace/Sources/RestBird/Session/SessionManager.swift:11:41: warning: using 'class' keyword to define a class-constrained protocol is deprecated; use 'AnyObject' instead
 9 | import Foundation
10 |
11 | public protocol SessionManagerDelegate: class {
   |                                         `- warning: using 'class' keyword to define a class-constrained protocol is deprecated; use 'AnyObject' instead
12 |
13 |     /// Informs delegate that a URLRequest is about to be executed.
/host/spi-builder-workspace/Sources/RestBird/Session/SessionManager.swift:33:33: warning: using 'class' keyword to define a class-constrained protocol is deprecated; use 'AnyObject' instead
31 |
32 | /// URL session interface
33 | public protocol SessionManager: class {
   |                                 `- warning: using 'class' keyword to define a class-constrained protocol is deprecated; use 'AnyObject' instead
34 |
35 |     var config: NetworkClientConfiguration { get }
Build complete! (21.88s)
Build complete.
{
  "dependencies" : [
    {
      "identity" : "alamofire",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "5.4.0",
            "upper_bound" : "6.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/Alamofire/Alamofire.git"
    }
  ],
  "manifest_display_name" : "RestBird",
  "name" : "RestBird",
  "path" : "/host/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "10.12"
    },
    {
      "name" : "ios",
      "version" : "10.0"
    }
  ],
  "products" : [
    {
      "name" : "RestBird",
      "targets" : [
        "RestBird"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "RestBirdTests",
      "module_type" : "SwiftTarget",
      "name" : "RestBirdTests",
      "path" : "Tests/RestBirdTests",
      "sources" : [
        "XCTestManifests.swift"
      ],
      "target_dependencies" : [
        "RestBird"
      ],
      "type" : "test"
    },
    {
      "c99name" : "RestBird",
      "module_type" : "SwiftTarget",
      "name" : "RestBird",
      "path" : "Sources/RestBird",
      "product_dependencies" : [
        "Alamofire"
      ],
      "product_memberships" : [
        "RestBird"
      ],
      "sources" : [
        "Alamofire/AlamofireSessionManager.swift",
        "Alamofire/Request+Alamofire.swift",
        "Client/NetworkClient.swift",
        "HTTPMethod.swift",
        "Middleware.swift",
        "Request/DataRequest.swift",
        "Request/EmptyResponse.swift",
        "Request/MultipartRequest.swift",
        "Request/ParameterEncoding.swift",
        "Request/Request.swift",
        "RestBird.swift",
        "Session/SessionManager.swift",
        "Utility/Data+Codable.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.2"
}
basic-6.0-latest: Pulling from finestructure/spi-images
Digest: sha256:47d26c99ca4f1ac0a332c85fd5b13ff4390e72115219984a57a68fe9d1063a05
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.0-latest
Done.