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, reference main (99f683), with Swift 6.0 for macOS (SPM) on 3 Nov 2024 21:29:58 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

Build Log

========================================
RunAll
========================================
Builder version: 4.56.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
Fetching https://github.com/Frizlab/BMO.git
[1/2469] Fetching bmo
Fetched https://github.com/Frizlab/BMO.git from cache (1.05s)
Creating working copy for https://github.com/Frizlab/BMO.git
Working copy of https://github.com/Frizlab/BMO.git resolved at main (8af6b08)
========================================
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": "collectionloader",
      "name": "CollectionLoader",
      "url": "https://github.com/Frizlab/CollectionLoader.git",
      "version": "unspecified",
      "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/CollectionLoader",
      "dependencies": [
        {
          "identity": "bmo",
          "name": "BMO",
          "url": "https://github.com/Frizlab/BMO.git",
          "version": "unspecified",
          "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/BMO",
          "dependencies": [
          ]
        }
      ]
    }
  ]
}
Fetching https://github.com/Frizlab/CollectionLoader.git
[7/630] Fetching collectionloader
Fetched https://github.com/Frizlab/CollectionLoader.git from cache (0.79s)
Fetching https://github.com/Frizlab/BMO.git from cache
Fetched https://github.com/Frizlab/BMO.git from cache (0.46s)
Creating working copy for https://github.com/Frizlab/BMO.git
Working copy of https://github.com/Frizlab/BMO.git resolved at main (2e49230)
Creating working copy for https://github.com/Frizlab/CollectionLoader.git
Working copy of https://github.com/Frizlab/CollectionLoader.git resolved at main (99f6833)
warning: '.resolve-product-dependencies': dependency 'collectionloader' is not used by any target
Found 1 product dependencies
  - BMO
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.0
Building package at path:  $PWD
https://github.com/Frizlab/CollectionLoader.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
Building for debugging...
[0/5] Write sources
[4/5] Write swift-version--7754E27361AE5C74.txt
[6/37] Emitting module BMO
[7/39] Compiling CollectionLoader ConcurrentLoadBehavior.swift
[8/39] Compiling CollectionLoader LoadingOperationDelegate.swift
[9/40] Compiling BMO Result+Utils.swift
[10/40] Compiling BMO DummyRequestHelper.swift
[11/40] Emitting module CollectionLoader
[12/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. */
[13/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. */
[14/40] Compiling BMO RelationshipMergeType.swift
[15/40] Compiling BMO MapError.swift
[16/40] Compiling BMO RequestHelperCollection.swift
[17/40] Compiling BMO RequestHelperCollectionForOldRuntimes.swift
[18/40] Compiling BMO OperationLifecycleError.swift
[19/40] Compiling BMO RequestError.swift
[20/40] Compiling BMO GenericLocalDbObject.swift
[21/40] Compiling BMO LocalDbChanges.swift
[22/40] Compiling BMO RemoteDb-Protocol.swift
[23/40] Compiling BMO Request.swift
[24/40] Compiling BMO RequestHelper-Protocol.swift
[25/40] Compiling BMO RequestOperation.swift
[26/40] Compiling CollectionLoader Operation+Utils.swift
[27/40] Compiling CollectionLoader CollectionLoaderHelper-Protocol.swift
[28/40] Compiling CollectionLoader PageInfo-Protocol.swift
[30/40] Compiling BMO ErrorCollection.swift
[34/40] Compiling BMO LocalDbImportOperation.swift
[35/40] Compiling BMO LocalDbImporter-Protocol.swift
[36/40] Compiling CollectionLoader PageInfoRetriever-Protocol.swift
[37/40] Compiling CollectionLoader BlockCollectionLoaderDelegate.swift
[38/40] Compiling CollectionLoader PageLoadReason.swift
[39/40] Compiling CollectionLoader PageLoadDescription.swift
[40/58] Compiling CollectionLoader PageLoadDescription.Reason+Utils.swift
[41/58] Compiling BMOCoreData CoreDataAPI+Update-Discarded.swift
[42/58] Compiling BMOCoreData CoreDataAPI+Update-Saved.swift
[43/58] Compiling BMOCoreData CoreDataAPI.swift
[44/58] Compiling BMOCoreData NSManagedObjectContext+Utils.swift
[45/59] Compiling BMOCoreData CoreDataAPI+Delete.swift
[46/59] Compiling BMOCoreData CoreDataAPI+Fetch.swift
[47/59] Compiling BMOCoreData BMOCoreDataFetchRequestHelper.swift
[48/59] Compiling BMOCoreData BMOCoreDataSaveRequestHelper.swift
[49/59] Compiling BMOCoreData CoreDataAPI+Create.swift
[50/59] Compiling BMOCoreData CoreDataAPI+CreateAndGet.swift
[51/59] Emitting module BMOCoreData
[52/59] Compiling BMOCoreData NSFetchRequest+Utils.swift
[53/59] Compiling BMOCoreData NSManagedObject+Utils.swift
[54/59] Compiling BMOCoreData NSManagedObject+BMO.swift
[55/59] Compiling BMOCoreData NSManagedObjectContext+BMO.swift
[56/59] Compiling BMOCoreData NSPredicate+Utils.swift
[57/59] Compiling BMOCoreData RemoteFetchType.swift
[58/59] Compiling BMOCoreData  Errors.swift
[59/59] Compiling BMOCoreData BMOCoreDataImporter.swift
[60/64] Compiling BMOCoreDataCollectionLoaders DummyFetchedResultsControllerDelegate.swift
[61/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()
[62/64] Compiling BMOCoreDataCollectionLoaders BMORequestHelperForLoader.swift
[63/64] Emitting module BMOCoreDataCollectionLoaders
[64/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) }
Build complete! (35.99s)
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.