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 ZeeQL3Combine, reference develop (31e0ca), with Swift 6.0 for macOS (SPM) on 1 Nov 2024 03:17:12 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/ZeeQL/ZeeQL3Combine.git
Reference: develop
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/ZeeQL/ZeeQL3Combine
 * branch            develop    -> FETCH_HEAD
 * [new branch]      develop    -> origin/develop
HEAD is now at 31e0caf Make things non-throwing
Cloned https://github.com/ZeeQL/ZeeQL3Combine.git
Revision (git rev-parse @):
31e0cafc1077f14ee0310771c6b8e09f8617f9c9
SUCCESS checkout https://github.com/ZeeQL/ZeeQL3Combine.git at develop
Fetching https://github.com/ZeeQL/ZeeQL3.git
[1/2548] Fetching zeeql3
Fetched https://github.com/ZeeQL/ZeeQL3.git from cache (1.07s)
Computing version for https://github.com/ZeeQL/ZeeQL3.git
Computed https://github.com/ZeeQL/ZeeQL3.git at 0.9.7 (0.68s)
Fetching https://github.com/ZeeQL/CSQLite3.git
[1/41] Fetching csqlite3
Fetched https://github.com/ZeeQL/CSQLite3.git from cache (0.64s)
Computing version for https://github.com/ZeeQL/CSQLite3.git
Computed https://github.com/ZeeQL/CSQLite3.git at 2.0.3 (2.58s)
Creating working copy for https://github.com/ZeeQL/CSQLite3.git
Working copy of https://github.com/ZeeQL/CSQLite3.git resolved at 2.0.3
Creating working copy for https://github.com/ZeeQL/ZeeQL3.git
Working copy of https://github.com/ZeeQL/ZeeQL3.git resolved at 0.9.7
========================================
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": "zeeql3combine",
      "name": "ZeeQL3Combine",
      "url": "https://github.com/ZeeQL/ZeeQL3Combine.git",
      "version": "unspecified",
      "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/ZeeQL3Combine",
      "dependencies": [
        {
          "identity": "zeeql3",
          "name": "ZeeQL3",
          "url": "https://github.com/ZeeQL/ZeeQL3.git",
          "version": "0.9.7",
          "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/ZeeQL3",
          "dependencies": [
            {
              "identity": "csqlite3",
              "name": "CSQLite3",
              "url": "https://github.com/ZeeQL/CSQLite3.git",
              "version": "2.0.3",
              "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/CSQLite3",
              "dependencies": [
              ]
            }
          ]
        }
      ]
    }
  ]
}
Fetching https://github.com/ZeeQL/ZeeQL3Combine.git
[1/71] Fetching zeeql3combine
Fetched https://github.com/ZeeQL/ZeeQL3Combine.git from cache (0.59s)
Fetching https://github.com/ZeeQL/ZeeQL3.git from cache
Fetched https://github.com/ZeeQL/ZeeQL3.git from cache (0.46s)
Computing version for https://github.com/ZeeQL/ZeeQL3.git
Computed https://github.com/ZeeQL/ZeeQL3.git at 0.9.7 (0.04s)
Fetching https://github.com/ZeeQL/CSQLite3.git from cache
Fetched https://github.com/ZeeQL/CSQLite3.git from cache (0.47s)
Computing version for https://github.com/ZeeQL/CSQLite3.git
Computed https://github.com/ZeeQL/CSQLite3.git at 2.0.3 (0.03s)
Creating working copy for https://github.com/ZeeQL/ZeeQL3Combine.git
Working copy of https://github.com/ZeeQL/ZeeQL3Combine.git resolved at develop (31e0caf)
Creating working copy for https://github.com/ZeeQL/CSQLite3.git
Working copy of https://github.com/ZeeQL/CSQLite3.git resolved at 2.0.3
Creating working copy for https://github.com/ZeeQL/ZeeQL3.git
Working copy of https://github.com/ZeeQL/ZeeQL3.git resolved at 0.9.7
warning: '.resolve-product-dependencies': dependency 'zeeql3combine' is not used by any target
Found 1 product dependencies
  - ZeeQL3
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.0
Building package at path:  $PWD
https://github.com/ZeeQL/ZeeQL3Combine.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/3] Write sources
[2/3] Write swift-version--7754E27361AE5C74.txt
[4/92] Compiling ZeeQL Key.swift
[5/92] Compiling ZeeQL KeyComparisonQualifier.swift
[6/92] Compiling ZeeQL KeyValueQualifier.swift
[7/92] Compiling ZeeQL ModelFetchSpecification.swift
[8/92] Compiling ZeeQL NotQualifier.swift
[9/92] Compiling ZeeQL ObjectStore.swift
[10/92] Compiling ZeeQL ObjectTrackingContext.swift
[11/92] Compiling ZeeQL Qualifier.swift
[12/92] Compiling ZeeQL QualifierEvaluation.swift
[13/101] Compiling ZeeQL CodeFetchSpecification.swift
[14/101] Compiling ZeeQL CodeRelationship.swift
[15/101] Compiling ZeeQL CodeValueAttribute.swift
[16/101] Compiling ZeeQL Database.swift
[17/101] Compiling ZeeQL DatabaseChannel.swift
[18/101] Compiling ZeeQL DatabaseContext.swift
[19/101] Compiling ZeeQL DatabaseDataSource.swift
[20/101] Compiling ZeeQL DatabaseObject.swift
[21/101] Compiling ZeeQL DatabaseOperation.swift
[22/101] Compiling ZeeQL Entity.swift
[23/101] Compiling ZeeQL AdaptorError.swift
[24/101] Compiling ZeeQL AdaptorModelFetch.swift
[25/101] Compiling ZeeQL AdaptorOperation.swift
[26/101] Compiling ZeeQL AdaptorQueryColumnRepresentable.swift
[27/101] Compiling ZeeQL AdaptorQueryType.swift
[28/101] Compiling ZeeQL AdaptorRecord.swift
[29/101] Compiling ZeeQL AdaptorRecordSchema.swift
[30/101] Compiling ZeeQL Attribute.swift
[31/101] Compiling ZeeQL AttributeKey.swift
[32/101] Compiling ZeeQL AttributeValue.swift
[33/101] Emitting module ZeeQL
[34/101] Compiling ZeeQL QualifierParser.swift
[35/101] Compiling ZeeQL QualifierVariable.swift
[36/101] Compiling ZeeQL QueryBuilder.swift
[37/101] Compiling ZeeQL SQLQualifier.swift
[38/101] Compiling ZeeQL SortOrdering.swift
[39/101] Compiling ZeeQL StoreKeyValueCoding.swift
[40/101] Compiling ZeeQL EquatableType.swift
[41/101] Compiling ZeeQL KeyValueStringFormatter.swift
[42/101] Compiling ZeeQL Logger.swift
[43/101] Compiling ZeeQL AccessDataSource.swift
[44/101] Compiling ZeeQL AccessDataSourceError.swift
[45/101] Compiling ZeeQL AccessDataSourceFinders.swift
[46/101] Compiling ZeeQL ActiveDataSource.swift
[47/101] Compiling ZeeQL ActiveRecord.swift
[48/101] Compiling ZeeQL ActiveRecordType.swift
[49/101] Compiling ZeeQL Adaptor.swift
[50/101] Compiling ZeeQL AdaptorChannel.swift
[51/101] Compiling ZeeQL AdaptorChannelPool.swift
[52/101] Compiling ZeeQL AdaptorDataSource.swift
[53/101] Compiling ZeeQL AdaptorRecordDecoder.swift
[54/101] Compiling ZeeQL CodableEntity.swift
[55/101] Compiling ZeeQL CodableModel.swift
[56/101] Compiling ZeeQL CodableModelDecoder.swift
[57/101] Compiling ZeeQL CodableModelEntityDecoder.swift
[58/101] Compiling ZeeQL CodableModelPostProcessor.swift
[59/101] Compiling ZeeQL CodableRelationship.swift
[60/101] Compiling ZeeQL EntityPropertyReflectionContainer.swift
[61/101] Compiling ZeeQL CodeAttribute.swift
[62/101] Compiling ZeeQL CodeEntity.swift
[63/101] Compiling ZeeQL BooleanQualifier.swift
[64/101] Compiling ZeeQL ComparisonOperation.swift
[65/101] Compiling ZeeQL CompoundQualifier.swift
[66/101] Compiling ZeeQL Constant.swift
[67/101] Compiling ZeeQL DataSource.swift
[68/101] Compiling ZeeQL EntityType.swift
[69/101] Compiling ZeeQL Expression.swift
[70/101] Compiling ZeeQL ExpressionEvaluation.swift
[71/101] Compiling ZeeQL FetchSpecification.swift
[72/101] Compiling ZeeQL GlobalID.swift
[73/101] Compiling ZeeQL SQLExpression.swift
[74/101] Compiling ZeeQL SQLExpressionFactory.swift
[75/101] Compiling ZeeQL SQLForeignKey.swift
[76/101] Compiling ZeeQL SQLTableGroups.swift
[77/101] Compiling ZeeQL SchemaGeneration.swift
[78/101] Compiling ZeeQL SchemaSynchronization.swift
[79/101] Compiling ZeeQL SchemaSynchronizationFactory.swift
[80/101] Compiling ZeeQL TypedFetchSpecification.swift
[81/101] Compiling ZeeQL ZeeQLTypes.swift
[82/101] Compiling ZeeQL ArrayDataSource.swift
[83/101] Compiling ZeeQL FancyModelMaker.swift
[84/101] Compiling ZeeQL Join.swift
[85/101] Compiling ZeeQL MirrorHelpers.swift
[86/101] Compiling ZeeQL Model.swift
[87/101] Compiling ZeeQL ModelLoader.swift
[88/101] Compiling ZeeQL ModelPattern.swift
[89/101] Compiling ZeeQL ModelSQLizer.swift
[90/101] Compiling ZeeQL Property.swift
[91/101] Compiling ZeeQL Relationship.swift
[92/101] Compiling ZeeQL SQLAttributeChange.swift
[93/101] Compiling ZeeQL Pluralize.swift
[94/101] Compiling ZeeQL SimpleKVC.swift
[95/101] Compiling ZeeQL SmartDescription.swift
[96/101] Compiling ZeeQL TimeRange.swift
[97/101] Compiling ZeeQL SQLite3Adaptor.swift
[98/101] Compiling ZeeQL SQLite3AdaptorChannel.swift
[99/101] Compiling ZeeQL SQLite3Expression.swift
[100/101] Compiling ZeeQL SQLite3ModelFetch.swift
[101/101] Compiling ZeeQL SQLite3SchemaSynchronizationFactory.swift
[102/107] Compiling ZeeQLCombine ReExports.swift
[103/107] Compiling ZeeQLCombine OActiveRecord.swift
[104/107] Compiling ZeeQLCombine AccessDataSourcePublisher.swift
/Users/admin/builder/spi-builder-workspace/Sources/ZeeQLCombine/AccessDataSourcePublisher.swift:107:13: warning: capture of 'self' with non-sendable type 'AccessDataSourceSubscription<DataSource, SubscriberType>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 51 | @available(iOS 13, tvOS 13, OSX 10.15, watchOS 6, *)
 52 | internal
 53 | final class AccessDataSourceSubscription<DataSource,SubscriberType>
    |             `- note: generic class 'AccessDataSourceSubscription' does not conform to the 'Sendable' protocol
 54 |             : Subscription
 55 |               where DataSource: AccessDataSource<SubscriberType.Input>,
    :
105 |       // And even then we can decide whether each subscription should re-query?
106 |       do {
107 |         try self.dataSource.fetchObjects(self.fetchSpecification) { object in
    |             `- warning: capture of 'self' with non-sendable type 'AccessDataSourceSubscription<DataSource, SubscriberType>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
108 |           // we can detect cancellable via `subscriber` == nil, but
109 |           // ZeeQL right now has no cancel API in this place :-)
/Users/admin/builder/spi-builder-workspace/Sources/ZeeQLCombine/AccessDataSourcePublisher.swift:110:15: warning: capture of 'self' with non-sendable type 'AccessDataSourceSubscription<DataSource, SubscriberType>' in an isolated closure; this is an error in the Swift 6 language mode
 51 | @available(iOS 13, tvOS 13, OSX 10.15, watchOS 6, *)
 52 | internal
 53 | final class AccessDataSourceSubscription<DataSource,SubscriberType>
    |             `- note: generic class 'AccessDataSourceSubscription' does not conform to the 'Sendable' protocol
 54 |             : Subscription
 55 |               where DataSource: AccessDataSource<SubscriberType.Input>,
    :
108 |           // we can detect cancellable via `subscriber` == nil, but
109 |           // ZeeQL right now has no cancel API in this place :-)
110 |           _ = self.getSubscriber()?.receive(object)
    |               `- warning: capture of 'self' with non-sendable type 'AccessDataSourceSubscription<DataSource, SubscriberType>' in an isolated closure; this is an error in the Swift 6 language mode
111 |             // returns subsequent demand, which we ignore!
112 |         }
[105/107] Compiling ZeeQLCombine Adaptor.swift
/Users/admin/builder/spi-builder-workspace/Sources/ZeeQLCombine/Adaptor.swift:23:27: warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
21 |       queue.async {
22 |         do { // TODO: should run in a single TX
23 |           let model = try self.fetchModel()
   |                           `- warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
24 |           let tag   = try self.fetchModelTag()
25 |           promise(.success( ( model: model, tag: tag ) ))
/Users/admin/builder/spi-builder-workspace/Sources/ZeeQLCombine/Adaptor.swift:25:11: warning: capture of 'promise' with non-sendable type '(Result<(model: Model, tag: any ModelTag), any Error>) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
23 |           let model = try self.fetchModel()
24 |           let tag   = try self.fetchModelTag()
25 |           promise(.success( ( model: model, tag: tag ) ))
   |           |- warning: capture of 'promise' with non-sendable type '(Result<(model: Model, tag: any ModelTag), any Error>) -> 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'
26 |         }
27 |         catch {
[106/107] Emitting module ZeeQLCombine
[107/107] Compiling ZeeQLCombine AccessDataSource.swift
/Users/admin/builder/spi-builder-workspace/Sources/ZeeQLCombine/AccessDataSource.swift:39:27: warning: capture of 'self' with non-sendable type 'AccessDataSource<Object>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
37 |           // TBD: Why isn't this public? I guess because we are supposed to
38 |           //      set the FS on the datasource.
39 |           let count = try self._primaryFetchCount(fs)
   |                           `- warning: capture of 'self' with non-sendable type 'AccessDataSource<Object>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
40 |           promise(.success(count))
41 |         }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/ZeeQL3/Sources/ZeeQL/Access/AccessDataSource.swift:35:12: note: generic class 'AccessDataSource' does not conform to the 'Sendable' protocol
 33 |  * `AdaptorChannel`.
 34 |  */
 35 | open class AccessDataSource<Object: SwiftObject> : DataSource<Object> {
    |            `- note: generic class 'AccessDataSource' does not conform to the 'Sendable' protocol
 36 |
 37 |   open var log : ZeeQLLogger = globalZeeQLLogger
/Users/admin/builder/spi-builder-workspace/Sources/ZeeQLCombine/AccessDataSource.swift:12:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'ZeeQL'
10 |
11 | import class  Dispatch.DispatchQueue
12 | import ZeeQL
   | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'ZeeQL'
13 | import struct Combine.AnyPublisher
14 | import class  Combine.Future
/Users/admin/builder/spi-builder-workspace/Sources/ZeeQLCombine/AccessDataSource.swift:39:51: warning: capture of 'fs' with non-sendable type 'any FetchSpecification' in a `@Sendable` closure; this is an error in the Swift 6 language mode
37 |           // TBD: Why isn't this public? I guess because we are supposed to
38 |           //      set the FS on the datasource.
39 |           let count = try self._primaryFetchCount(fs)
   |                                                   `- warning: capture of 'fs' with non-sendable type 'any FetchSpecification' in a `@Sendable` closure; this is an error in the Swift 6 language mode
40 |           promise(.success(count))
41 |         }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/ZeeQL3/Sources/ZeeQL/Control/FetchSpecification.swift:18:17: note: protocol 'FetchSpecification' does not conform to the 'Sendable' protocol
 16 |  * Also check out the QueryBuilder extension.
 17 |  */
 18 | public protocol FetchSpecification : SmartDescription {
    |                 `- note: protocol 'FetchSpecification' does not conform to the 'Sendable' protocol
 19 |   // TODO: This is a little funky now because we refer to Entity. It should be
 20 |   //       a protocol.
/Users/admin/builder/spi-builder-workspace/Sources/ZeeQLCombine/AccessDataSource.swift:40:11: warning: capture of 'promise' with non-sendable type '(Result<Int, any Error>) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
38 |           //      set the FS on the datasource.
39 |           let count = try self._primaryFetchCount(fs)
40 |           promise(.success(count))
   |           |- warning: capture of 'promise' with non-sendable type '(Result<Int, any Error>) -> 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'
41 |         }
42 |         catch {
/Users/admin/builder/spi-builder-workspace/Sources/ZeeQLCombine/AccessDataSource.swift:58:15: warning: capture of 'self' with non-sendable type 'AccessDataSource<Object>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
56 |         do {
57 |           var gids = [ GlobalID ]()
58 |           try self._primaryFetchGlobalIDs(fs) { gids.append($0) }
   |               `- warning: capture of 'self' with non-sendable type 'AccessDataSource<Object>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
59 |           promise(.success(gids))
60 |         }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/ZeeQL3/Sources/ZeeQL/Access/AccessDataSource.swift:35:12: note: generic class 'AccessDataSource' does not conform to the 'Sendable' protocol
 33 |  * `AdaptorChannel`.
 34 |  */
 35 | open class AccessDataSource<Object: SwiftObject> : DataSource<Object> {
    |            `- note: generic class 'AccessDataSource' does not conform to the 'Sendable' protocol
 36 |
 37 |   open var log : ZeeQLLogger = globalZeeQLLogger
/Users/admin/builder/spi-builder-workspace/Sources/ZeeQLCombine/AccessDataSource.swift:58:43: warning: capture of 'fs' with non-sendable type 'any FetchSpecification' in a `@Sendable` closure; this is an error in the Swift 6 language mode
56 |         do {
57 |           var gids = [ GlobalID ]()
58 |           try self._primaryFetchGlobalIDs(fs) { gids.append($0) }
   |                                           `- warning: capture of 'fs' with non-sendable type 'any FetchSpecification' in a `@Sendable` closure; this is an error in the Swift 6 language mode
59 |           promise(.success(gids))
60 |         }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/ZeeQL3/Sources/ZeeQL/Control/FetchSpecification.swift:18:17: note: protocol 'FetchSpecification' does not conform to the 'Sendable' protocol
 16 |  * Also check out the QueryBuilder extension.
 17 |  */
 18 | public protocol FetchSpecification : SmartDescription {
    |                 `- note: protocol 'FetchSpecification' does not conform to the 'Sendable' protocol
 19 |   // TODO: This is a little funky now because we refer to Entity. It should be
 20 |   //       a protocol.
/Users/admin/builder/spi-builder-workspace/Sources/ZeeQLCombine/AccessDataSource.swift:59:11: warning: capture of 'promise' with non-sendable type '(Result<[GlobalID], any Error>) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
57 |           var gids = [ GlobalID ]()
58 |           try self._primaryFetchGlobalIDs(fs) { gids.append($0) }
59 |           promise(.success(gids))
   |           |- warning: capture of 'promise' with non-sendable type '(Result<[GlobalID], any Error>) -> 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'
60 |         }
61 |         catch {
Build complete! (18.21s)
Build complete.
{
  "dependencies" : [
    {
      "identity" : "zeeql3",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "0.8.11",
            "upper_bound" : "1.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/ZeeQL/ZeeQL3.git"
    }
  ],
  "manifest_display_name" : "ZeeQL3Combine",
  "name" : "ZeeQL3Combine",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
  ],
  "products" : [
    {
      "name" : "ZeeQLCombine",
      "targets" : [
        "ZeeQLCombine"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "ZeeQLCombine",
      "module_type" : "SwiftTarget",
      "name" : "ZeeQLCombine",
      "path" : "Sources/ZeeQLCombine",
      "product_dependencies" : [
        "ZeeQL"
      ],
      "product_memberships" : [
        "ZeeQLCombine"
      ],
      "sources" : [
        "AccessDataSource.swift",
        "AccessDataSourcePublisher.swift",
        "Adaptor.swift",
        "OActiveRecord.swift",
        "ReExports.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.1"
}
Done.