The Swift Package Index logo.Swift Package Index

Track the adoption of Swift 6 strict concurrency checks for data race safety. How many packages are Ready for Swift 6?

Build Information

Successful build of ScreenUI, reference 1.1.1 (99429b), with Swift 6.0 for macOS (SPM) on 1 Nov 2024 17:39:14 UTC.

Swift 6 data race errors: 4

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/k-o-d-e-n/ScreenUI.git
Reference: 1.1.1
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/k-o-d-e-n/ScreenUI
 * tag               1.1.1      -> FETCH_HEAD
HEAD is now at 99429b4 Updated to 1.1.1.
Cloned https://github.com/k-o-d-e-n/ScreenUI.git
Revision (git rev-parse @):
99429b497e02b69079d3d60f30b46b426a51208f
SUCCESS checkout https://github.com/k-o-d-e-n/ScreenUI.git at 1.1.1
========================================
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": "screenui",
      "name": "ScreenUI",
      "url": "https://github.com/k-o-d-e-n/ScreenUI.git",
      "version": "unspecified",
      "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/ScreenUI",
      "dependencies": [
      ]
    }
  ]
}
Fetching https://github.com/k-o-d-e-n/ScreenUI.git
[1/193] Fetching screenui
Fetched https://github.com/k-o-d-e-n/ScreenUI.git from cache (0.77s)
Creating working copy for https://github.com/k-o-d-e-n/ScreenUI.git
Working copy of https://github.com/k-o-d-e-n/ScreenUI.git resolved at 1.1.1 (99429b4)
warning: '.resolve-product-dependencies': dependency 'screenui' 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/k-o-d-e-n/ScreenUI.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/13] Compiling ScreenUI ScreenPath.swift
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/ScreenPath.swift:60:22: warning: generic parameter 'T' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
 43 |
 44 | public typealias ScreenPathResult<To> = (state: AnyScreenState, screenContent: To.NestedScreen.Content) where To: Screen
 45 | public struct StartPath<T>: ScreenPath, ScreenPathPrivate, ScreenPathPrivate2 where T: Transition {
    |                         `- note: 'T' previously declared here
 46 |     public typealias From = T.From
 47 |     public typealias To = T.To
    :
 58 |     }
 59 |
 60 |     public subscript<T>(next path: KeyPath<To.PathFrom, T>) -> T { transition[next: path] }
    |                      `- warning: generic parameter 'T' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
 61 |
 62 |     public func __move(from surface: T.From.Content, completion: (() -> Void)?) -> ScreenPathResult<T.To> {
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/ScreenPath.swift:128:22: warning: generic parameter 'T' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
107 |     }
108 | }
109 | public struct NextPath<Prev, T>: ScreenPath, ScreenPathPrivate, ScreenPathPrivate2
    |                              `- note: 'T' previously declared here
110 | where Prev: ScreenPath & ScreenPathPrivate2, T: Transition, T.From == Prev.To.NestedScreen,
111 |       Prev.Result == ScreenPathResult<Prev.To>
    :
126 |     }
127 |
128 |     public subscript<T>(next path: KeyPath<To.PathFrom, T>) -> T { transition[next: path] }
    |                      `- warning: generic parameter 'T' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
129 |
130 |     public func __move(from surface: Prev.From.Content, completion: (() -> Void)?) -> ScreenPathResult<T.To> {
[4/13] Compiling ScreenUI Transition.swift
[5/13] Compiling ScreenUI SwiftUI.swift
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/SwiftUI.swift:321:22: warning: generic parameter 'T' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
304 | }
305 | @available(iOS 13.0, macOS 10.15, tvOS 13.0, watchOS 6.0, *)
306 | public struct StartPath_SwiftUI<T>: ScreenPath, ScreenPathPrivate, ScreenPath_SwiftUI where T: SwiftUICompatibleTransition {
    |                                 `- note: 'T' previously declared here
307 |     public typealias From = UnavailableContentScreen<Void>
308 |     public typealias To = T.To
    :
319 |     }
320 |
321 |     public subscript<T>(next path: KeyPath<To.PathFrom, T>) -> T { transition[next: path] }
    |                      `- warning: generic parameter 'T' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
322 |     public func index(of keyPath: PartialKeyPath<To.PathFrom>) -> Int { transition.index(of: keyPath) }
323 |     public func keyPath(at index: Int) -> PartialKeyPath<To.PathFrom> { transition.keyPath(at: index) }
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/SwiftUI.swift:370:22: warning: generic parameter 'T' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
350 | }
351 | @available(iOS 13.0, macOS 10.15, tvOS 13.0, watchOS 6.0, *)
352 | public struct NextPath_SwiftUI<Prev, T>: ScreenPath, ScreenPathPrivate, ScreenPath_SwiftUI
    |                                      `- note: 'T' previously declared here
353 | where Prev: ScreenPath & ScreenPath_SwiftUI, T: SwiftUICompatibleTransition, Prev.To.NestedScreen == T.From
354 | {
    :
368 |     }
369 |
370 |     public subscript<T>(next path: KeyPath<To.PathFrom, T>) -> T { transition[next: path] }
    |                      `- warning: generic parameter 'T' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
371 |     public func index(of keyPath: PartialKeyPath<To.PathFrom>) -> Int { transition.index(of: keyPath) }
372 |     public func keyPath(at index: Int) -> PartialKeyPath<To.PathFrom> { transition.keyPath(at: index) }
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/SwiftUI.swift:57:24: warning: call to main actor-isolated initializer 'init(router:content:selectedIndex:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
 54 |         public func keyPath(at index: Int) -> PartialKeyPath<Root.PathFrom> { root.keyPath(at: index) }
 55 |
 56 |         public func makeContent(_ context: Context, router: Router<NestedScreen>) -> ContentResult<Self> {
    |                     `- note: add '@MainActor' to make instance method 'makeContent(_:router:)' part of global actor 'MainActor'
 57 |             let tabs = TabsView(router: router, content: root.makeContent(context, router: router), selectedIndex: 0)
    |                        `- warning: call to main actor-isolated initializer 'init(router:content:selectedIndex:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
 58 |             return (tabs, tabs)
 59 |         }
 60 |
 61 |         public struct TabsView: View, _TabsViewIdentity {
    |                       `- note: calls to initializer 'init(router:content:selectedIndex:)' from outside of its actor context are implicitly asynchronous
 62 |             let router: Router<NestedScreen>
 63 |             let content: Root.Content
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/SwiftUI.swift:77:53: warning: converting non-sendable function value to '@isolated(any) @Sendable () -> Int' may introduce data races
 75 |                 )
 76 |                 router.state.selectedIndex_SwiftUI = _binding
 77 |                 let binding = Binding(get: _binding.get, set: _binding.set)
    |                                                     `- warning: converting non-sendable function value to '@isolated(any) @Sendable () -> Int' may introduce data races
 78 |                 return TabView(selection: binding) {
 79 |                     TupleView(content)
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/SwiftUI.swift:77:72: warning: converting non-sendable function value to '@isolated(any) @Sendable (Int) -> Void' may introduce data races
 75 |                 )
 76 |                 router.state.selectedIndex_SwiftUI = _binding
 77 |                 let binding = Binding(get: _binding.get, set: _binding.set)
    |                                                                        `- warning: converting non-sendable function value to '@isolated(any) @Sendable (Int) -> Void' may introduce data races
 78 |                 return TabView(selection: binding) {
 79 |                     TupleView(content)
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/SwiftUI.swift:225:44: warning: call to main actor-isolated initializer 'init(_:prevState:nextState:context:actionView:completion:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
215 | extension Router {
216 |     @available(iOS 13.0, macOS 10.15, tvOS 13.0, watchOS 6.0, *)
217 |     public func move<T, ActionView>(
    |                 `- note: add '@MainActor' to make instance method 'move(_:context:action:completion:)' part of global actor 'MainActor'
218 |         _ path: KeyPath<From.PathFrom, T>, context: T.Context,
219 |         @ViewBuilder action view: @escaping (Binding<Bool>) -> ActionView,
    :
223 |         nextState.previous = state
224 |         state[child: path, T.To.NestedScreen.self] = nextState // replaced previous line
225 |         return TransitionView<T, ActionView>(
    |                                            `- warning: call to main actor-isolated initializer 'init(_:prevState:nextState:context:actionView:completion:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
226 |             from[next: path], prevState: state, nextState: nextState,
227 |             context: context, actionView: view, completion: completion
    :
268 |     let state: ContentScreenState<Transition.To.NestedScreen>
269 |
270 |     init(_ transition: Transition, prevState: ContentScreenState<Transition.From.NestedScreen>,
    |     `- note: calls to initializer 'init(_:prevState:nextState:context:actionView:completion:)' from outside of its actor context are implicitly asynchronous
271 |          nextState: ContentScreenState<Transition.To.NestedScreen>, context: Transition.Context,
272 |          @ViewBuilder actionView: @escaping (Binding<Bool>) -> ActionView, completion: (() -> Void)?) {
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/SwiftUI.swift:240:44: warning: call to main actor-isolated initializer 'init(_:prevState:nextState:context:actionView:completion:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
229 |     }
230 |     @available(iOS 13.0, macOS 10.15, tvOS 13.0, watchOS 6.0, *)
231 |     public func move<T, ActionView>(
    |                 `- note: add '@MainActor' to make instance method 'move(_:context:action:completion:)' part of global actor 'MainActor'
232 |         _ path: KeyPath<From.PathFrom, Optional<T>>, context: T.Context,
233 |         @ViewBuilder action view: @escaping (Binding<Bool>) -> ActionView,
    :
238 |         nextState.previous = state
239 |         state[child: path, T.To.NestedScreen.self] = nextState // replaced previous line
240 |         return TransitionView<T, ActionView>(
    |                                            `- warning: call to main actor-isolated initializer 'init(_:prevState:nextState:context:actionView:completion:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
241 |             transition, prevState: state, nextState: nextState,
242 |             context: context, actionView: view, completion: completion
    :
268 |     let state: ContentScreenState<Transition.To.NestedScreen>
269 |
270 |     init(_ transition: Transition, prevState: ContentScreenState<Transition.From.NestedScreen>,
    |     `- note: calls to initializer 'init(_:prevState:nextState:context:actionView:completion:)' from outside of its actor context are implicitly asynchronous
271 |          nextState: ContentScreenState<Transition.To.NestedScreen>, context: Transition.Context,
272 |          @ViewBuilder actionView: @escaping (Binding<Bool>) -> ActionView, completion: (() -> Void)?) {
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/SwiftUI.swift:292:45: warning: converting non-sendable function value to '@isolated(any) @Sendable () -> Bool' may introduce data races
290 |         )
291 |         state.isActive_SwiftUI = _binding
292 |         let binding = Binding(get: _binding.get, set: _binding.set)
    |                                             `- warning: converting non-sendable function value to '@isolated(any) @Sendable () -> Bool' may introduce data races
293 |         return transition.move(binding, screenState: state, actionView: actionView(binding), context: context, completion: completion)
294 |             .onDisappear { [weak state] in
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/SwiftUI.swift:292:64: warning: converting non-sendable function value to '@isolated(any) @Sendable (Bool) -> Void' may introduce data races
290 |         )
291 |         state.isActive_SwiftUI = _binding
292 |         let binding = Binding(get: _binding.get, set: _binding.set)
    |                                                                `- warning: converting non-sendable function value to '@isolated(any) @Sendable (Bool) -> Void' may introduce data races
293 |         return transition.move(binding, screenState: state, actionView: actionView(binding), context: context, completion: completion)
294 |             .onDisappear { [weak state] in
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/SwiftUI.swift:337:17: warning: capture of 'promise' with non-sendable type '(Result<ContentScreenState<T.To.NestedScreen>?, Never>) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
335 |         return Future { promise in
336 |             DispatchQueue.main.async {
337 |                 promise(.success(_state))
    |                 |- warning: capture of 'promise' with non-sendable type '(Result<ContentScreenState<T.To.NestedScreen>?, Never>) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
    |                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
338 |             }
339 |         }.eraseToAnyPublisher()
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/SwiftUI.swift:337:34: warning: capture of '_state' with non-sendable type 'TransitionState<T.From.NestedScreen, T.To>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
335 |         return Future { promise in
336 |             DispatchQueue.main.async {
337 |                 promise(.success(_state))
    |                                  `- warning: capture of '_state' with non-sendable type 'TransitionState<T.From.NestedScreen, T.To>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
338 |             }
339 |         }.eraseToAnyPublisher()
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/ScreenState.swift:40:14: note: generic class 'TransitionState' does not conform to the 'Sendable' protocol
 38 | }
 39 |
 40 | public class TransitionState<From, To>: ScreenState<To> where From: Screen, To: Screen {
    |              `- note: generic class 'TransitionState' does not conform to the 'Sendable' protocol
 41 |     override var content: Any? {
 42 |         guard let surface = surface, let wrapper = surfaceWrapper else { return nil }
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/SwiftUI.swift:388:21: warning: capture of 'promise' with non-sendable type '(Result<ContentScreenState<T.To.NestedScreen>?, Never>) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
386 |             return Future { promise in
387 |                 DispatchQueue.main.async {
388 |                     promise(.success(_state))
    |                     |- warning: capture of 'promise' with non-sendable type '(Result<ContentScreenState<T.To.NestedScreen>?, Never>) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
    |                     `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
389 |                 }
390 |             }
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/SwiftUI.swift:388:38: warning: capture of '_state' with non-sendable type 'TransitionState<Prev.T.To.NestedScreen, T.To>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
386 |             return Future { promise in
387 |                 DispatchQueue.main.async {
388 |                     promise(.success(_state))
    |                                      `- warning: capture of '_state' with non-sendable type 'TransitionState<Prev.T.To.NestedScreen, T.To>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
389 |                 }
390 |             }
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/ScreenState.swift:40:14: note: generic class 'TransitionState' does not conform to the 'Sendable' protocol
 38 | }
 39 |
 40 | public class TransitionState<From, To>: ScreenState<To> where From: Screen, To: Screen {
    |              `- note: generic class 'TransitionState' does not conform to the 'Sendable' protocol
 41 |     override var content: Any? {
 42 |         guard let surface = surface, let wrapper = surfaceWrapper else { return nil }
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/SwiftUI.swift:57:24: warning: sending 'router' risks causing data races; this is an error in the Swift 6 language mode
 55 |
 56 |         public func makeContent(_ context: Context, router: Router<NestedScreen>) -> ContentResult<Self> {
 57 |             let tabs = TabsView(router: router, content: root.makeContent(context, router: router), selectedIndex: 0)
    |                        |- warning: sending 'router' risks causing data races; this is an error in the Swift 6 language mode
    |                        `- note: sending task-isolated 'router' to main actor-isolated initializer 'init(router:content:selectedIndex:)' risks causing data races between main actor-isolated and task-isolated uses
 58 |             return (tabs, tabs)
 59 |         }
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/SwiftUI.swift:57:24: warning: sending task-isolated value of type 'Root.Content' with later accesses to main actor-isolated context risks causing data races; this is an error in the Swift 6 language mode
 55 |
 56 |         public func makeContent(_ context: Context, router: Router<NestedScreen>) -> ContentResult<Self> {
 57 |             let tabs = TabsView(router: router, content: root.makeContent(context, router: router), selectedIndex: 0)
    |                        `- warning: sending task-isolated value of type 'Root.Content' with later accesses to main actor-isolated context risks causing data races; this is an error in the Swift 6 language mode
 58 |             return (tabs, tabs)
 59 |         }
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/SwiftUI.swift:225:44: warning: sending task-isolated value of type 'T' with later accesses to main actor-isolated context risks causing data races; this is an error in the Swift 6 language mode
223 |         nextState.previous = state
224 |         state[child: path, T.To.NestedScreen.self] = nextState // replaced previous line
225 |         return TransitionView<T, ActionView>(
    |                                            `- warning: sending task-isolated value of type 'T' with later accesses to main actor-isolated context risks causing data races; this is an error in the Swift 6 language mode
226 |             from[next: path], prevState: state, nextState: nextState,
227 |             context: context, actionView: view, completion: completion
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/SwiftUI.swift:225:44: warning: sending 'self.state' risks causing data races; this is an error in the Swift 6 language mode
223 |         nextState.previous = state
224 |         state[child: path, T.To.NestedScreen.self] = nextState // replaced previous line
225 |         return TransitionView<T, ActionView>(
    |                                            |- warning: sending 'self.state' risks causing data races; this is an error in the Swift 6 language mode
    |                                            `- note: sending task-isolated 'self.state' to main actor-isolated initializer 'init(_:prevState:nextState:context:actionView:completion:)' risks causing data races between main actor-isolated and task-isolated uses
226 |             from[next: path], prevState: state, nextState: nextState,
227 |             context: context, actionView: view, completion: completion
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/SwiftUI.swift:225:44: warning: sending task-isolated value of type 'TransitionState<From.NestedScreen, T.To.NestedScreen>' with later accesses to main actor-isolated context risks causing data races; this is an error in the Swift 6 language mode
223 |         nextState.previous = state
224 |         state[child: path, T.To.NestedScreen.self] = nextState // replaced previous line
225 |         return TransitionView<T, ActionView>(
    |                                            `- warning: sending task-isolated value of type 'TransitionState<From.NestedScreen, T.To.NestedScreen>' with later accesses to main actor-isolated context risks causing data races; this is an error in the Swift 6 language mode
226 |             from[next: path], prevState: state, nextState: nextState,
227 |             context: context, actionView: view, completion: completion
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/SwiftUI.swift:225:44: warning: sending 'context' risks causing data races; this is an error in the Swift 6 language mode
223 |         nextState.previous = state
224 |         state[child: path, T.To.NestedScreen.self] = nextState // replaced previous line
225 |         return TransitionView<T, ActionView>(
    |                                            |- warning: sending 'context' risks causing data races; this is an error in the Swift 6 language mode
    |                                            `- note: sending task-isolated 'context' to main actor-isolated initializer 'init(_:prevState:nextState:context:actionView:completion:)' risks causing data races between main actor-isolated and task-isolated uses
226 |             from[next: path], prevState: state, nextState: nextState,
227 |             context: context, actionView: view, completion: completion
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/SwiftUI.swift:225:44: warning: sending 'view' risks causing data races; this is an error in the Swift 6 language mode
223 |         nextState.previous = state
224 |         state[child: path, T.To.NestedScreen.self] = nextState // replaced previous line
225 |         return TransitionView<T, ActionView>(
    |                                            |- warning: sending 'view' risks causing data races; this is an error in the Swift 6 language mode
    |                                            `- note: sending task-isolated 'view' to main actor-isolated initializer 'init(_:prevState:nextState:context:actionView:completion:)' risks causing data races between main actor-isolated and task-isolated uses
226 |             from[next: path], prevState: state, nextState: nextState,
227 |             context: context, actionView: view, completion: completion
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/SwiftUI.swift:225:44: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
223 |         nextState.previous = state
224 |         state[child: path, T.To.NestedScreen.self] = nextState // replaced previous line
225 |         return TransitionView<T, ActionView>(
    |                                            |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                                            `- note: sending task-isolated 'completion' to main actor-isolated initializer 'init(_:prevState:nextState:context:actionView:completion:)' risks causing data races between main actor-isolated and task-isolated uses
226 |             from[next: path], prevState: state, nextState: nextState,
227 |             context: context, actionView: view, completion: completion
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/SwiftUI.swift:240:44: warning: sending 'transition' risks causing data races; this is an error in the Swift 6 language mode
238 |         nextState.previous = state
239 |         state[child: path, T.To.NestedScreen.self] = nextState // replaced previous line
240 |         return TransitionView<T, ActionView>(
    |                                            |- warning: sending 'transition' risks causing data races; this is an error in the Swift 6 language mode
    |                                            `- note: sending task-isolated 'transition' to main actor-isolated initializer 'init(_:prevState:nextState:context:actionView:completion:)' risks causing data races between main actor-isolated and task-isolated uses
241 |             transition, prevState: state, nextState: nextState,
242 |             context: context, actionView: view, completion: completion
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/SwiftUI.swift:240:44: warning: sending 'self.state' risks causing data races; this is an error in the Swift 6 language mode
238 |         nextState.previous = state
239 |         state[child: path, T.To.NestedScreen.self] = nextState // replaced previous line
240 |         return TransitionView<T, ActionView>(
    |                                            |- warning: sending 'self.state' risks causing data races; this is an error in the Swift 6 language mode
    |                                            `- note: sending task-isolated 'self.state' to main actor-isolated initializer 'init(_:prevState:nextState:context:actionView:completion:)' risks causing data races between main actor-isolated and task-isolated uses
241 |             transition, prevState: state, nextState: nextState,
242 |             context: context, actionView: view, completion: completion
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/SwiftUI.swift:240:44: warning: sending task-isolated value of type 'TransitionState<From.NestedScreen, T.To.NestedScreen>' with later accesses to main actor-isolated context risks causing data races; this is an error in the Swift 6 language mode
238 |         nextState.previous = state
239 |         state[child: path, T.To.NestedScreen.self] = nextState // replaced previous line
240 |         return TransitionView<T, ActionView>(
    |                                            `- warning: sending task-isolated value of type 'TransitionState<From.NestedScreen, T.To.NestedScreen>' with later accesses to main actor-isolated context risks causing data races; this is an error in the Swift 6 language mode
241 |             transition, prevState: state, nextState: nextState,
242 |             context: context, actionView: view, completion: completion
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/SwiftUI.swift:240:44: warning: sending 'context' risks causing data races; this is an error in the Swift 6 language mode
238 |         nextState.previous = state
239 |         state[child: path, T.To.NestedScreen.self] = nextState // replaced previous line
240 |         return TransitionView<T, ActionView>(
    |                                            |- warning: sending 'context' risks causing data races; this is an error in the Swift 6 language mode
    |                                            `- note: sending task-isolated 'context' to main actor-isolated initializer 'init(_:prevState:nextState:context:actionView:completion:)' risks causing data races between main actor-isolated and task-isolated uses
241 |             transition, prevState: state, nextState: nextState,
242 |             context: context, actionView: view, completion: completion
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/SwiftUI.swift:240:44: warning: sending 'view' risks causing data races; this is an error in the Swift 6 language mode
238 |         nextState.previous = state
239 |         state[child: path, T.To.NestedScreen.self] = nextState // replaced previous line
240 |         return TransitionView<T, ActionView>(
    |                                            |- warning: sending 'view' risks causing data races; this is an error in the Swift 6 language mode
    |                                            `- note: sending task-isolated 'view' to main actor-isolated initializer 'init(_:prevState:nextState:context:actionView:completion:)' risks causing data races between main actor-isolated and task-isolated uses
241 |             transition, prevState: state, nextState: nextState,
242 |             context: context, actionView: view, completion: completion
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/SwiftUI.swift:240:44: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
238 |         nextState.previous = state
239 |         state[child: path, T.To.NestedScreen.self] = nextState // replaced previous line
240 |         return TransitionView<T, ActionView>(
    |                                            |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                                            `- note: sending task-isolated 'completion' to main actor-isolated initializer 'init(_:prevState:nextState:context:actionView:completion:)' risks causing data races between main actor-isolated and task-isolated uses
241 |             transition, prevState: state, nextState: nextState,
242 |             context: context, actionView: view, completion: completion
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/SwiftUI.swift:337:17: warning: sending 'promise' risks causing data races; this is an error in the Swift 6 language mode
335 |         return Future { promise in
336 |             DispatchQueue.main.async {
337 |                 promise(.success(_state))
    |                 |- warning: sending 'promise' risks causing data races; this is an error in the Swift 6 language mode
    |                 `- note: task-isolated 'promise' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
338 |             }
339 |         }.eraseToAnyPublisher()
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/SwiftUI.swift:337:34: warning: sending '_state' risks causing data races; this is an error in the Swift 6 language mode
335 |         return Future { promise in
336 |             DispatchQueue.main.async {
337 |                 promise(.success(_state))
    |                                  |- warning: sending '_state' risks causing data races; this is an error in the Swift 6 language mode
    |                                  `- note: task-isolated '_state' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
338 |             }
339 |         }.eraseToAnyPublisher()
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/SwiftUI.swift:388:21: warning: sending 'promise' risks causing data races; this is an error in the Swift 6 language mode
386 |             return Future { promise in
387 |                 DispatchQueue.main.async {
388 |                     promise(.success(_state))
    |                     |- warning: sending 'promise' risks causing data races; this is an error in the Swift 6 language mode
    |                     `- note: task-isolated 'promise' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
389 |                 }
390 |             }
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/SwiftUI.swift:388:38: warning: sending '_state' risks causing data races; this is an error in the Swift 6 language mode
386 |             return Future { promise in
387 |                 DispatchQueue.main.async {
388 |                     promise(.success(_state))
    |                                      |- warning: sending '_state' risks causing data races; this is an error in the Swift 6 language mode
    |                                      `- note: task-isolated '_state' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
389 |                 }
390 |             }
[6/13] Compiling ScreenUI Screen.swift
[7/13] Compiling ScreenUI ScreenState.swift
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/ScreenState.swift:127:51: warning: converting non-sendable function value to '@MainActor @Sendable @convention(block) () -> Void' may introduce data races
125 |             isActive_SwiftUI!.wrappedValue = false
126 |             if let compl = completion {
127 |                 DispatchQueue.main.async(execute: compl)
    |                                                   `- warning: converting non-sendable function value to '@MainActor @Sendable @convention(block) () -> Void' may introduce data races
128 |             }
129 |             return
[8/13] Compiling ScreenUI PathProvider.swift
[9/13] Compiling ScreenUI Crossplatform.swift
[10/13] Compiling ScreenUI ScreenBuilder.swift
[11/14] Compiling ScreenUI AppKit.swift
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/AppKit.swift:43:26: warning: call to main actor-isolated initializer 'init(contentRect:styleMask:backing:defer:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
 40 |         public func keyPath(at index: Int) -> PartialKeyPath<Root.PathFrom> { root.keyPath(at: index) }
 41 |
 42 |         public func makeContent(_ context: Root.Context, router: Router<Root.NestedScreen>) -> ContentResult<Win.AppKit<Root>> {
    |                     `- note: add '@MainActor' to make instance method 'makeContent(_:router:)' part of global actor 'MainActor'
 43 |             let window = NSWindow(contentRect: rect, styleMask: styleMask, backing: backingStoreType, defer: isDefer)
    |                          `- warning: call to main actor-isolated initializer 'init(contentRect:styleMask:backing:defer:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
 44 |             let (content1, content0) = root.makeContent(context, router: router)
 45 |             window.contentViewController = content1
AppKit.NSWindow:18:23: note: calls to initializer 'init(contentRect:styleMask:backing:defer:)' from outside of its actor context are implicitly asynchronous
  16 |     @available(swift, obsoleted: 3, renamed: "contentRect(forFrameRect:)")
  17 |     open func contentRectForFrameRect(_ frameRect: NSRect) -> NSRect
  18 |     @MainActor public init(contentRect: NSRect, styleMask style: NSWindow.StyleMask, backing backingStoreType: NSWindow.BackingStoreType, defer flag: Bool)
     |                       `- note: calls to initializer 'init(contentRect:styleMask:backing:defer:)' from outside of its actor context are implicitly asynchronous
  19 |     public convenience init(contentRect: NSRect, styleMask style: NSWindow.StyleMask, backing backingStoreType: NSWindow.BackingStoreType, defer flag: Bool, screen: NSScreen?)
  20 |     @available(*, unavailable)
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/AppKit.swift:45:20: warning: main actor-isolated property 'contentViewController' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
 40 |         public func keyPath(at index: Int) -> PartialKeyPath<Root.PathFrom> { root.keyPath(at: index) }
 41 |
 42 |         public func makeContent(_ context: Root.Context, router: Router<Root.NestedScreen>) -> ContentResult<Win.AppKit<Root>> {
    |                     `- note: add '@MainActor' to make instance method 'makeContent(_:router:)' part of global actor 'MainActor'
 43 |             let window = NSWindow(contentRect: rect, styleMask: styleMask, backing: backingStoreType, defer: isDefer)
 44 |             let (content1, content0) = root.makeContent(context, router: router)
 45 |             window.contentViewController = content1
    |                    `- warning: main actor-isolated property 'contentViewController' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
 46 |             return (window, content0)
 47 |         }
AppKit.NSWindow:360:14: note: mutation of this property is only permitted within the actor
 358 |     open var titlebarSeparatorStyle: NSTitlebarSeparatorStyle { get set }
 359 |     @available(macOS 10.10, *)
 360 |     open var contentViewController: NSViewController? { get set }
     |              `- note: mutation of this property is only permitted within the actor
 361 |     @available(macOS 10.10, *)
 362 |     public convenience init(contentViewController: NSViewController)
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/AppKit.swift:49:40: warning: main actor-isolated property 'contentViewController' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 46 |             return (window, content0)
 47 |         }
 48 |         public func updateContent(_ content: Content, with context: Context) {
    |                     `- note: add '@MainActor' to make instance method 'updateContent(_:with:)' part of global actor 'MainActor'
 49 |             root.updateContent(content.contentViewController as! Root.Content, with: context)
    |                                        `- warning: main actor-isolated property 'contentViewController' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 50 |         }
 51 |         public func updateNestedContent(_ content: Root.NestedScreen.Content, with context: Root.Context) {
AppKit.NSWindow:360:14: note: property declared here
 358 |     open var titlebarSeparatorStyle: NSTitlebarSeparatorStyle { get set }
 359 |     @available(macOS 10.10, *)
 360 |     open var contentViewController: NSViewController? { get set }
     |              `- note: property declared here
 361 |     @available(macOS 10.10, *)
 362 |     public convenience init(contentViewController: NSViewController)
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/AppKit.swift:69:36: warning: call to main actor-isolated initializer 'init()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
 66 |         public func keyPath(at index: Int) -> PartialKeyPath<Root.PathFrom> { root.keyPath(at: index) }
 67 |
 68 |         public func makeContent(_ context: Context, router: Router<NestedScreen>) -> ContentResult<Self> {
    |                     `- note: add '@MainActor' to make instance method 'makeContent(_:router:)' part of global actor 'MainActor'
 69 |             let tabBarController = NSTabViewController()
    |                                    `- warning: call to main actor-isolated initializer 'init()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
 70 |             let c1 = root.makeContent(context, router: router)
 71 |             tabBarController.tabViewItems = c1.map(NSTabViewItem.init)
AppKit.NSTabViewController:33:35: note: calls to initializer 'init()' from outside of its actor context are implicitly asynchronous
31 |     public init(nibName nibNameOrNil: NSNib.Name?, bundle nibBundleOrNil: Bundle?)
32 |     public init?(coder: NSCoder)
33 |     @MainActor public convenience init()
   |                                   `- note: calls to initializer 'init()' from outside of its actor context are implicitly asynchronous
34 |     @available(macOS 10.10, *)
35 |     @MainActor open func tabViewDidChangeNumberOfTabViewItems(_ tabView: NSTabView)
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/AppKit.swift:71:30: warning: main actor-isolated property 'tabViewItems' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
 66 |         public func keyPath(at index: Int) -> PartialKeyPath<Root.PathFrom> { root.keyPath(at: index) }
 67 |
 68 |         public func makeContent(_ context: Context, router: Router<NestedScreen>) -> ContentResult<Self> {
    |                     `- note: add '@MainActor' to make instance method 'makeContent(_:router:)' part of global actor 'MainActor'
 69 |             let tabBarController = NSTabViewController()
 70 |             let c1 = root.makeContent(context, router: router)
 71 |             tabBarController.tabViewItems = c1.map(NSTabViewItem.init)
    |                              `- warning: main actor-isolated property 'tabViewItems' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
 72 |             let observation = tabBarController.observe(\.selectedTabViewItemIndex, changeHandler: { (tbc, ch) in
 73 |                 guard let state = router.state.childStates[router.keyPath(at: tbc.selectedTabViewItemIndex)] else { return }
AppKit.NSTabViewController:7:14: note: mutation of this property is only permitted within the actor
 5 |     open var transitionOptions: NSViewController.TransitionOptions { get set }
 6 |     open var canPropagateSelectedChildViewControllerTitle: Bool { get set }
 7 |     open var tabViewItems: [NSTabViewItem] { get set }
   |              `- note: mutation of this property is only permitted within the actor
 8 |     @MainActor open var selectedTabViewItemIndex: Int { get set }
 9 |     open func addTabViewItem(_ tabViewItem: NSTabViewItem)
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/AppKit.swift:72:58: warning: cannot form key path to main actor-isolated property 'selectedTabViewItemIndex'; this is an error in the Swift 6 language mode
 70 |             let c1 = root.makeContent(context, router: router)
 71 |             tabBarController.tabViewItems = c1.map(NSTabViewItem.init)
 72 |             let observation = tabBarController.observe(\.selectedTabViewItemIndex, changeHandler: { (tbc, ch) in
    |                                                          `- warning: cannot form key path to main actor-isolated property 'selectedTabViewItemIndex'; this is an error in the Swift 6 language mode
 73 |                 guard let state = router.state.childStates[router.keyPath(at: tbc.selectedTabViewItemIndex)] else { return }
 74 |                 router.state.next = state
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/AppKit.swift:73:35: warning: capture of 'router' with non-sendable type 'Router<Tab.AppKit<Root>.NestedScreen>' (aka 'Router<Tab.AppKit<Root>>') in a `@Sendable` closure; this is an error in the Swift 6 language mode
 71 |             tabBarController.tabViewItems = c1.map(NSTabViewItem.init)
 72 |             let observation = tabBarController.observe(\.selectedTabViewItemIndex, changeHandler: { (tbc, ch) in
 73 |                 guard let state = router.state.childStates[router.keyPath(at: tbc.selectedTabViewItemIndex)] else { return }
    |                                   `- warning: capture of 'router' with non-sendable type 'Router<Tab.AppKit<Root>.NestedScreen>' (aka 'Router<Tab.AppKit<Root>>') in a `@Sendable` closure; this is an error in the Swift 6 language mode
 74 |                 router.state.next = state
 75 |             })
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/Screen.swift:6:15: note: consider making generic struct 'Router' conform to the 'Sendable' protocol
  4 | #endif
  5 |
  6 | public struct Router<From>: PathProvider where From: ContentScreen {
    |               `- note: consider making generic struct 'Router' conform to the 'Sendable' protocol
  7 |     let from: _PathFrom<From.PathFrom>
  8 |     let state: ContentScreenState<From.NestedScreen>
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/AppKit.swift:73:83: warning: main actor-isolated property 'selectedTabViewItemIndex' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
 71 |             tabBarController.tabViewItems = c1.map(NSTabViewItem.init)
 72 |             let observation = tabBarController.observe(\.selectedTabViewItemIndex, changeHandler: { (tbc, ch) in
 73 |                 guard let state = router.state.childStates[router.keyPath(at: tbc.selectedTabViewItemIndex)] else { return }
    |                                                                                   `- warning: main actor-isolated property 'selectedTabViewItemIndex' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
 74 |                 router.state.next = state
 75 |             })
AppKit.NSTabViewController:8:25: note: property declared here
 6 |     open var canPropagateSelectedChildViewControllerTitle: Bool { get set }
 7 |     open var tabViewItems: [NSTabViewItem] { get set }
 8 |     @MainActor open var selectedTabViewItemIndex: Int { get set }
   |                         `- note: property declared here
 9 |     open func addTabViewItem(_ tabViewItem: NSTabViewItem)
10 |     open func insertTabViewItem(_ tabViewItem: NSTabViewItem, at index: Int)
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/AppKit.swift:80:40: warning: main actor-isolated property 'tabViewItems' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 77 |             return (tabBarController, tabBarController)
 78 |         }
 79 |         public func updateContent(_ content: Content, with context: Context) {
    |                     `- note: add '@MainActor' to make instance method 'updateContent(_:with:)' part of global actor 'MainActor'
 80 |             root.updateContent(content.tabViewItems.compactMap(\.viewController), with: context)
    |                                        `- warning: main actor-isolated property 'tabViewItems' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 81 |         }
 82 |     }
AppKit.NSTabViewController:7:14: note: property declared here
 5 |     open var transitionOptions: NSViewController.TransitionOptions { get set }
 6 |     open var canPropagateSelectedChildViewControllerTitle: Bool { get set }
 7 |     open var tabViewItems: [NSTabViewItem] { get set }
   |              `- note: property declared here
 8 |     @MainActor open var selectedTabViewItemIndex: Int { get set }
 9 |     open func addTabViewItem(_ tabViewItem: NSTabViewItem)
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/AppKit.swift:95:20: warning: main actor-isolated property 'selectedTabViewItemIndex' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
 92 |         public func keyPath(at index: Int) -> PartialKeyPath<To.PathFrom> { to.keyPath(at: index) }
 93 |
 94 |         public func move(from screen: From.Content, state: ContentScreenState<From.NestedScreen>, with context: Void, completion: (() -> Void)?) -> TransitionResult<From, To> {
    |                     `- note: add '@MainActor' to make instance method 'move(from:state:with:completion:)' part of global actor 'MainActor'
 95 |             screen.selectedTabViewItemIndex = index
    |                    `- warning: main actor-isolated property 'selectedTabViewItemIndex' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
 96 |             let c1 = screen.tabViewItems[index].viewController as! Too.Content
 97 |             let c0 = Too.nestedContent(from: c1)
AppKit.NSTabViewController:8:25: note: mutation of this property is only permitted within the actor
 6 |     open var canPropagateSelectedChildViewControllerTitle: Bool { get set }
 7 |     open var tabViewItems: [NSTabViewItem] { get set }
 8 |     @MainActor open var selectedTabViewItemIndex: Int { get set }
   |                         `- note: mutation of this property is only permitted within the actor
 9 |     open func addTabViewItem(_ tabViewItem: NSTabViewItem)
10 |     open func insertTabViewItem(_ tabViewItem: NSTabViewItem, at index: Int)
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/AppKit.swift:96:29: warning: main actor-isolated property 'tabViewItems' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 92 |         public func keyPath(at index: Int) -> PartialKeyPath<To.PathFrom> { to.keyPath(at: index) }
 93 |
 94 |         public func move(from screen: From.Content, state: ContentScreenState<From.NestedScreen>, with context: Void, completion: (() -> Void)?) -> TransitionResult<From, To> {
    |                     `- note: add '@MainActor' to make instance method 'move(from:state:with:completion:)' part of global actor 'MainActor'
 95 |             screen.selectedTabViewItemIndex = index
 96 |             let c1 = screen.tabViewItems[index].viewController as! Too.Content
    |                             `- warning: main actor-isolated property 'tabViewItems' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 97 |             let c0 = Too.nestedContent(from: c1)
 98 |             return (state[child: path, Too.self]!, (c1, c0))
AppKit.NSTabViewController:7:14: note: property declared here
 5 |     open var transitionOptions: NSViewController.TransitionOptions { get set }
 6 |     open var canPropagateSelectedChildViewControllerTitle: Bool { get set }
 7 |     open var tabViewItems: [NSTabViewItem] { get set }
   |              `- note: property declared here
 8 |     @MainActor open var selectedTabViewItemIndex: Int { get set }
 9 |     open func addTabViewItem(_ tabViewItem: NSTabViewItem)
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/AppKit.swift:102:31: warning: main actor-isolated property 'selectedTabViewItemIndex' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 99 |         }
100 |
101 |         public func hierarchyTest(from fromContent: From.Content, to toContent: Too.NestedScreen.Content) -> Bool {
    |                     `- note: add '@MainActor' to make instance method 'hierarchyTest(from:to:)' part of global actor 'MainActor'
102 |             guard fromContent.selectedTabViewItemIndex == index else { return false }
    |                               `- warning: main actor-isolated property 'selectedTabViewItemIndex' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
103 |             guard fromContent.tabViewItems[index].viewController is Too.Content else { return false }
104 |             return true
AppKit.NSTabViewController:8:25: note: property declared here
 6 |     open var canPropagateSelectedChildViewControllerTitle: Bool { get set }
 7 |     open var tabViewItems: [NSTabViewItem] { get set }
 8 |     @MainActor open var selectedTabViewItemIndex: Int { get set }
   |                         `- note: property declared here
 9 |     open func addTabViewItem(_ tabViewItem: NSTabViewItem)
10 |     open func insertTabViewItem(_ tabViewItem: NSTabViewItem, at index: Int)
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/AppKit.swift:103:31: warning: main actor-isolated property 'tabViewItems' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 99 |         }
100 |
101 |         public func hierarchyTest(from fromContent: From.Content, to toContent: Too.NestedScreen.Content) -> Bool {
    |                     `- note: add '@MainActor' to make instance method 'hierarchyTest(from:to:)' part of global actor 'MainActor'
102 |             guard fromContent.selectedTabViewItemIndex == index else { return false }
103 |             guard fromContent.tabViewItems[index].viewController is Too.Content else { return false }
    |                               `- warning: main actor-isolated property 'tabViewItems' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
104 |             return true
105 |         }
AppKit.NSTabViewController:7:14: note: property declared here
 5 |     open var transitionOptions: NSViewController.TransitionOptions { get set }
 6 |     open var canPropagateSelectedChildViewControllerTitle: Bool { get set }
 7 |     open var tabViewItems: [NSTabViewItem] { get set }
   |              `- note: property declared here
 8 |     @MainActor open var selectedTabViewItemIndex: Int { get set }
 9 |     open func addTabViewItem(_ tabViewItem: NSTabViewItem)
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/AppKit.swift:151:34: warning: call to main actor-isolated instance method 'presentAsModalWindow' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
139 |         public func keyPath(at index: Int) -> PartialKeyPath<To.PathFrom> { to.keyPath(at: index) }
140 |
141 |         public func move(from surface: From.Content, state: ContentScreenState<From.NestedScreen>, with context: Too.Context, completion: (() -> Void)?) -> TransitionResult<From, To> {
    |                     `- note: add '@MainActor' to make instance method 'move(from:state:with:completion:)' part of global actor 'MainActor'
142 |             let nextState = TransitionState<From, To>()
143 |             nextState.back = .some(Presentation.Dismiss.AppKit(animated: animated))
    :
149 |             }
150 |             switch style {
151 |             case .modal: surface.presentAsModalWindow(content1)
    |                                  `- warning: call to main actor-isolated instance method 'presentAsModalWindow' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
152 |             case .sheet: surface.presentAsSheet(content1)
153 |             case .popover(let rect, let viewPath, let edge, let behavior):
AppKit.NSViewController:8:26: note: calls to instance method 'presentAsModalWindow' from outside of its actor context are implicitly asynchronous
 6 |     open func presentViewControllerAsSheet(_ viewController: NSViewController)
 7 |     @available(macOS 10.10, *)
 8 |     @MainActor open func presentAsModalWindow(_ viewController: NSViewController)
   |                          `- note: calls to instance method 'presentAsModalWindow' from outside of its actor context are implicitly asynchronous
 9 |     @available(macOS 10.10, *)
10 |     @available(swift, obsoleted: 4.2, renamed: "presentAsModalWindow(_:)")
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/AppKit.swift:152:34: warning: call to main actor-isolated instance method 'presentAsSheet' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
139 |         public func keyPath(at index: Int) -> PartialKeyPath<To.PathFrom> { to.keyPath(at: index) }
140 |
141 |         public func move(from surface: From.Content, state: ContentScreenState<From.NestedScreen>, with context: Too.Context, completion: (() -> Void)?) -> TransitionResult<From, To> {
    |                     `- note: add '@MainActor' to make instance method 'move(from:state:with:completion:)' part of global actor 'MainActor'
142 |             let nextState = TransitionState<From, To>()
143 |             nextState.back = .some(Presentation.Dismiss.AppKit(animated: animated))
    :
150 |             switch style {
151 |             case .modal: surface.presentAsModalWindow(content1)
152 |             case .sheet: surface.presentAsSheet(content1)
    |                                  `- warning: call to main actor-isolated instance method 'presentAsSheet' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
153 |             case .popover(let rect, let viewPath, let edge, let behavior):
154 |                 surface.present(content1, asPopoverRelativeTo: rect, of: surface[keyPath: viewPath] as! NSView, preferredEdge: edge, behavior: behavior)
AppKit.NSViewController:3:26: note: calls to instance method 'presentAsSheet' from outside of its actor context are implicitly asynchronous
 1 | extension NSViewController {
 2 |     @available(macOS 10.10, *)
 3 |     @MainActor open func presentAsSheet(_ viewController: NSViewController)
   |                          `- note: calls to instance method 'presentAsSheet' from outside of its actor context are implicitly asynchronous
 4 |     @available(macOS 10.10, *)
 5 |     @available(swift, obsoleted: 4.2, renamed: "presentAsSheet(_:)")
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/AppKit.swift:154:25: warning: call to main actor-isolated instance method 'present(_:asPopoverRelativeTo:of:preferredEdge:behavior:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
139 |         public func keyPath(at index: Int) -> PartialKeyPath<To.PathFrom> { to.keyPath(at: index) }
140 |
141 |         public func move(from surface: From.Content, state: ContentScreenState<From.NestedScreen>, with context: Too.Context, completion: (() -> Void)?) -> TransitionResult<From, To> {
    |                     `- note: add '@MainActor' to make instance method 'move(from:state:with:completion:)' part of global actor 'MainActor'
142 |             let nextState = TransitionState<From, To>()
143 |             nextState.back = .some(Presentation.Dismiss.AppKit(animated: animated))
    :
152 |             case .sheet: surface.presentAsSheet(content1)
153 |             case .popover(let rect, let viewPath, let edge, let behavior):
154 |                 surface.present(content1, asPopoverRelativeTo: rect, of: surface[keyPath: viewPath] as! NSView, preferredEdge: edge, behavior: behavior)
    |                         `- warning: call to main actor-isolated instance method 'present(_:asPopoverRelativeTo:of:preferredEdge:behavior:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
155 |             case .custom(let animator): surface.present(content1, animator: animator)
156 |             }
AppKit.NSViewController:13:26: note: calls to instance method 'present(_:asPopoverRelativeTo:of:preferredEdge:behavior:)' from outside of its actor context are implicitly asynchronous
11 |     open func presentViewControllerAsModalWindow(_ viewController: NSViewController)
12 |     @available(macOS 10.10, *)
13 |     @MainActor open func present(_ viewController: NSViewController, asPopoverRelativeTo positioningRect: NSRect, of positioningView: NSView, preferredEdge: NSRectEdge, behavior: NSPopover.Behavior)
   |                          `- note: calls to instance method 'present(_:asPopoverRelativeTo:of:preferredEdge:behavior:)' from outside of its actor context are implicitly asynchronous
14 |     @available(macOS 10.10, *)
15 |     @available(swift, obsoleted: 4.2, renamed: "present(_:asPopoverRelativeTo:of:preferredEdge:behavior:)")
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/AppKit.swift:155:49: warning: call to main actor-isolated instance method 'present(_:animator:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
139 |         public func keyPath(at index: Int) -> PartialKeyPath<To.PathFrom> { to.keyPath(at: index) }
140 |
141 |         public func move(from surface: From.Content, state: ContentScreenState<From.NestedScreen>, with context: Too.Context, completion: (() -> Void)?) -> TransitionResult<From, To> {
    |                     `- note: add '@MainActor' to make instance method 'move(from:state:with:completion:)' part of global actor 'MainActor'
142 |             let nextState = TransitionState<From, To>()
143 |             nextState.back = .some(Presentation.Dismiss.AppKit(animated: animated))
    :
153 |             case .popover(let rect, let viewPath, let edge, let behavior):
154 |                 surface.present(content1, asPopoverRelativeTo: rect, of: surface[keyPath: viewPath] as! NSView, preferredEdge: edge, behavior: behavior)
155 |             case .custom(let animator): surface.present(content1, animator: animator)
    |                                                 `- warning: call to main actor-isolated instance method 'present(_:animator:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
156 |             }
157 |             CATransaction.commit()
AppKit.NSViewController:3:26: note: calls to instance method 'present(_:animator:)' from outside of its actor context are implicitly asynchronous
 1 | extension NSViewController {
 2 |     @available(macOS 10.10, *)
 3 |     @MainActor open func present(_ viewController: NSViewController, animator: any NSViewControllerPresentationAnimator)
   |                          `- note: calls to instance method 'present(_:animator:)' from outside of its actor context are implicitly asynchronous
 4 |     @available(macOS 10.10, *)
 5 |     @available(swift, obsoleted: 4.2, renamed: "present(_:animator:)")
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/AppKit.swift:162:39: warning: main actor-isolated property 'presentingViewController' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
159 |         }
160 |
161 |         public func hierarchyTest(from fromContent: From.Content, to toContent: Too.NestedScreen.Content) -> Bool {
    |                     `- note: add '@MainActor' to make instance method 'hierarchyTest(from:to:)' part of global actor 'MainActor'
162 |             fromContent === toContent.presentingViewController
    |                                       `- warning: main actor-isolated property 'presentingViewController' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
163 |         }
164 |         public func updateContent(_ content: Too.NestedScreen.Content, context: Context) {
AppKit.NSViewController:20:30: note: property declared here
18 |     open var presentedViewControllers: [NSViewController]? { get }
19 |     @available(macOS 10.10, *)
20 |     unowned(unsafe) open var presentingViewController: NSViewController? { get }
   |                              `- note: property declared here
21 |     @available(macOS 10.10, *)
22 |     @available(swift, obsoleted: 4.2, renamed: "presentingViewController")
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/AppKit.swift:180:21: warning: call to main actor-isolated instance method 'dismiss' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
172 |         let animated: Bool
173 |
174 |         public func move(from content: From.Content, completion: (() -> Void)?) {
    |                     `- note: add '@MainActor' to make instance method 'move(from:completion:)' part of global actor 'MainActor'
175 |             CATransaction.begin()
176 |             CATransaction.setCompletionBlock(completion)
    :
178 |                 CATransaction.setAnimationDuration(0)
179 |             }
180 |             content.dismiss(nil)
    |                     `- warning: call to main actor-isolated instance method 'dismiss' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
181 |             CATransaction.commit()
182 |         }
AppKit.NSViewController:13:25: note: calls to instance method 'dismiss' from outside of its actor context are implicitly asynchronous
11 |     open func dismissViewController(_ viewController: NSViewController)
12 |     @available(macOS 10.10, *)
13 |     @IBAction open func dismiss(_ sender: Any?)
   |                         `- note: calls to instance method 'dismiss' from outside of its actor context are implicitly asynchronous
14 |     @available(macOS 10.10, *)
15 |     @available(swift, obsoleted: 3, renamed: "dismiss(_:)")
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/AppKit.swift:155:49: warning: sending 'animator' risks causing data races; this is an error in the Swift 6 language mode
153 |             case .popover(let rect, let viewPath, let edge, let behavior):
154 |                 surface.present(content1, asPopoverRelativeTo: rect, of: surface[keyPath: viewPath] as! NSView, preferredEdge: edge, behavior: behavior)
155 |             case .custom(let animator): surface.present(content1, animator: animator)
    |                                                 |- warning: sending 'animator' risks causing data races; this is an error in the Swift 6 language mode
    |                                                 `- note: sending task-isolated 'animator' to main actor-isolated instance method 'present(_:animator:)' risks causing data races between main actor-isolated and task-isolated uses
156 |             }
157 |             CATransaction.commit()
[12/14] Compiling ScreenUI ContentBuilders.swift
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/AppKit.swift:43:26: warning: call to main actor-isolated initializer 'init(contentRect:styleMask:backing:defer:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
 40 |         public func keyPath(at index: Int) -> PartialKeyPath<Root.PathFrom> { root.keyPath(at: index) }
 41 |
 42 |         public func makeContent(_ context: Root.Context, router: Router<Root.NestedScreen>) -> ContentResult<Win.AppKit<Root>> {
    |                     `- note: add '@MainActor' to make instance method 'makeContent(_:router:)' part of global actor 'MainActor'
 43 |             let window = NSWindow(contentRect: rect, styleMask: styleMask, backing: backingStoreType, defer: isDefer)
    |                          `- warning: call to main actor-isolated initializer 'init(contentRect:styleMask:backing:defer:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
 44 |             let (content1, content0) = root.makeContent(context, router: router)
 45 |             window.contentViewController = content1
AppKit.NSWindow:18:23: note: calls to initializer 'init(contentRect:styleMask:backing:defer:)' from outside of its actor context are implicitly asynchronous
  16 |     @available(swift, obsoleted: 3, renamed: "contentRect(forFrameRect:)")
  17 |     open func contentRectForFrameRect(_ frameRect: NSRect) -> NSRect
  18 |     @MainActor public init(contentRect: NSRect, styleMask style: NSWindow.StyleMask, backing backingStoreType: NSWindow.BackingStoreType, defer flag: Bool)
     |                       `- note: calls to initializer 'init(contentRect:styleMask:backing:defer:)' from outside of its actor context are implicitly asynchronous
  19 |     public convenience init(contentRect: NSRect, styleMask style: NSWindow.StyleMask, backing backingStoreType: NSWindow.BackingStoreType, defer flag: Bool, screen: NSScreen?)
  20 |     @available(*, unavailable)
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/AppKit.swift:45:20: warning: main actor-isolated property 'contentViewController' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
 40 |         public func keyPath(at index: Int) -> PartialKeyPath<Root.PathFrom> { root.keyPath(at: index) }
 41 |
 42 |         public func makeContent(_ context: Root.Context, router: Router<Root.NestedScreen>) -> ContentResult<Win.AppKit<Root>> {
    |                     `- note: add '@MainActor' to make instance method 'makeContent(_:router:)' part of global actor 'MainActor'
 43 |             let window = NSWindow(contentRect: rect, styleMask: styleMask, backing: backingStoreType, defer: isDefer)
 44 |             let (content1, content0) = root.makeContent(context, router: router)
 45 |             window.contentViewController = content1
    |                    `- warning: main actor-isolated property 'contentViewController' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
 46 |             return (window, content0)
 47 |         }
AppKit.NSWindow:360:14: note: mutation of this property is only permitted within the actor
 358 |     open var titlebarSeparatorStyle: NSTitlebarSeparatorStyle { get set }
 359 |     @available(macOS 10.10, *)
 360 |     open var contentViewController: NSViewController? { get set }
     |              `- note: mutation of this property is only permitted within the actor
 361 |     @available(macOS 10.10, *)
 362 |     public convenience init(contentViewController: NSViewController)
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/AppKit.swift:49:40: warning: main actor-isolated property 'contentViewController' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 46 |             return (window, content0)
 47 |         }
 48 |         public func updateContent(_ content: Content, with context: Context) {
    |                     `- note: add '@MainActor' to make instance method 'updateContent(_:with:)' part of global actor 'MainActor'
 49 |             root.updateContent(content.contentViewController as! Root.Content, with: context)
    |                                        `- warning: main actor-isolated property 'contentViewController' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 50 |         }
 51 |         public func updateNestedContent(_ content: Root.NestedScreen.Content, with context: Root.Context) {
AppKit.NSWindow:360:14: note: property declared here
 358 |     open var titlebarSeparatorStyle: NSTitlebarSeparatorStyle { get set }
 359 |     @available(macOS 10.10, *)
 360 |     open var contentViewController: NSViewController? { get set }
     |              `- note: property declared here
 361 |     @available(macOS 10.10, *)
 362 |     public convenience init(contentViewController: NSViewController)
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/AppKit.swift:69:36: warning: call to main actor-isolated initializer 'init()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
 66 |         public func keyPath(at index: Int) -> PartialKeyPath<Root.PathFrom> { root.keyPath(at: index) }
 67 |
 68 |         public func makeContent(_ context: Context, router: Router<NestedScreen>) -> ContentResult<Self> {
    |                     `- note: add '@MainActor' to make instance method 'makeContent(_:router:)' part of global actor 'MainActor'
 69 |             let tabBarController = NSTabViewController()
    |                                    `- warning: call to main actor-isolated initializer 'init()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
 70 |             let c1 = root.makeContent(context, router: router)
 71 |             tabBarController.tabViewItems = c1.map(NSTabViewItem.init)
AppKit.NSTabViewController:33:35: note: calls to initializer 'init()' from outside of its actor context are implicitly asynchronous
31 |     public init(nibName nibNameOrNil: NSNib.Name?, bundle nibBundleOrNil: Bundle?)
32 |     public init?(coder: NSCoder)
33 |     @MainActor public convenience init()
   |                                   `- note: calls to initializer 'init()' from outside of its actor context are implicitly asynchronous
34 |     @available(macOS 10.10, *)
35 |     @MainActor open func tabViewDidChangeNumberOfTabViewItems(_ tabView: NSTabView)
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/AppKit.swift:71:30: warning: main actor-isolated property 'tabViewItems' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
 66 |         public func keyPath(at index: Int) -> PartialKeyPath<Root.PathFrom> { root.keyPath(at: index) }
 67 |
 68 |         public func makeContent(_ context: Context, router: Router<NestedScreen>) -> ContentResult<Self> {
    |                     `- note: add '@MainActor' to make instance method 'makeContent(_:router:)' part of global actor 'MainActor'
 69 |             let tabBarController = NSTabViewController()
 70 |             let c1 = root.makeContent(context, router: router)
 71 |             tabBarController.tabViewItems = c1.map(NSTabViewItem.init)
    |                              `- warning: main actor-isolated property 'tabViewItems' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
 72 |             let observation = tabBarController.observe(\.selectedTabViewItemIndex, changeHandler: { (tbc, ch) in
 73 |                 guard let state = router.state.childStates[router.keyPath(at: tbc.selectedTabViewItemIndex)] else { return }
AppKit.NSTabViewController:7:14: note: mutation of this property is only permitted within the actor
 5 |     open var transitionOptions: NSViewController.TransitionOptions { get set }
 6 |     open var canPropagateSelectedChildViewControllerTitle: Bool { get set }
 7 |     open var tabViewItems: [NSTabViewItem] { get set }
   |              `- note: mutation of this property is only permitted within the actor
 8 |     @MainActor open var selectedTabViewItemIndex: Int { get set }
 9 |     open func addTabViewItem(_ tabViewItem: NSTabViewItem)
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/AppKit.swift:72:58: warning: cannot form key path to main actor-isolated property 'selectedTabViewItemIndex'; this is an error in the Swift 6 language mode
 70 |             let c1 = root.makeContent(context, router: router)
 71 |             tabBarController.tabViewItems = c1.map(NSTabViewItem.init)
 72 |             let observation = tabBarController.observe(\.selectedTabViewItemIndex, changeHandler: { (tbc, ch) in
    |                                                          `- warning: cannot form key path to main actor-isolated property 'selectedTabViewItemIndex'; this is an error in the Swift 6 language mode
 73 |                 guard let state = router.state.childStates[router.keyPath(at: tbc.selectedTabViewItemIndex)] else { return }
 74 |                 router.state.next = state
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/AppKit.swift:73:35: warning: capture of 'router' with non-sendable type 'Router<Tab.AppKit<Root>.NestedScreen>' (aka 'Router<Tab.AppKit<Root>>') in a `@Sendable` closure; this is an error in the Swift 6 language mode
 71 |             tabBarController.tabViewItems = c1.map(NSTabViewItem.init)
 72 |             let observation = tabBarController.observe(\.selectedTabViewItemIndex, changeHandler: { (tbc, ch) in
 73 |                 guard let state = router.state.childStates[router.keyPath(at: tbc.selectedTabViewItemIndex)] else { return }
    |                                   `- warning: capture of 'router' with non-sendable type 'Router<Tab.AppKit<Root>.NestedScreen>' (aka 'Router<Tab.AppKit<Root>>') in a `@Sendable` closure; this is an error in the Swift 6 language mode
 74 |                 router.state.next = state
 75 |             })
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/Screen.swift:6:15: note: consider making generic struct 'Router' conform to the 'Sendable' protocol
  4 | #endif
  5 |
  6 | public struct Router<From>: PathProvider where From: ContentScreen {
    |               `- note: consider making generic struct 'Router' conform to the 'Sendable' protocol
  7 |     let from: _PathFrom<From.PathFrom>
  8 |     let state: ContentScreenState<From.NestedScreen>
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/AppKit.swift:73:83: warning: main actor-isolated property 'selectedTabViewItemIndex' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
 71 |             tabBarController.tabViewItems = c1.map(NSTabViewItem.init)
 72 |             let observation = tabBarController.observe(\.selectedTabViewItemIndex, changeHandler: { (tbc, ch) in
 73 |                 guard let state = router.state.childStates[router.keyPath(at: tbc.selectedTabViewItemIndex)] else { return }
    |                                                                                   `- warning: main actor-isolated property 'selectedTabViewItemIndex' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
 74 |                 router.state.next = state
 75 |             })
AppKit.NSTabViewController:8:25: note: property declared here
 6 |     open var canPropagateSelectedChildViewControllerTitle: Bool { get set }
 7 |     open var tabViewItems: [NSTabViewItem] { get set }
 8 |     @MainActor open var selectedTabViewItemIndex: Int { get set }
   |                         `- note: property declared here
 9 |     open func addTabViewItem(_ tabViewItem: NSTabViewItem)
10 |     open func insertTabViewItem(_ tabViewItem: NSTabViewItem, at index: Int)
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/AppKit.swift:80:40: warning: main actor-isolated property 'tabViewItems' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 77 |             return (tabBarController, tabBarController)
 78 |         }
 79 |         public func updateContent(_ content: Content, with context: Context) {
    |                     `- note: add '@MainActor' to make instance method 'updateContent(_:with:)' part of global actor 'MainActor'
 80 |             root.updateContent(content.tabViewItems.compactMap(\.viewController), with: context)
    |                                        `- warning: main actor-isolated property 'tabViewItems' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 81 |         }
 82 |     }
AppKit.NSTabViewController:7:14: note: property declared here
 5 |     open var transitionOptions: NSViewController.TransitionOptions { get set }
 6 |     open var canPropagateSelectedChildViewControllerTitle: Bool { get set }
 7 |     open var tabViewItems: [NSTabViewItem] { get set }
   |              `- note: property declared here
 8 |     @MainActor open var selectedTabViewItemIndex: Int { get set }
 9 |     open func addTabViewItem(_ tabViewItem: NSTabViewItem)
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/AppKit.swift:95:20: warning: main actor-isolated property 'selectedTabViewItemIndex' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
 92 |         public func keyPath(at index: Int) -> PartialKeyPath<To.PathFrom> { to.keyPath(at: index) }
 93 |
 94 |         public func move(from screen: From.Content, state: ContentScreenState<From.NestedScreen>, with context: Void, completion: (() -> Void)?) -> TransitionResult<From, To> {
    |                     `- note: add '@MainActor' to make instance method 'move(from:state:with:completion:)' part of global actor 'MainActor'
 95 |             screen.selectedTabViewItemIndex = index
    |                    `- warning: main actor-isolated property 'selectedTabViewItemIndex' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
 96 |             let c1 = screen.tabViewItems[index].viewController as! Too.Content
 97 |             let c0 = Too.nestedContent(from: c1)
AppKit.NSTabViewController:8:25: note: mutation of this property is only permitted within the actor
 6 |     open var canPropagateSelectedChildViewControllerTitle: Bool { get set }
 7 |     open var tabViewItems: [NSTabViewItem] { get set }
 8 |     @MainActor open var selectedTabViewItemIndex: Int { get set }
   |                         `- note: mutation of this property is only permitted within the actor
 9 |     open func addTabViewItem(_ tabViewItem: NSTabViewItem)
10 |     open func insertTabViewItem(_ tabViewItem: NSTabViewItem, at index: Int)
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/AppKit.swift:96:29: warning: main actor-isolated property 'tabViewItems' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 92 |         public func keyPath(at index: Int) -> PartialKeyPath<To.PathFrom> { to.keyPath(at: index) }
 93 |
 94 |         public func move(from screen: From.Content, state: ContentScreenState<From.NestedScreen>, with context: Void, completion: (() -> Void)?) -> TransitionResult<From, To> {
    |                     `- note: add '@MainActor' to make instance method 'move(from:state:with:completion:)' part of global actor 'MainActor'
 95 |             screen.selectedTabViewItemIndex = index
 96 |             let c1 = screen.tabViewItems[index].viewController as! Too.Content
    |                             `- warning: main actor-isolated property 'tabViewItems' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 97 |             let c0 = Too.nestedContent(from: c1)
 98 |             return (state[child: path, Too.self]!, (c1, c0))
AppKit.NSTabViewController:7:14: note: property declared here
 5 |     open var transitionOptions: NSViewController.TransitionOptions { get set }
 6 |     open var canPropagateSelectedChildViewControllerTitle: Bool { get set }
 7 |     open var tabViewItems: [NSTabViewItem] { get set }
   |              `- note: property declared here
 8 |     @MainActor open var selectedTabViewItemIndex: Int { get set }
 9 |     open func addTabViewItem(_ tabViewItem: NSTabViewItem)
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/AppKit.swift:102:31: warning: main actor-isolated property 'selectedTabViewItemIndex' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 99 |         }
100 |
101 |         public func hierarchyTest(from fromContent: From.Content, to toContent: Too.NestedScreen.Content) -> Bool {
    |                     `- note: add '@MainActor' to make instance method 'hierarchyTest(from:to:)' part of global actor 'MainActor'
102 |             guard fromContent.selectedTabViewItemIndex == index else { return false }
    |                               `- warning: main actor-isolated property 'selectedTabViewItemIndex' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
103 |             guard fromContent.tabViewItems[index].viewController is Too.Content else { return false }
104 |             return true
AppKit.NSTabViewController:8:25: note: property declared here
 6 |     open var canPropagateSelectedChildViewControllerTitle: Bool { get set }
 7 |     open var tabViewItems: [NSTabViewItem] { get set }
 8 |     @MainActor open var selectedTabViewItemIndex: Int { get set }
   |                         `- note: property declared here
 9 |     open func addTabViewItem(_ tabViewItem: NSTabViewItem)
10 |     open func insertTabViewItem(_ tabViewItem: NSTabViewItem, at index: Int)
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/AppKit.swift:103:31: warning: main actor-isolated property 'tabViewItems' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 99 |         }
100 |
101 |         public func hierarchyTest(from fromContent: From.Content, to toContent: Too.NestedScreen.Content) -> Bool {
    |                     `- note: add '@MainActor' to make instance method 'hierarchyTest(from:to:)' part of global actor 'MainActor'
102 |             guard fromContent.selectedTabViewItemIndex == index else { return false }
103 |             guard fromContent.tabViewItems[index].viewController is Too.Content else { return false }
    |                               `- warning: main actor-isolated property 'tabViewItems' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
104 |             return true
105 |         }
AppKit.NSTabViewController:7:14: note: property declared here
 5 |     open var transitionOptions: NSViewController.TransitionOptions { get set }
 6 |     open var canPropagateSelectedChildViewControllerTitle: Bool { get set }
 7 |     open var tabViewItems: [NSTabViewItem] { get set }
   |              `- note: property declared here
 8 |     @MainActor open var selectedTabViewItemIndex: Int { get set }
 9 |     open func addTabViewItem(_ tabViewItem: NSTabViewItem)
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/AppKit.swift:151:34: warning: call to main actor-isolated instance method 'presentAsModalWindow' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
139 |         public func keyPath(at index: Int) -> PartialKeyPath<To.PathFrom> { to.keyPath(at: index) }
140 |
141 |         public func move(from surface: From.Content, state: ContentScreenState<From.NestedScreen>, with context: Too.Context, completion: (() -> Void)?) -> TransitionResult<From, To> {
    |                     `- note: add '@MainActor' to make instance method 'move(from:state:with:completion:)' part of global actor 'MainActor'
142 |             let nextState = TransitionState<From, To>()
143 |             nextState.back = .some(Presentation.Dismiss.AppKit(animated: animated))
    :
149 |             }
150 |             switch style {
151 |             case .modal: surface.presentAsModalWindow(content1)
    |                                  `- warning: call to main actor-isolated instance method 'presentAsModalWindow' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
152 |             case .sheet: surface.presentAsSheet(content1)
153 |             case .popover(let rect, let viewPath, let edge, let behavior):
AppKit.NSViewController:8:26: note: calls to instance method 'presentAsModalWindow' from outside of its actor context are implicitly asynchronous
 6 |     open func presentViewControllerAsSheet(_ viewController: NSViewController)
 7 |     @available(macOS 10.10, *)
 8 |     @MainActor open func presentAsModalWindow(_ viewController: NSViewController)
   |                          `- note: calls to instance method 'presentAsModalWindow' from outside of its actor context are implicitly asynchronous
 9 |     @available(macOS 10.10, *)
10 |     @available(swift, obsoleted: 4.2, renamed: "presentAsModalWindow(_:)")
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/AppKit.swift:152:34: warning: call to main actor-isolated instance method 'presentAsSheet' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
139 |         public func keyPath(at index: Int) -> PartialKeyPath<To.PathFrom> { to.keyPath(at: index) }
140 |
141 |         public func move(from surface: From.Content, state: ContentScreenState<From.NestedScreen>, with context: Too.Context, completion: (() -> Void)?) -> TransitionResult<From, To> {
    |                     `- note: add '@MainActor' to make instance method 'move(from:state:with:completion:)' part of global actor 'MainActor'
142 |             let nextState = TransitionState<From, To>()
143 |             nextState.back = .some(Presentation.Dismiss.AppKit(animated: animated))
    :
150 |             switch style {
151 |             case .modal: surface.presentAsModalWindow(content1)
152 |             case .sheet: surface.presentAsSheet(content1)
    |                                  `- warning: call to main actor-isolated instance method 'presentAsSheet' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
153 |             case .popover(let rect, let viewPath, let edge, let behavior):
154 |                 surface.present(content1, asPopoverRelativeTo: rect, of: surface[keyPath: viewPath] as! NSView, preferredEdge: edge, behavior: behavior)
AppKit.NSViewController:3:26: note: calls to instance method 'presentAsSheet' from outside of its actor context are implicitly asynchronous
 1 | extension NSViewController {
 2 |     @available(macOS 10.10, *)
 3 |     @MainActor open func presentAsSheet(_ viewController: NSViewController)
   |                          `- note: calls to instance method 'presentAsSheet' from outside of its actor context are implicitly asynchronous
 4 |     @available(macOS 10.10, *)
 5 |     @available(swift, obsoleted: 4.2, renamed: "presentAsSheet(_:)")
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/AppKit.swift:154:25: warning: call to main actor-isolated instance method 'present(_:asPopoverRelativeTo:of:preferredEdge:behavior:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
139 |         public func keyPath(at index: Int) -> PartialKeyPath<To.PathFrom> { to.keyPath(at: index) }
140 |
141 |         public func move(from surface: From.Content, state: ContentScreenState<From.NestedScreen>, with context: Too.Context, completion: (() -> Void)?) -> TransitionResult<From, To> {
    |                     `- note: add '@MainActor' to make instance method 'move(from:state:with:completion:)' part of global actor 'MainActor'
142 |             let nextState = TransitionState<From, To>()
143 |             nextState.back = .some(Presentation.Dismiss.AppKit(animated: animated))
    :
152 |             case .sheet: surface.presentAsSheet(content1)
153 |             case .popover(let rect, let viewPath, let edge, let behavior):
154 |                 surface.present(content1, asPopoverRelativeTo: rect, of: surface[keyPath: viewPath] as! NSView, preferredEdge: edge, behavior: behavior)
    |                         `- warning: call to main actor-isolated instance method 'present(_:asPopoverRelativeTo:of:preferredEdge:behavior:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
155 |             case .custom(let animator): surface.present(content1, animator: animator)
156 |             }
AppKit.NSViewController:13:26: note: calls to instance method 'present(_:asPopoverRelativeTo:of:preferredEdge:behavior:)' from outside of its actor context are implicitly asynchronous
11 |     open func presentViewControllerAsModalWindow(_ viewController: NSViewController)
12 |     @available(macOS 10.10, *)
13 |     @MainActor open func present(_ viewController: NSViewController, asPopoverRelativeTo positioningRect: NSRect, of positioningView: NSView, preferredEdge: NSRectEdge, behavior: NSPopover.Behavior)
   |                          `- note: calls to instance method 'present(_:asPopoverRelativeTo:of:preferredEdge:behavior:)' from outside of its actor context are implicitly asynchronous
14 |     @available(macOS 10.10, *)
15 |     @available(swift, obsoleted: 4.2, renamed: "present(_:asPopoverRelativeTo:of:preferredEdge:behavior:)")
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/AppKit.swift:155:49: warning: call to main actor-isolated instance method 'present(_:animator:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
139 |         public func keyPath(at index: Int) -> PartialKeyPath<To.PathFrom> { to.keyPath(at: index) }
140 |
141 |         public func move(from surface: From.Content, state: ContentScreenState<From.NestedScreen>, with context: Too.Context, completion: (() -> Void)?) -> TransitionResult<From, To> {
    |                     `- note: add '@MainActor' to make instance method 'move(from:state:with:completion:)' part of global actor 'MainActor'
142 |             let nextState = TransitionState<From, To>()
143 |             nextState.back = .some(Presentation.Dismiss.AppKit(animated: animated))
    :
153 |             case .popover(let rect, let viewPath, let edge, let behavior):
154 |                 surface.present(content1, asPopoverRelativeTo: rect, of: surface[keyPath: viewPath] as! NSView, preferredEdge: edge, behavior: behavior)
155 |             case .custom(let animator): surface.present(content1, animator: animator)
    |                                                 `- warning: call to main actor-isolated instance method 'present(_:animator:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
156 |             }
157 |             CATransaction.commit()
AppKit.NSViewController:3:26: note: calls to instance method 'present(_:animator:)' from outside of its actor context are implicitly asynchronous
 1 | extension NSViewController {
 2 |     @available(macOS 10.10, *)
 3 |     @MainActor open func present(_ viewController: NSViewController, animator: any NSViewControllerPresentationAnimator)
   |                          `- note: calls to instance method 'present(_:animator:)' from outside of its actor context are implicitly asynchronous
 4 |     @available(macOS 10.10, *)
 5 |     @available(swift, obsoleted: 4.2, renamed: "present(_:animator:)")
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/AppKit.swift:162:39: warning: main actor-isolated property 'presentingViewController' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
159 |         }
160 |
161 |         public func hierarchyTest(from fromContent: From.Content, to toContent: Too.NestedScreen.Content) -> Bool {
    |                     `- note: add '@MainActor' to make instance method 'hierarchyTest(from:to:)' part of global actor 'MainActor'
162 |             fromContent === toContent.presentingViewController
    |                                       `- warning: main actor-isolated property 'presentingViewController' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
163 |         }
164 |         public func updateContent(_ content: Too.NestedScreen.Content, context: Context) {
AppKit.NSViewController:20:30: note: property declared here
18 |     open var presentedViewControllers: [NSViewController]? { get }
19 |     @available(macOS 10.10, *)
20 |     unowned(unsafe) open var presentingViewController: NSViewController? { get }
   |                              `- note: property declared here
21 |     @available(macOS 10.10, *)
22 |     @available(swift, obsoleted: 4.2, renamed: "presentingViewController")
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/AppKit.swift:180:21: warning: call to main actor-isolated instance method 'dismiss' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
172 |         let animated: Bool
173 |
174 |         public func move(from content: From.Content, completion: (() -> Void)?) {
    |                     `- note: add '@MainActor' to make instance method 'move(from:completion:)' part of global actor 'MainActor'
175 |             CATransaction.begin()
176 |             CATransaction.setCompletionBlock(completion)
    :
178 |                 CATransaction.setAnimationDuration(0)
179 |             }
180 |             content.dismiss(nil)
    |                     `- warning: call to main actor-isolated instance method 'dismiss' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
181 |             CATransaction.commit()
182 |         }
AppKit.NSViewController:13:25: note: calls to instance method 'dismiss' from outside of its actor context are implicitly asynchronous
11 |     open func dismissViewController(_ viewController: NSViewController)
12 |     @available(macOS 10.10, *)
13 |     @IBAction open func dismiss(_ sender: Any?)
   |                         `- note: calls to instance method 'dismiss' from outside of its actor context are implicitly asynchronous
14 |     @available(macOS 10.10, *)
15 |     @available(swift, obsoleted: 3, renamed: "dismiss(_:)")
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/AppKit.swift:155:49: warning: sending 'animator' risks causing data races; this is an error in the Swift 6 language mode
153 |             case .popover(let rect, let viewPath, let edge, let behavior):
154 |                 surface.present(content1, asPopoverRelativeTo: rect, of: surface[keyPath: viewPath] as! NSView, preferredEdge: edge, behavior: behavior)
155 |             case .custom(let animator): surface.present(content1, animator: animator)
    |                                                 |- warning: sending 'animator' risks causing data races; this is an error in the Swift 6 language mode
    |                                                 `- note: sending task-isolated 'animator' to main actor-isolated instance method 'present(_:animator:)' risks causing data races between main actor-isolated and task-isolated uses
156 |             }
157 |             CATransaction.commit()
[13/14] Emitting module ScreenUI
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/ScreenPath.swift:60:22: warning: generic parameter 'T' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
 43 |
 44 | public typealias ScreenPathResult<To> = (state: AnyScreenState, screenContent: To.NestedScreen.Content) where To: Screen
 45 | public struct StartPath<T>: ScreenPath, ScreenPathPrivate, ScreenPathPrivate2 where T: Transition {
    |                         `- note: 'T' previously declared here
 46 |     public typealias From = T.From
 47 |     public typealias To = T.To
    :
 58 |     }
 59 |
 60 |     public subscript<T>(next path: KeyPath<To.PathFrom, T>) -> T { transition[next: path] }
    |                      `- warning: generic parameter 'T' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
 61 |
 62 |     public func __move(from surface: T.From.Content, completion: (() -> Void)?) -> ScreenPathResult<T.To> {
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/ScreenPath.swift:128:22: warning: generic parameter 'T' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
107 |     }
108 | }
109 | public struct NextPath<Prev, T>: ScreenPath, ScreenPathPrivate, ScreenPathPrivate2
    |                              `- note: 'T' previously declared here
110 | where Prev: ScreenPath & ScreenPathPrivate2, T: Transition, T.From == Prev.To.NestedScreen,
111 |       Prev.Result == ScreenPathResult<Prev.To>
    :
126 |     }
127 |
128 |     public subscript<T>(next path: KeyPath<To.PathFrom, T>) -> T { transition[next: path] }
    |                      `- warning: generic parameter 'T' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
129 |
130 |     public func __move(from surface: Prev.From.Content, completion: (() -> Void)?) -> ScreenPathResult<T.To> {
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/SwiftUI.swift:321:22: warning: generic parameter 'T' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
304 | }
305 | @available(iOS 13.0, macOS 10.15, tvOS 13.0, watchOS 6.0, *)
306 | public struct StartPath_SwiftUI<T>: ScreenPath, ScreenPathPrivate, ScreenPath_SwiftUI where T: SwiftUICompatibleTransition {
    |                                 `- note: 'T' previously declared here
307 |     public typealias From = UnavailableContentScreen<Void>
308 |     public typealias To = T.To
    :
319 |     }
320 |
321 |     public subscript<T>(next path: KeyPath<To.PathFrom, T>) -> T { transition[next: path] }
    |                      `- warning: generic parameter 'T' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
322 |     public func index(of keyPath: PartialKeyPath<To.PathFrom>) -> Int { transition.index(of: keyPath) }
323 |     public func keyPath(at index: Int) -> PartialKeyPath<To.PathFrom> { transition.keyPath(at: index) }
/Users/admin/builder/spi-builder-workspace/Sources/ScreenUI/SwiftUI.swift:370:22: warning: generic parameter 'T' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
350 | }
351 | @available(iOS 13.0, macOS 10.15, tvOS 13.0, watchOS 6.0, *)
352 | public struct NextPath_SwiftUI<Prev, T>: ScreenPath, ScreenPathPrivate, ScreenPath_SwiftUI
    |                                      `- note: 'T' previously declared here
353 | where Prev: ScreenPath & ScreenPath_SwiftUI, T: SwiftUICompatibleTransition, Prev.To.NestedScreen == T.From
354 | {
    :
368 |     }
369 |
370 |     public subscript<T>(next path: KeyPath<To.PathFrom, T>) -> T { transition[next: path] }
    |                      `- warning: generic parameter 'T' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
371 |     public func index(of keyPath: PartialKeyPath<To.PathFrom>) -> Int { transition.index(of: keyPath) }
372 |     public func keyPath(at index: Int) -> PartialKeyPath<To.PathFrom> { transition.keyPath(at: index) }
[14/14] Compiling ScreenUI UIKit.swift
Build complete! (22.24s)
Build complete.
{
  "dependencies" : [
  ],
  "manifest_display_name" : "ScreenUI",
  "name" : "ScreenUI",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
  ],
  "products" : [
    {
      "name" : "ScreenUI",
      "targets" : [
        "ScreenUI"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "ScreenUITests",
      "module_type" : "SwiftTarget",
      "name" : "ScreenUITests",
      "path" : "Tests/ScreenUITests",
      "sources" : [
        "ScreenUITests.swift",
        "XCTestManifests.swift"
      ],
      "target_dependencies" : [
        "ScreenUI"
      ],
      "type" : "test"
    },
    {
      "c99name" : "ScreenUI",
      "module_type" : "SwiftTarget",
      "name" : "ScreenUI",
      "path" : "Sources/ScreenUI",
      "product_memberships" : [
        "ScreenUI"
      ],
      "sources" : [
        "AppKit.swift",
        "ContentBuilders.swift",
        "Crossplatform.swift",
        "PathProvider.swift",
        "Screen.swift",
        "ScreenBuilder.swift",
        "ScreenPath.swift",
        "ScreenState.swift",
        "SwiftUI.swift",
        "Transition.swift",
        "UIKit.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.3"
}
Done.