Build Information
Successful build of NavigationBackport, reference 0.11.3 (5a966a
), with Swift 6.1 for macOS (SPM) on 30 Apr 2025 03:36:13 UTC.
Swift 6 data race errors: 2
Build Command
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures
Build Log
========================================
RunAll
========================================
Builder version: 4.61.1
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/johnpatrickmorgan/NavigationBackport.git
Reference: 0.11.3
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/johnpatrickmorgan/NavigationBackport
* tag 0.11.3 -> FETCH_HEAD
HEAD is now at 5a966a6 Bumps podspec to 0.11.3
Cloned https://github.com/johnpatrickmorgan/NavigationBackport.git
Revision (git rev-parse @):
5a966a6010dcc6575a1931ca577b8ab19008166d
SUCCESS checkout https://github.com/johnpatrickmorgan/NavigationBackport.git at 0.11.3
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.1
Building package at path: $PWD
https://github.com/johnpatrickmorgan/NavigationBackport.git
https://github.com/johnpatrickmorgan/NavigationBackport.git
{
"dependencies" : [
],
"manifest_display_name" : "NavigationBackport",
"name" : "NavigationBackport",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "ios",
"version" : "14.0"
},
{
"name" : "watchos",
"version" : "7.0"
},
{
"name" : "macos",
"version" : "11.0"
},
{
"name" : "tvos",
"version" : "14.0"
}
],
"products" : [
{
"name" : "NavigationBackport",
"targets" : [
"NavigationBackport"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "NavigationBackportTests",
"module_type" : "SwiftTarget",
"name" : "NavigationBackportTests",
"path" : "Tests/NavigationBackportTests",
"sources" : [
"NavigationBackportTests.swift"
],
"target_dependencies" : [
"NavigationBackport"
],
"type" : "test"
},
{
"c99name" : "NavigationBackport",
"module_type" : "SwiftTarget",
"name" : "NavigationBackport",
"path" : "Sources/NavigationBackport",
"product_memberships" : [
"NavigationBackport"
],
"sources" : [
"Array+utilities.swift",
"Binding+withDelaysIfUnsupported.swift",
"CodableRepresentation.swift",
"ConditionalViewBuilder.swift",
"DestinationBuilderHolder.swift",
"DestinationBuilderModifier.swift",
"DestinationBuilderView.swift",
"EnvironmentValues+navigationStack.swift",
"LocalDestinationBuilderModifier.swift",
"NBNavigationLink.swift",
"NBNavigationPath+utilities.swift",
"NBNavigationPath.swift",
"NBNavigationStack.swift",
"NBScreen.swift",
"NavigationBackport.swift",
"NavigationLinkRowStyle.swift",
"NavigationPathHolder.swift",
"Navigator+utilities.swift",
"Navigator+withDelaysIfUnsupported.swift",
"Navigator.swift",
"Node.swift",
"NonReactiveState.swift",
"ObservableObject+withDelaysIfUnsupported.swift",
"Router.swift",
"Unobserved.swift",
"UseNavigationStackPolicy.swift",
"View+_navigationDestination.swift",
"View+nbNavigationDestination.swift",
"View+nbUseNavigationStack.swift",
"View+onFirstAppear.swift",
"apply.swift"
],
"type" : "library"
}
],
"tools_version" : "5.6"
}
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version-2F0A5646E1D333AE.txt
[3/31] Emitting module NavigationBackport
/Users/admin/builder/spi-builder-workspace/Sources/NavigationBackport/DestinationBuilderView.swift:16:15: warning: main actor-isolated operator function '==' cannot be used to satisfy nonisolated requirement from protocol 'Equatable'; this is an error in the Swift 6 language mode
13 | }
14 |
15 | struct DataDependentView<Content: View>: View, Equatable {
| `- note: add '@preconcurrency' to the 'Equatable' conformance to defer isolation checking to run time
16 | static func ==(lhs: DataDependentView, rhs: DataDependentView) -> Bool {
| |- warning: main actor-isolated operator function '==' cannot be used to satisfy nonisolated requirement from protocol 'Equatable'; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to '==' to make this operator function not isolated to the actor
17 | return lhs.data == rhs.data
18 | }
/Users/admin/builder/spi-builder-workspace/Sources/NavigationBackport/EnvironmentValues+navigationStack.swift:4:14: warning: static property 'defaultValue' is not concurrency-safe because non-'Sendable' type 'UseNavigationStackPolicy' may have shared mutable state; this is an error in the Swift 6 language mode
2 |
3 | struct UseNavigationStackPolicyKey: EnvironmentKey {
4 | static let defaultValue = UseNavigationStackPolicy.whenAvailable
| |- warning: static property 'defaultValue' is not concurrency-safe because non-'Sendable' type 'UseNavigationStackPolicy' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'defaultValue' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
5 | }
6 |
/Users/admin/builder/spi-builder-workspace/Sources/NavigationBackport/UseNavigationStackPolicy.swift:3:13: note: consider making enum 'UseNavigationStackPolicy' conform to the 'Sendable' protocol
1 | import SwiftUI
2 |
3 | public enum UseNavigationStackPolicy {
| `- note: consider making enum 'UseNavigationStackPolicy' conform to the 'Sendable' protocol
4 | case whenAvailable
5 | case never
[4/34] Compiling NavigationBackport View+nbUseNavigationStack.swift
[5/34] Compiling NavigationBackport View+onFirstAppear.swift
[6/34] Compiling NavigationBackport apply.swift
[7/34] Compiling NavigationBackport Navigator.swift
[8/34] Compiling NavigationBackport Node.swift
[9/34] Compiling NavigationBackport NonReactiveState.swift
[10/34] Compiling NavigationBackport NBNavigationPath+utilities.swift
[11/34] Compiling NavigationBackport NBNavigationPath.swift
[12/34] Compiling NavigationBackport NBNavigationStack.swift
[13/34] Compiling NavigationBackport UseNavigationStackPolicy.swift
[14/34] Compiling NavigationBackport View+_navigationDestination.swift
[15/34] Compiling NavigationBackport View+nbNavigationDestination.swift
[16/34] Compiling NavigationBackport EnvironmentValues+navigationStack.swift
/Users/admin/builder/spi-builder-workspace/Sources/NavigationBackport/EnvironmentValues+navigationStack.swift:4:14: warning: static property 'defaultValue' is not concurrency-safe because non-'Sendable' type 'UseNavigationStackPolicy' may have shared mutable state; this is an error in the Swift 6 language mode
2 |
3 | struct UseNavigationStackPolicyKey: EnvironmentKey {
4 | static let defaultValue = UseNavigationStackPolicy.whenAvailable
| |- warning: static property 'defaultValue' is not concurrency-safe because non-'Sendable' type 'UseNavigationStackPolicy' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'defaultValue' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
5 | }
6 |
/Users/admin/builder/spi-builder-workspace/Sources/NavigationBackport/UseNavigationStackPolicy.swift:3:13: note: consider making enum 'UseNavigationStackPolicy' conform to the 'Sendable' protocol
1 | import SwiftUI
2 |
3 | public enum UseNavigationStackPolicy {
| `- note: consider making enum 'UseNavigationStackPolicy' conform to the 'Sendable' protocol
4 | case whenAvailable
5 | case never
/Users/admin/builder/spi-builder-workspace/Sources/NavigationBackport/LocalDestinationBuilderModifier.swift:22:7: warning: sending 'destinationBuilder' risks causing data races; this is an error in the Swift 6 language mode
20 | // the view tree. Dispatching async allows those re-renders to succeed before removing the local builder.
21 | DispatchQueue.main.async { [destinationBuilder, id] in
22 | destinationBuilder?.removeLocalBuilder(identifier: id)
| |- warning: sending 'destinationBuilder' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'destinationBuilder' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
23 | }
24 | }
[17/34] Compiling NavigationBackport LocalDestinationBuilderModifier.swift
/Users/admin/builder/spi-builder-workspace/Sources/NavigationBackport/EnvironmentValues+navigationStack.swift:4:14: warning: static property 'defaultValue' is not concurrency-safe because non-'Sendable' type 'UseNavigationStackPolicy' may have shared mutable state; this is an error in the Swift 6 language mode
2 |
3 | struct UseNavigationStackPolicyKey: EnvironmentKey {
4 | static let defaultValue = UseNavigationStackPolicy.whenAvailable
| |- warning: static property 'defaultValue' is not concurrency-safe because non-'Sendable' type 'UseNavigationStackPolicy' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'defaultValue' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
5 | }
6 |
/Users/admin/builder/spi-builder-workspace/Sources/NavigationBackport/UseNavigationStackPolicy.swift:3:13: note: consider making enum 'UseNavigationStackPolicy' conform to the 'Sendable' protocol
1 | import SwiftUI
2 |
3 | public enum UseNavigationStackPolicy {
| `- note: consider making enum 'UseNavigationStackPolicy' conform to the 'Sendable' protocol
4 | case whenAvailable
5 | case never
/Users/admin/builder/spi-builder-workspace/Sources/NavigationBackport/LocalDestinationBuilderModifier.swift:22:7: warning: sending 'destinationBuilder' risks causing data races; this is an error in the Swift 6 language mode
20 | // the view tree. Dispatching async allows those re-renders to succeed before removing the local builder.
21 | DispatchQueue.main.async { [destinationBuilder, id] in
22 | destinationBuilder?.removeLocalBuilder(identifier: id)
| |- warning: sending 'destinationBuilder' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'destinationBuilder' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
23 | }
24 | }
[18/34] Compiling NavigationBackport NBNavigationLink.swift
/Users/admin/builder/spi-builder-workspace/Sources/NavigationBackport/EnvironmentValues+navigationStack.swift:4:14: warning: static property 'defaultValue' is not concurrency-safe because non-'Sendable' type 'UseNavigationStackPolicy' may have shared mutable state; this is an error in the Swift 6 language mode
2 |
3 | struct UseNavigationStackPolicyKey: EnvironmentKey {
4 | static let defaultValue = UseNavigationStackPolicy.whenAvailable
| |- warning: static property 'defaultValue' is not concurrency-safe because non-'Sendable' type 'UseNavigationStackPolicy' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'defaultValue' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
5 | }
6 |
/Users/admin/builder/spi-builder-workspace/Sources/NavigationBackport/UseNavigationStackPolicy.swift:3:13: note: consider making enum 'UseNavigationStackPolicy' conform to the 'Sendable' protocol
1 | import SwiftUI
2 |
3 | public enum UseNavigationStackPolicy {
| `- note: consider making enum 'UseNavigationStackPolicy' conform to the 'Sendable' protocol
4 | case whenAvailable
5 | case never
/Users/admin/builder/spi-builder-workspace/Sources/NavigationBackport/LocalDestinationBuilderModifier.swift:22:7: warning: sending 'destinationBuilder' risks causing data races; this is an error in the Swift 6 language mode
20 | // the view tree. Dispatching async allows those re-renders to succeed before removing the local builder.
21 | DispatchQueue.main.async { [destinationBuilder, id] in
22 | destinationBuilder?.removeLocalBuilder(identifier: id)
| |- warning: sending 'destinationBuilder' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'destinationBuilder' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
23 | }
24 | }
[19/34] Compiling NavigationBackport NavigationPathHolder.swift
[20/34] Compiling NavigationBackport Navigator+utilities.swift
[21/34] Compiling NavigationBackport Navigator+withDelaysIfUnsupported.swift
[22/34] Compiling NavigationBackport NBScreen.swift
[23/34] Compiling NavigationBackport NavigationBackport.swift
[24/34] Compiling NavigationBackport NavigationLinkRowStyle.swift
[25/34] Compiling NavigationBackport DestinationBuilderHolder.swift
/Users/admin/builder/spi-builder-workspace/Sources/NavigationBackport/DestinationBuilderView.swift:16:15: warning: main actor-isolated operator function '==' cannot be used to satisfy nonisolated requirement from protocol 'Equatable'; this is an error in the Swift 6 language mode
13 | }
14 |
15 | struct DataDependentView<Content: View>: View, Equatable {
| `- note: add '@preconcurrency' to the 'Equatable' conformance to defer isolation checking to run time
16 | static func ==(lhs: DataDependentView, rhs: DataDependentView) -> Bool {
| |- warning: main actor-isolated operator function '==' cannot be used to satisfy nonisolated requirement from protocol 'Equatable'; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to '==' to make this operator function not isolated to the actor
17 | return lhs.data == rhs.data
18 | }
[26/34] Compiling NavigationBackport DestinationBuilderModifier.swift
/Users/admin/builder/spi-builder-workspace/Sources/NavigationBackport/DestinationBuilderView.swift:16:15: warning: main actor-isolated operator function '==' cannot be used to satisfy nonisolated requirement from protocol 'Equatable'; this is an error in the Swift 6 language mode
13 | }
14 |
15 | struct DataDependentView<Content: View>: View, Equatable {
| `- note: add '@preconcurrency' to the 'Equatable' conformance to defer isolation checking to run time
16 | static func ==(lhs: DataDependentView, rhs: DataDependentView) -> Bool {
| |- warning: main actor-isolated operator function '==' cannot be used to satisfy nonisolated requirement from protocol 'Equatable'; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to '==' to make this operator function not isolated to the actor
17 | return lhs.data == rhs.data
18 | }
[27/34] Compiling NavigationBackport DestinationBuilderView.swift
/Users/admin/builder/spi-builder-workspace/Sources/NavigationBackport/DestinationBuilderView.swift:16:15: warning: main actor-isolated operator function '==' cannot be used to satisfy nonisolated requirement from protocol 'Equatable'; this is an error in the Swift 6 language mode
13 | }
14 |
15 | struct DataDependentView<Content: View>: View, Equatable {
| `- note: add '@preconcurrency' to the 'Equatable' conformance to defer isolation checking to run time
16 | static func ==(lhs: DataDependentView, rhs: DataDependentView) -> Bool {
| |- warning: main actor-isolated operator function '==' cannot be used to satisfy nonisolated requirement from protocol 'Equatable'; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to '==' to make this operator function not isolated to the actor
17 | return lhs.data == rhs.data
18 | }
[28/34] Compiling NavigationBackport ObservableObject+withDelaysIfUnsupported.swift
[29/34] Compiling NavigationBackport Router.swift
[30/34] Compiling NavigationBackport Unobserved.swift
[31/34] Compiling NavigationBackport Array+utilities.swift
[32/34] Compiling NavigationBackport Binding+withDelaysIfUnsupported.swift
[33/34] Compiling NavigationBackport CodableRepresentation.swift
[34/34] Compiling NavigationBackport ConditionalViewBuilder.swift
Build complete! (10.48s)
Build complete.
{
"dependencies" : [
],
"manifest_display_name" : "NavigationBackport",
"name" : "NavigationBackport",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "ios",
"version" : "14.0"
},
{
"name" : "watchos",
"version" : "7.0"
},
{
"name" : "macos",
"version" : "11.0"
},
{
"name" : "tvos",
"version" : "14.0"
}
],
"products" : [
{
"name" : "NavigationBackport",
"targets" : [
"NavigationBackport"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "NavigationBackportTests",
"module_type" : "SwiftTarget",
"name" : "NavigationBackportTests",
"path" : "Tests/NavigationBackportTests",
"sources" : [
"NavigationBackportTests.swift"
],
"target_dependencies" : [
"NavigationBackport"
],
"type" : "test"
},
{
"c99name" : "NavigationBackport",
"module_type" : "SwiftTarget",
"name" : "NavigationBackport",
"path" : "Sources/NavigationBackport",
"product_memberships" : [
"NavigationBackport"
],
"sources" : [
"Array+utilities.swift",
"Binding+withDelaysIfUnsupported.swift",
"CodableRepresentation.swift",
"ConditionalViewBuilder.swift",
"DestinationBuilderHolder.swift",
"DestinationBuilderModifier.swift",
"DestinationBuilderView.swift",
"EnvironmentValues+navigationStack.swift",
"LocalDestinationBuilderModifier.swift",
"NBNavigationLink.swift",
"NBNavigationPath+utilities.swift",
"NBNavigationPath.swift",
"NBNavigationStack.swift",
"NBScreen.swift",
"NavigationBackport.swift",
"NavigationLinkRowStyle.swift",
"NavigationPathHolder.swift",
"Navigator+utilities.swift",
"Navigator+withDelaysIfUnsupported.swift",
"Navigator.swift",
"Node.swift",
"NonReactiveState.swift",
"ObservableObject+withDelaysIfUnsupported.swift",
"Router.swift",
"Unobserved.swift",
"UseNavigationStackPolicy.swift",
"View+_navigationDestination.swift",
"View+nbNavigationDestination.swift",
"View+nbUseNavigationStack.swift",
"View+onFirstAppear.swift",
"apply.swift"
],
"type" : "library"
}
],
"tools_version" : "5.6"
}
Done.