Build Information
Successful build of RestBird, reference 0.5.4 (db51dc
), with Swift 6.2 (beta) for Linux on 18 Jun 2025 20:31:15 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.2-latest swift build --triple x86_64-unknown-linux-gnu 2>&1
Build Log
========================================
RunAll
========================================
Builder version: 4.64.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/halcyonmobile/RestBird.git
Reference: 0.5.4
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
* tag 0.5.4 -> FETCH_HEAD
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 0.5.4
========================================
Build
========================================
Selected platform: linux
Swift version: 6.2
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.2-latest swift build --triple x86_64-unknown-linux-gnu 2>&1
basic-6.2-latest: Pulling from finestructure/spi-images
Digest: sha256:f81a7bd7aa87a0f81848d48c5bcc03f5f78deebd37fa5f9be9913077205d3687
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.2-latest
Fetching https://github.com/Alamofire/Alamofire.git
[1/30141] Fetching alamofire
Fetched https://github.com/Alamofire/Alamofire.git from cache (5.06s)
Computing version for https://github.com/Alamofire/Alamofire.git
Computed https://github.com/Alamofire/Alamofire.git at 5.10.2 (5.95s)
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 Combine.swift
[6/43] Compiling Alamofire Concurrency.swift
[7/43] Compiling Alamofire EventMonitor.swift
[8/43] Compiling Alamofire MultipartFormData.swift
[9/43] Compiling Alamofire MultipartUpload.swift
[10/48] Compiling Alamofire NetworkReachabilityManager.swift
[11/48] Compiling Alamofire RedirectHandler.swift
[12/48] Compiling Alamofire RequestCompression.swift
[13/48] Compiling Alamofire RequestInterceptor.swift
[14/48] Compiling Alamofire ResponseSerialization.swift
[15/48] Compiling Alamofire URLRequest+Alamofire.swift
[16/48] Compiling Alamofire URLSessionConfiguration+Alamofire.swift
[17/48] Compiling Alamofire AlamofireExtended.swift
[18/48] Compiling Alamofire AuthenticationInterceptor.swift
[19/48] Compiling Alamofire CachedResponseHandler.swift
[20/48] Compiling Alamofire HTTPMethod.swift
[21/48] Compiling Alamofire Notifications.swift
[22/48] Compiling Alamofire ParameterEncoder.swift
[23/48] Compiling Alamofire ParameterEncoding.swift
[24/48] Compiling Alamofire Protected.swift
[25/48] Compiling Alamofire Request.swift
[26/48] Compiling Alamofire RequestTaskMap.swift
[27/48] Compiling Alamofire Response.swift
[28/48] Compiling Alamofire Session.swift
[29/48] Compiling Alamofire SessionDelegate.swift
[30/48] Compiling Alamofire URLConvertible+URLRequestConvertible.swift
[31/48] Compiling Alamofire UploadRequest.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] Compiling Alamofire Alamofire.swift
[38/48] Compiling Alamofire AFError.swift
[39/48] Compiling Alamofire DataRequest.swift
[40/48] Compiling Alamofire DataStreamRequest.swift
[41/48] Compiling Alamofire DownloadRequest.swift
[42/48] Compiling Alamofire HTTPHeaders.swift
[43/48] Emitting module Alamofire
[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 ParameterEncoding.swift
[51/62] Compiling RestBird Request.swift
[52/62] Compiling RestBird Middleware.swift
[53/62] Compiling RestBird DataRequest.swift
[54/63] Compiling RestBird RestBird.swift
[55/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 [#deprecation]
9 | import Foundation
10 |
11 | public protocol SessionManagerDelegate: class {
| `- warning: using 'class' keyword to define a class-constrained protocol is deprecated; use 'AnyObject' instead [#deprecation]
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 [#deprecation]
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 [#deprecation]
34 |
35 | var config: NetworkClientConfiguration { get }
[56/63] Compiling RestBird EmptyResponse.swift
[57/63] Compiling RestBird MultipartRequest.swift
[58/63] 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 [#deprecation]
9 | import Foundation
10 |
11 | public protocol SessionManagerDelegate: class {
| `- warning: using 'class' keyword to define a class-constrained protocol is deprecated; use 'AnyObject' instead [#deprecation]
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 [#deprecation]
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 [#deprecation]
34 |
35 | var config: NetworkClientConfiguration { get }
[59/63] Compiling RestBird NetworkClient.swift
[60/63] Compiling RestBird HTTPMethod.swift
[61/63] Compiling RestBird Data+Codable.swift
[62/63] Compiling RestBird AlamofireSessionManager.swift
/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:49:33: warning: capture of non-Sendable type 'T.Type' in an isolated closure
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: capture of non-Sendable type 'T.Type' in an isolated closure
50 | do {
51 | try self.delegate?.sessionManager(self, didPerform: urlRequest, response: urlResponse, data: response.data)
/host/spi-builder-workspace/Sources/RestBird/Alamofire/AlamofireSessionManager.swift:29:9: warning: capture of non-Sendable type 'T.Type' in an isolated closure
27 | public func performDataTask<Request, T>(
28 | request: Request,
29 | completion: @escaping (Result<T, Error>) -> Void
| `- warning: capture of non-Sendable type 'T.Type' in an isolated closure
30 | ) where Request : DataRequest, T : Decodable {
31 | let url = config.baseUrl + (request.suffix ?? "")
/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 non-Sendable type 'T.Type' in an isolated closure
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 non-Sendable type 'T.Type' in an isolated closure
145 | }
146 | }
/host/spi-builder-workspace/Sources/RestBird/Alamofire/AlamofireSessionManager.swift:78:9: warning: capture of non-Sendable type 'T.Type' in an isolated closure
76 | request: Request,
77 | uploadProgress: ((Progress) -> Void)?,
78 | completion: @escaping (Swift.Result<T, Error>) -> Void
| `- warning: capture of non-Sendable type 'T.Type' in an isolated closure
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.
[63/63] Compiling RestBird Request+Alamofire.swift
/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:49:33: warning: capture of non-Sendable type 'T.Type' in an isolated closure
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: capture of non-Sendable type 'T.Type' in an isolated closure
50 | do {
51 | try self.delegate?.sessionManager(self, didPerform: urlRequest, response: urlResponse, data: response.data)
/host/spi-builder-workspace/Sources/RestBird/Alamofire/AlamofireSessionManager.swift:29:9: warning: capture of non-Sendable type 'T.Type' in an isolated closure
27 | public func performDataTask<Request, T>(
28 | request: Request,
29 | completion: @escaping (Result<T, Error>) -> Void
| `- warning: capture of non-Sendable type 'T.Type' in an isolated closure
30 | ) where Request : DataRequest, T : Decodable {
31 | let url = config.baseUrl + (request.suffix ?? "")
/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 non-Sendable type 'T.Type' in an isolated closure
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 non-Sendable type 'T.Type' in an isolated closure
145 | }
146 | }
/host/spi-builder-workspace/Sources/RestBird/Alamofire/AlamofireSessionManager.swift:78:9: warning: capture of non-Sendable type 'T.Type' in an isolated closure
76 | request: Request,
77 | uploadProgress: ((Progress) -> Void)?,
78 | completion: @escaping (Swift.Result<T, Error>) -> Void
| `- warning: capture of non-Sendable type 'T.Type' in an isolated closure
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.
Build complete! (35.09s)
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.2-latest: Pulling from finestructure/spi-images
Digest: sha256:f81a7bd7aa87a0f81848d48c5bcc03f5f78deebd37fa5f9be9913077205d3687
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.2-latest
Done.