Build Information
Successful build of ZeeQL3Combine, reference 0.2.0 (a9f169
), with Swift 6.1 for macOS (SPM) on 30 Apr 2025 02:33:09 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.61.1
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/ZeeQL/ZeeQL3Combine.git
Reference: 0.2.0
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/ZeeQL/ZeeQL3Combine
* tag 0.2.0 -> FETCH_HEAD
HEAD is now at a9f169c Merge branch 'develop'
Cloned https://github.com/ZeeQL/ZeeQL3Combine.git
Revision (git rev-parse @):
a9f169c3e8c52dbb096c96ec62efaa6cc2b55fdc
SUCCESS checkout https://github.com/ZeeQL/ZeeQL3Combine.git at 0.2.0
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.1
Building package at path: $PWD
https://github.com/ZeeQL/ZeeQL3Combine.git
https://github.com/ZeeQL/ZeeQL3Combine.git
{
"dependencies" : [
{
"identity" : "zeeql3",
"requirement" : {
"range" : [
{
"lower_bound" : "0.9.16",
"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.5"
}
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/3] Write sources
[2/3] Write swift-version-2F0A5646E1D333AE.txt
[4/96] Compiling ZeeQL BooleanQualifier.swift
[5/96] Compiling ZeeQL ComparisonOperation.swift
[6/96] Compiling ZeeQL CompoundQualifier.swift
[7/96] Compiling ZeeQL Constant.swift
[8/96] Compiling ZeeQL DataSource.swift
[9/96] Compiling ZeeQL EntityType+Builder.swift
[10/96] Compiling ZeeQL EntityType.swift
[11/96] Compiling ZeeQL Expression.swift
[12/96] Compiling ZeeQL ExpressionEvaluation.swift
[13/96] Compiling ZeeQL FetchSpecification+Builder.swift
[14/106] Emitting module ZeeQL
[15/106] Compiling ZeeQL SQLExpressionFactory.swift
[16/106] Compiling ZeeQL SQLForeignKey.swift
[17/106] Compiling ZeeQL SQLTableGroups.swift
[18/106] Compiling ZeeQL SchemaGeneration.swift
[19/106] Compiling ZeeQL SchemaSynchronization.swift
[20/106] Compiling ZeeQL SchemaSynchronizationFactory.swift
[21/106] Compiling ZeeQL TypedDatabaseChannel.swift
[22/106] Compiling ZeeQL TypedFetchSpecification.swift
[23/106] Compiling ZeeQL ZeeQLTypes.swift
[24/106] Compiling ZeeQL ArrayDataSource.swift
[25/106] Compiling ZeeQL Logger.swift
[26/106] Compiling ZeeQL Pluralize.swift
[27/106] Compiling ZeeQL SimpleKVC.swift
[28/106] Compiling ZeeQL SmartDescription.swift
[29/106] Compiling ZeeQL TimeRange.swift
[30/106] Compiling ZeeQL SQLite3Adaptor.swift
[31/106] Compiling ZeeQL SQLite3AdaptorChannel.swift
[32/106] Compiling ZeeQL SQLite3Expression.swift
[33/106] Compiling ZeeQL SQLite3ModelFetch.swift
[34/106] Compiling ZeeQL SQLite3SchemaSynchronizationFactory.swift
[35/106] Compiling ZeeQL FetchSpecification.swift
[36/106] Compiling ZeeQL GlobalID.swift
[37/106] Compiling ZeeQL Key.swift
[38/106] Compiling ZeeQL KeyComparisonQualifier.swift
[39/106] Compiling ZeeQL KeyValueQualifier.swift
[40/106] Compiling ZeeQL ModelFetchSpecification.swift
[41/106] Compiling ZeeQL NotQualifier.swift
[42/106] Compiling ZeeQL ObjectStore.swift
[43/106] Compiling ZeeQL ObjectTrackingContext.swift
[44/106] Compiling ZeeQL Qualifier.swift
[45/106] Compiling ZeeQL Join.swift
[46/106] Compiling ZeeQL MirrorHelpers.swift
[47/106] Compiling ZeeQL Model.swift
[48/106] Compiling ZeeQL ModelLoader.swift
[49/106] Compiling ZeeQL ModelPattern.swift
[50/106] Compiling ZeeQL ModelSQLizer.swift
[51/106] Compiling ZeeQL Property.swift
[52/106] Compiling ZeeQL Relationship.swift
[53/106] Compiling ZeeQL SQLAttributeChange.swift
[54/106] Compiling ZeeQL SQLExpression.swift
[55/106] Compiling ZeeQL CodableModel.swift
[56/106] Compiling ZeeQL CodableModelDecoder.swift
[57/106] Compiling ZeeQL CodableModelEntityDecoder.swift
[58/106] Compiling ZeeQL CodableModelPostProcessor.swift
[59/106] Compiling ZeeQL CodableRelationship.swift
[60/106] Compiling ZeeQL EntityPropertyReflectionContainer.swift
[61/106] Compiling ZeeQL CodeAttribute.swift
[62/106] Compiling ZeeQL CodeEntity.swift
[63/106] Compiling ZeeQL CodeRelationship.swift
[64/106] Compiling ZeeQL CodeValueAttribute.swift
[65/106] Compiling ZeeQL AdaptorModelFetch.swift
[66/106] Compiling ZeeQL AdaptorOperation.swift
[67/106] Compiling ZeeQL AdaptorQueryColumnRepresentable.swift
[68/106] Compiling ZeeQL AdaptorQueryType.swift
[69/106] Compiling ZeeQL AdaptorRecord.swift
[70/106] Compiling ZeeQL AdaptorRecordSchema.swift
[71/106] Compiling ZeeQL Attribute.swift
[72/106] Compiling ZeeQL AttributeKey.swift
[73/106] Compiling ZeeQL AttributeValue.swift
[74/106] Compiling ZeeQL AdaptorRecordDecoder.swift
[75/106] Compiling ZeeQL CodableEntity.swift
[76/106] Compiling ZeeQL QualifierEvaluation.swift
[77/106] Compiling ZeeQL QualifierParser.swift
[78/106] Compiling ZeeQL QualifierVariable.swift
[79/106] Compiling ZeeQL SQLQualifier.swift
[80/106] Compiling ZeeQL SortOrdering.swift
[81/106] Compiling ZeeQL StoreKeyValueCoding.swift
[82/106] Compiling ZeeQL AnyOptional.swift
[83/106] Compiling ZeeQL Dictionary+Extensions.swift
[84/106] Compiling ZeeQL EquatableType.swift
[85/106] Compiling ZeeQL KeyValueStringFormatter.swift
[86/106] Compiling ZeeQL AccessDataSource.swift
[87/106] Compiling ZeeQL AccessDataSourceError.swift
[88/106] Compiling ZeeQL AccessDataSourceFinders.swift
[89/106] Compiling ZeeQL ActiveDataSource.swift
[90/106] Compiling ZeeQL ActiveRecord.swift
[91/106] Compiling ZeeQL ActiveRecordType.swift
[92/106] Compiling ZeeQL Adaptor.swift
[93/106] Compiling ZeeQL AdaptorChannel.swift
[94/106] Compiling ZeeQL AdaptorChannelPool.swift
[95/106] Compiling ZeeQL AdaptorDataSource.swift
[96/106] Compiling ZeeQL AdaptorError.swift
[97/106] Compiling ZeeQL Database.swift
[98/106] Compiling ZeeQL DatabaseChannel.swift
[99/106] Compiling ZeeQL DatabaseChannelBase.swift
[100/106] Compiling ZeeQL DatabaseChannelFetchHelper.swift
[101/106] Compiling ZeeQL DatabaseContext.swift
[102/106] Compiling ZeeQL DatabaseDataSource.swift
[103/106] Compiling ZeeQL DatabaseObject.swift
[104/106] Compiling ZeeQL DatabaseOperation.swift
[105/106] Compiling ZeeQL Entity.swift
[106/106] Compiling ZeeQL FancyModelMaker.swift
[107/112] Compiling ZeeQLCombine ReExports.swift
[108/112] Compiling ZeeQLCombine OActiveRecord.swift
[109/112] 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
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
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
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
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
26 | }
27 | catch {
[110/112] 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
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
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 | }
[111/112] Emitting module ZeeQLCombine
[112/112] 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
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
40 | promise(.success(count))
41 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/ZeeQL3/Sources/ZeeQL/Access/AccessDataSource.swift:62:12: note: generic class 'AccessDataSource' does not conform to the 'Sendable' protocol
60 | * top of an ``AdaptorChannel``.
61 | */
62 | open class AccessDataSource<Object: SwiftObject> : DataSource<Object>,
| `- note: generic class 'AccessDataSource' does not conform to the 'Sendable' protocol
63 | AccessDataSourceType
64 | {
/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
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
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
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
| `- 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
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
59 | promise(.success(gids))
60 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/ZeeQL3/Sources/ZeeQL/Access/AccessDataSource.swift:62:12: note: generic class 'AccessDataSource' does not conform to the 'Sendable' protocol
60 | * top of an ``AdaptorChannel``.
61 | */
62 | open class AccessDataSource<Object: SwiftObject> : DataSource<Object>,
| `- note: generic class 'AccessDataSource' does not conform to the 'Sendable' protocol
63 | AccessDataSourceType
64 | {
/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
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
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' (aka '(Result<Array<KeyGlobalID>, any Error>) -> ()') in a '@Sendable' closure
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' (aka '(Result<Array<KeyGlobalID>, any Error>) -> ()') in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
60 | }
61 | catch {
Build complete! (12.56s)
Fetching https://github.com/ZeeQL/ZeeQL3.git
[1/3384] Fetching zeeql3
Fetched https://github.com/ZeeQL/ZeeQL3.git from cache (0.94s)
Computing version for https://github.com/ZeeQL/ZeeQL3.git
Computed https://github.com/ZeeQL/ZeeQL3.git at 0.9.20 (1.51s)
Fetching https://github.com/ZeeQL/CSQLite3.git
[1/41] Fetching csqlite3
Fetched https://github.com/ZeeQL/CSQLite3.git from cache (0.56s)
Computing version for https://github.com/ZeeQL/CSQLite3.git
Computed https://github.com/ZeeQL/CSQLite3.git at 2.0.3 (3.44s)
Creating working copy for https://github.com/ZeeQL/ZeeQL3.git
Working copy of https://github.com/ZeeQL/ZeeQL3.git resolved at 0.9.20
Creating working copy for https://github.com/ZeeQL/CSQLite3.git
Working copy of https://github.com/ZeeQL/CSQLite3.git resolved at 2.0.3
Build complete.
{
"dependencies" : [
{
"identity" : "zeeql3",
"requirement" : {
"range" : [
{
"lower_bound" : "0.9.16",
"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.5"
}
Done.