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 MYCloudKit, reference main (ea4e15), with Swift 6.1 for macOS (SPM) on 2 Jun 2025 00:06:33 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.63.1
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/mufasaYC/MYCloudKit.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/mufasaYC/MYCloudKit
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
HEAD is now at ea4e15a fix: bug where you'd have to expect CKAsset/CKRecord.Reference for when asking FetchedRecord for value - which is a bad UX since we hide all iCloud stuff. Now it returns the URL/String of the ID respectively
Cloned https://github.com/mufasaYC/MYCloudKit.git
Revision (git rev-parse @):
ea4e15ae66f4be089d9279fdb4be4aee37a9c8f0
SUCCESS checkout https://github.com/mufasaYC/MYCloudKit.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": "mycloudkit",
      "name": "MYCloudKit",
      "url": "https://github.com/mufasaYC/MYCloudKit.git",
      "version": "unspecified",
      "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/MYCloudKit",
      "dependencies": [
      ]
    }
  ]
}
Fetching https://github.com/mufasaYC/MYCloudKit.git
[1/93] Fetching mycloudkit
Fetched https://github.com/mufasaYC/MYCloudKit.git from cache (0.66s)
Creating working copy for https://github.com/mufasaYC/MYCloudKit.git
Working copy of https://github.com/mufasaYC/MYCloudKit.git resolved at main (ea4e15a)
warning: '.resolve-product-dependencies': dependency 'mycloudkit' is not used by any target
Found 0 product dependencies
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.1
Building package at path:  $PWD
https://github.com/mufasaYC/MYCloudKit.git
https://github.com/mufasaYC/MYCloudKit.git
{
  "dependencies" : [
  ],
  "manifest_display_name" : "MYCloudKit",
  "name" : "MYCloudKit",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "ios",
      "version" : "15.0"
    },
    {
      "name" : "watchos",
      "version" : "8.0"
    },
    {
      "name" : "maccatalyst",
      "version" : "15.0"
    },
    {
      "name" : "macos",
      "version" : "12.0"
    },
    {
      "name" : "tvos",
      "version" : "15.0"
    },
    {
      "name" : "visionos",
      "version" : "1.0"
    }
  ],
  "products" : [
    {
      "name" : "MYCloudKit",
      "targets" : [
        "MYCloudKit"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "MYCloudKit",
      "module_type" : "SwiftTarget",
      "name" : "MYCloudKit",
      "path" : "Sources/MYCloudKit",
      "product_memberships" : [
        "MYCloudKit"
      ],
      "sources" : [
        "Extensions/CKDatabase+Extension.swift",
        "Extensions/CKRecord+Extension.swift",
        "Extensions/CKServerChangeToken+Extension.swift",
        "Extensions/UserDefault+Extension.swift",
        "Helpers/MYRecordConvertible.swift",
        "MYCloudKit.swift",
        "MYSyncEngine/MYCloudEngine+CRUD.swift",
        "MYSyncEngine/MYCloudEngine+Fetch.swift",
        "MYSyncEngine/MYCloudEngine+Share.swift",
        "MYSyncEngine/MYCloudEngine+Subscriptions.swift",
        "MYSyncEngine/MYCloudEngine+Sync.swift",
        "MYSyncEngine/MYCloudEngine+Transaction.swift",
        "MYSyncEngine/MYSyncDelegate.swift",
        "MYSyncEngine/MYSyncEngine+Cache.swift",
        "MYSyncEngine/MYSyncEngine+Logger.swift",
        "MYSyncEngine/MYSyncEngine.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.10"
}
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/2] Write sources
[1/2] Write swift-version-2F0A5646E1D333AE.txt
[3/18] Compiling MYCloudKit MYSyncEngine+Logger.swift
[4/18] Compiling MYCloudKit MYSyncEngine+Cache.swift
[5/19] Compiling MYCloudKit MYSyncDelegate.swift
[6/19] Compiling MYCloudKit MYCloudEngine+Share.swift
/Users/admin/builder/spi-builder-workspace/Sources/MYCloudKit/MYSyncEngine/MYCloudEngine+Subscriptions.swift:41:14: 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
39 |         subscription.notificationInfo = notification
40 |
41 |         Task { [weak self] 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
42 |             guard let self else { return }
   |                       `- note: closure captures 'self' which is accessible to code in the current task
43 |
44 |             do {
[7/19] Compiling MYCloudKit MYCloudEngine+Subscriptions.swift
/Users/admin/builder/spi-builder-workspace/Sources/MYCloudKit/MYSyncEngine/MYCloudEngine+Subscriptions.swift:41:14: 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
39 |         subscription.notificationInfo = notification
40 |
41 |         Task { [weak self] 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
42 |             guard let self else { return }
   |                       `- note: closure captures 'self' which is accessible to code in the current task
43 |
44 |             do {
[8/19] Compiling MYCloudKit MYCloudEngine+Sync.swift
/Users/admin/builder/spi-builder-workspace/Sources/MYCloudKit/MYSyncEngine/MYCloudEngine+Sync.swift:32:23: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 30 |
 31 |         Task { @MainActor [weak self] in
 32 |             guard let self else {
    |                       |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |                       `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 33 |                 return
 34 |             }
/Users/admin/builder/spi-builder-workspace/Sources/MYCloudKit/MYSyncEngine/MYCloudEngine+Sync.swift:37:34: warning: sending 'transaction' risks causing data races; this is an error in the Swift 6 language mode
 35 |
 36 |             /// Convert the transaction to a `CKRecord`. If conversion fails, remove from queue and retry.
 37 |             guard let ckRecord = transaction.asCKRecord(using: self.cache) else {
    |                                  |- warning: sending 'transaction' risks causing data races; this is an error in the Swift 6 language mode
    |                                  `- note: task-isolated 'transaction' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 38 |                 self.handleError(NSError(domain: "Cannot parse CKRecord", code: 500), for: transaction)
 39 |                 self.sync()
/Users/admin/builder/spi-builder-workspace/Sources/MYCloudKit/MYSyncEngine/MYCloudEngine+Sync.swift:398:31: 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
396 |         try await withThrowingTaskGroup(of: Void.self) { [weak self] group in
397 |             for recordType in recordTypes {
398 |                 group.addTask {
    |                               `- 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
399 |                     let query = CKQuery(recordType: recordType, predicate: NSPredicate(format: "parent == %@", recordID))
400 |                     let childRecordIDs = (try await self?.getRecordIDs(with: query, zoneID: recordID.zoneID, scope: scope) ?? [])
    |                                                     `- note: closure captures reference to mutable var 'self' which is accessible to code in the current task
401 |
402 |                     try await withThrowingTaskGroup(of: Void.self) { childGroup in
/Users/admin/builder/spi-builder-workspace/Sources/MYCloudKit/MYSyncEngine/MYCloudEngine+Sync.swift:404:48: 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
402 |                     try await withThrowingTaskGroup(of: Void.self) { childGroup in
403 |                         for childRecordID in childRecordIDs {
404 |                             childGroup.addTask {
    |                                                `- 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
405 |                                 try await self?.cascadeDeleteChildRecords(for: childRecordID, in: scope)
    |                                           `- note: closure captures reference to mutable var 'self' which is accessible to code in the current task
406 |                             }
407 |                         }
[9/19] Compiling MYCloudKit MYCloudEngine+Transaction.swift
/Users/admin/builder/spi-builder-workspace/Sources/MYCloudKit/MYSyncEngine/MYCloudEngine+Sync.swift:32:23: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 30 |
 31 |         Task { @MainActor [weak self] in
 32 |             guard let self else {
    |                       |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |                       `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 33 |                 return
 34 |             }
/Users/admin/builder/spi-builder-workspace/Sources/MYCloudKit/MYSyncEngine/MYCloudEngine+Sync.swift:37:34: warning: sending 'transaction' risks causing data races; this is an error in the Swift 6 language mode
 35 |
 36 |             /// Convert the transaction to a `CKRecord`. If conversion fails, remove from queue and retry.
 37 |             guard let ckRecord = transaction.asCKRecord(using: self.cache) else {
    |                                  |- warning: sending 'transaction' risks causing data races; this is an error in the Swift 6 language mode
    |                                  `- note: task-isolated 'transaction' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 38 |                 self.handleError(NSError(domain: "Cannot parse CKRecord", code: 500), for: transaction)
 39 |                 self.sync()
/Users/admin/builder/spi-builder-workspace/Sources/MYCloudKit/MYSyncEngine/MYCloudEngine+Sync.swift:398:31: 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
396 |         try await withThrowingTaskGroup(of: Void.self) { [weak self] group in
397 |             for recordType in recordTypes {
398 |                 group.addTask {
    |                               `- 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
399 |                     let query = CKQuery(recordType: recordType, predicate: NSPredicate(format: "parent == %@", recordID))
400 |                     let childRecordIDs = (try await self?.getRecordIDs(with: query, zoneID: recordID.zoneID, scope: scope) ?? [])
    |                                                     `- note: closure captures reference to mutable var 'self' which is accessible to code in the current task
401 |
402 |                     try await withThrowingTaskGroup(of: Void.self) { childGroup in
/Users/admin/builder/spi-builder-workspace/Sources/MYCloudKit/MYSyncEngine/MYCloudEngine+Sync.swift:404:48: 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
402 |                     try await withThrowingTaskGroup(of: Void.self) { childGroup in
403 |                         for childRecordID in childRecordIDs {
404 |                             childGroup.addTask {
    |                                                `- 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
405 |                                 try await self?.cascadeDeleteChildRecords(for: childRecordID, in: scope)
    |                                           `- note: closure captures reference to mutable var 'self' which is accessible to code in the current task
406 |                             }
407 |                         }
[10/19] Compiling MYCloudKit MYRecordConvertible.swift
[11/19] Compiling MYCloudKit MYCloudKit.swift
[12/19] Compiling MYCloudKit CKServerChangeToken+Extension.swift
[13/19] Compiling MYCloudKit UserDefault+Extension.swift
[14/19] Compiling MYCloudKit CKDatabase+Extension.swift
[15/19] Compiling MYCloudKit CKRecord+Extension.swift
[16/19] Compiling MYCloudKit MYCloudEngine+CRUD.swift
/Users/admin/builder/spi-builder-workspace/Sources/MYCloudKit/MYSyncEngine/MYCloudEngine+Fetch.swift:28:28: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 26 |         do {
 27 |             // Attempt to fetch data from the private CloudKit database
 28 |             try await self.fetch(in: .private)
    |                            |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |                            `- note: sending main actor-isolated 'self' to nonisolated instance method 'fetch(in:)' risks causing data races between nonisolated and main actor-isolated uses
 29 |
 30 |             // Attempt to fetch data from the shared CloudKit database
/Users/admin/builder/spi-builder-workspace/Sources/MYCloudKit/MYSyncEngine/MYCloudEngine+Fetch.swift:31:28: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 29 |
 30 |             // Attempt to fetch data from the shared CloudKit database
 31 |             try await self.fetch(in: .shared)
    |                            |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |                            `- note: sending main actor-isolated 'self' to nonisolated instance method 'fetch(in:)' risks causing data races between nonisolated and main actor-isolated uses
 32 |
 33 |             // If both fetches succeed, update the fetch state with completion time
[17/19] Compiling MYCloudKit MYCloudEngine+Fetch.swift
/Users/admin/builder/spi-builder-workspace/Sources/MYCloudKit/MYSyncEngine/MYCloudEngine+Fetch.swift:28:28: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 26 |         do {
 27 |             // Attempt to fetch data from the private CloudKit database
 28 |             try await self.fetch(in: .private)
    |                            |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |                            `- note: sending main actor-isolated 'self' to nonisolated instance method 'fetch(in:)' risks causing data races between nonisolated and main actor-isolated uses
 29 |
 30 |             // Attempt to fetch data from the shared CloudKit database
/Users/admin/builder/spi-builder-workspace/Sources/MYCloudKit/MYSyncEngine/MYCloudEngine+Fetch.swift:31:28: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
 29 |
 30 |             // Attempt to fetch data from the shared CloudKit database
 31 |             try await self.fetch(in: .shared)
    |                            |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |                            `- note: sending main actor-isolated 'self' to nonisolated instance method 'fetch(in:)' risks causing data races between nonisolated and main actor-isolated uses
 32 |
 33 |             // If both fetches succeed, update the fetch state with completion time
[18/19] Emitting module MYCloudKit
[19/19] Compiling MYCloudKit MYSyncEngine.swift
Build complete! (5.99s)
Build complete.
{
  "dependencies" : [
  ],
  "manifest_display_name" : "MYCloudKit",
  "name" : "MYCloudKit",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "ios",
      "version" : "15.0"
    },
    {
      "name" : "watchos",
      "version" : "8.0"
    },
    {
      "name" : "maccatalyst",
      "version" : "15.0"
    },
    {
      "name" : "macos",
      "version" : "12.0"
    },
    {
      "name" : "tvos",
      "version" : "15.0"
    },
    {
      "name" : "visionos",
      "version" : "1.0"
    }
  ],
  "products" : [
    {
      "name" : "MYCloudKit",
      "targets" : [
        "MYCloudKit"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "MYCloudKit",
      "module_type" : "SwiftTarget",
      "name" : "MYCloudKit",
      "path" : "Sources/MYCloudKit",
      "product_memberships" : [
        "MYCloudKit"
      ],
      "sources" : [
        "Extensions/CKDatabase+Extension.swift",
        "Extensions/CKRecord+Extension.swift",
        "Extensions/CKServerChangeToken+Extension.swift",
        "Extensions/UserDefault+Extension.swift",
        "Helpers/MYRecordConvertible.swift",
        "MYCloudKit.swift",
        "MYSyncEngine/MYCloudEngine+CRUD.swift",
        "MYSyncEngine/MYCloudEngine+Fetch.swift",
        "MYSyncEngine/MYCloudEngine+Share.swift",
        "MYSyncEngine/MYCloudEngine+Subscriptions.swift",
        "MYSyncEngine/MYCloudEngine+Sync.swift",
        "MYSyncEngine/MYCloudEngine+Transaction.swift",
        "MYSyncEngine/MYSyncDelegate.swift",
        "MYSyncEngine/MYSyncEngine+Cache.swift",
        "MYSyncEngine/MYSyncEngine+Logger.swift",
        "MYSyncEngine/MYSyncEngine.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.10"
}
Done.