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 ZeeQL3Combine with Swift 6.0 (beta) 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/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
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.0
Building package at path:  $workDir
https://github.com/ZeeQL/ZeeQL3Combine.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/3] Write sources
[2/3] Write swift-version-6F35C1178C84523A.txt
[4/91] Emitting module ZeeQL
[5/91] Compiling ZeeQL CodeFetchSpecification.swift
[6/91] Compiling ZeeQL CodeRelationship.swift
[7/91] Compiling ZeeQL CodeValueAttribute.swift
[8/91] Compiling ZeeQL Database.swift
[9/91] Compiling ZeeQL DatabaseChannel.swift
[10/91] Compiling ZeeQL DatabaseContext.swift
[11/91] Compiling ZeeQL DatabaseDataSource.swift
[12/91] Compiling ZeeQL DatabaseObject.swift
[13/91] Compiling ZeeQL DatabaseOperation.swift
[14/91] Compiling ZeeQL Entity.swift
[15/100] Compiling ZeeQL SQLExpressionFactory.swift
[16/100] Compiling ZeeQL SQLForeignKey.swift
[17/100] Compiling ZeeQL SQLTableGroups.swift
[18/100] Compiling ZeeQL SchemaGeneration.swift
[19/100] Compiling ZeeQL SchemaSynchronization.swift
[20/100] Compiling ZeeQL SchemaSynchronizationFactory.swift
[21/100] Compiling ZeeQL TypedFetchSpecification.swift
[22/100] Compiling ZeeQL ZeeQLTypes.swift
[23/100] Compiling ZeeQL ArrayDataSource.swift
[24/100] Compiling ZeeQL BooleanQualifier.swift
[25/100] Compiling ZeeQL AccessDataSource.swift
[26/100] Compiling ZeeQL AccessDataSourceError.swift
[27/100] Compiling ZeeQL AccessDataSourceFinders.swift
[28/100] Compiling ZeeQL ActiveDataSource.swift
[29/100] Compiling ZeeQL ActiveRecord.swift
[30/100] Compiling ZeeQL ActiveRecordType.swift
[31/100] Compiling ZeeQL Adaptor.swift
[32/100] Compiling ZeeQL AdaptorChannel.swift
[33/100] Compiling ZeeQL AdaptorChannelPool.swift
[34/100] Compiling ZeeQL AdaptorDataSource.swift
[35/100] Compiling ZeeQL QualifierParser.swift
[36/100] Compiling ZeeQL QualifierVariable.swift
[37/100] Compiling ZeeQL QueryBuilder.swift
[38/100] Compiling ZeeQL SQLQualifier.swift
[39/100] Compiling ZeeQL SortOrdering.swift
[40/100] Compiling ZeeQL StoreKeyValueCoding.swift
[41/100] Compiling ZeeQL EquatableType.swift
[42/100] Compiling ZeeQL KeyValueStringFormatter.swift
[43/100] Compiling ZeeQL Logger.swift
[44/100] Compiling ZeeQL ComparisonOperation.swift
[45/100] Compiling ZeeQL CompoundQualifier.swift
[46/100] Compiling ZeeQL Constant.swift
[47/100] Compiling ZeeQL DataSource.swift
[48/100] Compiling ZeeQL EntityType.swift
[49/100] Compiling ZeeQL Expression.swift
[50/100] Compiling ZeeQL ExpressionEvaluation.swift
[51/100] Compiling ZeeQL FetchSpecification.swift
[52/100] Compiling ZeeQL GlobalID.swift
[53/100] Compiling ZeeQL Key.swift
[54/100] Compiling ZeeQL KeyComparisonQualifier.swift
[55/100] Compiling ZeeQL KeyValueQualifier.swift
[56/100] Compiling ZeeQL ModelFetchSpecification.swift
[57/100] Compiling ZeeQL NotQualifier.swift
[58/100] Compiling ZeeQL ObjectStore.swift
[59/100] Compiling ZeeQL ObjectTrackingContext.swift
[60/100] Compiling ZeeQL Qualifier.swift
[61/100] Compiling ZeeQL QualifierEvaluation.swift
[62/100] Compiling ZeeQL AdaptorError.swift
[63/100] Compiling ZeeQL AdaptorModelFetch.swift
[64/100] Compiling ZeeQL AdaptorOperation.swift
[65/100] Compiling ZeeQL AdaptorQueryColumnRepresentable.swift
[66/100] Compiling ZeeQL AdaptorQueryType.swift
[67/100] Compiling ZeeQL AdaptorRecord.swift
[68/100] Compiling ZeeQL AdaptorRecordSchema.swift
[69/100] Compiling ZeeQL Attribute.swift
[70/100] Compiling ZeeQL AttributeKey.swift
[71/100] Compiling ZeeQL AttributeValue.swift
[72/100] Compiling ZeeQL FancyModelMaker.swift
[73/100] Compiling ZeeQL Join.swift
[74/100] Compiling ZeeQL MirrorHelpers.swift
[75/100] Compiling ZeeQL Model.swift
[76/100] Compiling ZeeQL ModelLoader.swift
[77/100] Compiling ZeeQL ModelSQLizer.swift
[78/100] Compiling ZeeQL Property.swift
[79/100] Compiling ZeeQL Relationship.swift
[80/100] Compiling ZeeQL SQLAttributeChange.swift
[81/100] Compiling ZeeQL SQLExpression.swift
[82/100] Compiling ZeeQL AdaptorRecordDecoder.swift
[83/100] Compiling ZeeQL CodableEntity.swift
[84/100] Compiling ZeeQL CodableModel.swift
[85/100] Compiling ZeeQL CodableModelDecoder.swift
[86/100] Compiling ZeeQL CodableModelEntityDecoder.swift
[87/100] Compiling ZeeQL CodableModelPostProcessor.swift
[88/100] Compiling ZeeQL CodableRelationship.swift
[89/100] Compiling ZeeQL EntityPropertyReflectionContainer.swift
[90/100] Compiling ZeeQL CodeAttribute.swift
[91/100] Compiling ZeeQL CodeEntity.swift
[92/100] Compiling ZeeQL Pluralize.swift
[93/100] Compiling ZeeQL SimpleKVC.swift
[94/100] Compiling ZeeQL SmartDescription.swift
[95/100] Compiling ZeeQL TimeRange.swift
[96/100] Compiling ZeeQL SQLite3Adaptor.swift
[97/100] Compiling ZeeQL SQLite3AdaptorChannel.swift
[98/100] Compiling ZeeQL SQLite3Expression.swift
[99/100] Compiling ZeeQL SQLite3ModelFetch.swift
[100/100] Compiling ZeeQL SQLite3SchemaSynchronizationFactory.swift
[101/106] Compiling ZeeQLCombine OActiveRecord.swift
[102/106] Compiling ZeeQLCombine ReExports.swift
[103/106] 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 {
[104/106] 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/106] Emitting module ZeeQLCombine
[106/106] 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! (29.43s)
Fetching https://github.com/ZeeQL/ZeeQL3.git
[1/2451] Fetching zeeql3
Fetched https://github.com/ZeeQL/ZeeQL3.git from cache (1.13s)
Computing version for https://github.com/ZeeQL/ZeeQL3.git
Computed https://github.com/ZeeQL/ZeeQL3.git at 0.9.5 (0.70s)
Fetching https://github.com/ZeeQL/CSQLite3.git
[1/41] Fetching csqlite3
Fetched https://github.com/ZeeQL/CSQLite3.git from cache (0.63s)
Computing version for https://github.com/ZeeQL/CSQLite3.git
Computed https://github.com/ZeeQL/CSQLite3.git at 2.0.3 (2.79s)
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.5
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.
This is a staging environment. For live and up-to-date package information, visit swiftpackageindex.com.