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 ConnectivityKit, reference main (d6c545), with Swift 6.0 for macOS (SPM) on 29 Nov 2024 02:48:04 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/AsyncSwiftKits/ConnectivityKit.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/AsyncSwiftKits/ConnectivityKit
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
HEAD is now at d6c5458 Update README.md
Cloned https://github.com/AsyncSwiftKits/ConnectivityKit.git
Revision (git rev-parse @):
d6c54586396aa6b1a3b64df0a898637648ced91b
SUCCESS checkout https://github.com/AsyncSwiftKits/ConnectivityKit.git at main
========================================
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": "connectivitykit",
      "name": "ConnectivityKit",
      "url": "https://github.com/AsyncSwiftKits/ConnectivityKit.git",
      "version": "unspecified",
      "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/ConnectivityKit",
      "dependencies": [
      ]
    }
  ]
}
Fetching https://github.com/AsyncSwiftKits/ConnectivityKit.git
[1/67] Fetching connectivitykit
Fetched https://github.com/AsyncSwiftKits/ConnectivityKit.git from cache (0.64s)
Creating working copy for https://github.com/AsyncSwiftKits/ConnectivityKit.git
Working copy of https://github.com/AsyncSwiftKits/ConnectivityKit.git resolved at main (d6c5458)
warning: '.resolve-product-dependencies': dependency 'connectivitykit' 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/AsyncSwiftKits/ConnectivityKit.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/3] Write sources
[1/3] Write swift-version--7754E27361AE5C74.txt
[2/3] Compiling Reachability Reachability.m
[4/8] Compiling ConnectivityKit ReachabilityMonitor.swift
/Users/admin/builder/spi-builder-workspace/Sources/ConnectivityKit/ReachabilityMonitor.swift:64:13: warning: capture of 'pathUpdateHandler' with non-sendable type 'PathUpdateHandler' (aka '(ConnectivityPath) -> ()') in a `@Sendable` closure; this is an error in the Swift 6 language mode
62 |         debugPrint("\(connectivityPath)")
63 |         pathUpdateQueue.async {
64 |             pathUpdateHandler(connectivityPath)
   |             |- warning: capture of 'pathUpdateHandler' with non-sendable type 'PathUpdateHandler' (aka '(ConnectivityPath) -> ()') 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'
65 |         }
66 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ConnectivityKit/ReachabilityMonitor.swift:64:31: warning: capture of 'connectivityPath' with non-sendable type 'ConnectivityPath' in a `@Sendable` closure; this is an error in the Swift 6 language mode
62 |         debugPrint("\(connectivityPath)")
63 |         pathUpdateQueue.async {
64 |             pathUpdateHandler(connectivityPath)
   |                               `- warning: capture of 'connectivityPath' with non-sendable type 'ConnectivityPath' in a `@Sendable` closure; this is an error in the Swift 6 language mode
65 |         }
66 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ConnectivityKit/ConnectivityMonitor.swift:45:15: note: consider making struct 'ConnectivityPath' conform to the 'Sendable' protocol
 43 | }
 44 |
 45 | public struct ConnectivityPath {
    |               `- note: consider making struct 'ConnectivityPath' conform to the 'Sendable' protocol
 46 |     public let status: ConnectivityStatus
 47 |     public let availableInterfaces: [ConnectivityInterface]
[5/8] Compiling ConnectivityKit ConnectivityMonitor.swift
[6/8] Compiling ConnectivityKit ConnectivityObserver.swift
[7/8] Compiling ConnectivityKit NetworkMonitor.swift
/Users/admin/builder/spi-builder-workspace/Sources/ConnectivityKit/NetworkMonitor.swift:74:35: warning: converting non-sendable function value to '@Sendable (NWPath) -> Void' may introduce data races
72 |         // A new instance is required each time a monitor is started
73 |         let monitor = NWPathMonitor()
74 |         monitor.pathUpdateHandler = didUpdate(path:)
   |                                   `- warning: converting non-sendable function value to '@Sendable (NWPath) -> Void' may introduce data races
75 |         monitor.start(queue: queue)
76 |         self.monitor = monitor
/Users/admin/builder/spi-builder-workspace/Sources/ConnectivityKit/NetworkMonitor.swift:94:13: warning: capture of 'pathUpdateHandler' with non-sendable type 'PathUpdateHandler' (aka '(ConnectivityPath) -> ()') in a `@Sendable` closure; this is an error in the Swift 6 language mode
92 |         let connectivityPath = ConnectivityPath(path: path)
93 |         pathUpdateQueue.async {
94 |             pathUpdateHandler(connectivityPath)
   |             |- warning: capture of 'pathUpdateHandler' with non-sendable type 'PathUpdateHandler' (aka '(ConnectivityPath) -> ()') 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'
95 |         }
96 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ConnectivityKit/NetworkMonitor.swift:94:31: warning: capture of 'connectivityPath' with non-sendable type 'ConnectivityPath' in a `@Sendable` closure; this is an error in the Swift 6 language mode
92 |         let connectivityPath = ConnectivityPath(path: path)
93 |         pathUpdateQueue.async {
94 |             pathUpdateHandler(connectivityPath)
   |                               `- warning: capture of 'connectivityPath' with non-sendable type 'ConnectivityPath' in a `@Sendable` closure; this is an error in the Swift 6 language mode
95 |         }
96 |     }
/Users/admin/builder/spi-builder-workspace/Sources/ConnectivityKit/ConnectivityMonitor.swift:45:15: note: consider making struct 'ConnectivityPath' conform to the 'Sendable' protocol
 43 | }
 44 |
 45 | public struct ConnectivityPath {
    |               `- note: consider making struct 'ConnectivityPath' conform to the 'Sendable' protocol
 46 |     public let status: ConnectivityStatus
 47 |     public let availableInterfaces: [ConnectivityInterface]
[8/8] Emitting module ConnectivityKit
Build complete! (8.88s)
Build complete.
{
  "dependencies" : [
  ],
  "manifest_display_name" : "ConnectivityKit",
  "name" : "ConnectivityKit",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "ios",
      "version" : "10.0"
    },
    {
      "name" : "macos",
      "version" : "10.14"
    },
    {
      "name" : "tvos",
      "version" : "12.0"
    },
    {
      "name" : "watchos",
      "version" : "6.0"
    }
  ],
  "products" : [
    {
      "name" : "ConnectivityKit",
      "targets" : [
        "ConnectivityKit"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "Reachability",
      "module_type" : "ClangTarget",
      "name" : "Reachability",
      "path" : "Sources/Reachability",
      "product_memberships" : [
        "ConnectivityKit"
      ],
      "sources" : [
        "Reachability.m"
      ],
      "type" : "library"
    },
    {
      "c99name" : "ConnectivityKitTests",
      "module_type" : "SwiftTarget",
      "name" : "ConnectivityKitTests",
      "path" : "Tests/ConnectivityKitTests",
      "sources" : [
        "ConnectivityKitTests.swift"
      ],
      "target_dependencies" : [
        "ConnectivityKit"
      ],
      "type" : "test"
    },
    {
      "c99name" : "ConnectivityKit",
      "module_type" : "SwiftTarget",
      "name" : "ConnectivityKit",
      "path" : "Sources/ConnectivityKit",
      "product_memberships" : [
        "ConnectivityKit"
      ],
      "sources" : [
        "ConnectivityMonitor.swift",
        "ConnectivityObserver.swift",
        "NetworkMonitor.swift",
        "ReachabilityMonitor.swift"
      ],
      "target_dependencies" : [
        "Reachability"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.5"
}
Done.