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 Resyncer, reference 1.1.0 (87db19), with Swift 6.0 for macOS (SPM) on 16 Sep 2024 21:26:01 UTC.

Swift 6 data race errors: 0

Build Command

env DEVELOPER_DIR=/Applications/Xcode-16.0.0-Release.Candidate.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete

Build Log

========================================
RunAll
========================================
Builder version: 4.53.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/danielepantaleone/Resyncer.git
Reference: 1.1.0
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/danielepantaleone/Resyncer
 * tag               1.1.0      -> FETCH_HEAD
HEAD is now at 87db192 Updated podspec
Cloned https://github.com/danielepantaleone/Resyncer.git
Revision (git rev-parse @):
87db192b41148171507ff42ccbc02454cfbad4f7
SUCCESS checkout https://github.com/danielepantaleone/Resyncer.git at 1.1.0
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.0
Building package at path:  $PWD
https://github.com/danielepantaleone/Resyncer.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.0.0-Release.Candidate.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete
[1/1] Compiling plugin GenerateManual
[2/2] Compiling plugin SwiftLintBuildToolPlugin
[3/3] Compiling plugin SwiftLintCommandPlugin
Building for debugging...
[3/5] Write sources
[4/5] Write swift-version-117DEE11B69C53C9.txt
[6/10] Compiling Resyncer ResyncerWrapper.swift
[7/10] Compiling Resyncer Resyncer.swift
/Users/admin/builder/spi-builder-workspace/Sources/Resyncer/Resyncer.swift:83:13: warning: capture of 'work' with non-sendable type '(@escaping (Result<T, any Error>) -> Void) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 81 |         var result: Result<T, Error>?
 82 |         let operation: BlockOperation = .init {
 83 |             work {
    |             |- warning: capture of 'work' with non-sendable type '(@escaping (Result<T, any Error>) -> Void) -> 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'
 84 |                 defer {
 85 |                     condition.lock()
/Users/admin/builder/spi-builder-workspace/Sources/Resyncer/Resyncer.swift:85:21: warning: capture of 'condition' with non-sendable type 'ResyncerCondition' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 83 |             work {
 84 |                 defer {
 85 |                     condition.lock()
    |                     `- warning: capture of 'condition' with non-sendable type 'ResyncerCondition' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 86 |                     condition.signal()
 87 |                     condition.unlock()
/Users/admin/builder/spi-builder-workspace/Sources/Resyncer/ResyncerCondition.swift:14:7: note: class 'ResyncerCondition' does not conform to the 'Sendable' protocol
12 | import Foundation
13 |
14 | class ResyncerCondition {
   |       `- note: class 'ResyncerCondition' does not conform to the 'Sendable' protocol
15 |
16 |     // MARK: - Properties
/Users/admin/builder/spi-builder-workspace/Sources/Resyncer/Resyncer.swift:89:17: warning: capture of 'result' with non-sendable type 'Result<T, any Error>?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 72 |     ///
 73 |     /// - Returns: The result of type `T` from the asynchronous operation if it completes successfully.
 74 |     public func synchronize<T>(timeout: TimeInterval = 10.0, work: @escaping (@escaping (Result<T, Error>) -> Void) -> Void) throws -> T {
    |                             `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
 75 |
 76 |         guard !raiseErrorIfOnMainThread || !Thread.isMainThread else {
    :
 87 |                     condition.unlock()
 88 |                 }
 89 |                 result = $0
    |                 `- warning: capture of 'result' with non-sendable type 'Result<T, any Error>?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 90 |             }
 91 |         }
/Users/admin/builder/spi-builder-workspace/Sources/Resyncer/Resyncer.swift:85:21: warning: capture of 'condition' with non-sendable type 'ResyncerCondition' in an isolated closure; this is an error in the Swift 6 language mode
 83 |             work {
 84 |                 defer {
 85 |                     condition.lock()
    |                     `- warning: capture of 'condition' with non-sendable type 'ResyncerCondition' in an isolated closure; this is an error in the Swift 6 language mode
 86 |                     condition.signal()
 87 |                     condition.unlock()
/Users/admin/builder/spi-builder-workspace/Sources/Resyncer/ResyncerCondition.swift:14:7: note: class 'ResyncerCondition' does not conform to the 'Sendable' protocol
12 | import Foundation
13 |
14 | class ResyncerCondition {
   |       `- note: class 'ResyncerCondition' does not conform to the 'Sendable' protocol
15 |
16 |     // MARK: - Properties
/Users/admin/builder/spi-builder-workspace/Sources/Resyncer/Resyncer.swift:89:17: warning: capture of 'result' with non-sendable type 'Result<T, any Error>?' in an isolated closure; this is an error in the Swift 6 language mode
 72 |     ///
 73 |     /// - Returns: The result of type `T` from the asynchronous operation if it completes successfully.
 74 |     public func synchronize<T>(timeout: TimeInterval = 10.0, work: @escaping (@escaping (Result<T, Error>) -> Void) -> Void) throws -> T {
    |                             `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
 75 |
 76 |         guard !raiseErrorIfOnMainThread || !Thread.isMainThread else {
    :
 87 |                     condition.unlock()
 88 |                 }
 89 |                 result = $0
    |                 `- warning: capture of 'result' with non-sendable type 'Result<T, any Error>?' in an isolated closure; this is an error in the Swift 6 language mode
 90 |             }
 91 |         }
/Users/admin/builder/spi-builder-workspace/Sources/Resyncer/Resyncer.swift:85:21: warning: capture of 'condition' with non-sendable type 'ResyncerCondition' in an isolated local function; this is an error in the Swift 6 language mode
 83 |             work {
 84 |                 defer {
 85 |                     condition.lock()
    |                     `- warning: capture of 'condition' with non-sendable type 'ResyncerCondition' in an isolated local function; this is an error in the Swift 6 language mode
 86 |                     condition.signal()
 87 |                     condition.unlock()
/Users/admin/builder/spi-builder-workspace/Sources/Resyncer/ResyncerCondition.swift:14:7: note: class 'ResyncerCondition' does not conform to the 'Sendable' protocol
12 | import Foundation
13 |
14 | class ResyncerCondition {
   |       `- note: class 'ResyncerCondition' does not conform to the 'Sendable' protocol
15 |
16 |     // MARK: - Properties
/Users/admin/builder/spi-builder-workspace/Sources/Resyncer/Resyncer.swift:89:17: warning: mutation of captured var 'result' in concurrently-executing code; this is an error in the Swift 6 language mode
 87 |                     condition.unlock()
 88 |                 }
 89 |                 result = $0
    |                 `- warning: mutation of captured var 'result' in concurrently-executing code; this is an error in the Swift 6 language mode
 90 |             }
 91 |         }
/Users/admin/builder/spi-builder-workspace/Sources/Resyncer/Resyncer.swift:148:9: warning: task-isolated value of type '() async -> ()' passed as a strongly transferred parameter; later accesses could race; this is an error in the Swift 6 language mode
146 |         let wrapper: ResyncerWrapper<T> = .init()
147 |
148 |         Task {
    |         `- warning: task-isolated value of type '() async -> ()' passed as a strongly transferred parameter; later accesses could race; this is an error in the Swift 6 language mode
149 |             defer {
150 |                 condition.lock()
[8/10] Compiling Resyncer ResyncerError.swift
[9/10] Emitting module Resyncer
[10/10] Compiling Resyncer ResyncerCondition.swift
Build complete! (185.62s)
Fetching https://github.com/krzyzanowskim/CryptoSwift.git
Fetching https://github.com/jpsim/Yams.git
Fetching https://github.com/drmohundro/SWXMLHash.git
Fetching https://github.com/apple/swift-argument-parser.git
Fetching https://github.com/swiftlang/swift-syntax.git
Fetching https://github.com/scottrhoyt/SwiftyTextTable.git
Fetching https://github.com/realm/SwiftLint.git
[1/929] Fetching swiftytexttable
[262/3854] Fetching swiftytexttable, swxmlhash
[409/16557] Fetching swiftytexttable, swxmlhash, cryptoswift
[410/26353] Fetching swiftytexttable, swxmlhash, cryptoswift, yams
[2259/38524] Fetching swiftytexttable, swxmlhash, cryptoswift, yams, swift-argument-parser
[5643/103588] Fetching swiftytexttable, swxmlhash, cryptoswift, yams, swift-argument-parser, swift-syntax
[6796/243832] Fetching swiftytexttable, swxmlhash, cryptoswift, yams, swift-argument-parser, swift-syntax, swiftlint
Fetched https://github.com/scottrhoyt/SwiftyTextTable.git from cache (18.94s)
Fetched https://github.com/krzyzanowskim/CryptoSwift.git from cache (18.94s)
Fetched https://github.com/swiftlang/swift-syntax.git from cache (18.94s)
Fetched https://github.com/jpsim/Yams.git from cache (18.94s)
Fetched https://github.com/drmohundro/SWXMLHash.git from cache (18.94s)
Fetched https://github.com/apple/swift-argument-parser.git from cache (18.94s)
Fetching https://github.com/jpsim/SourceKitten.git
Fetching https://github.com/JohnSundell/CollectionConcurrencyKit.git
[14665/140327] Fetching swiftlint, collectionconcurrencykit
[14767/156317] Fetching swiftlint, collectionconcurrencykit, sourcekitten
Fetched https://github.com/jpsim/SourceKitten.git from cache (1.77s)
Fetched https://github.com/JohnSundell/CollectionConcurrencyKit.git from cache (1.77s)
[14722/140244] Fetching swiftlint
Fetched https://github.com/realm/SwiftLint.git from cache (155.35s)
Computing version for https://github.com/realm/SwiftLint.git
Computed https://github.com/realm/SwiftLint.git at 0.57.0 (0.86s)
Computing version for https://github.com/krzyzanowskim/CryptoSwift.git
Computed https://github.com/krzyzanowskim/CryptoSwift.git at 1.8.3 (0.66s)
Computing version for https://github.com/JohnSundell/CollectionConcurrencyKit.git
Computed https://github.com/JohnSundell/CollectionConcurrencyKit.git at 0.2.0 (0.64s)
Computing version for https://github.com/scottrhoyt/SwiftyTextTable.git
Computed https://github.com/scottrhoyt/SwiftyTextTable.git at 0.9.0 (2.68s)
Computing version for https://github.com/jpsim/Yams.git
Computed https://github.com/jpsim/Yams.git at 5.1.3 (0.65s)
Computing version for https://github.com/jpsim/SourceKitten.git
Computed https://github.com/jpsim/SourceKitten.git at 0.35.0 (0.65s)
Computing version for https://github.com/apple/swift-argument-parser.git
Computed https://github.com/apple/swift-argument-parser.git at 1.5.0 (0.51s)
Computing version for https://github.com/drmohundro/SWXMLHash.git
Computed https://github.com/drmohundro/SWXMLHash.git at 7.0.2 (0.66s)
Computing version for https://github.com/swiftlang/swift-syntax.git
Computed https://github.com/swiftlang/swift-syntax.git at 600.0.0-prerelease-2024-08-14 (0.77s)
Creating working copy for https://github.com/apple/swift-argument-parser.git
Working copy of https://github.com/apple/swift-argument-parser.git resolved at 1.5.0
Creating working copy for https://github.com/scottrhoyt/SwiftyTextTable.git
Working copy of https://github.com/scottrhoyt/SwiftyTextTable.git resolved at 0.9.0
Creating working copy for https://github.com/realm/SwiftLint.git
Working copy of https://github.com/realm/SwiftLint.git resolved at 0.57.0
Creating working copy for https://github.com/swiftlang/swift-syntax.git
Working copy of https://github.com/swiftlang/swift-syntax.git resolved at 600.0.0-prerelease-2024-08-14
Creating working copy for https://github.com/drmohundro/SWXMLHash.git
Working copy of https://github.com/drmohundro/SWXMLHash.git resolved at 7.0.2
Creating working copy for https://github.com/krzyzanowskim/CryptoSwift.git
Working copy of https://github.com/krzyzanowskim/CryptoSwift.git resolved at 1.8.3
Creating working copy for https://github.com/jpsim/Yams.git
Working copy of https://github.com/jpsim/Yams.git resolved at 5.1.3
Creating working copy for https://github.com/jpsim/SourceKitten.git
Working copy of https://github.com/jpsim/SourceKitten.git resolved at 0.35.0
Creating working copy for https://github.com/JohnSundell/CollectionConcurrencyKit.git
Working copy of https://github.com/JohnSundell/CollectionConcurrencyKit.git resolved at 0.2.0
[32750/11453398] Downloading https://github.com/realm/SwiftLint/releases/download/0.57.0/SwiftLintBinary-macos.artifactbundle.zip
Downloading binary artifact https://github.com/realm/SwiftLint/releases/download/0.57.0/SwiftLintBinary-macos.artifactbundle.zip
Downloaded https://github.com/realm/SwiftLint/releases/download/0.57.0/SwiftLintBinary-macos.artifactbundle.zip (1.70s)
Build complete.
{
  "dependencies" : [
    {
      "identity" : "swiftlint",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "0.57.0",
            "upper_bound" : "1.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/realm/SwiftLint.git"
    }
  ],
  "manifest_display_name" : "Resyncer",
  "name" : "Resyncer",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "ios",
      "version" : "12.0"
    },
    {
      "name" : "macos",
      "version" : "12.0"
    }
  ],
  "products" : [
    {
      "name" : "Resyncer",
      "targets" : [
        "Resyncer"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "ResyncerTests",
      "module_type" : "SwiftTarget",
      "name" : "ResyncerTests",
      "path" : "Tests/ResyncerTests",
      "sources" : [
        "ResyncerTests.swift"
      ],
      "target_dependencies" : [
        "Resyncer"
      ],
      "type" : "test"
    },
    {
      "c99name" : "Resyncer",
      "module_type" : "SwiftTarget",
      "name" : "Resyncer",
      "path" : "Sources/Resyncer",
      "product_dependencies" : [
        "SwiftLintBuildToolPlugin"
      ],
      "product_memberships" : [
        "Resyncer"
      ],
      "sources" : [
        "Resyncer.swift",
        "ResyncerCondition.swift",
        "ResyncerError.swift",
        "ResyncerWrapper.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.7"
}
Done.