Build Information
Successful build of CohesionKit, reference main (b6c40a
), with Swift 6.0 for macOS (SPM) on 15 Mar 2025 05:49:00 UTC.
Swift 6 data race errors: 0
Build Command
env DEVELOPER_DIR=/Applications/Xcode-16.2.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.60.1
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/pjechris/CohesionKit.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/pjechris/CohesionKit
* branch main -> FETCH_HEAD
* [new branch] main -> origin/main
HEAD is now at b6c40a8 tech(registry): Use Identifier object (#75)
Cloned https://github.com/pjechris/CohesionKit.git
Revision (git rev-parse @):
b6c40a80bd30f5fdc5b75d624ec4e3aba7730a65
SUCCESS checkout https://github.com/pjechris/CohesionKit.git at main
========================================
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": "cohesionkit",
"name": "CohesionKit",
"url": "https://github.com/pjechris/CohesionKit.git",
"version": "unspecified",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/CohesionKit",
"dependencies": [
]
}
]
}
Fetching https://github.com/pjechris/CohesionKit.git
[1/2680] Fetching cohesionkit
Fetched https://github.com/pjechris/CohesionKit.git from cache (1.08s)
Creating working copy for https://github.com/pjechris/CohesionKit.git
Working copy of https://github.com/pjechris/CohesionKit.git resolved at main (b6c40a8)
warning: '.resolve-product-dependencies': dependency 'cohesionkit' is not used by any target
Found 0 product dependencies
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.0
Building package at path: $PWD
https://github.com/pjechris/CohesionKit.git
https://github.com/pjechris/CohesionKit.git
{
"dependencies" : [
],
"manifest_display_name" : "CohesionKit",
"name" : "CohesionKit",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "macos",
"version" : "11.0"
},
{
"name" : "ios",
"version" : "14.0"
}
],
"products" : [
{
"name" : "CohesionKit",
"targets" : [
"CohesionKit"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "CohesionKitTests",
"module_type" : "SwiftTarget",
"name" : "CohesionKitTests",
"path" : "Tests/CohesionKitTests",
"sources" : [
"Combine/EntityObserverTests+Publisher.swift",
"EntityStoreTests.swift",
"KeyPath/PartialIdentifiableKeyPathTests.swift",
"LoggerMock.swift",
"Observer/ObserverRegistryTests.swift",
"Observer/Stub/ObserverRegistryStub.swift",
"RootFixture.swift",
"Storage/AliasContainerTests.swift",
"Storage/AliasStorageTests.swift",
"Storage/EntitiesStorageTests.swift",
"Storage/EntityNodeTests.swift",
"Visitor/EntityStoreVisitorTests.swift"
],
"target_dependencies" : [
"CohesionKit"
],
"type" : "test"
},
{
"c99name" : "CohesionKit",
"module_type" : "SwiftTarget",
"name" : "CohesionKit",
"path" : "Sources/CohesionKit",
"product_memberships" : [
"CohesionKit"
],
"sources" : [
"AliasKey.swift",
"Combine/EntityObserver+Publisher.swift",
"Combine/Publisher+CohesionKit.swift",
"Entity/Aggregate.swift",
"Entity/EntityWrapper.swift",
"EntityStore.swift",
"Identifier.swift",
"KeyPath/PartialIdentifiableKeyPath.swift",
"Logger.swift",
"Observer/EntityObserver.swift",
"Observer/ObserverRegistry.swift",
"Observer/Subscription.swift",
"Stamp/Date+Stamp.swift",
"Stamp/StampError.swift",
"Storage/AliasContainer.swift",
"Storage/AliasStorage.swift",
"Storage/EntitiesStorage.swift",
"Storage/EntityNode.swift",
"Visitor/EntityContext.swift",
"Visitor/EntityStoreVisitor.swift",
"Visitor/NestedEntitiesVisitor.swift",
"Weak.swift"
],
"type" : "library"
}
],
"tools_version" : "5.3"
}
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.2.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/2] Write sources
[1/2] Write swift-version-5BDAB9E9C0126B9D.txt
[3/23] Emitting module CohesionKit
/Users/admin/builder/spi-builder-workspace/Sources/CohesionKit/Entity/EntityWrapper.swift:1:2: warning: unknown platform 'unavailable' for attribute 'available'
1 | @available(unavailable, renamed: "EntityWrapper")
| `- warning: unknown platform 'unavailable' for attribute 'available'
2 | public typealias EntityEnumWrapper = EntityWrapper
3 |
[4/25] Compiling CohesionKit AliasKey.swift
[5/25] Compiling CohesionKit EntityObserver+Publisher.swift
[6/25] Compiling CohesionKit Publisher+CohesionKit.swift
[7/25] Compiling CohesionKit NestedEntitiesVisitor.swift
[8/25] Compiling CohesionKit Weak.swift
[9/25] Compiling CohesionKit ObserverRegistry.swift
/Users/admin/builder/spi-builder-workspace/Sources/CohesionKit/Observer/ObserverRegistry.swift:92:40: warning: capture of 'changes' with non-sendable type '[Identifier : any AnyWeak]' in a `@Sendable` closure
90 |
91 | queue.async {
92 | for (hashKey, weakNode) in changes {
| `- warning: capture of 'changes' with non-sendable type '[Identifier : any AnyWeak]' in a `@Sendable` closure
93 | // node was released: no one to notify
94 | guard let node = weakNode.unwrap() else {
/Users/admin/builder/spi-builder-workspace/Sources/CohesionKit/Weak.swift:3:10: note: protocol 'AnyWeak' does not conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | protocol AnyWeak: AnyObject {
| `- note: protocol 'AnyWeak' does not conform to the 'Sendable' protocol
4 | func unwrap() -> Any?
5 | }
/Users/admin/builder/spi-builder-workspace/Sources/CohesionKit/Observer/ObserverRegistry.swift:98:32: warning: capture of 'handlers' with non-sendable type '[Identifier : Set<ObserverRegistry.Handler>]' in a `@Sendable` closure
96 | }
97 |
98 | for handler in handlers[hashKey] ?? [] {
| `- warning: capture of 'handlers' with non-sendable type '[Identifier : Set<ObserverRegistry.Handler>]' in a `@Sendable` closure
99 | // if some handlers are used multiple times (like for collections), make sure we don't notify them multiple times
100 | guard !executedHandlers.contains(handler) else {
:
123 | extension ObserverRegistry {
124 | /// Handle observation for a given node
125 | class Handler: Hashable {
| `- note: class 'Handler' does not conform to the 'Sendable' protocol
126 | let executor: (Any) -> Void
127 |
/Users/admin/builder/spi-builder-workspace/Sources/CohesionKit/Observer/ObserverRegistry.swift:100:28: warning: capture of 'executedHandlers' with non-sendable type 'Set<ObserverRegistry.Handler>' in a `@Sendable` closure
98 | for handler in handlers[hashKey] ?? [] {
99 | // if some handlers are used multiple times (like for collections), make sure we don't notify them multiple times
100 | guard !executedHandlers.contains(handler) else {
| `- warning: capture of 'executedHandlers' with non-sendable type 'Set<ObserverRegistry.Handler>' in a `@Sendable` closure
101 | continue
102 | }
:
123 | extension ObserverRegistry {
124 | /// Handle observation for a given node
125 | class Handler: Hashable {
| `- note: class 'Handler' does not conform to the 'Sendable' protocol
126 | let executor: (Any) -> Void
127 |
/Users/admin/builder/spi-builder-workspace/Sources/CohesionKit/Observer/ObserverRegistry.swift:100:28: warning: reference to captured var 'executedHandlers' in concurrently-executing code
98 | for handler in handlers[hashKey] ?? [] {
99 | // if some handlers are used multiple times (like for collections), make sure we don't notify them multiple times
100 | guard !executedHandlers.contains(handler) else {
| `- warning: reference to captured var 'executedHandlers' in concurrently-executing code
101 | continue
102 | }
/Users/admin/builder/spi-builder-workspace/Sources/CohesionKit/Observer/ObserverRegistry.swift:105:21: warning: mutation of captured var 'executedHandlers' in concurrently-executing code
103 |
104 | handler(node)
105 | executedHandlers.insert(handler)
| `- warning: mutation of captured var 'executedHandlers' in concurrently-executing code
106 | }
107 | }
[10/25] Compiling CohesionKit Subscription.swift
/Users/admin/builder/spi-builder-workspace/Sources/CohesionKit/Observer/ObserverRegistry.swift:92:40: warning: capture of 'changes' with non-sendable type '[Identifier : any AnyWeak]' in a `@Sendable` closure
90 |
91 | queue.async {
92 | for (hashKey, weakNode) in changes {
| `- warning: capture of 'changes' with non-sendable type '[Identifier : any AnyWeak]' in a `@Sendable` closure
93 | // node was released: no one to notify
94 | guard let node = weakNode.unwrap() else {
/Users/admin/builder/spi-builder-workspace/Sources/CohesionKit/Weak.swift:3:10: note: protocol 'AnyWeak' does not conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | protocol AnyWeak: AnyObject {
| `- note: protocol 'AnyWeak' does not conform to the 'Sendable' protocol
4 | func unwrap() -> Any?
5 | }
/Users/admin/builder/spi-builder-workspace/Sources/CohesionKit/Observer/ObserverRegistry.swift:98:32: warning: capture of 'handlers' with non-sendable type '[Identifier : Set<ObserverRegistry.Handler>]' in a `@Sendable` closure
96 | }
97 |
98 | for handler in handlers[hashKey] ?? [] {
| `- warning: capture of 'handlers' with non-sendable type '[Identifier : Set<ObserverRegistry.Handler>]' in a `@Sendable` closure
99 | // if some handlers are used multiple times (like for collections), make sure we don't notify them multiple times
100 | guard !executedHandlers.contains(handler) else {
:
123 | extension ObserverRegistry {
124 | /// Handle observation for a given node
125 | class Handler: Hashable {
| `- note: class 'Handler' does not conform to the 'Sendable' protocol
126 | let executor: (Any) -> Void
127 |
/Users/admin/builder/spi-builder-workspace/Sources/CohesionKit/Observer/ObserverRegistry.swift:100:28: warning: capture of 'executedHandlers' with non-sendable type 'Set<ObserverRegistry.Handler>' in a `@Sendable` closure
98 | for handler in handlers[hashKey] ?? [] {
99 | // if some handlers are used multiple times (like for collections), make sure we don't notify them multiple times
100 | guard !executedHandlers.contains(handler) else {
| `- warning: capture of 'executedHandlers' with non-sendable type 'Set<ObserverRegistry.Handler>' in a `@Sendable` closure
101 | continue
102 | }
:
123 | extension ObserverRegistry {
124 | /// Handle observation for a given node
125 | class Handler: Hashable {
| `- note: class 'Handler' does not conform to the 'Sendable' protocol
126 | let executor: (Any) -> Void
127 |
/Users/admin/builder/spi-builder-workspace/Sources/CohesionKit/Observer/ObserverRegistry.swift:100:28: warning: reference to captured var 'executedHandlers' in concurrently-executing code
98 | for handler in handlers[hashKey] ?? [] {
99 | // if some handlers are used multiple times (like for collections), make sure we don't notify them multiple times
100 | guard !executedHandlers.contains(handler) else {
| `- warning: reference to captured var 'executedHandlers' in concurrently-executing code
101 | continue
102 | }
/Users/admin/builder/spi-builder-workspace/Sources/CohesionKit/Observer/ObserverRegistry.swift:105:21: warning: mutation of captured var 'executedHandlers' in concurrently-executing code
103 |
104 | handler(node)
105 | executedHandlers.insert(handler)
| `- warning: mutation of captured var 'executedHandlers' in concurrently-executing code
106 | }
107 | }
[11/25] Compiling CohesionKit EntitiesStorage.swift
[12/25] Compiling CohesionKit EntityNode.swift
[13/25] Compiling CohesionKit Identifier.swift
[14/25] Compiling CohesionKit PartialIdentifiableKeyPath.swift
[15/25] Compiling CohesionKit EntityContext.swift
[16/25] Compiling CohesionKit EntityStoreVisitor.swift
[17/25] Compiling CohesionKit Logger.swift
[18/25] Compiling CohesionKit EntityObserver.swift
[19/25] Compiling CohesionKit AliasContainer.swift
[20/25] Compiling CohesionKit AliasStorage.swift
[21/25] Compiling CohesionKit Date+Stamp.swift
[22/25] Compiling CohesionKit StampError.swift
[23/25] Compiling CohesionKit Aggregate.swift
/Users/admin/builder/spi-builder-workspace/Sources/CohesionKit/Entity/EntityWrapper.swift:1:2: warning: unknown platform 'unavailable' for attribute 'available'
1 | @available(unavailable, renamed: "EntityWrapper")
| `- warning: unknown platform 'unavailable' for attribute 'available'
2 | public typealias EntityEnumWrapper = EntityWrapper
3 |
[24/25] Compiling CohesionKit EntityWrapper.swift
/Users/admin/builder/spi-builder-workspace/Sources/CohesionKit/Entity/EntityWrapper.swift:1:2: warning: unknown platform 'unavailable' for attribute 'available'
1 | @available(unavailable, renamed: "EntityWrapper")
| `- warning: unknown platform 'unavailable' for attribute 'available'
2 | public typealias EntityEnumWrapper = EntityWrapper
3 |
[25/25] Compiling CohesionKit EntityStore.swift
/Users/admin/builder/spi-builder-workspace/Sources/CohesionKit/Entity/EntityWrapper.swift:1:2: warning: unknown platform 'unavailable' for attribute 'available'
1 | @available(unavailable, renamed: "EntityWrapper")
| `- warning: unknown platform 'unavailable' for attribute 'available'
2 | public typealias EntityEnumWrapper = EntityWrapper
3 |
Build complete! (12.45s)
Build complete.
{
"dependencies" : [
],
"manifest_display_name" : "CohesionKit",
"name" : "CohesionKit",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "macos",
"version" : "11.0"
},
{
"name" : "ios",
"version" : "14.0"
}
],
"products" : [
{
"name" : "CohesionKit",
"targets" : [
"CohesionKit"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "CohesionKitTests",
"module_type" : "SwiftTarget",
"name" : "CohesionKitTests",
"path" : "Tests/CohesionKitTests",
"sources" : [
"Combine/EntityObserverTests+Publisher.swift",
"EntityStoreTests.swift",
"KeyPath/PartialIdentifiableKeyPathTests.swift",
"LoggerMock.swift",
"Observer/ObserverRegistryTests.swift",
"Observer/Stub/ObserverRegistryStub.swift",
"RootFixture.swift",
"Storage/AliasContainerTests.swift",
"Storage/AliasStorageTests.swift",
"Storage/EntitiesStorageTests.swift",
"Storage/EntityNodeTests.swift",
"Visitor/EntityStoreVisitorTests.swift"
],
"target_dependencies" : [
"CohesionKit"
],
"type" : "test"
},
{
"c99name" : "CohesionKit",
"module_type" : "SwiftTarget",
"name" : "CohesionKit",
"path" : "Sources/CohesionKit",
"product_memberships" : [
"CohesionKit"
],
"sources" : [
"AliasKey.swift",
"Combine/EntityObserver+Publisher.swift",
"Combine/Publisher+CohesionKit.swift",
"Entity/Aggregate.swift",
"Entity/EntityWrapper.swift",
"EntityStore.swift",
"Identifier.swift",
"KeyPath/PartialIdentifiableKeyPath.swift",
"Logger.swift",
"Observer/EntityObserver.swift",
"Observer/ObserverRegistry.swift",
"Observer/Subscription.swift",
"Stamp/Date+Stamp.swift",
"Stamp/StampError.swift",
"Storage/AliasContainer.swift",
"Storage/AliasStorage.swift",
"Storage/EntitiesStorage.swift",
"Storage/EntityNode.swift",
"Visitor/EntityContext.swift",
"Visitor/EntityStoreVisitor.swift",
"Visitor/NestedEntitiesVisitor.swift",
"Weak.swift"
],
"type" : "library"
}
],
"tools_version" : "5.3"
}
Done.