Build Information
Successful build of swiftui-hooks, reference 0.0.8 (f096d6
), with Swift 6.0 for macOS (SPM) on 2 Nov 2024 12:45:44 UTC.
Swift 6 data race errors: 2
Build Command
env DEVELOPER_DIR=/Applications/Xcode-16.1.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete
Build Log
========================================
RunAll
========================================
Builder version: 4.56.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/ra1028/SwiftUI-Hooks.git
Reference: 0.0.8
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/ra1028/SwiftUI-Hooks
* tag 0.0.8 -> FETCH_HEAD
HEAD is now at f096d6b Merge pull request #28 from josefdolezal/feature/lazy-initial-state
Cloned https://github.com/ra1028/SwiftUI-Hooks.git
Revision (git rev-parse @):
f096d6b4475a55da402aaec4e297bdd07bf52c20
SUCCESS checkout https://github.com/ra1028/SwiftUI-Hooks.git at 0.0.8
========================================
ResolveProductDependencies
========================================
Resolving dependencies ...
{
"identity": ".resolve-product-dependencies",
"name": "resolve-dependencies",
"url": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
"version": "unspecified",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
"dependencies": [
{
"identity": "swiftui-hooks",
"name": "swiftui-hooks",
"url": "https://github.com/ra1028/SwiftUI-Hooks.git",
"version": "unspecified",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/SwiftUI-Hooks",
"dependencies": [
]
}
]
}
Fetching https://github.com/ra1028/SwiftUI-Hooks.git
[1/8010] Fetching swiftui-hooks
Fetched https://github.com/ra1028/SwiftUI-Hooks.git from cache (1.27s)
Creating working copy for https://github.com/ra1028/SwiftUI-Hooks.git
Working copy of https://github.com/ra1028/SwiftUI-Hooks.git resolved at 0.0.8 (f096d6b)
warning: '.resolve-product-dependencies': dependency 'swiftui-hooks' is not used by any target
Found 0 product dependencies
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.0
Building package at path: $PWD
https://github.com/ra1028/SwiftUI-Hooks.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.1.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version--7754E27361AE5C74.txt
[3/29] Compiling Hooks LinkedList.swift
[4/29] Compiling Hooks RefObject.swift
[5/29] Emitting module Hooks
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/HookDispatcher.swift:6:43: warning: static property 'current' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
4 | /// A class that manages list of states of hooks used inside `HookDispatcher.scoped(environment:_)`.
5 | public final class HookDispatcher: ObservableObject {
6 | internal private(set) static weak var current: HookDispatcher?
| |- warning: static property 'current' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'current' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'current' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
7 |
8 | /// A publisher that emits before the object has changed.
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/HookDispatcher.swift:214:16: warning: generic parameter 'H' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
204 | }
205 |
206 | private struct HookRecord<H: Hook>: HookRecordProtocol {
| `- note: 'H' previously declared here
207 | let hook: H
208 | let coordinator: HookCoordinator<H>
:
212 | }
213 |
214 | func state<H: Hook>(of hookType: H.Type) -> H.State? {
| `- warning: generic parameter 'H' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
215 | coordinator.state as? H.State
216 | }
[6/31] Compiling Hooks HookTester.swift
[7/31] Compiling Hooks ViewExtensions.swift
[8/31] Compiling Hooks AsyncPhase.swift
[9/31] Compiling Hooks Consumer.swift
[10/31] Compiling Hooks Context.swift
[11/31] Compiling Hooks UseAsyncPerform.swift
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/Hook/UseAsyncPerform.swift:52:24: warning: sending 'coordinator' risks causing data races; this is an error in the Swift 6 language mode
50 | phase: coordinator.state.phase,
51 | perform: {
52 | guard !coordinator.state.isDisposed else {
| |- warning: sending 'coordinator' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'coordinator' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
53 | return
54 | }
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/Hook/UseAsyncPerform.swift:59:36: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
57 | coordinator.updateView()
58 |
59 | let output = await operation()
| |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
60 |
61 | if !Task.isCancelled {
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/Hook/UseAsyncPerform.swift:96:24: warning: sending 'coordinator' risks causing data races; this is an error in the Swift 6 language mode
94 | phase: coordinator.state.phase,
95 | perform: {
96 | guard !coordinator.state.isDisposed else {
| |- warning: sending 'coordinator' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'coordinator' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
97 | return
98 | }
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/Hook/UseAsyncPerform.swift:106:44: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
104 |
105 | do {
106 | let output = try await operation()
| |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
107 | phase = .success(output)
108 | }
[12/31] Compiling Hooks UseContext.swift
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/Hook/UseAsyncPerform.swift:52:24: warning: sending 'coordinator' risks causing data races; this is an error in the Swift 6 language mode
50 | phase: coordinator.state.phase,
51 | perform: {
52 | guard !coordinator.state.isDisposed else {
| |- warning: sending 'coordinator' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'coordinator' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
53 | return
54 | }
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/Hook/UseAsyncPerform.swift:59:36: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
57 | coordinator.updateView()
58 |
59 | let output = await operation()
| |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
60 |
61 | if !Task.isCancelled {
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/Hook/UseAsyncPerform.swift:96:24: warning: sending 'coordinator' risks causing data races; this is an error in the Swift 6 language mode
94 | phase: coordinator.state.phase,
95 | perform: {
96 | guard !coordinator.state.isDisposed else {
| |- warning: sending 'coordinator' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'coordinator' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
97 | return
98 | }
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/Hook/UseAsyncPerform.swift:106:44: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
104 |
105 | do {
106 | let output = try await operation()
| |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
107 | phase = .success(output)
108 | }
[13/31] Compiling Hooks UseEffect.swift
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/Hook/UseAsyncPerform.swift:52:24: warning: sending 'coordinator' risks causing data races; this is an error in the Swift 6 language mode
50 | phase: coordinator.state.phase,
51 | perform: {
52 | guard !coordinator.state.isDisposed else {
| |- warning: sending 'coordinator' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'coordinator' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
53 | return
54 | }
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/Hook/UseAsyncPerform.swift:59:36: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
57 | coordinator.updateView()
58 |
59 | let output = await operation()
| |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
60 |
61 | if !Task.isCancelled {
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/Hook/UseAsyncPerform.swift:96:24: warning: sending 'coordinator' risks causing data races; this is an error in the Swift 6 language mode
94 | phase: coordinator.state.phase,
95 | perform: {
96 | guard !coordinator.state.isDisposed else {
| |- warning: sending 'coordinator' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'coordinator' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
97 | return
98 | }
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/Hook/UseAsyncPerform.swift:106:44: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
104 |
105 | do {
106 | let output = try await operation()
| |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
107 | phase = .success(output)
108 | }
[14/31] Compiling Hooks UseRef.swift
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/Hook/UseState.swift:49:17: warning: capture of 'coordinator' with non-sendable type 'StateHook<State>.Coordinator' (aka 'HookCoordinator<StateHook<State>>') in a `@Sendable` closure; this is an error in the Swift 6 language mode
47 | Binding(
48 | get: {
49 | coordinator.state.state
| `- warning: capture of 'coordinator' with non-sendable type 'StateHook<State>.Coordinator' (aka 'HookCoordinator<StateHook<State>>') in a `@Sendable` closure; this is an error in the Swift 6 language mode
50 | },
51 | set: { newState, transaction in
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/HookCoordinator.swift:4:15: note: consider making generic struct 'HookCoordinator' conform to the 'Sendable' protocol
2 |
3 | /// Contextual information about the state of the hook.
4 | public struct HookCoordinator<H: Hook> {
| `- note: consider making generic struct 'HookCoordinator' conform to the 'Sendable' protocol
5 | /// The state of the hook stored in the scope.
6 | public let state: H.State
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/Hook/UseState.swift:54:24: warning: capture of 'coordinator' with non-sendable type 'StateHook<State>.Coordinator' (aka 'HookCoordinator<StateHook<State>>') in a `@Sendable` closure; this is an error in the Swift 6 language mode
52 | assertMainThread()
53 |
54 | guard !coordinator.state.isDisposed else {
| `- warning: capture of 'coordinator' with non-sendable type 'StateHook<State>.Coordinator' (aka 'HookCoordinator<StateHook<State>>') in a `@Sendable` closure; this is an error in the Swift 6 language mode
55 | return
56 | }
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/HookCoordinator.swift:4:15: note: consider making generic struct 'HookCoordinator' conform to the 'Sendable' protocol
2 |
3 | /// Contextual information about the state of the hook.
4 | public struct HookCoordinator<H: Hook> {
| `- note: consider making generic struct 'HookCoordinator' conform to the 'Sendable' protocol
5 | /// The state of the hook stored in the scope.
6 | public let state: H.State
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/Hook/UseState.swift:59:21: warning: capture of 'coordinator' with non-sendable type 'StateHook<State>.Coordinator' (aka 'HookCoordinator<StateHook<State>>') in an isolated closure; this is an error in the Swift 6 language mode
57 |
58 | withTransaction(transaction) {
59 | coordinator.state.state = newState
| `- warning: capture of 'coordinator' with non-sendable type 'StateHook<State>.Coordinator' (aka 'HookCoordinator<StateHook<State>>') in an isolated closure; this is an error in the Swift 6 language mode
60 | coordinator.updateView()
61 | }
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/HookCoordinator.swift:4:15: note: consider making generic struct 'HookCoordinator' conform to the 'Sendable' protocol
2 |
3 | /// Contextual information about the state of the hook.
4 | public struct HookCoordinator<H: Hook> {
| `- note: consider making generic struct 'HookCoordinator' conform to the 'Sendable' protocol
5 | /// The state of the hook stored in the scope.
6 | public let state: H.State
[15/31] Compiling Hooks UseState.swift
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/Hook/UseState.swift:49:17: warning: capture of 'coordinator' with non-sendable type 'StateHook<State>.Coordinator' (aka 'HookCoordinator<StateHook<State>>') in a `@Sendable` closure; this is an error in the Swift 6 language mode
47 | Binding(
48 | get: {
49 | coordinator.state.state
| `- warning: capture of 'coordinator' with non-sendable type 'StateHook<State>.Coordinator' (aka 'HookCoordinator<StateHook<State>>') in a `@Sendable` closure; this is an error in the Swift 6 language mode
50 | },
51 | set: { newState, transaction in
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/HookCoordinator.swift:4:15: note: consider making generic struct 'HookCoordinator' conform to the 'Sendable' protocol
2 |
3 | /// Contextual information about the state of the hook.
4 | public struct HookCoordinator<H: Hook> {
| `- note: consider making generic struct 'HookCoordinator' conform to the 'Sendable' protocol
5 | /// The state of the hook stored in the scope.
6 | public let state: H.State
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/Hook/UseState.swift:54:24: warning: capture of 'coordinator' with non-sendable type 'StateHook<State>.Coordinator' (aka 'HookCoordinator<StateHook<State>>') in a `@Sendable` closure; this is an error in the Swift 6 language mode
52 | assertMainThread()
53 |
54 | guard !coordinator.state.isDisposed else {
| `- warning: capture of 'coordinator' with non-sendable type 'StateHook<State>.Coordinator' (aka 'HookCoordinator<StateHook<State>>') in a `@Sendable` closure; this is an error in the Swift 6 language mode
55 | return
56 | }
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/HookCoordinator.swift:4:15: note: consider making generic struct 'HookCoordinator' conform to the 'Sendable' protocol
2 |
3 | /// Contextual information about the state of the hook.
4 | public struct HookCoordinator<H: Hook> {
| `- note: consider making generic struct 'HookCoordinator' conform to the 'Sendable' protocol
5 | /// The state of the hook stored in the scope.
6 | public let state: H.State
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/Hook/UseState.swift:59:21: warning: capture of 'coordinator' with non-sendable type 'StateHook<State>.Coordinator' (aka 'HookCoordinator<StateHook<State>>') in an isolated closure; this is an error in the Swift 6 language mode
57 |
58 | withTransaction(transaction) {
59 | coordinator.state.state = newState
| `- warning: capture of 'coordinator' with non-sendable type 'StateHook<State>.Coordinator' (aka 'HookCoordinator<StateHook<State>>') in an isolated closure; this is an error in the Swift 6 language mode
60 | coordinator.updateView()
61 | }
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/HookCoordinator.swift:4:15: note: consider making generic struct 'HookCoordinator' conform to the 'Sendable' protocol
2 |
3 | /// Contextual information about the state of the hook.
4 | public struct HookCoordinator<H: Hook> {
| `- note: consider making generic struct 'HookCoordinator' conform to the 'Sendable' protocol
5 | /// The state of the hook stored in the scope.
6 | public let state: H.State
[16/31] Compiling Hooks HookCoordinator.swift
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/Hook/UseState.swift:49:17: warning: capture of 'coordinator' with non-sendable type 'StateHook<State>.Coordinator' (aka 'HookCoordinator<StateHook<State>>') in a `@Sendable` closure; this is an error in the Swift 6 language mode
47 | Binding(
48 | get: {
49 | coordinator.state.state
| `- warning: capture of 'coordinator' with non-sendable type 'StateHook<State>.Coordinator' (aka 'HookCoordinator<StateHook<State>>') in a `@Sendable` closure; this is an error in the Swift 6 language mode
50 | },
51 | set: { newState, transaction in
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/HookCoordinator.swift:4:15: note: consider making generic struct 'HookCoordinator' conform to the 'Sendable' protocol
2 |
3 | /// Contextual information about the state of the hook.
4 | public struct HookCoordinator<H: Hook> {
| `- note: consider making generic struct 'HookCoordinator' conform to the 'Sendable' protocol
5 | /// The state of the hook stored in the scope.
6 | public let state: H.State
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/Hook/UseState.swift:54:24: warning: capture of 'coordinator' with non-sendable type 'StateHook<State>.Coordinator' (aka 'HookCoordinator<StateHook<State>>') in a `@Sendable` closure; this is an error in the Swift 6 language mode
52 | assertMainThread()
53 |
54 | guard !coordinator.state.isDisposed else {
| `- warning: capture of 'coordinator' with non-sendable type 'StateHook<State>.Coordinator' (aka 'HookCoordinator<StateHook<State>>') in a `@Sendable` closure; this is an error in the Swift 6 language mode
55 | return
56 | }
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/HookCoordinator.swift:4:15: note: consider making generic struct 'HookCoordinator' conform to the 'Sendable' protocol
2 |
3 | /// Contextual information about the state of the hook.
4 | public struct HookCoordinator<H: Hook> {
| `- note: consider making generic struct 'HookCoordinator' conform to the 'Sendable' protocol
5 | /// The state of the hook stored in the scope.
6 | public let state: H.State
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/Hook/UseState.swift:59:21: warning: capture of 'coordinator' with non-sendable type 'StateHook<State>.Coordinator' (aka 'HookCoordinator<StateHook<State>>') in an isolated closure; this is an error in the Swift 6 language mode
57 |
58 | withTransaction(transaction) {
59 | coordinator.state.state = newState
| `- warning: capture of 'coordinator' with non-sendable type 'StateHook<State>.Coordinator' (aka 'HookCoordinator<StateHook<State>>') in an isolated closure; this is an error in the Swift 6 language mode
60 | coordinator.updateView()
61 | }
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/HookCoordinator.swift:4:15: note: consider making generic struct 'HookCoordinator' conform to the 'Sendable' protocol
2 |
3 | /// Contextual information about the state of the hook.
4 | public struct HookCoordinator<H: Hook> {
| `- note: consider making generic struct 'HookCoordinator' conform to the 'Sendable' protocol
5 | /// The state of the hook stored in the scope.
6 | public let state: H.State
[17/31] Compiling Hooks UsePublisher.swift
[18/31] Compiling Hooks UsePublisherSubscribe.swift
[19/31] Compiling Hooks UseReducer.swift
[20/31] Compiling Hooks HookView.swift
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/HookView.swift:27:9: warning: call to main actor-isolated initializer 'init(_:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
25 | /// The content and behavior of the view.
26 | var body: some View {
27 | HookScope {
| `- warning: call to main actor-isolated initializer 'init(_:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
28 | hookBody
29 | }
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/HookScope.swift:24:12: note: calls to initializer 'init(_:)' from outside of its actor context are implicitly asynchronous
22 | /// Creates a `HookScope` that hosts the state of hooks.
23 | /// - Parameter content: A content view that uses the hooks.
24 | public init(@ViewBuilder _ content: @escaping () -> Content) {
| `- note: calls to initializer 'init(_:)' from outside of its actor context are implicitly asynchronous
25 | self.content = content
26 | }
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/HookView.swift:27:9: warning: sending task-isolated value of type '() -> Self.HookBody' with later accesses to main actor-isolated context risks causing data races; this is an error in the Swift 6 language mode
25 | /// The content and behavior of the view.
26 | var body: some View {
27 | HookScope {
| `- warning: sending task-isolated value of type '() -> Self.HookBody' with later accesses to main actor-isolated context risks causing data races; this is an error in the Swift 6 language mode
28 | hookBody
29 | }
[21/31] Compiling Hooks Assertions.swift
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/HookView.swift:27:9: warning: call to main actor-isolated initializer 'init(_:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
25 | /// The content and behavior of the view.
26 | var body: some View {
27 | HookScope {
| `- warning: call to main actor-isolated initializer 'init(_:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
28 | hookBody
29 | }
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/HookScope.swift:24:12: note: calls to initializer 'init(_:)' from outside of its actor context are implicitly asynchronous
22 | /// Creates a `HookScope` that hosts the state of hooks.
23 | /// - Parameter content: A content view that uses the hooks.
24 | public init(@ViewBuilder _ content: @escaping () -> Content) {
| `- note: calls to initializer 'init(_:)' from outside of its actor context are implicitly asynchronous
25 | self.content = content
26 | }
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/HookView.swift:27:9: warning: sending task-isolated value of type '() -> Self.HookBody' with later accesses to main actor-isolated context risks causing data races; this is an error in the Swift 6 language mode
25 | /// The content and behavior of the view.
26 | var body: some View {
27 | HookScope {
| `- warning: sending task-isolated value of type '() -> Self.HookBody' with later accesses to main actor-isolated context risks causing data races; this is an error in the Swift 6 language mode
28 | hookBody
29 | }
[22/31] Compiling Hooks EnvironmentKeys.swift
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/HookView.swift:27:9: warning: call to main actor-isolated initializer 'init(_:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
25 | /// The content and behavior of the view.
26 | var body: some View {
27 | HookScope {
| `- warning: call to main actor-isolated initializer 'init(_:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
28 | hookBody
29 | }
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/HookScope.swift:24:12: note: calls to initializer 'init(_:)' from outside of its actor context are implicitly asynchronous
22 | /// Creates a `HookScope` that hosts the state of hooks.
23 | /// - Parameter content: A content view that uses the hooks.
24 | public init(@ViewBuilder _ content: @escaping () -> Content) {
| `- note: calls to initializer 'init(_:)' from outside of its actor context are implicitly asynchronous
25 | self.content = content
26 | }
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/HookView.swift:27:9: warning: sending task-isolated value of type '() -> Self.HookBody' with later accesses to main actor-isolated context risks causing data races; this is an error in the Swift 6 language mode
25 | /// The content and behavior of the view.
26 | var body: some View {
27 | HookScope {
| `- warning: sending task-isolated value of type '() -> Self.HookBody' with later accesses to main actor-isolated context risks causing data races; this is an error in the Swift 6 language mode
28 | hookBody
29 | }
[23/31] Compiling Hooks UseEnvironment.swift
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/HookDispatcher.swift:6:43: warning: static property 'current' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
4 | /// A class that manages list of states of hooks used inside `HookDispatcher.scoped(environment:_)`.
5 | public final class HookDispatcher: ObservableObject {
6 | internal private(set) static weak var current: HookDispatcher?
| |- warning: static property 'current' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'current' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'current' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
7 |
8 | /// A publisher that emits before the object has changed.
[24/31] Compiling Hooks UseHook.swift
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/HookDispatcher.swift:6:43: warning: static property 'current' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
4 | /// A class that manages list of states of hooks used inside `HookDispatcher.scoped(environment:_)`.
5 | public final class HookDispatcher: ObservableObject {
6 | internal private(set) static weak var current: HookDispatcher?
| |- warning: static property 'current' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'current' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'current' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
7 |
8 | /// A publisher that emits before the object has changed.
[25/31] Compiling Hooks UseMemo.swift
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/HookDispatcher.swift:6:43: warning: static property 'current' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
4 | /// A class that manages list of states of hooks used inside `HookDispatcher.scoped(environment:_)`.
5 | public final class HookDispatcher: ObservableObject {
6 | internal private(set) static weak var current: HookDispatcher?
| |- warning: static property 'current' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'current' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'current' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
7 |
8 | /// A publisher that emits before the object has changed.
[26/31] Compiling Hooks Provider.swift
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/Hook/UseAsync.swift:64:32: warning: non-sendable type 'Output' returned by implicitly asynchronous call to nonisolated function cannot cross actor boundary; this is an error in the Swift 6 language mode
47 | }
48 |
49 | internal struct AsyncHook<Output>: Hook {
| `- note: consider making generic parameter 'Output' conform to the 'Sendable' protocol
50 | let updateStrategy: HookUpdateStrategy?
51 | let operation: () async -> Output
:
62 | coordinator.state.phase = .running
63 | coordinator.state.task = Task { @MainActor in
64 | let output = await operation()
| `- warning: non-sendable type 'Output' returned by implicitly asynchronous call to nonisolated function cannot cross actor boundary; this is an error in the Swift 6 language mode
65 |
66 | if !Task.isCancelled {
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/Hook/UseAsync.swift:107:40: warning: non-sendable type 'Output' returned by implicitly asynchronous call to nonisolated function cannot cross actor boundary; this is an error in the Swift 6 language mode
87 | }
88 |
89 | internal struct AsyncThrowingHook<Output>: Hook {
| `- note: consider making generic parameter 'Output' conform to the 'Sendable' protocol
90 | let updateStrategy: HookUpdateStrategy?
91 | let operation: () async throws -> Output
:
105 |
106 | do {
107 | let output = try await operation()
| `- warning: non-sendable type 'Output' returned by implicitly asynchronous call to nonisolated function cannot cross actor boundary; this is an error in the Swift 6 language mode
108 | phase = .success(output)
109 | }
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/Hook/UseAsync.swift:67:17: warning: sending 'coordinator' risks causing data races; this is an error in the Swift 6 language mode
65 |
66 | if !Task.isCancelled {
67 | coordinator.state.phase = .success(output)
| |- warning: sending 'coordinator' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'coordinator' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
68 | coordinator.updateView()
69 | }
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/Hook/UseAsync.swift:63:39: warning: task or actor isolated value cannot be sent; this is an error in the Swift 6 language mode
61 | func updateState(coordinator: Coordinator) {
62 | coordinator.state.phase = .running
63 | coordinator.state.task = Task { @MainActor in
| `- warning: task or actor isolated value cannot be sent; this is an error in the Swift 6 language mode
64 | let output = await operation()
65 |
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/Hook/UseAsync.swift:115:17: warning: sending 'coordinator' risks causing data races; this is an error in the Swift 6 language mode
113 |
114 | if !Task.isCancelled {
115 | coordinator.state.phase = phase
| |- warning: sending 'coordinator' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'coordinator' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
116 | coordinator.updateView()
117 | }
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/Hook/UseAsync.swift:103:39: warning: task or actor isolated value cannot be sent; this is an error in the Swift 6 language mode
101 | func updateState(coordinator: Coordinator) {
102 | coordinator.state.phase = .running
103 | coordinator.state.task = Task { @MainActor in
| `- warning: task or actor isolated value cannot be sent; this is an error in the Swift 6 language mode
104 | let phase: AsyncPhase<Output, Error>
105 |
[27/31] Compiling Hooks Hook.swift
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/Hook/UseAsync.swift:64:32: warning: non-sendable type 'Output' returned by implicitly asynchronous call to nonisolated function cannot cross actor boundary; this is an error in the Swift 6 language mode
47 | }
48 |
49 | internal struct AsyncHook<Output>: Hook {
| `- note: consider making generic parameter 'Output' conform to the 'Sendable' protocol
50 | let updateStrategy: HookUpdateStrategy?
51 | let operation: () async -> Output
:
62 | coordinator.state.phase = .running
63 | coordinator.state.task = Task { @MainActor in
64 | let output = await operation()
| `- warning: non-sendable type 'Output' returned by implicitly asynchronous call to nonisolated function cannot cross actor boundary; this is an error in the Swift 6 language mode
65 |
66 | if !Task.isCancelled {
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/Hook/UseAsync.swift:107:40: warning: non-sendable type 'Output' returned by implicitly asynchronous call to nonisolated function cannot cross actor boundary; this is an error in the Swift 6 language mode
87 | }
88 |
89 | internal struct AsyncThrowingHook<Output>: Hook {
| `- note: consider making generic parameter 'Output' conform to the 'Sendable' protocol
90 | let updateStrategy: HookUpdateStrategy?
91 | let operation: () async throws -> Output
:
105 |
106 | do {
107 | let output = try await operation()
| `- warning: non-sendable type 'Output' returned by implicitly asynchronous call to nonisolated function cannot cross actor boundary; this is an error in the Swift 6 language mode
108 | phase = .success(output)
109 | }
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/Hook/UseAsync.swift:67:17: warning: sending 'coordinator' risks causing data races; this is an error in the Swift 6 language mode
65 |
66 | if !Task.isCancelled {
67 | coordinator.state.phase = .success(output)
| |- warning: sending 'coordinator' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'coordinator' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
68 | coordinator.updateView()
69 | }
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/Hook/UseAsync.swift:63:39: warning: task or actor isolated value cannot be sent; this is an error in the Swift 6 language mode
61 | func updateState(coordinator: Coordinator) {
62 | coordinator.state.phase = .running
63 | coordinator.state.task = Task { @MainActor in
| `- warning: task or actor isolated value cannot be sent; this is an error in the Swift 6 language mode
64 | let output = await operation()
65 |
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/Hook/UseAsync.swift:115:17: warning: sending 'coordinator' risks causing data races; this is an error in the Swift 6 language mode
113 |
114 | if !Task.isCancelled {
115 | coordinator.state.phase = phase
| |- warning: sending 'coordinator' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'coordinator' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
116 | coordinator.updateView()
117 | }
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/Hook/UseAsync.swift:103:39: warning: task or actor isolated value cannot be sent; this is an error in the Swift 6 language mode
101 | func updateState(coordinator: Coordinator) {
102 | coordinator.state.phase = .running
103 | coordinator.state.task = Task { @MainActor in
| `- warning: task or actor isolated value cannot be sent; this is an error in the Swift 6 language mode
104 | let phase: AsyncPhase<Output, Error>
105 |
[28/31] Compiling Hooks UseAsync.swift
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/Hook/UseAsync.swift:64:32: warning: non-sendable type 'Output' returned by implicitly asynchronous call to nonisolated function cannot cross actor boundary; this is an error in the Swift 6 language mode
47 | }
48 |
49 | internal struct AsyncHook<Output>: Hook {
| `- note: consider making generic parameter 'Output' conform to the 'Sendable' protocol
50 | let updateStrategy: HookUpdateStrategy?
51 | let operation: () async -> Output
:
62 | coordinator.state.phase = .running
63 | coordinator.state.task = Task { @MainActor in
64 | let output = await operation()
| `- warning: non-sendable type 'Output' returned by implicitly asynchronous call to nonisolated function cannot cross actor boundary; this is an error in the Swift 6 language mode
65 |
66 | if !Task.isCancelled {
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/Hook/UseAsync.swift:107:40: warning: non-sendable type 'Output' returned by implicitly asynchronous call to nonisolated function cannot cross actor boundary; this is an error in the Swift 6 language mode
87 | }
88 |
89 | internal struct AsyncThrowingHook<Output>: Hook {
| `- note: consider making generic parameter 'Output' conform to the 'Sendable' protocol
90 | let updateStrategy: HookUpdateStrategy?
91 | let operation: () async throws -> Output
:
105 |
106 | do {
107 | let output = try await operation()
| `- warning: non-sendable type 'Output' returned by implicitly asynchronous call to nonisolated function cannot cross actor boundary; this is an error in the Swift 6 language mode
108 | phase = .success(output)
109 | }
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/Hook/UseAsync.swift:67:17: warning: sending 'coordinator' risks causing data races; this is an error in the Swift 6 language mode
65 |
66 | if !Task.isCancelled {
67 | coordinator.state.phase = .success(output)
| |- warning: sending 'coordinator' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'coordinator' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
68 | coordinator.updateView()
69 | }
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/Hook/UseAsync.swift:63:39: warning: task or actor isolated value cannot be sent; this is an error in the Swift 6 language mode
61 | func updateState(coordinator: Coordinator) {
62 | coordinator.state.phase = .running
63 | coordinator.state.task = Task { @MainActor in
| `- warning: task or actor isolated value cannot be sent; this is an error in the Swift 6 language mode
64 | let output = await operation()
65 |
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/Hook/UseAsync.swift:115:17: warning: sending 'coordinator' risks causing data races; this is an error in the Swift 6 language mode
113 |
114 | if !Task.isCancelled {
115 | coordinator.state.phase = phase
| |- warning: sending 'coordinator' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'coordinator' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
116 | coordinator.updateView()
117 | }
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/Hook/UseAsync.swift:103:39: warning: task or actor isolated value cannot be sent; this is an error in the Swift 6 language mode
101 | func updateState(coordinator: Coordinator) {
102 | coordinator.state.phase = .running
103 | coordinator.state.task = Task { @MainActor in
| `- warning: task or actor isolated value cannot be sent; this is an error in the Swift 6 language mode
104 | let phase: AsyncPhase<Output, Error>
105 |
[29/31] Compiling Hooks HookDispatcher.swift
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/HookDispatcher.swift:6:43: warning: static property 'current' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
4 | /// A class that manages list of states of hooks used inside `HookDispatcher.scoped(environment:_)`.
5 | public final class HookDispatcher: ObservableObject {
6 | internal private(set) static weak var current: HookDispatcher?
| |- warning: static property 'current' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'current' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'current' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
7 |
8 | /// A publisher that emits before the object has changed.
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/HookDispatcher.swift:214:16: warning: generic parameter 'H' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
204 | }
205 |
206 | private struct HookRecord<H: Hook>: HookRecordProtocol {
| `- note: 'H' previously declared here
207 | let hook: H
208 | let coordinator: HookCoordinator<H>
:
212 | }
213 |
214 | func state<H: Hook>(of hookType: H.Type) -> H.State? {
| `- warning: generic parameter 'H' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
215 | coordinator.state as? H.State
216 | }
[30/31] Compiling Hooks HookScope.swift
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/HookDispatcher.swift:6:43: warning: static property 'current' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
4 | /// A class that manages list of states of hooks used inside `HookDispatcher.scoped(environment:_)`.
5 | public final class HookDispatcher: ObservableObject {
6 | internal private(set) static weak var current: HookDispatcher?
| |- warning: static property 'current' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'current' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'current' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
7 |
8 | /// A publisher that emits before the object has changed.
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/HookDispatcher.swift:214:16: warning: generic parameter 'H' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
204 | }
205 |
206 | private struct HookRecord<H: Hook>: HookRecordProtocol {
| `- note: 'H' previously declared here
207 | let hook: H
208 | let coordinator: HookCoordinator<H>
:
212 | }
213 |
214 | func state<H: Hook>(of hookType: H.Type) -> H.State? {
| `- warning: generic parameter 'H' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
215 | coordinator.state as? H.State
216 | }
[31/31] Compiling Hooks HookUpdateStrategy.swift
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/HookDispatcher.swift:6:43: warning: static property 'current' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
4 | /// A class that manages list of states of hooks used inside `HookDispatcher.scoped(environment:_)`.
5 | public final class HookDispatcher: ObservableObject {
6 | internal private(set) static weak var current: HookDispatcher?
| |- warning: static property 'current' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'current' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'current' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
7 |
8 | /// A publisher that emits before the object has changed.
/Users/admin/builder/spi-builder-workspace/Sources/Hooks/HookDispatcher.swift:214:16: warning: generic parameter 'H' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
204 | }
205 |
206 | private struct HookRecord<H: Hook>: HookRecordProtocol {
| `- note: 'H' previously declared here
207 | let hook: H
208 | let coordinator: HookCoordinator<H>
:
212 | }
213 |
214 | func state<H: Hook>(of hookType: H.Type) -> H.State? {
| `- warning: generic parameter 'H' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
215 | coordinator.state as? H.State
216 | }
Build complete! (18.32s)
Build complete.
{
"dependencies" : [
],
"manifest_display_name" : "swiftui-hooks",
"name" : "swiftui-hooks",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "ios",
"version" : "13.0"
},
{
"name" : "macos",
"version" : "10.15"
},
{
"name" : "tvos",
"version" : "13.0"
},
{
"name" : "watchos",
"version" : "6.0"
}
],
"products" : [
{
"name" : "Hooks",
"targets" : [
"Hooks"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"swift_languages_versions" : [
"5"
],
"targets" : [
{
"c99name" : "HooksTests",
"module_type" : "SwiftTarget",
"name" : "HooksTests",
"path" : "Tests/HooksTests",
"sources" : [
"AsyncPhaseTests.swift",
"Hook/UseAsyncPerformTests.swift",
"Hook/UseAsyncTests.swift",
"Hook/UseContextTests.swift",
"Hook/UseEffectTests.swift",
"Hook/UseEnvironmentTests.swift",
"Hook/UseHookTests.swift",
"Hook/UseMemoTests.swift",
"Hook/UsePublisherSubscribeTests.swift",
"Hook/UsePublisherTests.swift",
"Hook/UseReducerTests.swift",
"Hook/UseRefTests.swift",
"Hook/UseStateTests.swift",
"Hook/Utilities.swift",
"HookDispatcherTests.swift",
"HookUpdateStrategyTests.swift",
"LinkedListTests.swift",
"RefObjectTests.swift",
"Testing/HookTesterTests.swift"
],
"target_dependencies" : [
"Hooks"
],
"type" : "test"
},
{
"c99name" : "Hooks",
"module_type" : "SwiftTarget",
"name" : "Hooks",
"path" : "Sources/Hooks",
"product_memberships" : [
"Hooks"
],
"sources" : [
"AsyncPhase.swift",
"Context/Consumer.swift",
"Context/Context.swift",
"Context/Provider.swift",
"Hook.swift",
"Hook/UseAsync.swift",
"Hook/UseAsyncPerform.swift",
"Hook/UseContext.swift",
"Hook/UseEffect.swift",
"Hook/UseEnvironment.swift",
"Hook/UseHook.swift",
"Hook/UseMemo.swift",
"Hook/UsePublisher.swift",
"Hook/UsePublisherSubscribe.swift",
"Hook/UseReducer.swift",
"Hook/UseRef.swift",
"Hook/UseState.swift",
"HookCoordinator.swift",
"HookDispatcher.swift",
"HookScope.swift",
"HookUpdateStrategy.swift",
"HookView.swift",
"Internals/Assertions.swift",
"Internals/EnvironmentKeys.swift",
"Internals/LinkedList.swift",
"RefObject.swift",
"Testing/HookTester.swift",
"ViewExtensions.swift"
],
"type" : "library"
}
],
"tools_version" : "5.6"
}
Done.