This is a staging environment. For live and up-to-date package information, visit swiftpackageindex.com.

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 CollectionLoader with Swift 6.0 for macOS (SPM).

Swift 6 data race errors: 0

Build Command

env DEVELOPER_DIR=/Applications/Xcode-15.3.0.app xcrun --toolchain org.swift.600202405261a swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete

Build Log

========================================
RunAll
========================================
Builder version: 4.40.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/Frizlab/CollectionLoader.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/Frizlab/CollectionLoader
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
HEAD is now at 99f6833 Start API order property implementation in search loader
Cloned https://github.com/Frizlab/CollectionLoader.git
Revision (git rev-parse @):
99f6833471eb978b36e84a2ec655003cc44274c1
SUCCESS checkout https://github.com/Frizlab/CollectionLoader.git at main
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.0
Building package at path:  $workDir
https://github.com/Frizlab/CollectionLoader.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-15.3.0.app xcrun --toolchain org.swift.600202405261a swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete
Building for debugging...
[0/5] Write sources
[4/5] Write swift-version-6F35C1178C84523A.txt
[6/37] Compiling BMO Result+Utils.swift
[7/37] Compiling BMO DummyRequestHelper.swift
[8/37] Compiling BMO RelationshipMergeType.swift
[9/37] Compiling BMO MapError.swift
[10/39] Compiling BMO RequestResult.swift
[11/39] Compiling BMO ErrorCollection.swift
[12/39] Emitting module BMO
[13/39] Compiling BMO GenericLocalDbObject.swift
[14/39] Compiling BMO LocalDbChanges.swift
[15/39] Compiling BMO OperationLifecycleError.swift
[16/39] Compiling BMO RequestError.swift
[17/39] Compiling CollectionLoader Operation+Utils.swift
[18/39] Compiling CollectionLoader BlockCollectionLoaderDelegate.swift
[19/39] Compiling CollectionLoader LoadingOperationDelegate.swift
[20/39] Compiling CollectionLoader PageLoadDescription.swift
[21/39] Compiling CollectionLoader PageLoadReason.swift
[22/40] Compiling CollectionLoader PageInfoRetriever-Protocol.swift
[23/40] Compiling BMO LocalDb-Protocol.swift
[24/40] Compiling BMO RemoteDb-Protocol.swift
[25/40] Compiling CollectionLoader ConcurrentLoadBehavior.swift
[26/40] Compiling BMO Bridge-Protocol.swift
/Users/admin/builder/spi-builder-workspace/Sources/CollectionLoader/Core/CollectionLoader.swift:125:32: warning: converting function value of type '@MainActor @Sendable () -> Void' to '@Sendable () -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
123 |
124 | 		/* Yes, self is strongly captured, on purpose. */
125 | 		let prestart = BlockOperation{ @MainActor in /* Swift does not know it, but these block _are_ @MainActor indeed. */
    |                                `- warning: converting function value of type '@MainActor @Sendable () -> Void' to '@Sendable () -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
126 | 			/* On main queue (and thus on main actor/thread). */
127 | 			/* Let’s call the delegate first. */
/Users/admin/builder/spi-builder-workspace/Sources/CollectionLoader/Core/CollectionLoader.swift:136:34: warning: converting function value of type '@MainActor @Sendable () -> Void' to '@Sendable () -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
134 | 		}
135 | 		/* Yes, self is strongly captured, on purpose. */
136 | 		let completion = BlockOperation{ @MainActor in /* Swift does not know it, but these block _are_ @MainActor indeed. */
    |                                  `- warning: converting function value of type '@MainActor @Sendable () -> Void' to '@Sendable () -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
137 | 			/* On main queue (and thus on main actor/thread). */
138 | 			/* First, we’ll check for the previous/next page info depending on the loading reason. */
[27/40] Compiling BMO BridgeObjects-Protocol.swift
/Users/admin/builder/spi-builder-workspace/Sources/CollectionLoader/Core/CollectionLoader.swift:125:32: warning: converting function value of type '@MainActor @Sendable () -> Void' to '@Sendable () -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
123 |
124 | 		/* Yes, self is strongly captured, on purpose. */
125 | 		let prestart = BlockOperation{ @MainActor in /* Swift does not know it, but these block _are_ @MainActor indeed. */
    |                                `- warning: converting function value of type '@MainActor @Sendable () -> Void' to '@Sendable () -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
126 | 			/* On main queue (and thus on main actor/thread). */
127 | 			/* Let’s call the delegate first. */
/Users/admin/builder/spi-builder-workspace/Sources/CollectionLoader/Core/CollectionLoader.swift:136:34: warning: converting function value of type '@MainActor @Sendable () -> Void' to '@Sendable () -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
134 | 		}
135 | 		/* Yes, self is strongly captured, on purpose. */
136 | 		let completion = BlockOperation{ @MainActor in /* Swift does not know it, but these block _are_ @MainActor indeed. */
    |                                  `- warning: converting function value of type '@MainActor @Sendable () -> Void' to '@Sendable () -> Void' loses global actor 'MainActor'; this is an error in the Swift 6 language mode
137 | 			/* On main queue (and thus on main actor/thread). */
138 | 			/* First, we’ll check for the previous/next page info depending on the loading reason. */
[28/40] Emitting module CollectionLoader
[29/40] Compiling BMO RequestHelper-Protocol.swift
[30/40] Compiling BMO RequestOperation.swift
[32/40] Compiling BMO Request.swift
[33/40] Compiling BMO LocalDbImportOperation.swift
[34/40] Compiling BMO LocalDbImporter-Protocol.swift
[38/40] Compiling CollectionLoader PageLoadDescription.Reason+Utils.swift
[39/40] Compiling BMO RequestHelperCollection.swift
[40/40] Compiling BMO RequestHelperCollectionForOldRuntimes.swift
[41/58] Compiling BMOCoreData CoreDataAPI.swift
[42/58] Compiling BMOCoreData NSManagedObjectContext+Utils.swift
[43/58] Compiling BMOCoreData NSFetchRequest+Utils.swift
[44/58] Compiling BMOCoreData NSManagedObject+Utils.swift
[45/58] Compiling BMOCoreData CoreDataAPI+Update-Discarded.swift
[46/58] Compiling BMOCoreData CoreDataAPI+Update-Saved.swift
[47/58] Compiling BMOCoreData NSPredicate+Utils.swift
[48/59] Compiling BMOCoreData RemoteFetchType.swift
[49/59] Compiling BMOCoreData CoreDataAPI+Create.swift
[50/59] Compiling BMOCoreData CoreDataAPI+CreateAndGet.swift
[51/59] Compiling BMOCoreData BMOCoreDataFetchRequestHelper.swift
[52/59] Compiling BMOCoreData BMOCoreDataSaveRequestHelper.swift
[53/59] Emitting module BMOCoreData
[54/59] Compiling BMOCoreData CoreDataAPI+Delete.swift
[55/59] Compiling BMOCoreData CoreDataAPI+Fetch.swift
[56/59] Compiling BMOCoreData NSManagedObject+BMO.swift
[57/59] Compiling BMOCoreData NSManagedObjectContext+BMO.swift
[58/59] Compiling BMOCoreData  Errors.swift
[59/59] Compiling BMOCoreData BMOCoreDataImporter.swift
[60/64] Compiling BMOCoreDataCollectionLoaders BMORequestHelperForLoader.swift
[61/64] Compiling BMOCoreDataCollectionLoaders DummyFetchedResultsControllerDelegate.swift
[62/64] Compiling BMOCoreDataCollectionLoaders BMOCoreDataListElementLoader.swift
/Users/admin/builder/spi-builder-workspace/Sources/BMOCoreDataCollectionLoaders/BMOCoreDataListElementLoader.swift:176:10: warning: TODO: We detect the root object ID has changed, we set the new one just after the if, but we do not update the fetched results controller…
174 |
175 | 				if let curRootObjectID = self.listElementObjectID, curRootObjectID != root.objectID {
176 | #warning("TODO: We detect the root object ID has changed, we set the new one just after the if, but we do not update the fetched results controller…")
    |          `- warning: TODO: We detect the root object ID has changed, we set the new one just after the if, but we do not update the fetched results controller…
177 | 					if #available(tvOS 10.0, iOS 10.0, watchOS 3.0, *) {
178 | //						BMOConfig.oslog.flatMap{ os_log("Got different root object id from a result of a request for a list element collection loader helper than previous one. Replacing with new one. Previous: %{public}@; retrieved: %{public}@", log: $0, type: .info, curRootObjectID, root.objectID) }
[63/64] Emitting module BMOCoreDataCollectionLoaders
[64/64] Compiling BMOCoreDataCollectionLoaders BMOCoreDataSearchLoader.swift
/Users/admin/builder/spi-builder-workspace/Sources/BMOCoreDataCollectionLoaders/BMOCoreDataSearchLoader.swift:132:10: warning: TODO: apiOrderProperty (requires the start offset of the page info…)
130 | 					/* If we have an API order property, it is time to set its value. */
131 | 					if let orderProperty = apiOrderProperty?.name {
132 | #warning("TODO: apiOrderProperty (requires the start offset of the page info…)")
    |          `- warning: TODO: apiOrderProperty (requires the start offset of the page info…)
133 | 						o.setValue(1, forKey: orderProperty)
134 | 					}
/Users/admin/builder/spi-builder-workspace/Sources/BMOCoreDataCollectionLoaders/BMOCoreDataSearchLoader.swift:123:50: warning: capture 'apiOrderDelta' was never used
121 | 		let helper = BMORequestHelperForLoader<FetchedObject, Bridge.Metadata>(
122 | 			loadingOperationDelegate: delegate,
123 | 			importChangesProcessing: { [apiOrderProperty, apiOrderDelta] changes, throwIfCancelled in
    |                                                  `- warning: capture 'apiOrderDelta' was never used
124 | 				try changes.importedObjects.compactMap{
125 | 					try throwIfCancelled()
Build complete! (41.41s)
Fetching https://github.com/Frizlab/BMO.git
[1/2469] Fetching bmo
Fetched https://github.com/Frizlab/BMO.git from cache (1.20s)
Creating working copy for https://github.com/Frizlab/BMO.git
Working copy of https://github.com/Frizlab/BMO.git resolved at main (8af6b08)
Build complete.
{
  "dependencies" : [
    {
      "identity" : "bmo",
      "requirement" : {
        "branch" : [
          "main"
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/Frizlab/BMO.git"
    }
  ],
  "manifest_display_name" : "CollectionLoader",
  "name" : "CollectionLoader",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "10.15"
    },
    {
      "name" : "tvos",
      "version" : "13.0"
    },
    {
      "name" : "ios",
      "version" : "13.0"
    },
    {
      "name" : "watchos",
      "version" : "6.0"
    }
  ],
  "products" : [
    {
      "name" : "CollectionLoader",
      "targets" : [
        "CollectionLoader"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "BMOCoreDataCollectionLoaders",
      "targets" : [
        "BMOCoreDataCollectionLoaders"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "CollectionLoaderTests",
      "module_type" : "SwiftTarget",
      "name" : "CollectionLoaderTests",
      "path" : "Tests/CollectionLoaderTests",
      "sources" : [
        "CollectionLoaderTests.swift"
      ],
      "target_dependencies" : [
        "CollectionLoader"
      ],
      "type" : "test"
    },
    {
      "c99name" : "CollectionLoader",
      "module_type" : "SwiftTarget",
      "name" : "CollectionLoader",
      "path" : "Sources/CollectionLoader",
      "product_memberships" : [
        "CollectionLoader",
        "BMOCoreDataCollectionLoaders"
      ],
      "sources" : [
        "Core/CollectionLoader.swift",
        "Core/CollectionLoaderDelegate.swift",
        "Core/CollectionLoaderHelper-Protocol.swift",
        "Core/PageInfo-Protocol.swift",
        "Core/PageInfoRetriever-Protocol.swift",
        "Helpers/ConcurrentLoadBehavior.swift",
        "Helpers/LoadingOperationDelegate.swift",
        "Helpers/PageLoadDescription.swift",
        "Helpers/PageLoadReason.swift",
        "Private/BlockCollectionLoaderDelegate.swift",
        "Private/Operation+Utils.swift",
        "Private/PageLoadDescription.Reason+Utils.swift"
      ],
      "type" : "library"
    },
    {
      "c99name" : "BMOCoreDataCollectionLoaders",
      "module_type" : "SwiftTarget",
      "name" : "BMOCoreDataCollectionLoaders",
      "path" : "Sources/BMOCoreDataCollectionLoaders",
      "product_dependencies" : [
        "BMOCoreData"
      ],
      "product_memberships" : [
        "BMOCoreDataCollectionLoaders"
      ],
      "sources" : [
        "BMOCoreDataListElementLoader.swift",
        "BMOCoreDataSearchLoader.swift",
        "DummyFetchedResultsControllerDelegate.swift",
        "PrivateUtils/BMORequestHelperForLoader.swift"
      ],
      "target_dependencies" : [
        "CollectionLoader"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.1"
}
Done.
This is a staging environment. For live and up-to-date package information, visit swiftpackageindex.com.