The Swift Package Index logo.Swift Package Index

Has it really been five years since Swift Package Index launched? Read our anniversary blog post!

Build Information

Successful build of Apexy, reference master (ad19a3), with Swift 6.1 for macOS (SPM) on 20 May 2025 15:25:37 UTC.

Swift 6 data race errors: 0

Build Command

env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures

Build Log

========================================
RunAll
========================================
Builder version: 4.61.6
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/RedMadRobot/apexy-ios.git
Reference: master
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/RedMadRobot/apexy-ios
 * branch            master     -> FETCH_HEAD
 * [new branch]      master     -> origin/master
HEAD is now at ad19a37 Merge pull request #46 from onl1ner/feature/explicit-host-trust-evaluation
Cloned https://github.com/RedMadRobot/apexy-ios.git
Revision (git rev-parse @):
ad19a372695ef3191c5fb8e70624cb7439224f4d
SUCCESS checkout https://github.com/RedMadRobot/apexy-ios.git at master
Fetching https://github.com/Alamofire/Alamofire.git
[1/30140] Fetching alamofire
Fetched https://github.com/Alamofire/Alamofire.git from cache (2.52s)
Computing version for https://github.com/Alamofire/Alamofire.git
Computed https://github.com/Alamofire/Alamofire.git at 5.6.2 (3.16s)
Creating working copy for https://github.com/Alamofire/Alamofire.git
Working copy of https://github.com/Alamofire/Alamofire.git resolved at 5.6.2
========================================
ResolveProductDependencies
========================================
Resolving dependencies ...
{
  "identity": ".resolve-product-dependencies",
  "name": "resolve-dependencies",
  "url": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
  "version": "unspecified",
  "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
  "dependencies": [
    {
      "identity": "apexy-ios",
      "name": "Apexy",
      "url": "https://github.com/RedMadRobot/apexy-ios.git",
      "version": "unspecified",
      "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/apexy-ios",
      "dependencies": [
        {
          "identity": "alamofire",
          "name": "Alamofire",
          "url": "https://github.com/Alamofire/Alamofire.git",
          "version": "5.10.2",
          "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/Alamofire",
          "dependencies": [
          ]
        }
      ]
    }
  ]
}
Fetching https://github.com/RedMadRobot/apexy-ios.git
[1/1724] Fetching apexy-ios
Fetched https://github.com/RedMadRobot/apexy-ios.git from cache (0.97s)
Fetching https://github.com/Alamofire/Alamofire.git from cache
Fetched https://github.com/Alamofire/Alamofire.git from cache (0.68s)
Computing version for https://github.com/Alamofire/Alamofire.git
Computed https://github.com/Alamofire/Alamofire.git at 5.10.2 (1.27s)
Creating working copy for https://github.com/RedMadRobot/apexy-ios.git
Working copy of https://github.com/RedMadRobot/apexy-ios.git resolved at master (ad19a37)
Creating working copy for https://github.com/Alamofire/Alamofire.git
Working copy of https://github.com/Alamofire/Alamofire.git resolved at 5.10.2
warning: '.resolve-product-dependencies': dependency 'apexy-ios' is not used by any target
Found 1 product dependencies
  - Alamofire
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.1
Building package at path:  $PWD
https://github.com/RedMadRobot/apexy-ios.git
https://github.com/RedMadRobot/apexy-ios.git
{
  "dependencies" : [
    {
      "identity" : "alamofire",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "5.2.0",
            "upper_bound" : "6.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/Alamofire/Alamofire.git"
    }
  ],
  "manifest_display_name" : "Apexy",
  "name" : "Apexy",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "10.15"
    },
    {
      "name" : "ios",
      "version" : "13.0"
    },
    {
      "name" : "tvos",
      "version" : "13.0"
    },
    {
      "name" : "watchos",
      "version" : "6.0"
    }
  ],
  "products" : [
    {
      "name" : "Apexy",
      "targets" : [
        "ApexyURLSession"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "ApexyAlamofire",
      "targets" : [
        "ApexyAlamofire"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "ApexyLoader",
      "targets" : [
        "ApexyLoader"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "ApexyURLSessionTests",
      "module_type" : "SwiftTarget",
      "name" : "ApexyURLSessionTests",
      "path" : "Tests/ApexyURLSessionTests",
      "sources" : [
        "BaseRequestAdapterTests.swift",
        "URLSessionClientTests.swift"
      ],
      "target_dependencies" : [
        "ApexyURLSession"
      ],
      "type" : "test"
    },
    {
      "c99name" : "ApexyURLSession",
      "module_type" : "SwiftTarget",
      "name" : "ApexyURLSession",
      "path" : "Sources/ApexyURLSession",
      "product_memberships" : [
        "Apexy"
      ],
      "sources" : [
        "BaseRequestAdapter.swift",
        "URLSessionClient+Concurrency.swift",
        "URLSessionClient.swift"
      ],
      "target_dependencies" : [
        "Apexy"
      ],
      "type" : "library"
    },
    {
      "c99name" : "ApexyTests",
      "module_type" : "SwiftTarget",
      "name" : "ApexyTests",
      "path" : "Tests/ApexyTests",
      "sources" : [
        "HTTPBodyTests.swift",
        "URLRequestBuildableTests.swift"
      ],
      "target_dependencies" : [
        "Apexy"
      ],
      "type" : "test"
    },
    {
      "c99name" : "ApexyLoaderTests",
      "module_type" : "SwiftTarget",
      "name" : "ApexyLoaderTests",
      "path" : "Tests/ApexyLoaderTests",
      "sources" : [
        "ContentLoaderTests.swift",
        "LoaderObservationTests.swift",
        "LoadingStateTests.swift"
      ],
      "target_dependencies" : [
        "ApexyLoader"
      ],
      "type" : "test"
    },
    {
      "c99name" : "ApexyLoader",
      "module_type" : "SwiftTarget",
      "name" : "ApexyLoader",
      "path" : "Sources/ApexyLoader",
      "product_memberships" : [
        "ApexyLoader"
      ],
      "sources" : [
        "ContentLoader.swift",
        "LoaderObservation.swift",
        "LoadingState.swift",
        "ObservableLoader.swift",
        "WebLoader.swift"
      ],
      "target_dependencies" : [
        "Apexy"
      ],
      "type" : "library"
    },
    {
      "c99name" : "ApexyAlamofireTests",
      "module_type" : "SwiftTarget",
      "name" : "ApexyAlamofireTests",
      "path" : "Tests/ApexyAlamofireTests",
      "sources" : [
        "AlamofireClientCombineTests.swift",
        "AlamofireClientTests.swift",
        "BaseRequestInterceptorTests.swift",
        "Helpers/EmptyEndpoint.swift",
        "Helpers/MockURLProtocol.swift",
        "Helpers/SimpleUploadEndpoint.swift"
      ],
      "target_dependencies" : [
        "ApexyAlamofire"
      ],
      "type" : "test"
    },
    {
      "c99name" : "ApexyAlamofire",
      "module_type" : "SwiftTarget",
      "name" : "ApexyAlamofire",
      "path" : "Sources/ApexyAlamofire",
      "product_dependencies" : [
        "Alamofire"
      ],
      "product_memberships" : [
        "ApexyAlamofire"
      ],
      "sources" : [
        "AlamofireClient+Concurrency.swift",
        "AlamofireClient.swift",
        "BaseRequestInterceptor.swift"
      ],
      "target_dependencies" : [
        "Apexy"
      ],
      "type" : "library"
    },
    {
      "c99name" : "Apexy",
      "module_type" : "SwiftTarget",
      "name" : "Apexy",
      "path" : "Sources/Apexy",
      "product_memberships" : [
        "Apexy",
        "ApexyAlamofire",
        "ApexyLoader"
      ],
      "sources" : [
        "APIResult.swift",
        "Client.swift",
        "Clients/CombineClient.swift",
        "Clients/ConcurrencyClient.swift",
        "Endpoint.swift",
        "HTTPBody.swift",
        "ResponseObserver.swift",
        "URLRequestBuildable.swift",
        "UploadEndpoint.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.2"
}
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures
Building for debugging...
[0/6] Write sources
[5/6] Write swift-version-2F0A5646E1D333AE.txt
[7/50] Emitting module Alamofire
[8/53] Compiling Alamofire URLRequest+Alamofire.swift
[9/53] Compiling Alamofire URLSessionConfiguration+Alamofire.swift
[10/53] Compiling Alamofire Validation.swift
[11/53] Compiling Apexy Endpoint.swift
[12/53] Compiling Apexy UploadEndpoint.swift
[13/53] Compiling Apexy ConcurrencyClient.swift
[14/53] Compiling Apexy URLRequestBuildable.swift
[15/53] Compiling Apexy HTTPBody.swift
[16/53] Compiling Apexy ResponseObserver.swift
[17/53] Compiling Apexy CombineClient.swift
[18/53] Compiling Alamofire StringEncoding+Alamofire.swift
[19/53] Compiling Alamofire URLConvertible+URLRequestConvertible.swift
[20/53] Compiling Alamofire URLEncodedFormEncoder.swift
[21/53] Compiling Alamofire ServerTrustEvaluation.swift
[22/53] Compiling Alamofire Session.swift
[23/53] Compiling Alamofire SessionDelegate.swift
[24/53] Compiling Alamofire ParameterEncoder.swift
[25/53] Compiling Alamofire ParameterEncoding.swift
[26/53] Compiling Alamofire Protected.swift
[27/53] Compiling Alamofire RedirectHandler.swift
[28/53] Compiling Apexy Client.swift
[29/53] Emitting module Apexy
[30/53] Compiling Apexy APIResult.swift
[31/53] Compiling Alamofire ResponseSerialization.swift
[32/53] Compiling Alamofire Result+Alamofire.swift
[33/53] Compiling Alamofire RetryPolicy.swift
[34/53] Compiling Alamofire CachedResponseHandler.swift
[35/53] Compiling Alamofire Combine.swift
[36/53] Compiling Alamofire Concurrency.swift
[37/53] Compiling Alamofire DispatchQueue+Alamofire.swift
[38/53] Compiling Alamofire EventMonitor.swift
[39/53] Compiling Alamofire HTTPHeaders.swift
[40/53] Compiling Alamofire HTTPMethod.swift
[41/53] Compiling Alamofire MultipartFormData.swift
[42/53] Compiling Alamofire AFError.swift
[43/53] Compiling Alamofire Alamofire.swift
[44/53] Compiling Alamofire AlamofireExtended.swift
[45/53] Compiling Alamofire AuthenticationInterceptor.swift
[46/53] Compiling Alamofire MultipartUpload.swift
[47/53] Compiling Alamofire NetworkReachabilityManager.swift
[48/53] Compiling Alamofire Notifications.swift
[49/53] Compiling Alamofire OperationQueue+Alamofire.swift
[50/53] Compiling Alamofire Request.swift
[51/53] Compiling Alamofire RequestInterceptor.swift
[52/53] Compiling Alamofire RequestTaskMap.swift
[53/53] Compiling Alamofire Response.swift
[54/67] Compiling ApexyLoader ObservableLoader.swift
[55/67] Compiling ApexyLoader LoadingState.swift
[56/67] Compiling ApexyLoader LoaderObservation.swift
[57/67] Compiling ApexyLoader ContentLoader.swift
[58/67] Compiling ApexyLoader WebLoader.swift
[59/67] Emitting module ApexyLoader
[60/67] Compiling ApexyURLSession URLSessionClient+Concurrency.swift
/Users/admin/builder/spi-builder-workspace/Sources/ApexyURLSession/URLSessionClient+Concurrency.swift:25:5: warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
23 |         }
24 |
25 |     open func request<T>(_ endpoint: T) async throws -> T.Content where T : Endpoint {
   |     `- warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
26 |
27 |         var request = try endpoint.makeRequest()
/Users/admin/builder/spi-builder-workspace/Sources/ApexyURLSession/URLSessionClient+Concurrency.swift:56:5: warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
54 |     }
55 |
56 |     open func upload<T>(_ endpoint: T) async throws -> T.Content where T : UploadEndpoint {
   |     `- warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
57 |
58 |         var request: (request: URLRequest, body: UploadEndpointBody) = try endpoint.makeRequest()
/Users/admin/builder/spi-builder-workspace/Sources/ApexyURLSession/URLSessionClient+Concurrency.swift:43:23: 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
41 |         }
42 |
43 |         Task.detached { [weak self, request, responseResult] in
   |                       `- 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
44 |             self?.observeResponse(request: request, responseResult: responseResult)
   |             `- note: closure captures 'self' which is accessible to code in the current task
45 |         }
46 |
/Users/admin/builder/spi-builder-workspace/Sources/ApexyURLSession/URLSessionClient+Concurrency.swift:78:23: 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
76 |         }
77 |
78 |         Task.detached { [weak self, request, responseResult] in
   |                       `- 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
79 |             self?.observeResponse(request: request.request, responseResult: responseResult)
   |             |                              `- note: closure captures non-Sendable 'request'
   |             `- note: closure captures non-Sendable 'self'
80 |         }
81 |
[61/67] Compiling ApexyURLSession BaseRequestAdapter.swift
[62/67] Compiling ApexyURLSession URLSessionClient.swift
/Users/admin/builder/spi-builder-workspace/Sources/ApexyURLSession/URLSessionClient.swift:76:25: warning: capture of 'endpoint' with non-sendable type 'T' in a '@Sendable' closure
 58 |     }
 59 |
 60 |     open func request<T>(
    |                       `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
 61 |         _ endpoint: T,
 62 |         completionHandler: @escaping (APIResult<T.Content>) -> Void) -> Progress where T : Endpoint {
    :
 74 |             let result = APIResult<T.Content>(catching: { () throws -> T.Content in
 75 |                 if let httpResponse = response as? HTTPURLResponse {
 76 |                     try endpoint.validate(request, response: httpResponse, data: data)
    |                         `- warning: capture of 'endpoint' with non-sendable type 'T' in a '@Sendable' closure
 77 |                 }
 78 |                 let data = data ?? Data()
/Users/admin/builder/spi-builder-workspace/Sources/ApexyURLSession/URLSessionClient.swift:84:13: warning: capture of 'self' with non-sendable type 'URLSessionClient' in a '@Sendable' closure
  2 | import Foundation
  3 |
  4 | open class URLSessionClient: Client, CombineClient {
    |            `- note: class 'URLSessionClient' does not conform to the 'Sendable' protocol
  5 |
  6 |     let session: URLSession
    :
 82 |                 return try endpoint.content(from: response, with: data)
 83 |             })
 84 |             self.completionQueue.async {
    |             `- warning: capture of 'self' with non-sendable type 'URLSessionClient' in a '@Sendable' closure
 85 |                 self.responseObserver?(request, response as? HTTPURLResponse, data, error)
 86 |                 completionHandler(result)
/Users/admin/builder/spi-builder-workspace/Sources/ApexyURLSession/URLSessionClient.swift:86:17: warning: capture of 'completionHandler' with non-sendable type '(APIResult<T.Content>) -> Void' (aka '(Result<T.Content, any Error>) -> ()') in a '@Sendable' closure
 84 |             self.completionQueue.async {
 85 |                 self.responseObserver?(request, response as? HTTPURLResponse, data, error)
 86 |                 completionHandler(result)
    |                 |- warning: capture of 'completionHandler' with non-sendable type '(APIResult<T.Content>) -> Void' (aka '(Result<T.Content, any Error>) -> ()') in a '@Sendable' closure
    |                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
 87 |             }
 88 |         }
/Users/admin/builder/spi-builder-workspace/Sources/ApexyURLSession/URLSessionClient.swift:76:25: warning: capture of 'endpoint' with non-sendable type 'T' in an isolated closure; this is an error in the Swift 6 language mode
 58 |     }
 59 |
 60 |     open func request<T>(
    |                       `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
 61 |         _ endpoint: T,
 62 |         completionHandler: @escaping (APIResult<T.Content>) -> Void) -> Progress where T : Endpoint {
    :
 74 |             let result = APIResult<T.Content>(catching: { () throws -> T.Content in
 75 |                 if let httpResponse = response as? HTTPURLResponse {
 76 |                     try endpoint.validate(request, response: httpResponse, data: data)
    |                         `- warning: capture of 'endpoint' with non-sendable type 'T' in an isolated closure; this is an error in the Swift 6 language mode
 77 |                 }
 78 |                 let data = data ?? Data()
/Users/admin/builder/spi-builder-workspace/Sources/ApexyURLSession/URLSessionClient.swift:76:43: warning: reference to captured var 'request' in concurrently-executing code; this is an error in the Swift 6 language mode
 74 |             let result = APIResult<T.Content>(catching: { () throws -> T.Content in
 75 |                 if let httpResponse = response as? HTTPURLResponse {
 76 |                     try endpoint.validate(request, response: httpResponse, data: data)
    |                                           `- warning: reference to captured var 'request' in concurrently-executing code; this is an error in the Swift 6 language mode
 77 |                 }
 78 |                 let data = data ?? Data()
/Users/admin/builder/spi-builder-workspace/Sources/ApexyURLSession/URLSessionClient.swift:85:17: warning: capture of 'self' with non-sendable type 'URLSessionClient' in a '@Sendable' closure
  2 | import Foundation
  3 |
  4 | open class URLSessionClient: Client, CombineClient {
    |            `- note: class 'URLSessionClient' does not conform to the 'Sendable' protocol
  5 |
  6 |     let session: URLSession
    :
 83 |             })
 84 |             self.completionQueue.async {
 85 |                 self.responseObserver?(request, response as? HTTPURLResponse, data, error)
    |                 `- warning: capture of 'self' with non-sendable type 'URLSessionClient' in a '@Sendable' closure
 86 |                 completionHandler(result)
 87 |             }
/Users/admin/builder/spi-builder-workspace/Sources/ApexyURLSession/URLSessionClient.swift:86:17: warning: capture of 'completionHandler' with non-sendable type '(APIResult<T.Content>) -> Void' (aka '(Result<T.Content, any Error>) -> ()') in a '@Sendable' closure
 84 |             self.completionQueue.async {
 85 |                 self.responseObserver?(request, response as? HTTPURLResponse, data, error)
 86 |                 completionHandler(result)
    |                 |- warning: capture of 'completionHandler' with non-sendable type '(APIResult<T.Content>) -> Void' (aka '(Result<T.Content, any Error>) -> ()') in a '@Sendable' closure
    |                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
 87 |             }
 88 |         }
/Users/admin/builder/spi-builder-workspace/Sources/ApexyURLSession/URLSessionClient.swift:86:35: warning: capture of 'result' with non-sendable type 'APIResult<T.Content>' (aka 'Result<T.Content, any Error>') in a '@Sendable' closure
 84 |             self.completionQueue.async {
 85 |                 self.responseObserver?(request, response as? HTTPURLResponse, data, error)
 86 |                 completionHandler(result)
    |                                   `- warning: capture of 'result' with non-sendable type 'APIResult<T.Content>' (aka 'Result<T.Content, any Error>') in a '@Sendable' closure
 87 |             }
 88 |         }
/Users/admin/builder/spi-builder-workspace/Sources/ApexyURLSession/URLSessionClient.swift:85:40: warning: reference to captured var 'request' in concurrently-executing code
 83 |             })
 84 |             self.completionQueue.async {
 85 |                 self.responseObserver?(request, response as? HTTPURLResponse, data, error)
    |                                        `- warning: reference to captured var 'request' in concurrently-executing code
 86 |                 completionHandler(result)
 87 |             }
/Users/admin/builder/spi-builder-workspace/Sources/ApexyURLSession/URLSessionClient.swift:121:85: warning: converting non-sendable function value to '@Sendable (Data?, URLResponse?, (any Error)?) -> Void' may introduce data races
119 |         switch request {
120 |         case (let request, .data(let data)):
121 |             task = session.uploadTask(with: request, from: data, completionHandler: handler)
    |                                                                                     `- warning: converting non-sendable function value to '@Sendable (Data?, URLResponse?, (any Error)?) -> Void' may introduce data races
122 |         case (let request, .file(let url)):
123 |             task = session.uploadTask(with: request, fromFile: url, completionHandler: handler)
/Users/admin/builder/spi-builder-workspace/Sources/ApexyURLSession/URLSessionClient.swift:123:88: warning: converting non-sendable function value to '@Sendable (Data?, URLResponse?, (any Error)?) -> Void' may introduce data races
121 |             task = session.uploadTask(with: request, from: data, completionHandler: handler)
122 |         case (let request, .file(let url)):
123 |             task = session.uploadTask(with: request, fromFile: url, completionHandler: handler)
    |                                                                                        `- warning: converting non-sendable function value to '@Sendable (Data?, URLResponse?, (any Error)?) -> Void' may introduce data races
124 |         case (_, .stream):
125 |             completionHandler(.failure(URLSessionClientError.uploadStreamUnimplemented))
/Users/admin/builder/spi-builder-workspace/Sources/ApexyURLSession/URLSessionClient.swift:113:17: warning: capture of 'self' with non-sendable type 'URLSessionClient' in a '@Sendable' closure
  2 | import Foundation
  3 |
  4 | open class URLSessionClient: Client, CombineClient {
    |            `- note: class 'URLSessionClient' does not conform to the 'Sendable' protocol
  5 |
  6 |     let session: URLSession
    :
111 |             })
112 |             self.completionQueue.async {
113 |                 self.responseObserver?(request.0, response as? HTTPURLResponse, data, error)
    |                 `- warning: capture of 'self' with non-sendable type 'URLSessionClient' in a '@Sendable' closure
114 |                 completionHandler(result)
115 |             }
/Users/admin/builder/spi-builder-workspace/Sources/ApexyURLSession/URLSessionClient.swift:113:40: warning: capture of 'request' with non-sendable type '(URLRequest, UploadEndpointBody)' in a '@Sendable' closure
111 |             })
112 |             self.completionQueue.async {
113 |                 self.responseObserver?(request.0, response as? HTTPURLResponse, data, error)
    |                                        `- warning: capture of 'request' with non-sendable type '(URLRequest, UploadEndpointBody)' in a '@Sendable' closure
114 |                 completionHandler(result)
115 |             }
/Users/admin/builder/spi-builder-workspace/Sources/Apexy/UploadEndpoint.swift:10:13: note: enum 'UploadEndpointBody' does not conform to the 'Sendable' protocol
 8 |
 9 | /// Type of uploadable content
10 | public enum UploadEndpointBody {
   |             `- note: enum 'UploadEndpointBody' does not conform to the 'Sendable' protocol
11 |     case data(Data)
12 |     case file(URL)
/Users/admin/builder/spi-builder-workspace/Sources/ApexyURLSession/URLSessionClient.swift:1:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Apexy'
  1 | import Apexy
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Apexy'
  2 | import Foundation
  3 |
/Users/admin/builder/spi-builder-workspace/Sources/ApexyURLSession/URLSessionClient.swift:114:17: warning: capture of 'completionHandler' with non-sendable type '(APIResult<T.Content>) -> Void' (aka '(Result<T.Content, any Error>) -> ()') in a '@Sendable' closure
112 |             self.completionQueue.async {
113 |                 self.responseObserver?(request.0, response as? HTTPURLResponse, data, error)
114 |                 completionHandler(result)
    |                 |- warning: capture of 'completionHandler' with non-sendable type '(APIResult<T.Content>) -> Void' (aka '(Result<T.Content, any Error>) -> ()') in a '@Sendable' closure
    |                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
115 |             }
116 |         }
/Users/admin/builder/spi-builder-workspace/Sources/ApexyURLSession/URLSessionClient.swift:114:35: warning: capture of 'result' with non-sendable type 'APIResult<T.Content>' (aka 'Result<T.Content, any Error>') in a '@Sendable' closure
112 |             self.completionQueue.async {
113 |                 self.responseObserver?(request.0, response as? HTTPURLResponse, data, error)
114 |                 completionHandler(result)
    |                                   `- warning: capture of 'result' with non-sendable type 'APIResult<T.Content>' (aka 'Result<T.Content, any Error>') in a '@Sendable' closure
115 |             }
116 |         }
/Users/admin/builder/spi-builder-workspace/Sources/ApexyURLSession/URLSessionClient.swift:113:40: warning: mutation of captured var 'request' in concurrently-executing code
111 |             })
112 |             self.completionQueue.async {
113 |                 self.responseObserver?(request.0, response as? HTTPURLResponse, data, error)
    |                                        `- warning: mutation of captured var 'request' in concurrently-executing code
114 |                 completionHandler(result)
115 |             }
[63/67] Emitting module ApexyURLSession
/Users/admin/builder/spi-builder-workspace/Sources/ApexyURLSession/URLSessionClient+Concurrency.swift:25:5: warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
23 |         }
24 |
25 |     open func request<T>(_ endpoint: T) async throws -> T.Content where T : Endpoint {
   |     `- warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
26 |
27 |         var request = try endpoint.makeRequest()
/Users/admin/builder/spi-builder-workspace/Sources/ApexyURLSession/URLSessionClient+Concurrency.swift:56:5: warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
54 |     }
55 |
56 |     open func upload<T>(_ endpoint: T) async throws -> T.Content where T : UploadEndpoint {
   |     `- warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
57 |
58 |         var request: (request: URLRequest, body: UploadEndpointBody) = try endpoint.makeRequest()
[64/67] Compiling ApexyAlamofire BaseRequestInterceptor.swift
[65/67] Emitting module ApexyAlamofire
/Users/admin/builder/spi-builder-workspace/Sources/ApexyAlamofire/AlamofireClient+Concurrency.swift:25:5: warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
23 |         }
24 |
25 |     open func request<T>(_ endpoint: T) async throws -> T.Content where T : Endpoint {
   |     `- warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
26 |
27 |         let anyRequest = AnyRequest(create: endpoint.makeRequest)
/Users/admin/builder/spi-builder-workspace/Sources/ApexyAlamofire/AlamofireClient+Concurrency.swift:50:5: warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
48 |     }
49 |
50 |     open func upload<T>(_ endpoint: T) async throws -> T.Content where T : UploadEndpoint {
   |     `- warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
51 |
52 |         let urlRequest: URLRequest
[66/67] Compiling ApexyAlamofire AlamofireClient.swift
/Users/admin/builder/spi-builder-workspace/Sources/ApexyAlamofire/AlamofireClient.swift:125:25: warning: capture of 'self' with non-sendable type 'AlamofireClient' in a '@Sendable' closure
 11 |
 12 | /// API Client.
 13 | open class AlamofireClient: Client, CombineClient {
    |            `- note: class 'AlamofireClient' does not conform to the 'Sendable' protocol
 14 |
 15 |     /// Session network manager.
    :
123 |
124 |                     self.completionQueue.async {
125 |                         self.responseObserver?(response.request, response.response, response.data, result.error)
    |                         `- warning: capture of 'self' with non-sendable type 'AlamofireClient' in a '@Sendable' closure
126 |                         completionHandler(result)
127 |                     }
/Users/admin/builder/spi-builder-workspace/Sources/ApexyAlamofire/AlamofireClient.swift:125:48: warning: capture of 'response' with non-sendable type 'DataResponse<Data, AFError>' in a '@Sendable' closure
123 |
124 |                     self.completionQueue.async {
125 |                         self.responseObserver?(response.request, response.response, response.data, result.error)
    |                                                `- warning: capture of 'response' with non-sendable type 'DataResponse<Data, AFError>' in a '@Sendable' closure
126 |                         completionHandler(result)
127 |                     }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Alamofire/Source/Response.swift:33:15: note: generic struct 'DataResponse' does not conform to the 'Sendable' protocol
 31 |
 32 | /// Type used to store all values associated with a serialized response of a `DataRequest` or `UploadRequest`.
 33 | public struct DataResponse<Success, Failure: Error> {
    |               `- note: generic struct 'DataResponse' does not conform to the 'Sendable' protocol
 34 |     /// The URL request sent to the server.
 35 |     public let request: URLRequest?
/Users/admin/builder/spi-builder-workspace/Sources/ApexyAlamofire/AlamofireClient.swift:8:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Alamofire'
  6 | //
  7 |
  8 | import Alamofire
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Alamofire'
  9 | import Apexy
 10 | import Foundation
/Users/admin/builder/spi-builder-workspace/Sources/ApexyAlamofire/AlamofireClient.swift:125:100: warning: capture of 'result' with non-sendable type 'APIResult<T.Content>' (aka 'Result<T.Content, any Error>') in a '@Sendable' closure
123 |
124 |                     self.completionQueue.async {
125 |                         self.responseObserver?(response.request, response.response, response.data, result.error)
    |                                                                                                    `- warning: capture of 'result' with non-sendable type 'APIResult<T.Content>' (aka 'Result<T.Content, any Error>') in a '@Sendable' closure
126 |                         completionHandler(result)
127 |                     }
/Users/admin/builder/spi-builder-workspace/Sources/ApexyAlamofire/AlamofireClient.swift:126:25: warning: capture of 'completionHandler' with non-sendable type '(APIResult<T.Content>) -> Void' (aka '(Result<T.Content, any Error>) -> ()') in a '@Sendable' closure
124 |                     self.completionQueue.async {
125 |                         self.responseObserver?(response.request, response.response, response.data, result.error)
126 |                         completionHandler(result)
    |                         |- warning: capture of 'completionHandler' with non-sendable type '(APIResult<T.Content>) -> Void' (aka '(Result<T.Content, any Error>) -> ()') in a '@Sendable' closure
    |                         `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
127 |                     }
128 |             })
/Users/admin/builder/spi-builder-workspace/Sources/ApexyAlamofire/AlamofireClient.swift:131:60: warning: capture of 'request' with non-sendable type 'DataRequest?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
129 |
130 |         let progress = request.downloadProgress
131 |         progress.cancellationHandler = { [weak request] in request?.cancel() }
    |                                                            `- warning: capture of 'request' with non-sendable type 'DataRequest?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
132 |         return progress
133 |     }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Alamofire/Source/Request.swift:1084:14: note: class 'DataRequest' does not conform to the 'Sendable' protocol
1082 |
1083 | /// `Request` subclass which handles in-memory `Data` download using `URLSessionDataTask`.
1084 | public class DataRequest: Request {
     |              `- note: class 'DataRequest' does not conform to the 'Sendable' protocol
1085 |     /// `URLRequestConvertible` value used to create `URLRequest`s for this instance.
1086 |     public let convertible: URLRequestConvertible
/Users/admin/builder/spi-builder-workspace/Sources/ApexyAlamofire/AlamofireClient.swift:175:21: warning: capture of 'self' with non-sendable type 'AlamofireClient' in a '@Sendable' closure
 11 |
 12 | /// API Client.
 13 | open class AlamofireClient: Client, CombineClient {
    |            `- note: class 'AlamofireClient' does not conform to the 'Sendable' protocol
 14 |
 15 |     /// Session network manager.
    :
173 |
174 |                 self.completionQueue.async {
175 |                     self.responseObserver?(response.request, response.response, response.data, result.error)
    |                     `- warning: capture of 'self' with non-sendable type 'AlamofireClient' in a '@Sendable' closure
176 |                     completionHandler(result)
177 |                 }
/Users/admin/builder/spi-builder-workspace/Sources/ApexyAlamofire/AlamofireClient.swift:175:44: warning: capture of 'response' with non-sendable type 'DataResponse<Data, AFError>' in a '@Sendable' closure
173 |
174 |                 self.completionQueue.async {
175 |                     self.responseObserver?(response.request, response.response, response.data, result.error)
    |                                            `- warning: capture of 'response' with non-sendable type 'DataResponse<Data, AFError>' in a '@Sendable' closure
176 |                     completionHandler(result)
177 |                 }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Alamofire/Source/Response.swift:33:15: note: generic struct 'DataResponse' does not conform to the 'Sendable' protocol
 31 |
 32 | /// Type used to store all values associated with a serialized response of a `DataRequest` or `UploadRequest`.
 33 | public struct DataResponse<Success, Failure: Error> {
    |               `- note: generic struct 'DataResponse' does not conform to the 'Sendable' protocol
 34 |     /// The URL request sent to the server.
 35 |     public let request: URLRequest?
/Users/admin/builder/spi-builder-workspace/Sources/ApexyAlamofire/AlamofireClient.swift:175:96: warning: capture of 'result' with non-sendable type 'APIResult<T.Content>' (aka 'Result<T.Content, any Error>') in a '@Sendable' closure
173 |
174 |                 self.completionQueue.async {
175 |                     self.responseObserver?(response.request, response.response, response.data, result.error)
    |                                                                                                `- warning: capture of 'result' with non-sendable type 'APIResult<T.Content>' (aka 'Result<T.Content, any Error>') in a '@Sendable' closure
176 |                     completionHandler(result)
177 |                 }
/Users/admin/builder/spi-builder-workspace/Sources/ApexyAlamofire/AlamofireClient.swift:176:21: warning: capture of 'completionHandler' with non-sendable type '(APIResult<T.Content>) -> Void' (aka '(Result<T.Content, any Error>) -> ()') in a '@Sendable' closure
174 |                 self.completionQueue.async {
175 |                     self.responseObserver?(response.request, response.response, response.data, result.error)
176 |                     completionHandler(result)
    |                     |- warning: capture of 'completionHandler' with non-sendable type '(APIResult<T.Content>) -> Void' (aka '(Result<T.Content, any Error>) -> ()') in a '@Sendable' closure
    |                     `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
177 |                 }
178 |             })
/Users/admin/builder/spi-builder-workspace/Sources/ApexyAlamofire/AlamofireClient.swift:181:60: warning: capture of 'request' with non-sendable type 'UploadRequest?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
179 |
180 |         let progress = request.uploadProgress
181 |         progress.cancellationHandler = { [weak request] in request?.cancel() }
    |                                                            `- warning: capture of 'request' with non-sendable type 'UploadRequest?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
182 |         return progress
183 |     }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Alamofire/Source/Request.swift:1766:14: note: class 'UploadRequest' does not conform to the 'Sendable' protocol
1764 |
1765 | /// `DataRequest` subclass which handles `Data` upload from memory, file, or stream using `URLSessionUploadTask`.
1766 | public class UploadRequest: DataRequest {
     |              `- note: class 'UploadRequest' does not conform to the 'Sendable' protocol
1767 |     /// Type describing the origin of the upload, whether `Data`, file, or stream.
1768 |     public enum Uploadable {
[67/67] Compiling ApexyAlamofire AlamofireClient+Concurrency.swift
/Users/admin/builder/spi-builder-workspace/Sources/ApexyAlamofire/AlamofireClient+Concurrency.swift:25:5: warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
23 |         }
24 |
25 |     open func request<T>(_ endpoint: T) async throws -> T.Content where T : Endpoint {
   |     `- warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
26 |
27 |         let anyRequest = AnyRequest(create: endpoint.makeRequest)
/Users/admin/builder/spi-builder-workspace/Sources/ApexyAlamofire/AlamofireClient+Concurrency.swift:50:5: warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
48 |     }
49 |
50 |     open func upload<T>(_ endpoint: T) async throws -> T.Content where T : UploadEndpoint {
   |     `- warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
51 |
52 |         let urlRequest: URLRequest
/Users/admin/builder/spi-builder-workspace/Sources/ApexyAlamofire/AlamofireClient+Concurrency.swift:43:23: 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
41 |         })
42 |
43 |         Task.detached { [weak self, dataResponse, result] in
   |                       `- 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
44 |             self?.observeResponse(dataResponse: dataResponse, error: result.error)
   |             |                                   |                    `- note: closure captures non-Sendable 'result'
   |             |                                   `- note: closure captures non-Sendable 'dataResponse'
   |             `- note: closure captures non-Sendable 'self'
45 |         }
46 |
/Users/admin/builder/spi-builder-workspace/Sources/ApexyAlamofire/AlamofireClient+Concurrency.swift:76:23: 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
74 |         })
75 |
76 |         Task.detached { [weak self, dataResponse, result] in
   |                       `- 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
77 |             self?.observeResponse(dataResponse: dataResponse, error: result.error)
   |             |                                   |                    `- note: closure captures non-Sendable 'result'
   |             |                                   `- note: closure captures non-Sendable 'dataResponse'
   |             `- note: closure captures non-Sendable 'self'
78 |         }
79 |
Build complete! (8.77s)
Build complete.
{
  "dependencies" : [
    {
      "identity" : "alamofire",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "5.2.0",
            "upper_bound" : "6.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/Alamofire/Alamofire.git"
    }
  ],
  "manifest_display_name" : "Apexy",
  "name" : "Apexy",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "10.15"
    },
    {
      "name" : "ios",
      "version" : "13.0"
    },
    {
      "name" : "tvos",
      "version" : "13.0"
    },
    {
      "name" : "watchos",
      "version" : "6.0"
    }
  ],
  "products" : [
    {
      "name" : "Apexy",
      "targets" : [
        "ApexyURLSession"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "ApexyAlamofire",
      "targets" : [
        "ApexyAlamofire"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "ApexyLoader",
      "targets" : [
        "ApexyLoader"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "ApexyURLSessionTests",
      "module_type" : "SwiftTarget",
      "name" : "ApexyURLSessionTests",
      "path" : "Tests/ApexyURLSessionTests",
      "sources" : [
        "BaseRequestAdapterTests.swift",
        "URLSessionClientTests.swift"
      ],
      "target_dependencies" : [
        "ApexyURLSession"
      ],
      "type" : "test"
    },
    {
      "c99name" : "ApexyURLSession",
      "module_type" : "SwiftTarget",
      "name" : "ApexyURLSession",
      "path" : "Sources/ApexyURLSession",
      "product_memberships" : [
        "Apexy"
      ],
      "sources" : [
        "BaseRequestAdapter.swift",
        "URLSessionClient+Concurrency.swift",
        "URLSessionClient.swift"
      ],
      "target_dependencies" : [
        "Apexy"
      ],
      "type" : "library"
    },
    {
      "c99name" : "ApexyTests",
      "module_type" : "SwiftTarget",
      "name" : "ApexyTests",
      "path" : "Tests/ApexyTests",
      "sources" : [
        "HTTPBodyTests.swift",
        "URLRequestBuildableTests.swift"
      ],
      "target_dependencies" : [
        "Apexy"
      ],
      "type" : "test"
    },
    {
      "c99name" : "ApexyLoaderTests",
      "module_type" : "SwiftTarget",
      "name" : "ApexyLoaderTests",
      "path" : "Tests/ApexyLoaderTests",
      "sources" : [
        "ContentLoaderTests.swift",
        "LoaderObservationTests.swift",
        "LoadingStateTests.swift"
      ],
      "target_dependencies" : [
        "ApexyLoader"
      ],
      "type" : "test"
    },
    {
      "c99name" : "ApexyLoader",
      "module_type" : "SwiftTarget",
      "name" : "ApexyLoader",
      "path" : "Sources/ApexyLoader",
      "product_memberships" : [
        "ApexyLoader"
      ],
      "sources" : [
        "ContentLoader.swift",
        "LoaderObservation.swift",
        "LoadingState.swift",
        "ObservableLoader.swift",
        "WebLoader.swift"
      ],
      "target_dependencies" : [
        "Apexy"
      ],
      "type" : "library"
    },
    {
      "c99name" : "ApexyAlamofireTests",
      "module_type" : "SwiftTarget",
      "name" : "ApexyAlamofireTests",
      "path" : "Tests/ApexyAlamofireTests",
      "sources" : [
        "AlamofireClientCombineTests.swift",
        "AlamofireClientTests.swift",
        "BaseRequestInterceptorTests.swift",
        "Helpers/EmptyEndpoint.swift",
        "Helpers/MockURLProtocol.swift",
        "Helpers/SimpleUploadEndpoint.swift"
      ],
      "target_dependencies" : [
        "ApexyAlamofire"
      ],
      "type" : "test"
    },
    {
      "c99name" : "ApexyAlamofire",
      "module_type" : "SwiftTarget",
      "name" : "ApexyAlamofire",
      "path" : "Sources/ApexyAlamofire",
      "product_dependencies" : [
        "Alamofire"
      ],
      "product_memberships" : [
        "ApexyAlamofire"
      ],
      "sources" : [
        "AlamofireClient+Concurrency.swift",
        "AlamofireClient.swift",
        "BaseRequestInterceptor.swift"
      ],
      "target_dependencies" : [
        "Apexy"
      ],
      "type" : "library"
    },
    {
      "c99name" : "Apexy",
      "module_type" : "SwiftTarget",
      "name" : "Apexy",
      "path" : "Sources/Apexy",
      "product_memberships" : [
        "Apexy",
        "ApexyAlamofire",
        "ApexyLoader"
      ],
      "sources" : [
        "APIResult.swift",
        "Client.swift",
        "Clients/CombineClient.swift",
        "Clients/ConcurrencyClient.swift",
        "Endpoint.swift",
        "HTTPBody.swift",
        "ResponseObserver.swift",
        "URLRequestBuildable.swift",
        "UploadEndpoint.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.2"
}
Done.