Build Information
Failed to build StateTree, reference main (9ca906
), with Swift 6.2 (beta) for macOS (SPM) on 20 Jun 2025 15:11:28 UTC.
Build Command
env DEVELOPER_DIR=/Applications/Xcode-26.0.0-Beta.app xcrun swift build --arch arm64
Build Log
17 | self.stateStorage = stateStorage
18 | self.scopeStorage = scopeStorage
19 | self.newState = newState
| `- warning: main actor-isolated property 'newState' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
20 | }
21 |
:
38 | private let stateStorage: StateStorage
39 | private let scopeStorage: ScopeStorage
40 | private let newState: TreeStateRecord
| `- note: mutation of this property is only permitted within the actor
41 |
42 | private func updateScopes() throws -> (events: [NodeEvent], stats: UpdateStats) {
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/ChangeManagers/StateUpdater.swift:19:10: warning: main actor-isolated property 'stagedChanges' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
17 | self.state = state
18 | self.scopes = scopes
19 | self.stagedChanges = changes
| `- warning: main actor-isolated property 'stagedChanges' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
20 | }
21 |
:
50 | private let scopes: ScopeStorage
51 |
52 | private var stagedChanges: TreeChanges = .none
| `- note: mutation of this property is only permitted within the actor
53 |
54 | private func updateScopes() throws -> (events: [NodeEvent], stats: UpdateStats) {
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Models/RouteChanges.swift:23:14: warning: static property 'none' is not concurrency-safe because non-'Sendable' type 'TreeChanges' may have shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
1 | // MARK: - TreeChanges
2 |
3 | struct TreeChanges: TreeState {
| `- note: consider making struct 'TreeChanges' conform to the 'Sendable' protocol
4 |
5 | // MARK: Lifecycle
:
21 | // MARK: Internal
22 |
23 | static let none = TreeChanges()
| |- warning: static property 'none' is not concurrency-safe because non-'Sendable' type 'TreeChanges' may have shared mutable state; this is an error in the Swift 6 language mode [#MutableGlobalVariable]
| |- note: add '@MainActor' to make static property 'none' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
24 |
25 | let addedScopes: [NodeID]
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Models/RuntimeErrors.swift:18:14: warning: stored property 'state' of 'Sendable'-conforming struct 'InternalStateInconsistency' has non-sendable type 'TreeStateRecord'; this is an error in the Swift 6 language mode
16 | }
17 |
18 | public let state: TreeStateRecord
| `- warning: stored property 'state' of 'Sendable'-conforming struct 'InternalStateInconsistency' has non-sendable type 'TreeStateRecord'; this is an error in the Swift 6 language mode
19 | public let scopeIDs: [NodeID]
20 | public let nodeIDs: [NodeID]
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/TreeStateRecord.swift:8:15: note: consider making struct 'TreeStateRecord' conform to the 'Sendable' protocol
6 |
7 | /// The full StateTree state at a moment in time.
8 | public struct TreeStateRecord: TreeState {
| `- note: consider making struct 'TreeStateRecord' conform to the 'Sendable' protocol
9 |
10 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Models/RuntimeErrors.swift:19:14: warning: stored property 'scopeIDs' of 'Sendable'-conforming struct 'InternalStateInconsistency' has non-sendable type '[NodeID]'; this is an error in the Swift 6 language mode
17 |
18 | public let state: TreeStateRecord
19 | public let scopeIDs: [NodeID]
| `- warning: stored property 'scopeIDs' of 'Sendable'-conforming struct 'InternalStateInconsistency' has non-sendable type '[NodeID]'; this is an error in the Swift 6 language mode
20 | public let nodeIDs: [NodeID]
21 | public let stateDiscrepancy: [NodeID]
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Models/RuntimeErrors.swift:20:14: warning: stored property 'nodeIDs' of 'Sendable'-conforming struct 'InternalStateInconsistency' has non-sendable type '[NodeID]'; this is an error in the Swift 6 language mode
18 | public let state: TreeStateRecord
19 | public let scopeIDs: [NodeID]
20 | public let nodeIDs: [NodeID]
| `- warning: stored property 'nodeIDs' of 'Sendable'-conforming struct 'InternalStateInconsistency' has non-sendable type '[NodeID]'; this is an error in the Swift 6 language mode
21 | public let stateDiscrepancy: [NodeID]
22 | public let scopeDiscrepancy: [NodeID]
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Models/RuntimeErrors.swift:21:14: warning: stored property 'stateDiscrepancy' of 'Sendable'-conforming struct 'InternalStateInconsistency' has non-sendable type '[NodeID]'; this is an error in the Swift 6 language mode
19 | public let scopeIDs: [NodeID]
20 | public let nodeIDs: [NodeID]
21 | public let stateDiscrepancy: [NodeID]
| `- warning: stored property 'stateDiscrepancy' of 'Sendable'-conforming struct 'InternalStateInconsistency' has non-sendable type '[NodeID]'; this is an error in the Swift 6 language mode
22 | public let scopeDiscrepancy: [NodeID]
23 | public var description: String {
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Models/RuntimeErrors.swift:22:14: warning: stored property 'scopeDiscrepancy' of 'Sendable'-conforming struct 'InternalStateInconsistency' has non-sendable type '[NodeID]'; this is an error in the Swift 6 language mode
20 | public let nodeIDs: [NodeID]
21 | public let stateDiscrepancy: [NodeID]
22 | public let scopeDiscrepancy: [NodeID]
| `- warning: stored property 'scopeDiscrepancy' of 'Sendable'-conforming struct 'InternalStateInconsistency' has non-sendable type '[NodeID]'; this is an error in the Swift 6 language mode
23 | public var description: String {
24 | """
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Models/RuntimeErrors.swift:42:7: warning: stored property 'id' of 'Sendable'-conforming struct 'NodeNotFoundError' has non-sendable type 'NodeID'; this is an error in the Swift 6 language mode
40 |
41 | struct NodeNotFoundError: Error {
42 | let id: NodeID
| `- warning: stored property 'id' of 'Sendable'-conforming struct 'NodeNotFoundError' has non-sendable type 'NodeID'; this is an error in the Swift 6 language mode
43 | }
44 |
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Models/RuntimeErrors.swift:48:7: warning: stored property 'id' of 'Sendable'-conforming struct 'RouteNotFoundError' has non-sendable type 'RouteID'; this is an error in the Swift 6 language mode
46 |
47 | struct RouteNotFoundError: Error {
48 | let id: RouteID
| `- warning: stored property 'id' of 'Sendable'-conforming struct 'RouteNotFoundError' has non-sendable type 'RouteID'; this is an error in the Swift 6 language mode
49 | }
50 |
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/RouteSource.swift:15:15: note: consider making struct 'RouteID' conform to the 'Sendable' protocol
13 | // MARK: - RouteID
14 |
15 | public struct RouteID {
| `- note: consider making struct 'RouteID' conform to the 'Sendable' protocol
16 | public init(fieldID: FieldID, identity: LSID? = nil) {
17 | self.fieldID = fieldID
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Models/RuntimeErrors.swift:54:7: warning: stored property 'ids' of 'Sendable'-conforming struct 'NodesNotFoundError' has non-sendable type '[NodeID]'; this is an error in the Swift 6 language mode
52 |
53 | struct NodesNotFoundError: Error {
54 | let ids: [NodeID]
| `- warning: stored property 'ids' of 'Sendable'-conforming struct 'NodesNotFoundError' has non-sendable type '[NodeID]'; this is an error in the Swift 6 language mode
55 | }
56 |
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Models/RuntimeErrors.swift:10:37: warning: cannot form key path to main actor-isolated property 'nid'; this is an error in the Swift 6 language mode
8 | init(state: TreeStateRecord, scopes: [AnyScope]) {
9 | self.state = state
10 | let scopeIDs = Set(scopes.map(\.nid))
| `- warning: cannot form key path to main actor-isolated property 'nid'; this is an error in the Swift 6 language mode
11 | let nodeIDs = Set(state.nodeIDs)
12 | self.scopeIDs = Array(scopeIDs)
[#MutableGlobalVariable]: <https://docs.swift.org/compiler/documentation/diagnostics/mutable-global-variable>
[313/322] Compiling StateTree StateChangeMetadata.swift
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:183:7: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
181 | }
182 |
183 | var activeIntent: ActiveIntent<NodeID>? {
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
184 | state.activeIntent
185 | }
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:23:10: warning: main actor-isolated property 'dependencies' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
21 | ) {
22 | self.treeID = treeID
23 | self.dependencies = dependencies
| `- warning: main actor-isolated property 'dependencies' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
24 | self.configuration = configuration
25 | }
:
46 | private let state: StateStorage = .init()
47 | private let scopes: ScopeStorage = .init()
48 | private let dependencies: DependencyValues
| `- note: mutation of this property is only permitted within the actor
49 | private let didStabilizeSubject = PublishSubject<Void, Never>()
50 | private let updateSubject = PublishSubject<[TreeEvent], Never>()
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:24:10: warning: main actor-isolated property 'configuration' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
22 | self.treeID = treeID
23 | self.dependencies = dependencies
24 | self.configuration = configuration
| `- warning: main actor-isolated property 'configuration' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
25 | }
26 |
:
40 | // MARK: Internal
41 |
42 | let configuration: RuntimeConfiguration
| `- note: mutation of this property is only permitted within the actor
43 |
44 | // MARK: Private
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:32:5: warning: main actor-isolated property 'updateSubject' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
30 |
31 | public nonisolated var updateEmitter: some Emitter<[TreeEvent], Never> {
32 | updateSubject
| `- warning: main actor-isolated property 'updateSubject' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
33 | .merge(behaviorTracker.behaviorEvents.map { [.behavior(event: $0)] })
34 | }
:
48 | private let dependencies: DependencyValues
49 | private let didStabilizeSubject = PublishSubject<Void, Never>()
50 | private let updateSubject = PublishSubject<[TreeEvent], Never>()
| `- note: property declared here
51 | private var transactionCount: Int = 0
52 | private var updates: TreeChanges = .none
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:135:5: warning: main actor-isolated property 'configuration' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
40 | // MARK: Internal
41 |
42 | let configuration: RuntimeConfiguration
| `- note: property declared here
43 |
44 | // MARK: Private
:
133 |
134 | public nonisolated var behaviorEvents: some Emitter<BehaviorEvent, Never> {
135 | configuration.behaviorTracker.behaviorEvents
| `- warning: main actor-isolated property 'configuration' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
136 | }
137 |
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:180:5: warning: main actor-isolated property 'configuration' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
40 | // MARK: Internal
41 |
42 | let configuration: RuntimeConfiguration
| `- note: property declared here
43 |
44 | // MARK: Private
:
178 |
179 | nonisolated var behaviorTracker: BehaviorTracker {
180 | configuration.behaviorTracker
| `- warning: main actor-isolated property 'configuration' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
181 | }
182 |
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/StateStorage.swift:28:7: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
26 | }
27 |
28 | var activeIntent: ActiveIntent<NodeID>? {
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
29 | state.activeIntent
30 | }
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:42:39: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
40 | mutating func popIntentStep() {
41 | if var activeIntent {
42 | let (_, isValid) = activeIntent.popStep()
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
43 | if isValid {
44 | assert(activeIntent.isValid)
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:44:29: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
42 | let (_, isValid) = activeIntent.popStep()
43 | if isValid {
44 | assert(activeIntent.isValid)
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
45 | self.activeIntent = activeIntent
46 | } else {
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:47:30: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
45 | self.activeIntent = activeIntent
46 | } else {
47 | assert(!activeIntent.isValid)
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
48 | self.activeIntent = nil
49 | }
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:54:19: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
52 |
53 | mutating func recordIntentNodeDependency(_ nodeID: NodeID) {
54 | activeIntent?.recordConsumer(nodeID)
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
55 | }
56 |
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:59:23: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
57 | mutating func register(intent: Intent) throws {
58 | if let root {
59 | activeIntent = .init(intent: intent, from: root)
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
60 | } else {
61 | throw RootNodeMissingError()
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:68:20: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
66 | if
67 | let activeIntent,
68 | activeIntent.consumerIDs.contains(nodeID)
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
69 | {
70 | self.activeIntent = nil
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:53:41: warning: conformance of 'AnyScope' to protocol 'BehaviorScoping' crosses into main actor-isolated code and can cause data races; this is an error in the Swift 6 language mode [#ConformanceIsolation]
37 | }
38 |
39 | public func own(_ disposable: some Disposable) { underlying.own(disposable) }
| `- note: main actor-isolated instance method 'own' cannot satisfy nonisolated requirement
40 | public func canOwn() -> Bool { underlying.canOwn() }
| `- note: main actor-isolated instance method 'canOwn()' cannot satisfy nonisolated requirement
41 |
42 | // MARK: Internal
:
51 | // MARK: StateSyncableScope, BehaviorScoping
52 |
53 | extension AnyScope: StateSyncableScope, BehaviorScoping {
| | |- warning: conformance of 'AnyScope' to protocol 'BehaviorScoping' crosses into main actor-isolated code and can cause data races; this is an error in the Swift 6 language mode [#ConformanceIsolation]
| | |- note: isolate this conformance to the main actor with '@TreeActor'
| | `- note: turn data races into runtime errors with '@preconcurrency'
| `- note: mark all declarations used in the conformance 'nonisolated'
54 |
55 | // MARK: Public
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:17:10: warning: main actor-isolated property 'nid' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
15 |
16 | nonisolated init(scope: some ScopeTypeInternal<some Node>) {
17 | self.nid = scope.nid
| `- warning: main actor-isolated property 'nid' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
18 | self.depth = scope.depth
19 | self.underlying = scope
:
44 | let underlying: any ScopeTypeInternal
45 |
46 | let nid: NodeID
| `- note: mutation of this property is only permitted within the actor
47 | let depth: Int
48 | let getNodeFunc: @TreeActor () -> any Node
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:19:10: warning: main actor-isolated property 'underlying' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
17 | self.nid = scope.nid
18 | self.depth = scope.depth
19 | self.underlying = scope
| `- warning: main actor-isolated property 'underlying' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
20 | self.getNodeFunc = {
21 | scope.node
:
42 | // MARK: Internal
43 |
44 | let underlying: any ScopeTypeInternal
| `- note: mutation of this property is only permitted within the actor
45 |
46 | let nid: NodeID
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:20:10: warning: main actor-isolated property 'getNodeFunc' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
18 | self.depth = scope.depth
19 | self.underlying = scope
20 | self.getNodeFunc = {
| `- warning: main actor-isolated property 'getNodeFunc' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
21 | scope.node
22 | }
:
46 | let nid: NodeID
47 | let depth: Int
48 | let getNodeFunc: @TreeActor () -> any Node
| `- note: mutation of this property is only permitted within the actor
49 | }
50 |
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:32:9: warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
30 |
31 | public nonisolated static func == (lhs: AnyScope, rhs: AnyScope) -> Bool {
32 | lhs.nid == rhs.nid
| `- warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
33 | }
34 |
:
44 | let underlying: any ScopeTypeInternal
45 |
46 | let nid: NodeID
| `- note: property declared here
47 | let depth: Int
48 | let getNodeFunc: @TreeActor () -> any Node
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:32:20: warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
30 |
31 | public nonisolated static func == (lhs: AnyScope, rhs: AnyScope) -> Bool {
32 | lhs.nid == rhs.nid
| `- warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
33 | }
34 |
:
44 | let underlying: any ScopeTypeInternal
45 |
46 | let nid: NodeID
| `- note: property declared here
47 | let depth: Int
48 | let getNodeFunc: @TreeActor () -> any Node
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:36:20: warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
34 |
35 | public nonisolated func hash(into hasher: inout Hasher) {
36 | hasher.combine(nid)
| `- warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
37 | }
38 |
:
44 | let underlying: any ScopeTypeInternal
45 |
46 | let nid: NodeID
| `- note: property declared here
47 | let depth: Int
48 | let getNodeFunc: @TreeActor () -> any Node
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:21:7: warning: sending 'scope' risks causing data races; this is an error in the Swift 6 language mode [#SendingRisksDataRace]
19 | self.underlying = scope
20 | self.getNodeFunc = {
21 | scope.node
| |- warning: sending 'scope' risks causing data races; this is an error in the Swift 6 language mode [#SendingRisksDataRace]
| `- note: task-isolated 'scope' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
22 | }
23 | }
[#ConformanceIsolation]: <https://docs.swift.org/compiler/documentation/diagnostics/conformance-isolation>
[#SendingRisksDataRace]: <https://docs.swift.org/compiler/documentation/diagnostics/sending-risks-data-race>
[314/322] Compiling StateTree TreeEvent.swift
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:183:7: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
181 | }
182 |
183 | var activeIntent: ActiveIntent<NodeID>? {
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
184 | state.activeIntent
185 | }
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:23:10: warning: main actor-isolated property 'dependencies' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
21 | ) {
22 | self.treeID = treeID
23 | self.dependencies = dependencies
| `- warning: main actor-isolated property 'dependencies' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
24 | self.configuration = configuration
25 | }
:
46 | private let state: StateStorage = .init()
47 | private let scopes: ScopeStorage = .init()
48 | private let dependencies: DependencyValues
| `- note: mutation of this property is only permitted within the actor
49 | private let didStabilizeSubject = PublishSubject<Void, Never>()
50 | private let updateSubject = PublishSubject<[TreeEvent], Never>()
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:24:10: warning: main actor-isolated property 'configuration' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
22 | self.treeID = treeID
23 | self.dependencies = dependencies
24 | self.configuration = configuration
| `- warning: main actor-isolated property 'configuration' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
25 | }
26 |
:
40 | // MARK: Internal
41 |
42 | let configuration: RuntimeConfiguration
| `- note: mutation of this property is only permitted within the actor
43 |
44 | // MARK: Private
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:32:5: warning: main actor-isolated property 'updateSubject' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
30 |
31 | public nonisolated var updateEmitter: some Emitter<[TreeEvent], Never> {
32 | updateSubject
| `- warning: main actor-isolated property 'updateSubject' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
33 | .merge(behaviorTracker.behaviorEvents.map { [.behavior(event: $0)] })
34 | }
:
48 | private let dependencies: DependencyValues
49 | private let didStabilizeSubject = PublishSubject<Void, Never>()
50 | private let updateSubject = PublishSubject<[TreeEvent], Never>()
| `- note: property declared here
51 | private var transactionCount: Int = 0
52 | private var updates: TreeChanges = .none
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:135:5: warning: main actor-isolated property 'configuration' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
40 | // MARK: Internal
41 |
42 | let configuration: RuntimeConfiguration
| `- note: property declared here
43 |
44 | // MARK: Private
:
133 |
134 | public nonisolated var behaviorEvents: some Emitter<BehaviorEvent, Never> {
135 | configuration.behaviorTracker.behaviorEvents
| `- warning: main actor-isolated property 'configuration' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
136 | }
137 |
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:180:5: warning: main actor-isolated property 'configuration' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
40 | // MARK: Internal
41 |
42 | let configuration: RuntimeConfiguration
| `- note: property declared here
43 |
44 | // MARK: Private
:
178 |
179 | nonisolated var behaviorTracker: BehaviorTracker {
180 | configuration.behaviorTracker
| `- warning: main actor-isolated property 'configuration' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
181 | }
182 |
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/StateStorage.swift:28:7: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
26 | }
27 |
28 | var activeIntent: ActiveIntent<NodeID>? {
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
29 | state.activeIntent
30 | }
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:42:39: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
40 | mutating func popIntentStep() {
41 | if var activeIntent {
42 | let (_, isValid) = activeIntent.popStep()
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
43 | if isValid {
44 | assert(activeIntent.isValid)
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:44:29: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
42 | let (_, isValid) = activeIntent.popStep()
43 | if isValid {
44 | assert(activeIntent.isValid)
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
45 | self.activeIntent = activeIntent
46 | } else {
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:47:30: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
45 | self.activeIntent = activeIntent
46 | } else {
47 | assert(!activeIntent.isValid)
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
48 | self.activeIntent = nil
49 | }
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:54:19: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
52 |
53 | mutating func recordIntentNodeDependency(_ nodeID: NodeID) {
54 | activeIntent?.recordConsumer(nodeID)
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
55 | }
56 |
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:59:23: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
57 | mutating func register(intent: Intent) throws {
58 | if let root {
59 | activeIntent = .init(intent: intent, from: root)
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
60 | } else {
61 | throw RootNodeMissingError()
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:68:20: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
66 | if
67 | let activeIntent,
68 | activeIntent.consumerIDs.contains(nodeID)
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
69 | {
70 | self.activeIntent = nil
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:53:41: warning: conformance of 'AnyScope' to protocol 'BehaviorScoping' crosses into main actor-isolated code and can cause data races; this is an error in the Swift 6 language mode [#ConformanceIsolation]
37 | }
38 |
39 | public func own(_ disposable: some Disposable) { underlying.own(disposable) }
| `- note: main actor-isolated instance method 'own' cannot satisfy nonisolated requirement
40 | public func canOwn() -> Bool { underlying.canOwn() }
| `- note: main actor-isolated instance method 'canOwn()' cannot satisfy nonisolated requirement
41 |
42 | // MARK: Internal
:
51 | // MARK: StateSyncableScope, BehaviorScoping
52 |
53 | extension AnyScope: StateSyncableScope, BehaviorScoping {
| | |- warning: conformance of 'AnyScope' to protocol 'BehaviorScoping' crosses into main actor-isolated code and can cause data races; this is an error in the Swift 6 language mode [#ConformanceIsolation]
| | |- note: isolate this conformance to the main actor with '@TreeActor'
| | `- note: turn data races into runtime errors with '@preconcurrency'
| `- note: mark all declarations used in the conformance 'nonisolated'
54 |
55 | // MARK: Public
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:17:10: warning: main actor-isolated property 'nid' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
15 |
16 | nonisolated init(scope: some ScopeTypeInternal<some Node>) {
17 | self.nid = scope.nid
| `- warning: main actor-isolated property 'nid' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
18 | self.depth = scope.depth
19 | self.underlying = scope
:
44 | let underlying: any ScopeTypeInternal
45 |
46 | let nid: NodeID
| `- note: mutation of this property is only permitted within the actor
47 | let depth: Int
48 | let getNodeFunc: @TreeActor () -> any Node
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:19:10: warning: main actor-isolated property 'underlying' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
17 | self.nid = scope.nid
18 | self.depth = scope.depth
19 | self.underlying = scope
| `- warning: main actor-isolated property 'underlying' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
20 | self.getNodeFunc = {
21 | scope.node
:
42 | // MARK: Internal
43 |
44 | let underlying: any ScopeTypeInternal
| `- note: mutation of this property is only permitted within the actor
45 |
46 | let nid: NodeID
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:20:10: warning: main actor-isolated property 'getNodeFunc' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
18 | self.depth = scope.depth
19 | self.underlying = scope
20 | self.getNodeFunc = {
| `- warning: main actor-isolated property 'getNodeFunc' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
21 | scope.node
22 | }
:
46 | let nid: NodeID
47 | let depth: Int
48 | let getNodeFunc: @TreeActor () -> any Node
| `- note: mutation of this property is only permitted within the actor
49 | }
50 |
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:32:9: warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
30 |
31 | public nonisolated static func == (lhs: AnyScope, rhs: AnyScope) -> Bool {
32 | lhs.nid == rhs.nid
| `- warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
33 | }
34 |
:
44 | let underlying: any ScopeTypeInternal
45 |
46 | let nid: NodeID
| `- note: property declared here
47 | let depth: Int
48 | let getNodeFunc: @TreeActor () -> any Node
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:32:20: warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
30 |
31 | public nonisolated static func == (lhs: AnyScope, rhs: AnyScope) -> Bool {
32 | lhs.nid == rhs.nid
| `- warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
33 | }
34 |
:
44 | let underlying: any ScopeTypeInternal
45 |
46 | let nid: NodeID
| `- note: property declared here
47 | let depth: Int
48 | let getNodeFunc: @TreeActor () -> any Node
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:36:20: warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
34 |
35 | public nonisolated func hash(into hasher: inout Hasher) {
36 | hasher.combine(nid)
| `- warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
37 | }
38 |
:
44 | let underlying: any ScopeTypeInternal
45 |
46 | let nid: NodeID
| `- note: property declared here
47 | let depth: Int
48 | let getNodeFunc: @TreeActor () -> any Node
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:21:7: warning: sending 'scope' risks causing data races; this is an error in the Swift 6 language mode [#SendingRisksDataRace]
19 | self.underlying = scope
20 | self.getNodeFunc = {
21 | scope.node
| |- warning: sending 'scope' risks causing data races; this is an error in the Swift 6 language mode [#SendingRisksDataRace]
| `- note: task-isolated 'scope' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
22 | }
23 | }
[#ConformanceIsolation]: <https://docs.swift.org/compiler/documentation/diagnostics/conformance-isolation>
[#SendingRisksDataRace]: <https://docs.swift.org/compiler/documentation/diagnostics/sending-risks-data-race>
[315/322] Compiling StateTree TreeLifecyclleEvent.swift
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:183:7: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
181 | }
182 |
183 | var activeIntent: ActiveIntent<NodeID>? {
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
184 | state.activeIntent
185 | }
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:23:10: warning: main actor-isolated property 'dependencies' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
21 | ) {
22 | self.treeID = treeID
23 | self.dependencies = dependencies
| `- warning: main actor-isolated property 'dependencies' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
24 | self.configuration = configuration
25 | }
:
46 | private let state: StateStorage = .init()
47 | private let scopes: ScopeStorage = .init()
48 | private let dependencies: DependencyValues
| `- note: mutation of this property is only permitted within the actor
49 | private let didStabilizeSubject = PublishSubject<Void, Never>()
50 | private let updateSubject = PublishSubject<[TreeEvent], Never>()
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:24:10: warning: main actor-isolated property 'configuration' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
22 | self.treeID = treeID
23 | self.dependencies = dependencies
24 | self.configuration = configuration
| `- warning: main actor-isolated property 'configuration' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
25 | }
26 |
:
40 | // MARK: Internal
41 |
42 | let configuration: RuntimeConfiguration
| `- note: mutation of this property is only permitted within the actor
43 |
44 | // MARK: Private
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:32:5: warning: main actor-isolated property 'updateSubject' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
30 |
31 | public nonisolated var updateEmitter: some Emitter<[TreeEvent], Never> {
32 | updateSubject
| `- warning: main actor-isolated property 'updateSubject' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
33 | .merge(behaviorTracker.behaviorEvents.map { [.behavior(event: $0)] })
34 | }
:
48 | private let dependencies: DependencyValues
49 | private let didStabilizeSubject = PublishSubject<Void, Never>()
50 | private let updateSubject = PublishSubject<[TreeEvent], Never>()
| `- note: property declared here
51 | private var transactionCount: Int = 0
52 | private var updates: TreeChanges = .none
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:135:5: warning: main actor-isolated property 'configuration' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
40 | // MARK: Internal
41 |
42 | let configuration: RuntimeConfiguration
| `- note: property declared here
43 |
44 | // MARK: Private
:
133 |
134 | public nonisolated var behaviorEvents: some Emitter<BehaviorEvent, Never> {
135 | configuration.behaviorTracker.behaviorEvents
| `- warning: main actor-isolated property 'configuration' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
136 | }
137 |
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:180:5: warning: main actor-isolated property 'configuration' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
40 | // MARK: Internal
41 |
42 | let configuration: RuntimeConfiguration
| `- note: property declared here
43 |
44 | // MARK: Private
:
178 |
179 | nonisolated var behaviorTracker: BehaviorTracker {
180 | configuration.behaviorTracker
| `- warning: main actor-isolated property 'configuration' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
181 | }
182 |
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/StateStorage.swift:28:7: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
26 | }
27 |
28 | var activeIntent: ActiveIntent<NodeID>? {
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
29 | state.activeIntent
30 | }
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:42:39: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
40 | mutating func popIntentStep() {
41 | if var activeIntent {
42 | let (_, isValid) = activeIntent.popStep()
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
43 | if isValid {
44 | assert(activeIntent.isValid)
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:44:29: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
42 | let (_, isValid) = activeIntent.popStep()
43 | if isValid {
44 | assert(activeIntent.isValid)
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
45 | self.activeIntent = activeIntent
46 | } else {
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:47:30: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
45 | self.activeIntent = activeIntent
46 | } else {
47 | assert(!activeIntent.isValid)
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
48 | self.activeIntent = nil
49 | }
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:54:19: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
52 |
53 | mutating func recordIntentNodeDependency(_ nodeID: NodeID) {
54 | activeIntent?.recordConsumer(nodeID)
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
55 | }
56 |
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:59:23: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
57 | mutating func register(intent: Intent) throws {
58 | if let root {
59 | activeIntent = .init(intent: intent, from: root)
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
60 | } else {
61 | throw RootNodeMissingError()
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:68:20: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
66 | if
67 | let activeIntent,
68 | activeIntent.consumerIDs.contains(nodeID)
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
69 | {
70 | self.activeIntent = nil
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:53:41: warning: conformance of 'AnyScope' to protocol 'BehaviorScoping' crosses into main actor-isolated code and can cause data races; this is an error in the Swift 6 language mode [#ConformanceIsolation]
37 | }
38 |
39 | public func own(_ disposable: some Disposable) { underlying.own(disposable) }
| `- note: main actor-isolated instance method 'own' cannot satisfy nonisolated requirement
40 | public func canOwn() -> Bool { underlying.canOwn() }
| `- note: main actor-isolated instance method 'canOwn()' cannot satisfy nonisolated requirement
41 |
42 | // MARK: Internal
:
51 | // MARK: StateSyncableScope, BehaviorScoping
52 |
53 | extension AnyScope: StateSyncableScope, BehaviorScoping {
| | |- warning: conformance of 'AnyScope' to protocol 'BehaviorScoping' crosses into main actor-isolated code and can cause data races; this is an error in the Swift 6 language mode [#ConformanceIsolation]
| | |- note: isolate this conformance to the main actor with '@TreeActor'
| | `- note: turn data races into runtime errors with '@preconcurrency'
| `- note: mark all declarations used in the conformance 'nonisolated'
54 |
55 | // MARK: Public
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:17:10: warning: main actor-isolated property 'nid' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
15 |
16 | nonisolated init(scope: some ScopeTypeInternal<some Node>) {
17 | self.nid = scope.nid
| `- warning: main actor-isolated property 'nid' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
18 | self.depth = scope.depth
19 | self.underlying = scope
:
44 | let underlying: any ScopeTypeInternal
45 |
46 | let nid: NodeID
| `- note: mutation of this property is only permitted within the actor
47 | let depth: Int
48 | let getNodeFunc: @TreeActor () -> any Node
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:19:10: warning: main actor-isolated property 'underlying' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
17 | self.nid = scope.nid
18 | self.depth = scope.depth
19 | self.underlying = scope
| `- warning: main actor-isolated property 'underlying' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
20 | self.getNodeFunc = {
21 | scope.node
:
42 | // MARK: Internal
43 |
44 | let underlying: any ScopeTypeInternal
| `- note: mutation of this property is only permitted within the actor
45 |
46 | let nid: NodeID
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:20:10: warning: main actor-isolated property 'getNodeFunc' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
18 | self.depth = scope.depth
19 | self.underlying = scope
20 | self.getNodeFunc = {
| `- warning: main actor-isolated property 'getNodeFunc' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
21 | scope.node
22 | }
:
46 | let nid: NodeID
47 | let depth: Int
48 | let getNodeFunc: @TreeActor () -> any Node
| `- note: mutation of this property is only permitted within the actor
49 | }
50 |
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:32:9: warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
30 |
31 | public nonisolated static func == (lhs: AnyScope, rhs: AnyScope) -> Bool {
32 | lhs.nid == rhs.nid
| `- warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
33 | }
34 |
:
44 | let underlying: any ScopeTypeInternal
45 |
46 | let nid: NodeID
| `- note: property declared here
47 | let depth: Int
48 | let getNodeFunc: @TreeActor () -> any Node
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:32:20: warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
30 |
31 | public nonisolated static func == (lhs: AnyScope, rhs: AnyScope) -> Bool {
32 | lhs.nid == rhs.nid
| `- warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
33 | }
34 |
:
44 | let underlying: any ScopeTypeInternal
45 |
46 | let nid: NodeID
| `- note: property declared here
47 | let depth: Int
48 | let getNodeFunc: @TreeActor () -> any Node
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:36:20: warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
34 |
35 | public nonisolated func hash(into hasher: inout Hasher) {
36 | hasher.combine(nid)
| `- warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
37 | }
38 |
:
44 | let underlying: any ScopeTypeInternal
45 |
46 | let nid: NodeID
| `- note: property declared here
47 | let depth: Int
48 | let getNodeFunc: @TreeActor () -> any Node
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:21:7: warning: sending 'scope' risks causing data races; this is an error in the Swift 6 language mode [#SendingRisksDataRace]
19 | self.underlying = scope
20 | self.getNodeFunc = {
21 | scope.node
| |- warning: sending 'scope' risks causing data races; this is an error in the Swift 6 language mode [#SendingRisksDataRace]
| `- note: task-isolated 'scope' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
22 | }
23 | }
[#ConformanceIsolation]: <https://docs.swift.org/compiler/documentation/diagnostics/conformance-isolation>
[#SendingRisksDataRace]: <https://docs.swift.org/compiler/documentation/diagnostics/sending-risks-data-race>
[316/322] Compiling StateTree PriorityQueue.swift
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:183:7: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
181 | }
182 |
183 | var activeIntent: ActiveIntent<NodeID>? {
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
184 | state.activeIntent
185 | }
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:23:10: warning: main actor-isolated property 'dependencies' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
21 | ) {
22 | self.treeID = treeID
23 | self.dependencies = dependencies
| `- warning: main actor-isolated property 'dependencies' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
24 | self.configuration = configuration
25 | }
:
46 | private let state: StateStorage = .init()
47 | private let scopes: ScopeStorage = .init()
48 | private let dependencies: DependencyValues
| `- note: mutation of this property is only permitted within the actor
49 | private let didStabilizeSubject = PublishSubject<Void, Never>()
50 | private let updateSubject = PublishSubject<[TreeEvent], Never>()
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:24:10: warning: main actor-isolated property 'configuration' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
22 | self.treeID = treeID
23 | self.dependencies = dependencies
24 | self.configuration = configuration
| `- warning: main actor-isolated property 'configuration' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
25 | }
26 |
:
40 | // MARK: Internal
41 |
42 | let configuration: RuntimeConfiguration
| `- note: mutation of this property is only permitted within the actor
43 |
44 | // MARK: Private
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:32:5: warning: main actor-isolated property 'updateSubject' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
30 |
31 | public nonisolated var updateEmitter: some Emitter<[TreeEvent], Never> {
32 | updateSubject
| `- warning: main actor-isolated property 'updateSubject' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
33 | .merge(behaviorTracker.behaviorEvents.map { [.behavior(event: $0)] })
34 | }
:
48 | private let dependencies: DependencyValues
49 | private let didStabilizeSubject = PublishSubject<Void, Never>()
50 | private let updateSubject = PublishSubject<[TreeEvent], Never>()
| `- note: property declared here
51 | private var transactionCount: Int = 0
52 | private var updates: TreeChanges = .none
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:135:5: warning: main actor-isolated property 'configuration' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
40 | // MARK: Internal
41 |
42 | let configuration: RuntimeConfiguration
| `- note: property declared here
43 |
44 | // MARK: Private
:
133 |
134 | public nonisolated var behaviorEvents: some Emitter<BehaviorEvent, Never> {
135 | configuration.behaviorTracker.behaviorEvents
| `- warning: main actor-isolated property 'configuration' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
136 | }
137 |
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:180:5: warning: main actor-isolated property 'configuration' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
40 | // MARK: Internal
41 |
42 | let configuration: RuntimeConfiguration
| `- note: property declared here
43 |
44 | // MARK: Private
:
178 |
179 | nonisolated var behaviorTracker: BehaviorTracker {
180 | configuration.behaviorTracker
| `- warning: main actor-isolated property 'configuration' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
181 | }
182 |
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/StateStorage.swift:28:7: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
26 | }
27 |
28 | var activeIntent: ActiveIntent<NodeID>? {
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
29 | state.activeIntent
30 | }
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:42:39: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
40 | mutating func popIntentStep() {
41 | if var activeIntent {
42 | let (_, isValid) = activeIntent.popStep()
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
43 | if isValid {
44 | assert(activeIntent.isValid)
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:44:29: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
42 | let (_, isValid) = activeIntent.popStep()
43 | if isValid {
44 | assert(activeIntent.isValid)
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
45 | self.activeIntent = activeIntent
46 | } else {
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:47:30: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
45 | self.activeIntent = activeIntent
46 | } else {
47 | assert(!activeIntent.isValid)
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
48 | self.activeIntent = nil
49 | }
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:54:19: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
52 |
53 | mutating func recordIntentNodeDependency(_ nodeID: NodeID) {
54 | activeIntent?.recordConsumer(nodeID)
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
55 | }
56 |
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:59:23: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
57 | mutating func register(intent: Intent) throws {
58 | if let root {
59 | activeIntent = .init(intent: intent, from: root)
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
60 | } else {
61 | throw RootNodeMissingError()
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:68:20: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
66 | if
67 | let activeIntent,
68 | activeIntent.consumerIDs.contains(nodeID)
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
69 | {
70 | self.activeIntent = nil
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:53:41: warning: conformance of 'AnyScope' to protocol 'BehaviorScoping' crosses into main actor-isolated code and can cause data races; this is an error in the Swift 6 language mode [#ConformanceIsolation]
37 | }
38 |
39 | public func own(_ disposable: some Disposable) { underlying.own(disposable) }
| `- note: main actor-isolated instance method 'own' cannot satisfy nonisolated requirement
40 | public func canOwn() -> Bool { underlying.canOwn() }
| `- note: main actor-isolated instance method 'canOwn()' cannot satisfy nonisolated requirement
41 |
42 | // MARK: Internal
:
51 | // MARK: StateSyncableScope, BehaviorScoping
52 |
53 | extension AnyScope: StateSyncableScope, BehaviorScoping {
| | |- warning: conformance of 'AnyScope' to protocol 'BehaviorScoping' crosses into main actor-isolated code and can cause data races; this is an error in the Swift 6 language mode [#ConformanceIsolation]
| | |- note: isolate this conformance to the main actor with '@TreeActor'
| | `- note: turn data races into runtime errors with '@preconcurrency'
| `- note: mark all declarations used in the conformance 'nonisolated'
54 |
55 | // MARK: Public
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:17:10: warning: main actor-isolated property 'nid' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
15 |
16 | nonisolated init(scope: some ScopeTypeInternal<some Node>) {
17 | self.nid = scope.nid
| `- warning: main actor-isolated property 'nid' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
18 | self.depth = scope.depth
19 | self.underlying = scope
:
44 | let underlying: any ScopeTypeInternal
45 |
46 | let nid: NodeID
| `- note: mutation of this property is only permitted within the actor
47 | let depth: Int
48 | let getNodeFunc: @TreeActor () -> any Node
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:19:10: warning: main actor-isolated property 'underlying' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
17 | self.nid = scope.nid
18 | self.depth = scope.depth
19 | self.underlying = scope
| `- warning: main actor-isolated property 'underlying' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
20 | self.getNodeFunc = {
21 | scope.node
:
42 | // MARK: Internal
43 |
44 | let underlying: any ScopeTypeInternal
| `- note: mutation of this property is only permitted within the actor
45 |
46 | let nid: NodeID
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:20:10: warning: main actor-isolated property 'getNodeFunc' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
18 | self.depth = scope.depth
19 | self.underlying = scope
20 | self.getNodeFunc = {
| `- warning: main actor-isolated property 'getNodeFunc' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
21 | scope.node
22 | }
:
46 | let nid: NodeID
47 | let depth: Int
48 | let getNodeFunc: @TreeActor () -> any Node
| `- note: mutation of this property is only permitted within the actor
49 | }
50 |
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:32:9: warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
30 |
31 | public nonisolated static func == (lhs: AnyScope, rhs: AnyScope) -> Bool {
32 | lhs.nid == rhs.nid
| `- warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
33 | }
34 |
:
44 | let underlying: any ScopeTypeInternal
45 |
46 | let nid: NodeID
| `- note: property declared here
47 | let depth: Int
48 | let getNodeFunc: @TreeActor () -> any Node
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:32:20: warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
30 |
31 | public nonisolated static func == (lhs: AnyScope, rhs: AnyScope) -> Bool {
32 | lhs.nid == rhs.nid
| `- warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
33 | }
34 |
:
44 | let underlying: any ScopeTypeInternal
45 |
46 | let nid: NodeID
| `- note: property declared here
47 | let depth: Int
48 | let getNodeFunc: @TreeActor () -> any Node
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:36:20: warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
34 |
35 | public nonisolated func hash(into hasher: inout Hasher) {
36 | hasher.combine(nid)
| `- warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
37 | }
38 |
:
44 | let underlying: any ScopeTypeInternal
45 |
46 | let nid: NodeID
| `- note: property declared here
47 | let depth: Int
48 | let getNodeFunc: @TreeActor () -> any Node
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:21:7: warning: sending 'scope' risks causing data races; this is an error in the Swift 6 language mode [#SendingRisksDataRace]
19 | self.underlying = scope
20 | self.getNodeFunc = {
21 | scope.node
| |- warning: sending 'scope' risks causing data races; this is an error in the Swift 6 language mode [#SendingRisksDataRace]
| `- note: task-isolated 'scope' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
22 | }
23 | }
[#ConformanceIsolation]: <https://docs.swift.org/compiler/documentation/diagnostics/conformance-isolation>
[#SendingRisksDataRace]: <https://docs.swift.org/compiler/documentation/diagnostics/sending-risks-data-race>
[317/322] Compiling StateTree Runtime.swift
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:183:7: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
181 | }
182 |
183 | var activeIntent: ActiveIntent<NodeID>? {
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
184 | state.activeIntent
185 | }
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:23:10: warning: main actor-isolated property 'dependencies' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
21 | ) {
22 | self.treeID = treeID
23 | self.dependencies = dependencies
| `- warning: main actor-isolated property 'dependencies' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
24 | self.configuration = configuration
25 | }
:
46 | private let state: StateStorage = .init()
47 | private let scopes: ScopeStorage = .init()
48 | private let dependencies: DependencyValues
| `- note: mutation of this property is only permitted within the actor
49 | private let didStabilizeSubject = PublishSubject<Void, Never>()
50 | private let updateSubject = PublishSubject<[TreeEvent], Never>()
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:24:10: warning: main actor-isolated property 'configuration' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
22 | self.treeID = treeID
23 | self.dependencies = dependencies
24 | self.configuration = configuration
| `- warning: main actor-isolated property 'configuration' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
25 | }
26 |
:
40 | // MARK: Internal
41 |
42 | let configuration: RuntimeConfiguration
| `- note: mutation of this property is only permitted within the actor
43 |
44 | // MARK: Private
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:32:5: warning: main actor-isolated property 'updateSubject' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
30 |
31 | public nonisolated var updateEmitter: some Emitter<[TreeEvent], Never> {
32 | updateSubject
| `- warning: main actor-isolated property 'updateSubject' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
33 | .merge(behaviorTracker.behaviorEvents.map { [.behavior(event: $0)] })
34 | }
:
48 | private let dependencies: DependencyValues
49 | private let didStabilizeSubject = PublishSubject<Void, Never>()
50 | private let updateSubject = PublishSubject<[TreeEvent], Never>()
| `- note: property declared here
51 | private var transactionCount: Int = 0
52 | private var updates: TreeChanges = .none
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:135:5: warning: main actor-isolated property 'configuration' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
40 | // MARK: Internal
41 |
42 | let configuration: RuntimeConfiguration
| `- note: property declared here
43 |
44 | // MARK: Private
:
133 |
134 | public nonisolated var behaviorEvents: some Emitter<BehaviorEvent, Never> {
135 | configuration.behaviorTracker.behaviorEvents
| `- warning: main actor-isolated property 'configuration' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
136 | }
137 |
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:180:5: warning: main actor-isolated property 'configuration' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
40 | // MARK: Internal
41 |
42 | let configuration: RuntimeConfiguration
| `- note: property declared here
43 |
44 | // MARK: Private
:
178 |
179 | nonisolated var behaviorTracker: BehaviorTracker {
180 | configuration.behaviorTracker
| `- warning: main actor-isolated property 'configuration' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
181 | }
182 |
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/StateStorage.swift:28:7: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
26 | }
27 |
28 | var activeIntent: ActiveIntent<NodeID>? {
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
29 | state.activeIntent
30 | }
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:42:39: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
40 | mutating func popIntentStep() {
41 | if var activeIntent {
42 | let (_, isValid) = activeIntent.popStep()
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
43 | if isValid {
44 | assert(activeIntent.isValid)
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:44:29: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
42 | let (_, isValid) = activeIntent.popStep()
43 | if isValid {
44 | assert(activeIntent.isValid)
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
45 | self.activeIntent = activeIntent
46 | } else {
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:47:30: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
45 | self.activeIntent = activeIntent
46 | } else {
47 | assert(!activeIntent.isValid)
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
48 | self.activeIntent = nil
49 | }
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:54:19: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
52 |
53 | mutating func recordIntentNodeDependency(_ nodeID: NodeID) {
54 | activeIntent?.recordConsumer(nodeID)
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
55 | }
56 |
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:59:23: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
57 | mutating func register(intent: Intent) throws {
58 | if let root {
59 | activeIntent = .init(intent: intent, from: root)
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
60 | } else {
61 | throw RootNodeMissingError()
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:68:20: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
66 | if
67 | let activeIntent,
68 | activeIntent.consumerIDs.contains(nodeID)
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
69 | {
70 | self.activeIntent = nil
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:53:41: warning: conformance of 'AnyScope' to protocol 'BehaviorScoping' crosses into main actor-isolated code and can cause data races; this is an error in the Swift 6 language mode [#ConformanceIsolation]
37 | }
38 |
39 | public func own(_ disposable: some Disposable) { underlying.own(disposable) }
| `- note: main actor-isolated instance method 'own' cannot satisfy nonisolated requirement
40 | public func canOwn() -> Bool { underlying.canOwn() }
| `- note: main actor-isolated instance method 'canOwn()' cannot satisfy nonisolated requirement
41 |
42 | // MARK: Internal
:
51 | // MARK: StateSyncableScope, BehaviorScoping
52 |
53 | extension AnyScope: StateSyncableScope, BehaviorScoping {
| | |- warning: conformance of 'AnyScope' to protocol 'BehaviorScoping' crosses into main actor-isolated code and can cause data races; this is an error in the Swift 6 language mode [#ConformanceIsolation]
| | |- note: isolate this conformance to the main actor with '@TreeActor'
| | `- note: turn data races into runtime errors with '@preconcurrency'
| `- note: mark all declarations used in the conformance 'nonisolated'
54 |
55 | // MARK: Public
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:17:10: warning: main actor-isolated property 'nid' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
15 |
16 | nonisolated init(scope: some ScopeTypeInternal<some Node>) {
17 | self.nid = scope.nid
| `- warning: main actor-isolated property 'nid' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
18 | self.depth = scope.depth
19 | self.underlying = scope
:
44 | let underlying: any ScopeTypeInternal
45 |
46 | let nid: NodeID
| `- note: mutation of this property is only permitted within the actor
47 | let depth: Int
48 | let getNodeFunc: @TreeActor () -> any Node
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:19:10: warning: main actor-isolated property 'underlying' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
17 | self.nid = scope.nid
18 | self.depth = scope.depth
19 | self.underlying = scope
| `- warning: main actor-isolated property 'underlying' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
20 | self.getNodeFunc = {
21 | scope.node
:
42 | // MARK: Internal
43 |
44 | let underlying: any ScopeTypeInternal
| `- note: mutation of this property is only permitted within the actor
45 |
46 | let nid: NodeID
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:20:10: warning: main actor-isolated property 'getNodeFunc' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
18 | self.depth = scope.depth
19 | self.underlying = scope
20 | self.getNodeFunc = {
| `- warning: main actor-isolated property 'getNodeFunc' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
21 | scope.node
22 | }
:
46 | let nid: NodeID
47 | let depth: Int
48 | let getNodeFunc: @TreeActor () -> any Node
| `- note: mutation of this property is only permitted within the actor
49 | }
50 |
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:32:9: warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
30 |
31 | public nonisolated static func == (lhs: AnyScope, rhs: AnyScope) -> Bool {
32 | lhs.nid == rhs.nid
| `- warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
33 | }
34 |
:
44 | let underlying: any ScopeTypeInternal
45 |
46 | let nid: NodeID
| `- note: property declared here
47 | let depth: Int
48 | let getNodeFunc: @TreeActor () -> any Node
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:32:20: warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
30 |
31 | public nonisolated static func == (lhs: AnyScope, rhs: AnyScope) -> Bool {
32 | lhs.nid == rhs.nid
| `- warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
33 | }
34 |
:
44 | let underlying: any ScopeTypeInternal
45 |
46 | let nid: NodeID
| `- note: property declared here
47 | let depth: Int
48 | let getNodeFunc: @TreeActor () -> any Node
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:36:20: warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
34 |
35 | public nonisolated func hash(into hasher: inout Hasher) {
36 | hasher.combine(nid)
| `- warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
37 | }
38 |
:
44 | let underlying: any ScopeTypeInternal
45 |
46 | let nid: NodeID
| `- note: property declared here
47 | let depth: Int
48 | let getNodeFunc: @TreeActor () -> any Node
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:21:7: warning: sending 'scope' risks causing data races; this is an error in the Swift 6 language mode [#SendingRisksDataRace]
19 | self.underlying = scope
20 | self.getNodeFunc = {
21 | scope.node
| |- warning: sending 'scope' risks causing data races; this is an error in the Swift 6 language mode [#SendingRisksDataRace]
| `- note: task-isolated 'scope' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
22 | }
23 | }
[#ConformanceIsolation]: <https://docs.swift.org/compiler/documentation/diagnostics/conformance-isolation>
[#SendingRisksDataRace]: <https://docs.swift.org/compiler/documentation/diagnostics/sending-risks-data-race>
[318/322] Compiling StateTree ScopeStorage.swift
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:183:7: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
181 | }
182 |
183 | var activeIntent: ActiveIntent<NodeID>? {
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
184 | state.activeIntent
185 | }
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:23:10: warning: main actor-isolated property 'dependencies' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
21 | ) {
22 | self.treeID = treeID
23 | self.dependencies = dependencies
| `- warning: main actor-isolated property 'dependencies' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
24 | self.configuration = configuration
25 | }
:
46 | private let state: StateStorage = .init()
47 | private let scopes: ScopeStorage = .init()
48 | private let dependencies: DependencyValues
| `- note: mutation of this property is only permitted within the actor
49 | private let didStabilizeSubject = PublishSubject<Void, Never>()
50 | private let updateSubject = PublishSubject<[TreeEvent], Never>()
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:24:10: warning: main actor-isolated property 'configuration' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
22 | self.treeID = treeID
23 | self.dependencies = dependencies
24 | self.configuration = configuration
| `- warning: main actor-isolated property 'configuration' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
25 | }
26 |
:
40 | // MARK: Internal
41 |
42 | let configuration: RuntimeConfiguration
| `- note: mutation of this property is only permitted within the actor
43 |
44 | // MARK: Private
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:32:5: warning: main actor-isolated property 'updateSubject' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
30 |
31 | public nonisolated var updateEmitter: some Emitter<[TreeEvent], Never> {
32 | updateSubject
| `- warning: main actor-isolated property 'updateSubject' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
33 | .merge(behaviorTracker.behaviorEvents.map { [.behavior(event: $0)] })
34 | }
:
48 | private let dependencies: DependencyValues
49 | private let didStabilizeSubject = PublishSubject<Void, Never>()
50 | private let updateSubject = PublishSubject<[TreeEvent], Never>()
| `- note: property declared here
51 | private var transactionCount: Int = 0
52 | private var updates: TreeChanges = .none
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:135:5: warning: main actor-isolated property 'configuration' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
40 | // MARK: Internal
41 |
42 | let configuration: RuntimeConfiguration
| `- note: property declared here
43 |
44 | // MARK: Private
:
133 |
134 | public nonisolated var behaviorEvents: some Emitter<BehaviorEvent, Never> {
135 | configuration.behaviorTracker.behaviorEvents
| `- warning: main actor-isolated property 'configuration' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
136 | }
137 |
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:180:5: warning: main actor-isolated property 'configuration' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
40 | // MARK: Internal
41 |
42 | let configuration: RuntimeConfiguration
| `- note: property declared here
43 |
44 | // MARK: Private
:
178 |
179 | nonisolated var behaviorTracker: BehaviorTracker {
180 | configuration.behaviorTracker
| `- warning: main actor-isolated property 'configuration' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
181 | }
182 |
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/StateStorage.swift:28:7: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
26 | }
27 |
28 | var activeIntent: ActiveIntent<NodeID>? {
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
29 | state.activeIntent
30 | }
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:42:39: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
40 | mutating func popIntentStep() {
41 | if var activeIntent {
42 | let (_, isValid) = activeIntent.popStep()
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
43 | if isValid {
44 | assert(activeIntent.isValid)
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:44:29: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
42 | let (_, isValid) = activeIntent.popStep()
43 | if isValid {
44 | assert(activeIntent.isValid)
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
45 | self.activeIntent = activeIntent
46 | } else {
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:47:30: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
45 | self.activeIntent = activeIntent
46 | } else {
47 | assert(!activeIntent.isValid)
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
48 | self.activeIntent = nil
49 | }
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:54:19: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
52 |
53 | mutating func recordIntentNodeDependency(_ nodeID: NodeID) {
54 | activeIntent?.recordConsumer(nodeID)
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
55 | }
56 |
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:59:23: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
57 | mutating func register(intent: Intent) throws {
58 | if let root {
59 | activeIntent = .init(intent: intent, from: root)
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
60 | } else {
61 | throw RootNodeMissingError()
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:68:20: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
66 | if
67 | let activeIntent,
68 | activeIntent.consumerIDs.contains(nodeID)
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
69 | {
70 | self.activeIntent = nil
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:53:41: warning: conformance of 'AnyScope' to protocol 'BehaviorScoping' crosses into main actor-isolated code and can cause data races; this is an error in the Swift 6 language mode [#ConformanceIsolation]
37 | }
38 |
39 | public func own(_ disposable: some Disposable) { underlying.own(disposable) }
| `- note: main actor-isolated instance method 'own' cannot satisfy nonisolated requirement
40 | public func canOwn() -> Bool { underlying.canOwn() }
| `- note: main actor-isolated instance method 'canOwn()' cannot satisfy nonisolated requirement
41 |
42 | // MARK: Internal
:
51 | // MARK: StateSyncableScope, BehaviorScoping
52 |
53 | extension AnyScope: StateSyncableScope, BehaviorScoping {
| | |- warning: conformance of 'AnyScope' to protocol 'BehaviorScoping' crosses into main actor-isolated code and can cause data races; this is an error in the Swift 6 language mode [#ConformanceIsolation]
| | |- note: isolate this conformance to the main actor with '@TreeActor'
| | `- note: turn data races into runtime errors with '@preconcurrency'
| `- note: mark all declarations used in the conformance 'nonisolated'
54 |
55 | // MARK: Public
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:17:10: warning: main actor-isolated property 'nid' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
15 |
16 | nonisolated init(scope: some ScopeTypeInternal<some Node>) {
17 | self.nid = scope.nid
| `- warning: main actor-isolated property 'nid' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
18 | self.depth = scope.depth
19 | self.underlying = scope
:
44 | let underlying: any ScopeTypeInternal
45 |
46 | let nid: NodeID
| `- note: mutation of this property is only permitted within the actor
47 | let depth: Int
48 | let getNodeFunc: @TreeActor () -> any Node
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:19:10: warning: main actor-isolated property 'underlying' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
17 | self.nid = scope.nid
18 | self.depth = scope.depth
19 | self.underlying = scope
| `- warning: main actor-isolated property 'underlying' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
20 | self.getNodeFunc = {
21 | scope.node
:
42 | // MARK: Internal
43 |
44 | let underlying: any ScopeTypeInternal
| `- note: mutation of this property is only permitted within the actor
45 |
46 | let nid: NodeID
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:20:10: warning: main actor-isolated property 'getNodeFunc' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
18 | self.depth = scope.depth
19 | self.underlying = scope
20 | self.getNodeFunc = {
| `- warning: main actor-isolated property 'getNodeFunc' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
21 | scope.node
22 | }
:
46 | let nid: NodeID
47 | let depth: Int
48 | let getNodeFunc: @TreeActor () -> any Node
| `- note: mutation of this property is only permitted within the actor
49 | }
50 |
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:32:9: warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
30 |
31 | public nonisolated static func == (lhs: AnyScope, rhs: AnyScope) -> Bool {
32 | lhs.nid == rhs.nid
| `- warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
33 | }
34 |
:
44 | let underlying: any ScopeTypeInternal
45 |
46 | let nid: NodeID
| `- note: property declared here
47 | let depth: Int
48 | let getNodeFunc: @TreeActor () -> any Node
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:32:20: warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
30 |
31 | public nonisolated static func == (lhs: AnyScope, rhs: AnyScope) -> Bool {
32 | lhs.nid == rhs.nid
| `- warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
33 | }
34 |
:
44 | let underlying: any ScopeTypeInternal
45 |
46 | let nid: NodeID
| `- note: property declared here
47 | let depth: Int
48 | let getNodeFunc: @TreeActor () -> any Node
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:36:20: warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
34 |
35 | public nonisolated func hash(into hasher: inout Hasher) {
36 | hasher.combine(nid)
| `- warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
37 | }
38 |
:
44 | let underlying: any ScopeTypeInternal
45 |
46 | let nid: NodeID
| `- note: property declared here
47 | let depth: Int
48 | let getNodeFunc: @TreeActor () -> any Node
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:21:7: warning: sending 'scope' risks causing data races; this is an error in the Swift 6 language mode [#SendingRisksDataRace]
19 | self.underlying = scope
20 | self.getNodeFunc = {
21 | scope.node
| |- warning: sending 'scope' risks causing data races; this is an error in the Swift 6 language mode [#SendingRisksDataRace]
| `- note: task-isolated 'scope' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
22 | }
23 | }
[#ConformanceIsolation]: <https://docs.swift.org/compiler/documentation/diagnostics/conformance-isolation>
[#SendingRisksDataRace]: <https://docs.swift.org/compiler/documentation/diagnostics/sending-risks-data-race>
[319/322] Compiling StateTree StateStorage.swift
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:183:7: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
181 | }
182 |
183 | var activeIntent: ActiveIntent<NodeID>? {
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
184 | state.activeIntent
185 | }
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:23:10: warning: main actor-isolated property 'dependencies' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
21 | ) {
22 | self.treeID = treeID
23 | self.dependencies = dependencies
| `- warning: main actor-isolated property 'dependencies' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
24 | self.configuration = configuration
25 | }
:
46 | private let state: StateStorage = .init()
47 | private let scopes: ScopeStorage = .init()
48 | private let dependencies: DependencyValues
| `- note: mutation of this property is only permitted within the actor
49 | private let didStabilizeSubject = PublishSubject<Void, Never>()
50 | private let updateSubject = PublishSubject<[TreeEvent], Never>()
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:24:10: warning: main actor-isolated property 'configuration' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
22 | self.treeID = treeID
23 | self.dependencies = dependencies
24 | self.configuration = configuration
| `- warning: main actor-isolated property 'configuration' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
25 | }
26 |
:
40 | // MARK: Internal
41 |
42 | let configuration: RuntimeConfiguration
| `- note: mutation of this property is only permitted within the actor
43 |
44 | // MARK: Private
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:32:5: warning: main actor-isolated property 'updateSubject' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
30 |
31 | public nonisolated var updateEmitter: some Emitter<[TreeEvent], Never> {
32 | updateSubject
| `- warning: main actor-isolated property 'updateSubject' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
33 | .merge(behaviorTracker.behaviorEvents.map { [.behavior(event: $0)] })
34 | }
:
48 | private let dependencies: DependencyValues
49 | private let didStabilizeSubject = PublishSubject<Void, Never>()
50 | private let updateSubject = PublishSubject<[TreeEvent], Never>()
| `- note: property declared here
51 | private var transactionCount: Int = 0
52 | private var updates: TreeChanges = .none
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:135:5: warning: main actor-isolated property 'configuration' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
40 | // MARK: Internal
41 |
42 | let configuration: RuntimeConfiguration
| `- note: property declared here
43 |
44 | // MARK: Private
:
133 |
134 | public nonisolated var behaviorEvents: some Emitter<BehaviorEvent, Never> {
135 | configuration.behaviorTracker.behaviorEvents
| `- warning: main actor-isolated property 'configuration' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
136 | }
137 |
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:180:5: warning: main actor-isolated property 'configuration' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
40 | // MARK: Internal
41 |
42 | let configuration: RuntimeConfiguration
| `- note: property declared here
43 |
44 | // MARK: Private
:
178 |
179 | nonisolated var behaviorTracker: BehaviorTracker {
180 | configuration.behaviorTracker
| `- warning: main actor-isolated property 'configuration' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
181 | }
182 |
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/StateStorage.swift:28:7: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
26 | }
27 |
28 | var activeIntent: ActiveIntent<NodeID>? {
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
29 | state.activeIntent
30 | }
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:42:39: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
40 | mutating func popIntentStep() {
41 | if var activeIntent {
42 | let (_, isValid) = activeIntent.popStep()
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
43 | if isValid {
44 | assert(activeIntent.isValid)
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:44:29: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
42 | let (_, isValid) = activeIntent.popStep()
43 | if isValid {
44 | assert(activeIntent.isValid)
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
45 | self.activeIntent = activeIntent
46 | } else {
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:47:30: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
45 | self.activeIntent = activeIntent
46 | } else {
47 | assert(!activeIntent.isValid)
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
48 | self.activeIntent = nil
49 | }
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:54:19: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
52 |
53 | mutating func recordIntentNodeDependency(_ nodeID: NodeID) {
54 | activeIntent?.recordConsumer(nodeID)
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
55 | }
56 |
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:59:23: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
57 | mutating func register(intent: Intent) throws {
58 | if let root {
59 | activeIntent = .init(intent: intent, from: root)
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
60 | } else {
61 | throw RootNodeMissingError()
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:68:20: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
66 | if
67 | let activeIntent,
68 | activeIntent.consumerIDs.contains(nodeID)
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
69 | {
70 | self.activeIntent = nil
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:53:41: warning: conformance of 'AnyScope' to protocol 'BehaviorScoping' crosses into main actor-isolated code and can cause data races; this is an error in the Swift 6 language mode [#ConformanceIsolation]
37 | }
38 |
39 | public func own(_ disposable: some Disposable) { underlying.own(disposable) }
| `- note: main actor-isolated instance method 'own' cannot satisfy nonisolated requirement
40 | public func canOwn() -> Bool { underlying.canOwn() }
| `- note: main actor-isolated instance method 'canOwn()' cannot satisfy nonisolated requirement
41 |
42 | // MARK: Internal
:
51 | // MARK: StateSyncableScope, BehaviorScoping
52 |
53 | extension AnyScope: StateSyncableScope, BehaviorScoping {
| | |- warning: conformance of 'AnyScope' to protocol 'BehaviorScoping' crosses into main actor-isolated code and can cause data races; this is an error in the Swift 6 language mode [#ConformanceIsolation]
| | |- note: isolate this conformance to the main actor with '@TreeActor'
| | `- note: turn data races into runtime errors with '@preconcurrency'
| `- note: mark all declarations used in the conformance 'nonisolated'
54 |
55 | // MARK: Public
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:17:10: warning: main actor-isolated property 'nid' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
15 |
16 | nonisolated init(scope: some ScopeTypeInternal<some Node>) {
17 | self.nid = scope.nid
| `- warning: main actor-isolated property 'nid' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
18 | self.depth = scope.depth
19 | self.underlying = scope
:
44 | let underlying: any ScopeTypeInternal
45 |
46 | let nid: NodeID
| `- note: mutation of this property is only permitted within the actor
47 | let depth: Int
48 | let getNodeFunc: @TreeActor () -> any Node
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:19:10: warning: main actor-isolated property 'underlying' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
17 | self.nid = scope.nid
18 | self.depth = scope.depth
19 | self.underlying = scope
| `- warning: main actor-isolated property 'underlying' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
20 | self.getNodeFunc = {
21 | scope.node
:
42 | // MARK: Internal
43 |
44 | let underlying: any ScopeTypeInternal
| `- note: mutation of this property is only permitted within the actor
45 |
46 | let nid: NodeID
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:20:10: warning: main actor-isolated property 'getNodeFunc' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
18 | self.depth = scope.depth
19 | self.underlying = scope
20 | self.getNodeFunc = {
| `- warning: main actor-isolated property 'getNodeFunc' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
21 | scope.node
22 | }
:
46 | let nid: NodeID
47 | let depth: Int
48 | let getNodeFunc: @TreeActor () -> any Node
| `- note: mutation of this property is only permitted within the actor
49 | }
50 |
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:32:9: warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
30 |
31 | public nonisolated static func == (lhs: AnyScope, rhs: AnyScope) -> Bool {
32 | lhs.nid == rhs.nid
| `- warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
33 | }
34 |
:
44 | let underlying: any ScopeTypeInternal
45 |
46 | let nid: NodeID
| `- note: property declared here
47 | let depth: Int
48 | let getNodeFunc: @TreeActor () -> any Node
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:32:20: warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
30 |
31 | public nonisolated static func == (lhs: AnyScope, rhs: AnyScope) -> Bool {
32 | lhs.nid == rhs.nid
| `- warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
33 | }
34 |
:
44 | let underlying: any ScopeTypeInternal
45 |
46 | let nid: NodeID
| `- note: property declared here
47 | let depth: Int
48 | let getNodeFunc: @TreeActor () -> any Node
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:36:20: warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
34 |
35 | public nonisolated func hash(into hasher: inout Hasher) {
36 | hasher.combine(nid)
| `- warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
37 | }
38 |
:
44 | let underlying: any ScopeTypeInternal
45 |
46 | let nid: NodeID
| `- note: property declared here
47 | let depth: Int
48 | let getNodeFunc: @TreeActor () -> any Node
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:21:7: warning: sending 'scope' risks causing data races; this is an error in the Swift 6 language mode [#SendingRisksDataRace]
19 | self.underlying = scope
20 | self.getNodeFunc = {
21 | scope.node
| |- warning: sending 'scope' risks causing data races; this is an error in the Swift 6 language mode [#SendingRisksDataRace]
| `- note: task-isolated 'scope' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
22 | }
23 | }
[#ConformanceIsolation]: <https://docs.swift.org/compiler/documentation/diagnostics/conformance-isolation>
[#SendingRisksDataRace]: <https://docs.swift.org/compiler/documentation/diagnostics/sending-risks-data-race>
[320/322] Compiling StateTree TreeStateRecord+Ext.swift
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:183:7: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
181 | }
182 |
183 | var activeIntent: ActiveIntent<NodeID>? {
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
184 | state.activeIntent
185 | }
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:23:10: warning: main actor-isolated property 'dependencies' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
21 | ) {
22 | self.treeID = treeID
23 | self.dependencies = dependencies
| `- warning: main actor-isolated property 'dependencies' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
24 | self.configuration = configuration
25 | }
:
46 | private let state: StateStorage = .init()
47 | private let scopes: ScopeStorage = .init()
48 | private let dependencies: DependencyValues
| `- note: mutation of this property is only permitted within the actor
49 | private let didStabilizeSubject = PublishSubject<Void, Never>()
50 | private let updateSubject = PublishSubject<[TreeEvent], Never>()
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:24:10: warning: main actor-isolated property 'configuration' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
22 | self.treeID = treeID
23 | self.dependencies = dependencies
24 | self.configuration = configuration
| `- warning: main actor-isolated property 'configuration' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
25 | }
26 |
:
40 | // MARK: Internal
41 |
42 | let configuration: RuntimeConfiguration
| `- note: mutation of this property is only permitted within the actor
43 |
44 | // MARK: Private
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:32:5: warning: main actor-isolated property 'updateSubject' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
30 |
31 | public nonisolated var updateEmitter: some Emitter<[TreeEvent], Never> {
32 | updateSubject
| `- warning: main actor-isolated property 'updateSubject' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
33 | .merge(behaviorTracker.behaviorEvents.map { [.behavior(event: $0)] })
34 | }
:
48 | private let dependencies: DependencyValues
49 | private let didStabilizeSubject = PublishSubject<Void, Never>()
50 | private let updateSubject = PublishSubject<[TreeEvent], Never>()
| `- note: property declared here
51 | private var transactionCount: Int = 0
52 | private var updates: TreeChanges = .none
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:135:5: warning: main actor-isolated property 'configuration' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
40 | // MARK: Internal
41 |
42 | let configuration: RuntimeConfiguration
| `- note: property declared here
43 |
44 | // MARK: Private
:
133 |
134 | public nonisolated var behaviorEvents: some Emitter<BehaviorEvent, Never> {
135 | configuration.behaviorTracker.behaviorEvents
| `- warning: main actor-isolated property 'configuration' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
136 | }
137 |
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:180:5: warning: main actor-isolated property 'configuration' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
40 | // MARK: Internal
41 |
42 | let configuration: RuntimeConfiguration
| `- note: property declared here
43 |
44 | // MARK: Private
:
178 |
179 | nonisolated var behaviorTracker: BehaviorTracker {
180 | configuration.behaviorTracker
| `- warning: main actor-isolated property 'configuration' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
181 | }
182 |
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/StateStorage.swift:28:7: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
26 | }
27 |
28 | var activeIntent: ActiveIntent<NodeID>? {
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
29 | state.activeIntent
30 | }
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:42:39: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
40 | mutating func popIntentStep() {
41 | if var activeIntent {
42 | let (_, isValid) = activeIntent.popStep()
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
43 | if isValid {
44 | assert(activeIntent.isValid)
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:44:29: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
42 | let (_, isValid) = activeIntent.popStep()
43 | if isValid {
44 | assert(activeIntent.isValid)
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
45 | self.activeIntent = activeIntent
46 | } else {
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:47:30: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
45 | self.activeIntent = activeIntent
46 | } else {
47 | assert(!activeIntent.isValid)
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
48 | self.activeIntent = nil
49 | }
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:54:19: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
52 |
53 | mutating func recordIntentNodeDependency(_ nodeID: NodeID) {
54 | activeIntent?.recordConsumer(nodeID)
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
55 | }
56 |
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:59:23: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
57 | mutating func register(intent: Intent) throws {
58 | if let root {
59 | activeIntent = .init(intent: intent, from: root)
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
60 | } else {
61 | throw RootNodeMissingError()
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:68:20: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
66 | if
67 | let activeIntent,
68 | activeIntent.consumerIDs.contains(nodeID)
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
69 | {
70 | self.activeIntent = nil
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:53:41: warning: conformance of 'AnyScope' to protocol 'BehaviorScoping' crosses into main actor-isolated code and can cause data races; this is an error in the Swift 6 language mode [#ConformanceIsolation]
37 | }
38 |
39 | public func own(_ disposable: some Disposable) { underlying.own(disposable) }
| `- note: main actor-isolated instance method 'own' cannot satisfy nonisolated requirement
40 | public func canOwn() -> Bool { underlying.canOwn() }
| `- note: main actor-isolated instance method 'canOwn()' cannot satisfy nonisolated requirement
41 |
42 | // MARK: Internal
:
51 | // MARK: StateSyncableScope, BehaviorScoping
52 |
53 | extension AnyScope: StateSyncableScope, BehaviorScoping {
| | |- warning: conformance of 'AnyScope' to protocol 'BehaviorScoping' crosses into main actor-isolated code and can cause data races; this is an error in the Swift 6 language mode [#ConformanceIsolation]
| | |- note: isolate this conformance to the main actor with '@TreeActor'
| | `- note: turn data races into runtime errors with '@preconcurrency'
| `- note: mark all declarations used in the conformance 'nonisolated'
54 |
55 | // MARK: Public
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:17:10: warning: main actor-isolated property 'nid' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
15 |
16 | nonisolated init(scope: some ScopeTypeInternal<some Node>) {
17 | self.nid = scope.nid
| `- warning: main actor-isolated property 'nid' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
18 | self.depth = scope.depth
19 | self.underlying = scope
:
44 | let underlying: any ScopeTypeInternal
45 |
46 | let nid: NodeID
| `- note: mutation of this property is only permitted within the actor
47 | let depth: Int
48 | let getNodeFunc: @TreeActor () -> any Node
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:19:10: warning: main actor-isolated property 'underlying' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
17 | self.nid = scope.nid
18 | self.depth = scope.depth
19 | self.underlying = scope
| `- warning: main actor-isolated property 'underlying' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
20 | self.getNodeFunc = {
21 | scope.node
:
42 | // MARK: Internal
43 |
44 | let underlying: any ScopeTypeInternal
| `- note: mutation of this property is only permitted within the actor
45 |
46 | let nid: NodeID
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:20:10: warning: main actor-isolated property 'getNodeFunc' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
18 | self.depth = scope.depth
19 | self.underlying = scope
20 | self.getNodeFunc = {
| `- warning: main actor-isolated property 'getNodeFunc' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
21 | scope.node
22 | }
:
46 | let nid: NodeID
47 | let depth: Int
48 | let getNodeFunc: @TreeActor () -> any Node
| `- note: mutation of this property is only permitted within the actor
49 | }
50 |
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:32:9: warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
30 |
31 | public nonisolated static func == (lhs: AnyScope, rhs: AnyScope) -> Bool {
32 | lhs.nid == rhs.nid
| `- warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
33 | }
34 |
:
44 | let underlying: any ScopeTypeInternal
45 |
46 | let nid: NodeID
| `- note: property declared here
47 | let depth: Int
48 | let getNodeFunc: @TreeActor () -> any Node
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:32:20: warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
30 |
31 | public nonisolated static func == (lhs: AnyScope, rhs: AnyScope) -> Bool {
32 | lhs.nid == rhs.nid
| `- warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
33 | }
34 |
:
44 | let underlying: any ScopeTypeInternal
45 |
46 | let nid: NodeID
| `- note: property declared here
47 | let depth: Int
48 | let getNodeFunc: @TreeActor () -> any Node
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:36:20: warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
34 |
35 | public nonisolated func hash(into hasher: inout Hasher) {
36 | hasher.combine(nid)
| `- warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
37 | }
38 |
:
44 | let underlying: any ScopeTypeInternal
45 |
46 | let nid: NodeID
| `- note: property declared here
47 | let depth: Int
48 | let getNodeFunc: @TreeActor () -> any Node
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:21:7: warning: sending 'scope' risks causing data races; this is an error in the Swift 6 language mode [#SendingRisksDataRace]
19 | self.underlying = scope
20 | self.getNodeFunc = {
21 | scope.node
| |- warning: sending 'scope' risks causing data races; this is an error in the Swift 6 language mode [#SendingRisksDataRace]
| `- note: task-isolated 'scope' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
22 | }
23 | }
[#ConformanceIsolation]: <https://docs.swift.org/compiler/documentation/diagnostics/conformance-isolation>
[#SendingRisksDataRace]: <https://docs.swift.org/compiler/documentation/diagnostics/sending-risks-data-race>
[321/322] Compiling StateTree ValueDependencyTracker.swift
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:183:7: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
181 | }
182 |
183 | var activeIntent: ActiveIntent<NodeID>? {
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
184 | state.activeIntent
185 | }
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:23:10: warning: main actor-isolated property 'dependencies' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
21 | ) {
22 | self.treeID = treeID
23 | self.dependencies = dependencies
| `- warning: main actor-isolated property 'dependencies' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
24 | self.configuration = configuration
25 | }
:
46 | private let state: StateStorage = .init()
47 | private let scopes: ScopeStorage = .init()
48 | private let dependencies: DependencyValues
| `- note: mutation of this property is only permitted within the actor
49 | private let didStabilizeSubject = PublishSubject<Void, Never>()
50 | private let updateSubject = PublishSubject<[TreeEvent], Never>()
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:24:10: warning: main actor-isolated property 'configuration' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
22 | self.treeID = treeID
23 | self.dependencies = dependencies
24 | self.configuration = configuration
| `- warning: main actor-isolated property 'configuration' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
25 | }
26 |
:
40 | // MARK: Internal
41 |
42 | let configuration: RuntimeConfiguration
| `- note: mutation of this property is only permitted within the actor
43 |
44 | // MARK: Private
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:32:5: warning: main actor-isolated property 'updateSubject' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
30 |
31 | public nonisolated var updateEmitter: some Emitter<[TreeEvent], Never> {
32 | updateSubject
| `- warning: main actor-isolated property 'updateSubject' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
33 | .merge(behaviorTracker.behaviorEvents.map { [.behavior(event: $0)] })
34 | }
:
48 | private let dependencies: DependencyValues
49 | private let didStabilizeSubject = PublishSubject<Void, Never>()
50 | private let updateSubject = PublishSubject<[TreeEvent], Never>()
| `- note: property declared here
51 | private var transactionCount: Int = 0
52 | private var updates: TreeChanges = .none
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:135:5: warning: main actor-isolated property 'configuration' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
40 | // MARK: Internal
41 |
42 | let configuration: RuntimeConfiguration
| `- note: property declared here
43 |
44 | // MARK: Private
:
133 |
134 | public nonisolated var behaviorEvents: some Emitter<BehaviorEvent, Never> {
135 | configuration.behaviorTracker.behaviorEvents
| `- warning: main actor-isolated property 'configuration' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
136 | }
137 |
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:180:5: warning: main actor-isolated property 'configuration' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
40 | // MARK: Internal
41 |
42 | let configuration: RuntimeConfiguration
| `- note: property declared here
43 |
44 | // MARK: Private
:
178 |
179 | nonisolated var behaviorTracker: BehaviorTracker {
180 | configuration.behaviorTracker
| `- warning: main actor-isolated property 'configuration' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
181 | }
182 |
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/StateStorage.swift:28:7: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
26 | }
27 |
28 | var activeIntent: ActiveIntent<NodeID>? {
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
29 | state.activeIntent
30 | }
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:42:39: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
40 | mutating func popIntentStep() {
41 | if var activeIntent {
42 | let (_, isValid) = activeIntent.popStep()
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
43 | if isValid {
44 | assert(activeIntent.isValid)
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:44:29: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
42 | let (_, isValid) = activeIntent.popStep()
43 | if isValid {
44 | assert(activeIntent.isValid)
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
45 | self.activeIntent = activeIntent
46 | } else {
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:47:30: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
45 | self.activeIntent = activeIntent
46 | } else {
47 | assert(!activeIntent.isValid)
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
48 | self.activeIntent = nil
49 | }
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:54:19: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
52 |
53 | mutating func recordIntentNodeDependency(_ nodeID: NodeID) {
54 | activeIntent?.recordConsumer(nodeID)
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
55 | }
56 |
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:59:23: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
57 | mutating func register(intent: Intent) throws {
58 | if let root {
59 | activeIntent = .init(intent: intent, from: root)
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
60 | } else {
61 | throw RootNodeMissingError()
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:68:20: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
66 | if
67 | let activeIntent,
68 | activeIntent.consumerIDs.contains(nodeID)
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
69 | {
70 | self.activeIntent = nil
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:53:41: warning: conformance of 'AnyScope' to protocol 'BehaviorScoping' crosses into main actor-isolated code and can cause data races; this is an error in the Swift 6 language mode [#ConformanceIsolation]
37 | }
38 |
39 | public func own(_ disposable: some Disposable) { underlying.own(disposable) }
| `- note: main actor-isolated instance method 'own' cannot satisfy nonisolated requirement
40 | public func canOwn() -> Bool { underlying.canOwn() }
| `- note: main actor-isolated instance method 'canOwn()' cannot satisfy nonisolated requirement
41 |
42 | // MARK: Internal
:
51 | // MARK: StateSyncableScope, BehaviorScoping
52 |
53 | extension AnyScope: StateSyncableScope, BehaviorScoping {
| | |- warning: conformance of 'AnyScope' to protocol 'BehaviorScoping' crosses into main actor-isolated code and can cause data races; this is an error in the Swift 6 language mode [#ConformanceIsolation]
| | |- note: isolate this conformance to the main actor with '@TreeActor'
| | `- note: turn data races into runtime errors with '@preconcurrency'
| `- note: mark all declarations used in the conformance 'nonisolated'
54 |
55 | // MARK: Public
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:17:10: warning: main actor-isolated property 'nid' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
15 |
16 | nonisolated init(scope: some ScopeTypeInternal<some Node>) {
17 | self.nid = scope.nid
| `- warning: main actor-isolated property 'nid' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
18 | self.depth = scope.depth
19 | self.underlying = scope
:
44 | let underlying: any ScopeTypeInternal
45 |
46 | let nid: NodeID
| `- note: mutation of this property is only permitted within the actor
47 | let depth: Int
48 | let getNodeFunc: @TreeActor () -> any Node
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:19:10: warning: main actor-isolated property 'underlying' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
17 | self.nid = scope.nid
18 | self.depth = scope.depth
19 | self.underlying = scope
| `- warning: main actor-isolated property 'underlying' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
20 | self.getNodeFunc = {
21 | scope.node
:
42 | // MARK: Internal
43 |
44 | let underlying: any ScopeTypeInternal
| `- note: mutation of this property is only permitted within the actor
45 |
46 | let nid: NodeID
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:20:10: warning: main actor-isolated property 'getNodeFunc' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
18 | self.depth = scope.depth
19 | self.underlying = scope
20 | self.getNodeFunc = {
| `- warning: main actor-isolated property 'getNodeFunc' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
21 | scope.node
22 | }
:
46 | let nid: NodeID
47 | let depth: Int
48 | let getNodeFunc: @TreeActor () -> any Node
| `- note: mutation of this property is only permitted within the actor
49 | }
50 |
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:32:9: warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
30 |
31 | public nonisolated static func == (lhs: AnyScope, rhs: AnyScope) -> Bool {
32 | lhs.nid == rhs.nid
| `- warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
33 | }
34 |
:
44 | let underlying: any ScopeTypeInternal
45 |
46 | let nid: NodeID
| `- note: property declared here
47 | let depth: Int
48 | let getNodeFunc: @TreeActor () -> any Node
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:32:20: warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
30 |
31 | public nonisolated static func == (lhs: AnyScope, rhs: AnyScope) -> Bool {
32 | lhs.nid == rhs.nid
| `- warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
33 | }
34 |
:
44 | let underlying: any ScopeTypeInternal
45 |
46 | let nid: NodeID
| `- note: property declared here
47 | let depth: Int
48 | let getNodeFunc: @TreeActor () -> any Node
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:36:20: warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
34 |
35 | public nonisolated func hash(into hasher: inout Hasher) {
36 | hasher.combine(nid)
| `- warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
37 | }
38 |
:
44 | let underlying: any ScopeTypeInternal
45 |
46 | let nid: NodeID
| `- note: property declared here
47 | let depth: Int
48 | let getNodeFunc: @TreeActor () -> any Node
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:21:7: warning: sending 'scope' risks causing data races; this is an error in the Swift 6 language mode [#SendingRisksDataRace]
19 | self.underlying = scope
20 | self.getNodeFunc = {
21 | scope.node
| |- warning: sending 'scope' risks causing data races; this is an error in the Swift 6 language mode [#SendingRisksDataRace]
| `- note: task-isolated 'scope' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
22 | }
23 | }
[#ConformanceIsolation]: <https://docs.swift.org/compiler/documentation/diagnostics/conformance-isolation>
[#SendingRisksDataRace]: <https://docs.swift.org/compiler/documentation/diagnostics/sending-risks-data-race>
[322/322] Compiling StateTree AnyScope.swift
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:183:7: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
181 | }
182 |
183 | var activeIntent: ActiveIntent<NodeID>? {
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
184 | state.activeIntent
185 | }
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:23:10: warning: main actor-isolated property 'dependencies' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
21 | ) {
22 | self.treeID = treeID
23 | self.dependencies = dependencies
| `- warning: main actor-isolated property 'dependencies' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
24 | self.configuration = configuration
25 | }
:
46 | private let state: StateStorage = .init()
47 | private let scopes: ScopeStorage = .init()
48 | private let dependencies: DependencyValues
| `- note: mutation of this property is only permitted within the actor
49 | private let didStabilizeSubject = PublishSubject<Void, Never>()
50 | private let updateSubject = PublishSubject<[TreeEvent], Never>()
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:24:10: warning: main actor-isolated property 'configuration' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
22 | self.treeID = treeID
23 | self.dependencies = dependencies
24 | self.configuration = configuration
| `- warning: main actor-isolated property 'configuration' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
25 | }
26 |
:
40 | // MARK: Internal
41 |
42 | let configuration: RuntimeConfiguration
| `- note: mutation of this property is only permitted within the actor
43 |
44 | // MARK: Private
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:32:5: warning: main actor-isolated property 'updateSubject' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
30 |
31 | public nonisolated var updateEmitter: some Emitter<[TreeEvent], Never> {
32 | updateSubject
| `- warning: main actor-isolated property 'updateSubject' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
33 | .merge(behaviorTracker.behaviorEvents.map { [.behavior(event: $0)] })
34 | }
:
48 | private let dependencies: DependencyValues
49 | private let didStabilizeSubject = PublishSubject<Void, Never>()
50 | private let updateSubject = PublishSubject<[TreeEvent], Never>()
| `- note: property declared here
51 | private var transactionCount: Int = 0
52 | private var updates: TreeChanges = .none
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:135:5: warning: main actor-isolated property 'configuration' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
40 | // MARK: Internal
41 |
42 | let configuration: RuntimeConfiguration
| `- note: property declared here
43 |
44 | // MARK: Private
:
133 |
134 | public nonisolated var behaviorEvents: some Emitter<BehaviorEvent, Never> {
135 | configuration.behaviorTracker.behaviorEvents
| `- warning: main actor-isolated property 'configuration' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
136 | }
137 |
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/Runtime.swift:180:5: warning: main actor-isolated property 'configuration' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
40 | // MARK: Internal
41 |
42 | let configuration: RuntimeConfiguration
| `- note: property declared here
43 |
44 | // MARK: Private
:
178 |
179 | nonisolated var behaviorTracker: BehaviorTracker {
180 | configuration.behaviorTracker
| `- warning: main actor-isolated property 'configuration' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
181 | }
182 |
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/StateStorage.swift:28:7: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
26 | }
27 |
28 | var activeIntent: ActiveIntent<NodeID>? {
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
29 | state.activeIntent
30 | }
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:42:39: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
40 | mutating func popIntentStep() {
41 | if var activeIntent {
42 | let (_, isValid) = activeIntent.popStep()
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
43 | if isValid {
44 | assert(activeIntent.isValid)
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:44:29: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
42 | let (_, isValid) = activeIntent.popStep()
43 | if isValid {
44 | assert(activeIntent.isValid)
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
45 | self.activeIntent = activeIntent
46 | } else {
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:47:30: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
45 | self.activeIntent = activeIntent
46 | } else {
47 | assert(!activeIntent.isValid)
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
48 | self.activeIntent = nil
49 | }
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:54:19: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
52 |
53 | mutating func recordIntentNodeDependency(_ nodeID: NodeID) {
54 | activeIntent?.recordConsumer(nodeID)
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
55 | }
56 |
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:59:23: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
57 | mutating func register(intent: Intent) throws {
58 | if let root {
59 | activeIntent = .init(intent: intent, from: root)
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
60 | } else {
61 | throw RootNodeMissingError()
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Runtime/TreeStateRecord+Ext.swift:68:20: warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
66 | if
67 | let activeIntent,
68 | activeIntent.consumerIDs.contains(nodeID)
| `- warning: type 'NodeID' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
69 | {
70 | self.activeIntent = nil
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/Foundation/State/NodeID.swift:11:15: note: consider making struct 'NodeID' conform to the 'Sendable' protocol
9 | ///
10 | /// String serialised `NodeIDs` are formatted as `<UUID>`
11 | public struct NodeID: TreeState, LosslessStringConvertible, Comparable {
| `- note: consider making struct 'NodeID' conform to the 'Sendable' protocol
12 |
13 | // MARK: Lifecycle
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:53:41: warning: conformance of 'AnyScope' to protocol 'BehaviorScoping' crosses into main actor-isolated code and can cause data races; this is an error in the Swift 6 language mode [#ConformanceIsolation]
37 | }
38 |
39 | public func own(_ disposable: some Disposable) { underlying.own(disposable) }
| `- note: main actor-isolated instance method 'own' cannot satisfy nonisolated requirement
40 | public func canOwn() -> Bool { underlying.canOwn() }
| `- note: main actor-isolated instance method 'canOwn()' cannot satisfy nonisolated requirement
41 |
42 | // MARK: Internal
:
51 | // MARK: StateSyncableScope, BehaviorScoping
52 |
53 | extension AnyScope: StateSyncableScope, BehaviorScoping {
| | |- warning: conformance of 'AnyScope' to protocol 'BehaviorScoping' crosses into main actor-isolated code and can cause data races; this is an error in the Swift 6 language mode [#ConformanceIsolation]
| | |- note: isolate this conformance to the main actor with '@TreeActor'
| | `- note: turn data races into runtime errors with '@preconcurrency'
| `- note: mark all declarations used in the conformance 'nonisolated'
54 |
55 | // MARK: Public
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:17:10: warning: main actor-isolated property 'nid' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
15 |
16 | nonisolated init(scope: some ScopeTypeInternal<some Node>) {
17 | self.nid = scope.nid
| `- warning: main actor-isolated property 'nid' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
18 | self.depth = scope.depth
19 | self.underlying = scope
:
44 | let underlying: any ScopeTypeInternal
45 |
46 | let nid: NodeID
| `- note: mutation of this property is only permitted within the actor
47 | let depth: Int
48 | let getNodeFunc: @TreeActor () -> any Node
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:19:10: warning: main actor-isolated property 'underlying' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
17 | self.nid = scope.nid
18 | self.depth = scope.depth
19 | self.underlying = scope
| `- warning: main actor-isolated property 'underlying' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
20 | self.getNodeFunc = {
21 | scope.node
:
42 | // MARK: Internal
43 |
44 | let underlying: any ScopeTypeInternal
| `- note: mutation of this property is only permitted within the actor
45 |
46 | let nid: NodeID
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:20:10: warning: main actor-isolated property 'getNodeFunc' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
18 | self.depth = scope.depth
19 | self.underlying = scope
20 | self.getNodeFunc = {
| `- warning: main actor-isolated property 'getNodeFunc' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
21 | scope.node
22 | }
:
46 | let nid: NodeID
47 | let depth: Int
48 | let getNodeFunc: @TreeActor () -> any Node
| `- note: mutation of this property is only permitted within the actor
49 | }
50 |
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:32:9: warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
30 |
31 | public nonisolated static func == (lhs: AnyScope, rhs: AnyScope) -> Bool {
32 | lhs.nid == rhs.nid
| `- warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
33 | }
34 |
:
44 | let underlying: any ScopeTypeInternal
45 |
46 | let nid: NodeID
| `- note: property declared here
47 | let depth: Int
48 | let getNodeFunc: @TreeActor () -> any Node
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:32:20: warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
30 |
31 | public nonisolated static func == (lhs: AnyScope, rhs: AnyScope) -> Bool {
32 | lhs.nid == rhs.nid
| `- warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
33 | }
34 |
:
44 | let underlying: any ScopeTypeInternal
45 |
46 | let nid: NodeID
| `- note: property declared here
47 | let depth: Int
48 | let getNodeFunc: @TreeActor () -> any Node
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:36:20: warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
34 |
35 | public nonisolated func hash(into hasher: inout Hasher) {
36 | hasher.combine(nid)
| `- warning: main actor-isolated property 'nid' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
37 | }
38 |
:
44 | let underlying: any ScopeTypeInternal
45 |
46 | let nid: NodeID
| `- note: property declared here
47 | let depth: Int
48 | let getNodeFunc: @TreeActor () -> any Node
/Users/admin/builder/spi-builder-workspace/Sources/StateTree/System/Scope/AnyScope.swift:21:7: warning: sending 'scope' risks causing data races; this is an error in the Swift 6 language mode [#SendingRisksDataRace]
19 | self.underlying = scope
20 | self.getNodeFunc = {
21 | scope.node
| |- warning: sending 'scope' risks causing data races; this is an error in the Swift 6 language mode [#SendingRisksDataRace]
| `- note: task-isolated 'scope' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
22 | }
23 | }
[#ConformanceIsolation]: <https://docs.swift.org/compiler/documentation/diagnostics/conformance-isolation>
[#SendingRisksDataRace]: <https://docs.swift.org/compiler/documentation/diagnostics/sending-risks-data-race>
Fetching https://github.com/GoodHatsLLC/swift-collections-v1_1-fork.git
Fetching https://github.com/GoodHatsLLC/Emitter.git
Fetching https://github.com/GoodHatsLLC/Disposable.git
[1/274] Fetching disposable
[207/9173] Fetching disposable, swift-collections-v1_1-fork
[208/10099] Fetching disposable, swift-collections-v1_1-fork, emitter
Fetched https://github.com/GoodHatsLLC/Disposable.git from cache (1.04s)
[3418/9825] Fetching swift-collections-v1_1-fork, emitter
Fetched https://github.com/GoodHatsLLC/Emitter.git from cache (1.46s)
Fetched https://github.com/GoodHatsLLC/swift-collections-v1_1-fork.git from cache (1.46s)
Computing version for https://github.com/GoodHatsLLC/swift-collections-v1_1-fork.git
Computed https://github.com/GoodHatsLLC/swift-collections-v1_1-fork.git at 1.1.0 (2.09s)
Computing version for https://github.com/GoodHatsLLC/Emitter.git
Computed https://github.com/GoodHatsLLC/Emitter.git at 1.0.0 (0.38s)
Computing version for https://github.com/GoodHatsLLC/Disposable.git
Computed https://github.com/GoodHatsLLC/Disposable.git at 1.0.0 (0.38s)
Creating working copy for https://github.com/GoodHatsLLC/Disposable.git
Working copy of https://github.com/GoodHatsLLC/Disposable.git resolved at 1.0.0
Creating working copy for https://github.com/GoodHatsLLC/Emitter.git
Working copy of https://github.com/GoodHatsLLC/Emitter.git resolved at 1.0.0
Creating working copy for https://github.com/GoodHatsLLC/swift-collections-v1_1-fork.git
Working copy of https://github.com/GoodHatsLLC/swift-collections-v1_1-fork.git resolved at 1.1.0
BUILD FAILURE 6.2 macosSpm