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 Nappa, reference master (cbf698), with Swift 6.0 for macOS (SPM) on 26 Nov 2024 18:59:34 UTC.

Swift 6 data race errors: 0

Build Command

env DEVELOPER_DIR=/Applications/Xcode-16.1.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.58.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/AlTavares/Nappa.git
Reference: master
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/AlTavares/Nappa
 * branch            master     -> FETCH_HEAD
 * [new branch]      master     -> origin/master
HEAD is now at cbf6989 Merge branch 'develop'
Cloned https://github.com/AlTavares/Nappa.git
Revision (git rev-parse @):
cbf6989efa0c46d8fb2a44098b26071b69201787
SUCCESS checkout https://github.com/AlTavares/Nappa.git at master
========================================
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": "nappa",
      "name": "Nappa",
      "url": "https://github.com/AlTavares/Nappa.git",
      "version": "unspecified",
      "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/Nappa",
      "dependencies": [
      ]
    }
  ]
}
Fetching https://github.com/AlTavares/Nappa.git
[1/781] Fetching nappa
Fetched https://github.com/AlTavares/Nappa.git from cache (1.41s)
Creating working copy for https://github.com/AlTavares/Nappa.git
Working copy of https://github.com/AlTavares/Nappa.git resolved at master (cbf6989)
warning: '.resolve-product-dependencies': dependency 'nappa' is not used by any target
Found 0 product dependencies
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.0
Building package at path:  $PWD
https://github.com/AlTavares/Nappa.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.1.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version--7754E27361AE5C74.txt
[3/11] Compiling Nappa HTTPServiceErrors.swift
[4/11] Compiling Nappa HTTPRequestAdapter.swift
/Users/admin/builder/spi-builder-workspace/Sources/Nappa/HTTPRequestAdapter.swift:47:24: warning: capture of 'completionHandler' with non-sendable type '(DataResponse) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
45 |             let httpResponse = response as? HTTPURLResponse
46 |             if let error = error {
47 |                 return completionHandler(DataResponse(request: request, response: httpResponse, data: data, error: .requestError(error)))
   |                        |- warning: capture of 'completionHandler' with non-sendable type '(DataResponse) -> 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'
48 |             }
49 |             return completionHandler(DataResponse(request: request, response: httpResponse, data: data))
[5/11] Compiling Nappa URLRequestExtension.swift
[6/11] Compiling Nappa HTTPResponse.swift
[7/11] Compiling Nappa HTTPService.swift
/Users/admin/builder/spi-builder-workspace/Sources/Nappa/HTTPService.swift:133:57: warning: conditional cast from 'HTTPResponseError' to 'HTTPResponseError' always succeeds
131 |             return adapter.performRequest(request: request, completionHandler: completionHandler)
132 |         } catch {
133 |             completionHandler(DataResponse(error: error as? HTTPResponseError))
    |                                                         `- warning: conditional cast from 'HTTPResponseError' to 'HTTPResponseError' always succeeds
134 |             return nil
135 |         }
/Users/admin/builder/spi-builder-workspace/Sources/Nappa/HTTPService.swift:142:17: warning: capture of 'completionHandler' with non-sendable type '(DataResponse) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
140 |         return response { dataResponse in
141 |             queue.async {
142 |                 completionHandler(dataResponse)
    |                 |- warning: capture of 'completionHandler' with non-sendable type '(DataResponse) -> 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'
143 |             }
144 |         }
/Users/admin/builder/spi-builder-workspace/Sources/Nappa/HTTPService.swift:142:35: warning: capture of 'dataResponse' with non-sendable type 'DataResponse' in a `@Sendable` closure; this is an error in the Swift 6 language mode
140 |         return response { dataResponse in
141 |             queue.async {
142 |                 completionHandler(dataResponse)
    |                                   `- warning: capture of 'dataResponse' with non-sendable type 'DataResponse' in a `@Sendable` closure; this is an error in the Swift 6 language mode
143 |             }
144 |         }
/Users/admin/builder/spi-builder-workspace/Sources/Nappa/HTTPResponse.swift:82:14: note: class 'DataResponse' does not conform to the 'Sendable' protocol
 80 | }
 81 |
 82 | public class DataResponse: Response, ResponseResult {
    |              `- note: class 'DataResponse' does not conform to the 'Sendable' protocol
 83 |     public lazy var result: Result<Data, HTTPResponseError> = decodeData()
 84 | }
/Users/admin/builder/spi-builder-workspace/Sources/Nappa/HTTPService.swift:162:17: warning: capture of 'completionHandler' with non-sendable type '(JSONResponse) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
160 |             }
161 |             queue.async {
162 |                 completionHandler(jsonResponse)
    |                 |- warning: capture of 'completionHandler' with non-sendable type '(JSONResponse) -> 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'
163 |             }
164 |         }
/Users/admin/builder/spi-builder-workspace/Sources/Nappa/HTTPService.swift:162:35: warning: capture of 'jsonResponse' with non-sendable type 'JSONResponse' in a `@Sendable` closure; this is an error in the Swift 6 language mode
160 |             }
161 |             queue.async {
162 |                 completionHandler(jsonResponse)
    |                                   `- warning: capture of 'jsonResponse' with non-sendable type 'JSONResponse' in a `@Sendable` closure; this is an error in the Swift 6 language mode
163 |             }
164 |         }
/Users/admin/builder/spi-builder-workspace/Sources/Nappa/HTTPResponse.swift:86:14: note: class 'JSONResponse' does not conform to the 'Sendable' protocol
 84 | }
 85 |
 86 | public class JSONResponse: Response, ResponseResult {
    |              `- note: class 'JSONResponse' does not conform to the 'Sendable' protocol
 87 |     public lazy var result: Result<Any, HTTPResponseError> = decodeResult(options: .allowFragments)
 88 |
/Users/admin/builder/spi-builder-workspace/Sources/Nappa/HTTPService.swift:175:17: warning: capture of 'completionHandler' with non-sendable type '(ObjectResponse<Value>) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
173 |             }
174 |             queue.async {
175 |                 completionHandler(objectResponse)
    |                 |- warning: capture of 'completionHandler' with non-sendable type '(ObjectResponse<Value>) -> 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'
176 |             }
177 |         }
/Users/admin/builder/spi-builder-workspace/Sources/Nappa/HTTPService.swift:175:35: warning: capture of 'objectResponse' with non-sendable type 'ObjectResponse<Value>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
173 |             }
174 |             queue.async {
175 |                 completionHandler(objectResponse)
    |                                   `- warning: capture of 'objectResponse' with non-sendable type 'ObjectResponse<Value>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
176 |             }
177 |         }
/Users/admin/builder/spi-builder-workspace/Sources/Nappa/HTTPResponse.swift:127:14: note: generic class 'ObjectResponse' does not conform to the 'Sendable' protocol
125 | }
126 |
127 | public class ObjectResponse<Value: Decodable>: Response, ResponseResult {
    |              `- note: generic class 'ObjectResponse' does not conform to the 'Sendable' protocol
128 |     public lazy var result: Result<Value, HTTPResponseError> = decodeResult(decoder: JSONDecoder())
129 |
[8/11] Compiling Nappa ResultExtension.swift
/Users/admin/builder/spi-builder-workspace/Sources/Nappa/Extensions/ResultExtension.swift:22:1: warning: extension declares a conformance of imported type 'Result' to imported protocol 'CustomDebugStringConvertible'; this will not behave correctly if the owners of 'Swift' introduce this conformance in the future
20 | }
21 |
22 | extension Result: CustomDebugStringConvertible {
   | |- warning: extension declares a conformance of imported type 'Result' to imported protocol 'CustomDebugStringConvertible'; this will not behave correctly if the owners of 'Swift' introduce this conformance in the future
   | `- note: add '@retroactive' to silence this warning
23 |     public var debugDescription: String {
24 |         switch self {
[9/11] Compiling Nappa AnyEncodable.swift
[10/11] Compiling Nappa DispatchQueueExtension.swift
/Users/admin/builder/spi-builder-workspace/Sources/Nappa/DispatchQueueExtension.swift:19:55: warning: passing non-sendable parameter 'closure' to function expecting a @Sendable closure
16 |     static var background: DispatchQueue { return DispatchQueue.global(qos: .background) }
17 |
18 |     func after(_ delay: TimeInterval, execute closure: @escaping () -> Void) {
   |                                               `- note: parameter 'closure' is implicitly non-sendable
19 |         asyncAfter(deadline: .now() + delay, execute: closure)
   |                                                       `- warning: passing non-sendable parameter 'closure' to function expecting a @Sendable closure
20 |     }
21 | }
[11/11] Emitting module Nappa
/Users/admin/builder/spi-builder-workspace/Sources/Nappa/Extensions/ResultExtension.swift:22:1: warning: extension declares a conformance of imported type 'Result' to imported protocol 'CustomDebugStringConvertible'; this will not behave correctly if the owners of 'Swift' introduce this conformance in the future
20 | }
21 |
22 | extension Result: CustomDebugStringConvertible {
   | |- warning: extension declares a conformance of imported type 'Result' to imported protocol 'CustomDebugStringConvertible'; this will not behave correctly if the owners of 'Swift' introduce this conformance in the future
   | `- note: add '@retroactive' to silence this warning
23 |     public var debugDescription: String {
24 |         switch self {
Build complete! (9.37s)
Build complete.
{
  "dependencies" : [
  ],
  "manifest_display_name" : "Nappa",
  "name" : "Nappa",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
  ],
  "products" : [
    {
      "name" : "Nappa",
      "targets" : [
        "Nappa"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "Nappa",
      "module_type" : "SwiftTarget",
      "name" : "Nappa",
      "path" : "Sources/Nappa",
      "product_memberships" : [
        "Nappa"
      ],
      "sources" : [
        "AnyEncodable.swift",
        "DispatchQueueExtension.swift",
        "Extensions/ResultExtension.swift",
        "Extensions/URLRequestExtension.swift",
        "HTTPRequestAdapter.swift",
        "HTTPResponse.swift",
        "HTTPService.swift",
        "HTTPServiceErrors.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "4.0"
}
Done.