Build Information
Successful build of Tray, reference main (e11106
), with Swift 6.1 for macOS (SPM) on 29 Apr 2025 00:37:33 UTC.
Swift 6 data race errors: 0
Build Command
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures
Build Log
========================================
RunAll
========================================
Builder version: 4.61.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/boybeak/Tray.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/boybeak/Tray
* branch main -> FETCH_HEAD
* [new branch] main -> origin/main
HEAD is now at e11106b Update README.md
Cloned https://github.com/boybeak/Tray.git
Revision (git rev-parse @):
e11106b62dd9e8c8fa1221eb1d33dd5ce052360d
SUCCESS checkout https://github.com/boybeak/Tray.git at main
========================================
ResolveProductDependencies
========================================
Resolving dependencies ...
{
"identity": ".resolve-product-dependencies",
"name": "resolve-dependencies",
"url": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
"version": "unspecified",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
"dependencies": [
{
"identity": "tray",
"name": "Tray",
"url": "https://github.com/boybeak/Tray.git",
"version": "unspecified",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/Tray",
"dependencies": [
]
}
]
}
Fetching https://github.com/boybeak/Tray.git
[1/75] Fetching tray
Fetched https://github.com/boybeak/Tray.git from cache (0.70s)
Creating working copy for https://github.com/boybeak/Tray.git
Working copy of https://github.com/boybeak/Tray.git resolved at main (e11106b)
warning: '.resolve-product-dependencies': dependency 'tray' is not used by any target
Found 0 product dependencies
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.1
Building package at path: $PWD
https://github.com/boybeak/Tray.git
https://github.com/boybeak/Tray.git
{
"dependencies" : [
],
"manifest_display_name" : "Tray",
"name" : "Tray",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
],
"products" : [
{
"name" : "Tray",
"targets" : [
"Tray"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "TrayTests",
"module_type" : "SwiftTarget",
"name" : "TrayTests",
"path" : "Tests/TrayTests",
"sources" : [
"TrayTests.swift"
],
"target_dependencies" : [
"Tray"
],
"type" : "test"
},
{
"c99name" : "Tray",
"module_type" : "SwiftTarget",
"name" : "Tray",
"path" : "Sources/Tray",
"product_memberships" : [
"Tray"
],
"sources" : [
"Tray.swift"
],
"type" : "library"
}
],
"tools_version" : "5.10"
}
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version-2F0A5646E1D333AE.txt
[3/4] Emitting module Tray
[4/4] Compiling Tray Tray.swift
/Users/admin/builder/spi-builder-workspace/Sources/Tray/Tray.swift:63:21: warning: main actor-isolated property 'image' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
55 | }
56 |
57 | public func setIcon(icon: NSImage) {
| `- note: add '@MainActor' to make instance method 'setIcon(icon:)' part of global actor 'MainActor'
58 | if statusItem == nil {
59 | statusItem = NSStatusBar.system.statusItem(withLength: NSStatusItem.variableLength)
:
61 | if let menuBtn = statusItem?.button {
62 | icon.isTemplate = true
63 | menuBtn.image = icon
| `- warning: main actor-isolated property 'image' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
64 | menuBtn.target = self
65 | menuBtn.action = #selector(menuBtnAction)
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSButton.h:126:39: note: mutation of this property is only permitted within the actor
124 |
125 | /*! The image that appears on the button when it’s in an off state, or nil if there is no such image. */
126 | @property (nullable, strong) NSImage *image;
| `- note: mutation of this property is only permitted within the actor
127 |
128 | /*! An alternate image that appears on the button when the button is in an on state, or nil if there is no such image. Note that some button types do not display an alternate image. */
/Users/admin/builder/spi-builder-workspace/Sources/Tray/Tray.swift:64:21: warning: main actor-isolated property 'target' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
55 | }
56 |
57 | public func setIcon(icon: NSImage) {
| `- note: add '@MainActor' to make instance method 'setIcon(icon:)' part of global actor 'MainActor'
58 | if statusItem == nil {
59 | statusItem = NSStatusBar.system.statusItem(withLength: NSStatusItem.variableLength)
:
62 | icon.isTemplate = true
63 | menuBtn.image = icon
64 | menuBtn.target = self
| `- warning: main actor-isolated property 'target' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
65 | menuBtn.action = #selector(menuBtnAction)
66 | menuBtn.sendAction(on: [.leftMouseUp, .rightMouseUp])
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSControl.h:24:31: note: mutation of this property is only permitted within the actor
22 | - (nullable instancetype)initWithCoder:(NSCoder *)coder NS_DESIGNATED_INITIALIZER;
23 |
24 | @property (nullable, weak) id target; // Target is weak for zeroing-weak compatible objects in apps linked on 10.10 or later. Otherwise the behavior of this property is 'assign’.
| `- note: mutation of this property is only permitted within the actor
25 | @property (nullable) SEL action;
26 | @property NSInteger tag;
/Users/admin/builder/spi-builder-workspace/Sources/Tray/Tray.swift:65:21: warning: main actor-isolated property 'action' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
55 | }
56 |
57 | public func setIcon(icon: NSImage) {
| `- note: add '@MainActor' to make instance method 'setIcon(icon:)' part of global actor 'MainActor'
58 | if statusItem == nil {
59 | statusItem = NSStatusBar.system.statusItem(withLength: NSStatusItem.variableLength)
:
63 | menuBtn.image = icon
64 | menuBtn.target = self
65 | menuBtn.action = #selector(menuBtnAction)
| `- warning: main actor-isolated property 'action' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
66 | menuBtn.sendAction(on: [.leftMouseUp, .rightMouseUp])
67 | }
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSControl.h:25:26: note: mutation of this property is only permitted within the actor
23 |
24 | @property (nullable, weak) id target; // Target is weak for zeroing-weak compatible objects in apps linked on 10.10 or later. Otherwise the behavior of this property is 'assign’.
25 | @property (nullable) SEL action;
| `- note: mutation of this property is only permitted within the actor
26 | @property NSInteger tag;
27 | @property BOOL ignoresMultiClick;
/Users/admin/builder/spi-builder-workspace/Sources/Tray/Tray.swift:66:21: warning: call to main actor-isolated instance method 'sendAction(on:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
55 | }
56 |
57 | public func setIcon(icon: NSImage) {
| `- note: add '@MainActor' to make instance method 'setIcon(icon:)' part of global actor 'MainActor'
58 | if statusItem == nil {
59 | statusItem = NSStatusBar.system.statusItem(withLength: NSStatusItem.variableLength)
:
64 | menuBtn.target = self
65 | menuBtn.action = #selector(menuBtnAction)
66 | menuBtn.sendAction(on: [.leftMouseUp, .rightMouseUp])
| `- warning: call to main actor-isolated instance method 'sendAction(on:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
67 | }
68 | }
AppKit.NSControl.sendAction:2:22: note: calls to instance method 'sendAction(on:)' from outside of its actor context are implicitly asynchronous
1 | class NSControl {
2 | @MainActor open func sendAction(on mask: NSEvent.EventTypeMask) -> Int}
| |- note: calls to instance method 'sendAction(on:)' from outside of its actor context are implicitly asynchronous
| `- note: main actor isolation inferred from inheritance from class 'NSView'
3 |
/Users/admin/builder/spi-builder-workspace/Sources/Tray/Tray.swift:73:23: warning: call to main actor-isolated initializer 'init()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
68 | }
69 |
70 | public func setView(viewController: NSViewController, behavior: NSPopover.Behavior = .transient, level: NSWindow.Level = .floating, size: CGSize? = nil) {
| `- note: add '@MainActor' to make instance method 'setView(viewController:behavior:level:size:)' part of global actor 'MainActor'
71 | self.viewController = viewController
72 | if popover == nil {
73 | popover = NSPopover()
| `- warning: call to main actor-isolated initializer 'init()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
74 | popover?.animates = true
75 | popover?.behavior = behavior
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSPopover.h:62:1: note: calls to initializer 'init()' from outside of its actor context are implicitly asynchronous
60 | #endif
61 |
62 | - (instancetype)init NS_DESIGNATED_INITIALIZER;
| |- note: calls to initializer 'init()' from outside of its actor context are implicitly asynchronous
| `- note: main actor isolation inferred from inheritance from class 'NSResponder'
63 | - (nullable instancetype)initWithCoder:(NSCoder *)coder NS_DESIGNATED_INITIALIZER;
64 |
/Users/admin/builder/spi-builder-workspace/Sources/Tray/Tray.swift:74:22: warning: main actor-isolated property 'animates' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
68 | }
69 |
70 | public func setView(viewController: NSViewController, behavior: NSPopover.Behavior = .transient, level: NSWindow.Level = .floating, size: CGSize? = nil) {
| `- note: add '@MainActor' to make instance method 'setView(viewController:behavior:level:size:)' part of global actor 'MainActor'
71 | self.viewController = viewController
72 | if popover == nil {
73 | popover = NSPopover()
74 | popover?.animates = true
| `- warning: main actor-isolated property 'animates' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
75 | popover?.behavior = behavior
76 | }
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSPopover.h:117:16: note: mutation of this property is only permitted within the actor
115 | /* Should the popover be animated when it shows, closes, or appears to transition to a detachable window. This property also controls whether the popover animates when the content view or content size changes. AppKit does not guarantee which behaviors will be animated or that this property will be respected; it is regarded as a hint. The default value is YES.
116 | */
117 | @property BOOL animates;
| `- note: mutation of this property is only permitted within the actor
118 |
119 | /* The view controller that manages the content of the popover. The default value is nil. You must set the content view controller of the popover to a non-nil value before the popover is shown. Changes to the popover's content view controller while the popover is shown will animate (provided animates is YES).
/Users/admin/builder/spi-builder-workspace/Sources/Tray/Tray.swift:75:22: warning: main actor-isolated property 'behavior' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
68 | }
69 |
70 | public func setView(viewController: NSViewController, behavior: NSPopover.Behavior = .transient, level: NSWindow.Level = .floating, size: CGSize? = nil) {
| `- note: add '@MainActor' to make instance method 'setView(viewController:behavior:level:size:)' part of global actor 'MainActor'
71 | self.viewController = viewController
72 | if popover == nil {
73 | popover = NSPopover()
74 | popover?.animates = true
75 | popover?.behavior = behavior
| `- warning: main actor-isolated property 'behavior' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
76 | }
77 | popover?.contentViewController = viewController
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSPopover.h:113:29: note: mutation of this property is only permitted within the actor
111 | /* The behavior of the popover. The default behavior is NSPopoverBehaviorApplicationDefined. See the declaration of NSPopoverBehavior above for more information about popover behaviors.
112 | */
113 | @property NSPopoverBehavior behavior;
| `- note: mutation of this property is only permitted within the actor
114 |
115 | /* Should the popover be animated when it shows, closes, or appears to transition to a detachable window. This property also controls whether the popover animates when the content view or content size changes. AppKit does not guarantee which behaviors will be animated or that this property will be respected; it is regarded as a hint. The default value is YES.
/Users/admin/builder/spi-builder-workspace/Sources/Tray/Tray.swift:77:18: warning: main actor-isolated property 'contentViewController' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
68 | }
69 |
70 | public func setView(viewController: NSViewController, behavior: NSPopover.Behavior = .transient, level: NSWindow.Level = .floating, size: CGSize? = nil) {
| `- note: add '@MainActor' to make instance method 'setView(viewController:behavior:level:size:)' part of global actor 'MainActor'
71 | self.viewController = viewController
72 | if popover == nil {
:
75 | popover?.behavior = behavior
76 | }
77 | popover?.contentViewController = viewController
| `- warning: main actor-isolated property 'contentViewController' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
78 | self.level = level
79 | if size != nil {
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSPopover.h:121:56: note: mutation of this property is only permitted within the actor
119 | /* The view controller that manages the content of the popover. The default value is nil. You must set the content view controller of the popover to a non-nil value before the popover is shown. Changes to the popover's content view controller while the popover is shown will animate (provided animates is YES).
120 | */
121 | @property(nullable, retain) IBOutlet NSViewController *contentViewController;
| `- note: mutation of this property is only permitted within the actor
122 |
123 | /* The content size of the popover. The popover's content size is set to match the size of the content view when the content view controller is set. Changes to the content size of the popover will animate while the popover is shown (provided animates is YES).
/Users/admin/builder/spi-builder-workspace/Sources/Tray/Tray.swift:80:50: warning: main actor-isolated property 'frame' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
68 | }
69 |
70 | public func setView(viewController: NSViewController, behavior: NSPopover.Behavior = .transient, level: NSWindow.Level = .floating, size: CGSize? = nil) {
| `- note: add '@MainActor' to make instance method 'setView(viewController:behavior:level:size:)' part of global actor 'MainActor'
71 | self.viewController = viewController
72 | if popover == nil {
:
78 | self.level = level
79 | if size != nil {
80 | popover?.contentViewController?.view.frame = NSRect(x: 0, y: 0, width: size!.width, height: size!.height)
| `- warning: main actor-isolated property 'frame' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
81 | }
82 |
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSView.h:129:18: note: mutation of this property is only permitted within the actor
127 | - (void)setFrameOrigin:(NSPoint)newOrigin;
128 | - (void)setFrameSize:(NSSize)newSize;
129 | @property NSRect frame;
| `- note: mutation of this property is only permitted within the actor
130 | @property CGFloat frameRotation;
131 | @property CGFloat frameCenterRotation API_AVAILABLE(macos(10.5));
/Users/admin/builder/spi-builder-workspace/Sources/Tray/Tray.swift:80:45: warning: main actor-isolated property 'view' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
68 | }
69 |
70 | public func setView(viewController: NSViewController, behavior: NSPopover.Behavior = .transient, level: NSWindow.Level = .floating, size: CGSize? = nil) {
| `- note: add '@MainActor' to make instance method 'setView(viewController:behavior:level:size:)' part of global actor 'MainActor'
71 | self.viewController = viewController
72 | if popover == nil {
:
78 | self.level = level
79 | if size != nil {
80 | popover?.contentViewController?.view.frame = NSRect(x: 0, y: 0, width: size!.width, height: size!.height)
| `- warning: main actor-isolated property 'view' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
81 | }
82 |
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSViewController.h:78:37: note: property declared here
76 | /* The default implementation of the getter first invokes [self loadView] if the view hasn't been set yet. After -loadView is called, -viewDidLoad will be called. The setter can be used to assign a view that's created in a different manner than what -view's default implementation would do.
77 | */
78 | @property (strong) IBOutlet NSView *view;
| `- note: property declared here
79 |
80 | /* Returns the view controller's view, or nil if the view has not been loaded.
/Users/admin/builder/spi-builder-workspace/Sources/Tray/Tray.swift:80:22: warning: main actor-isolated property 'contentViewController' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
68 | }
69 |
70 | public func setView(viewController: NSViewController, behavior: NSPopover.Behavior = .transient, level: NSWindow.Level = .floating, size: CGSize? = nil) {
| `- note: add '@MainActor' to make instance method 'setView(viewController:behavior:level:size:)' part of global actor 'MainActor'
71 | self.viewController = viewController
72 | if popover == nil {
:
78 | self.level = level
79 | if size != nil {
80 | popover?.contentViewController?.view.frame = NSRect(x: 0, y: 0, width: size!.width, height: size!.height)
| `- warning: main actor-isolated property 'contentViewController' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
81 | }
82 |
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSPopover.h:121:56: note: property declared here
119 | /* The view controller that manages the content of the popover. The default value is nil. You must set the content view controller of the popover to a non-nil value before the popover is shown. Changes to the popover's content view controller while the popover is shown will animate (provided animates is YES).
120 | */
121 | @property(nullable, retain) IBOutlet NSViewController *contentViewController;
| `- note: property declared here
122 |
123 | /* The content size of the popover. The popover's content size is set to match the size of the content view when the content view controller is set. Changes to the content size of the popover will animate while the popover is shown (provided animates is YES).
/Users/admin/builder/spi-builder-workspace/Sources/Tray/Tray.swift:86:30: warning: call to main actor-isolated initializer 'init()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
83 | }
84 |
85 | public func setView(view: NSView, behavior: NSPopover.Behavior = .transient, level: NSWindow.Level = .floating, size: CGSize? = nil) {
| `- note: add '@MainActor' to make instance method 'setView(view:behavior:level:size:)' part of global actor 'MainActor'
86 | let viewController = NSViewController()
| `- warning: call to main actor-isolated initializer 'init()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
87 | viewController.view = view
88 | self.setView(viewController: viewController, behavior: behavior, level: level, size: size)
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSResponder.h:23:1: note: calls to initializer 'init()' from outside of its actor context are implicitly asynchronous
21 | @interface NSResponder : NSObject <NSCoding>
22 |
23 | - (instancetype)init NS_DESIGNATED_INITIALIZER;
| |- note: calls to initializer 'init()' from outside of its actor context are implicitly asynchronous
| `- note: main actor isolation inferred from inheritance from class 'NSResponder'
24 | - (nullable instancetype)initWithCoder:(NSCoder *)coder NS_DESIGNATED_INITIALIZER;
25 |
/Users/admin/builder/spi-builder-workspace/Sources/Tray/Tray.swift:87:24: warning: main actor-isolated property 'view' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
83 | }
84 |
85 | public func setView(view: NSView, behavior: NSPopover.Behavior = .transient, level: NSWindow.Level = .floating, size: CGSize? = nil) {
| `- note: add '@MainActor' to make instance method 'setView(view:behavior:level:size:)' part of global actor 'MainActor'
86 | let viewController = NSViewController()
87 | viewController.view = view
| `- warning: main actor-isolated property 'view' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
88 | self.setView(viewController: viewController, behavior: behavior, level: level, size: size)
89 | }
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSViewController.h:78:37: note: mutation of this property is only permitted within the actor
76 | /* The default implementation of the getter first invokes [self loadView] if the view hasn't been set yet. After -loadView is called, -viewDidLoad will be called. The setter can be used to assign a view that's created in a different manner than what -view's default implementation would do.
77 | */
78 | @property (strong) IBOutlet NSView *view;
| `- note: mutation of this property is only permitted within the actor
79 |
80 | /* Returns the view controller's view, or nil if the view has not been loaded.
/Users/admin/builder/spi-builder-workspace/Sources/Tray/Tray.swift:93:28: warning: call to main actor-isolated initializer 'init(rootView:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
90 |
91 | @available(macOS 10.15, *)
92 | public func setView<Content: View>(content: Content, behavior: NSPopover.Behavior = .transient, level: NSWindow.Level = .floating, size: CGSize? = nil) {
| `- note: add '@MainActor' to make instance method 'setView(content:behavior:level:size:)' part of global actor 'MainActor'
93 | self.setView(view: NSHostingView(rootView: content), behavior: behavior, level: level, size: size)
| `- warning: call to main actor-isolated initializer 'init(rootView:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
94 | }
95 |
SwiftUI.NSHostingView.init:2:44: note: calls to initializer 'init(rootView:)' from outside of its actor context are implicitly asynchronous
1 | generic class NSHostingView {
2 | @MainActor @preconcurrency required public init(rootView: Content)}
| `- note: calls to initializer 'init(rootView:)' from outside of its actor context are implicitly asynchronous
3 |
/Users/admin/builder/spi-builder-workspace/Sources/Tray/Tray.swift:108:33: warning: main actor-isolated property 'currentEvent' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
105 | }
106 |
107 | @objc private func menuBtnAction(sender: AnyObject) {
| `- note: add '@MainActor' to make instance method 'menuBtnAction(sender:)' part of global actor 'MainActor'
108 | guard let event = NSApp.currentEvent else { return }
| `- warning: main actor-isolated property 'currentEvent' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
109 | switch event.type {
110 | case .rightMouseUp:
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSApplication.h:349:49: note: property declared here
347 | - (void)sendEvent:(NSEvent *)event;
348 | - (void)postEvent:(NSEvent *)event atStart:(BOOL)atStart;
349 | @property (nullable, readonly, strong) NSEvent *currentEvent;
| `- note: property declared here
350 | - (nullable NSEvent *)nextEventMatchingMask:(NSEventMask)mask untilDate:(nullable NSDate *)expiration inMode:(NSRunLoopMode)mode dequeue:(BOOL)deqFlag;
351 | - (void)discardEventsMatchingMask:(NSEventMask)mask beforeEvent:(nullable NSEvent *)lastEvent;
/Users/admin/builder/spi-builder-workspace/Sources/Tray/Tray.swift:108:27: warning: main actor-isolated var 'NSApp' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
105 | }
106 |
107 | @objc private func menuBtnAction(sender: AnyObject) {
| `- note: add '@MainActor' to make instance method 'menuBtnAction(sender:)' part of global actor 'MainActor'
108 | guard let event = NSApp.currentEvent else { return }
| `- warning: main actor-isolated var 'NSApp' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
109 | switch event.type {
110 | case .rightMouseUp:
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSApplication.h:191:58: note: var declared here
189 | @interface NSApplication : NSResponder <NSUserInterfaceValidations, NSMenuItemValidation, NSAccessibilityElement, NSAccessibility>
190 |
191 | APPKIT_EXTERN __kindof NSApplication * _Null_unspecified NSApp NS_SWIFT_UI_ACTOR;
| `- note: var declared here
192 |
193 | @property (class, readonly, strong) __kindof NSApplication *sharedApplication;
/Users/admin/builder/spi-builder-workspace/Sources/Tray/Tray.swift:132:21: warning: main actor-isolated property 'isShown' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
129 | }
130 |
131 | private func togglePopover(sender: AnyObject) {
| `- note: add '@MainActor' to make instance method 'togglePopover(sender:)' part of global actor 'MainActor'
132 | if popover?.isShown == true {
| `- warning: main actor-isolated property 'isShown' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
133 | popover?.performClose(sender)
134 | } else {
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSPopover.h:129:42: note: property declared here
127 | /* YES if the popover is being shown, NO otherwise. The popover is considered to be shown from the point when -showRelativeToRect:ofView:preferredEdge: is invoked until the popover is closed in response to an invocation of either -close or -performClose:.
128 | */
129 | @property(readonly, getter=isShown) BOOL shown;
| `- note: property declared here
130 |
131 | /// Returns \c YES if the window is detached to an implicitly created detached window, \c NO otherwise. This method does not apply when the popover is detached to a window returned with \c -detachableWindowForPopover:.
/Users/admin/builder/spi-builder-workspace/Sources/Tray/Tray.swift:133:22: warning: call to main actor-isolated instance method 'performClose' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
129 | }
130 |
131 | private func togglePopover(sender: AnyObject) {
| `- note: add '@MainActor' to make instance method 'togglePopover(sender:)' part of global actor 'MainActor'
132 | if popover?.isShown == true {
133 | popover?.performClose(sender)
| `- warning: call to main actor-isolated instance method 'performClose' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
134 | } else {
135 | if let menuBtn = statusItem?.button {
AppKit.NSPopover.performClose:2:32: note: calls to instance method 'performClose' from outside of its actor context are implicitly asynchronous
1 | class NSPopover {
2 | @IBAction @MainActor open func performClose(_ sender: Any?)}
| |- note: calls to instance method 'performClose' from outside of its actor context are implicitly asynchronous
| `- note: main actor isolation inferred from inheritance from class 'NSResponder'
3 |
/Users/admin/builder/spi-builder-workspace/Sources/Tray/Tray.swift:136:26: warning: call to main actor-isolated instance method 'show(relativeTo:of:preferredEdge:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
129 | }
130 |
131 | private func togglePopover(sender: AnyObject) {
| `- note: add '@MainActor' to make instance method 'togglePopover(sender:)' part of global actor 'MainActor'
132 | if popover?.isShown == true {
133 | popover?.performClose(sender)
134 | } else {
135 | if let menuBtn = statusItem?.button {
136 | popover?.show(relativeTo: menuBtn.bounds, of: menuBtn, preferredEdge: .minY)
| `- warning: call to main actor-isolated instance method 'show(relativeTo:of:preferredEdge:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
137 | popover?.contentViewController?.view.window?.level = self.level
138 | popover?.contentViewController?.view.window?.makeKey()
AppKit.NSPopover.show:2:22: note: calls to instance method 'show(relativeTo:of:preferredEdge:)' from outside of its actor context are implicitly asynchronous
1 | class NSPopover {
2 | @MainActor open func show(relativeTo positioningRect: NSRect, of positioningView: NSView, preferredEdge: NSRectEdge)}
| |- note: calls to instance method 'show(relativeTo:of:preferredEdge:)' from outside of its actor context are implicitly asynchronous
| `- note: main actor isolation inferred from inheritance from class 'NSResponder'
3 |
/Users/admin/builder/spi-builder-workspace/Sources/Tray/Tray.swift:136:51: warning: main actor-isolated property 'bounds' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
129 | }
130 |
131 | private func togglePopover(sender: AnyObject) {
| `- note: add '@MainActor' to make instance method 'togglePopover(sender:)' part of global actor 'MainActor'
132 | if popover?.isShown == true {
133 | popover?.performClose(sender)
134 | } else {
135 | if let menuBtn = statusItem?.button {
136 | popover?.show(relativeTo: menuBtn.bounds, of: menuBtn, preferredEdge: .minY)
| `- warning: main actor-isolated property 'bounds' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
137 | popover?.contentViewController?.view.window?.level = self.level
138 | popover?.contentViewController?.view.window?.makeKey()
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSView.h:139:18: note: property declared here
137 | - (void)scaleUnitSquareToSize:(NSSize)newUnitSize;
138 | - (void)rotateByAngle:(CGFloat)angle;
139 | @property NSRect bounds;
| `- note: property declared here
140 |
141 | @property (getter=isFlipped, readonly) BOOL flipped;
/Users/admin/builder/spi-builder-workspace/Sources/Tray/Tray.swift:137:62: warning: main actor-isolated property 'level' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
129 | }
130 |
131 | private func togglePopover(sender: AnyObject) {
| `- note: add '@MainActor' to make instance method 'togglePopover(sender:)' part of global actor 'MainActor'
132 | if popover?.isShown == true {
133 | popover?.performClose(sender)
:
135 | if let menuBtn = statusItem?.button {
136 | popover?.show(relativeTo: menuBtn.bounds, of: menuBtn, preferredEdge: .minY)
137 | popover?.contentViewController?.view.window?.level = self.level
| `- warning: main actor-isolated property 'level' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
138 | popover?.contentViewController?.view.window?.makeKey()
139 | }
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSWindow.h:504:25: note: mutation of this property is only permitted within the actor
502 |
503 | @property NSBackingStoreType backingType;
504 | @property NSWindowLevel level;
| `- note: mutation of this property is only permitted within the actor
505 | @property NSWindowDepth depthLimit;
506 | - (void)setDynamicDepthLimit:(BOOL)flag;
/Users/admin/builder/spi-builder-workspace/Sources/Tray/Tray.swift:137:54: warning: main actor-isolated property 'window' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
129 | }
130 |
131 | private func togglePopover(sender: AnyObject) {
| `- note: add '@MainActor' to make instance method 'togglePopover(sender:)' part of global actor 'MainActor'
132 | if popover?.isShown == true {
133 | popover?.performClose(sender)
:
135 | if let menuBtn = statusItem?.button {
136 | popover?.show(relativeTo: menuBtn.bounds, of: menuBtn, preferredEdge: .minY)
137 | popover?.contentViewController?.view.window?.level = self.level
| `- warning: main actor-isolated property 'window' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
138 | popover?.contentViewController?.view.window?.makeKey()
139 | }
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSView.h:86:61: note: mutation of this property is only permitted within the actor
84 | - (nullable instancetype)initWithCoder:(NSCoder *)coder NS_DESIGNATED_INITIALIZER;
85 |
86 | @property (nullable, readonly, unsafe_unretained) NSWindow *window;
| `- note: mutation of this property is only permitted within the actor
87 | @property (nullable, readonly, unsafe_unretained) NSView *superview;
88 | @property (copy) NSArray<__kindof NSView *> *subviews;
/Users/admin/builder/spi-builder-workspace/Sources/Tray/Tray.swift:137:49: warning: main actor-isolated property 'view' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
129 | }
130 |
131 | private func togglePopover(sender: AnyObject) {
| `- note: add '@MainActor' to make instance method 'togglePopover(sender:)' part of global actor 'MainActor'
132 | if popover?.isShown == true {
133 | popover?.performClose(sender)
:
135 | if let menuBtn = statusItem?.button {
136 | popover?.show(relativeTo: menuBtn.bounds, of: menuBtn, preferredEdge: .minY)
137 | popover?.contentViewController?.view.window?.level = self.level
| `- warning: main actor-isolated property 'view' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
138 | popover?.contentViewController?.view.window?.makeKey()
139 | }
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSViewController.h:78:37: note: property declared here
76 | /* The default implementation of the getter first invokes [self loadView] if the view hasn't been set yet. After -loadView is called, -viewDidLoad will be called. The setter can be used to assign a view that's created in a different manner than what -view's default implementation would do.
77 | */
78 | @property (strong) IBOutlet NSView *view;
| `- note: property declared here
79 |
80 | /* Returns the view controller's view, or nil if the view has not been loaded.
/Users/admin/builder/spi-builder-workspace/Sources/Tray/Tray.swift:137:26: warning: main actor-isolated property 'contentViewController' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
129 | }
130 |
131 | private func togglePopover(sender: AnyObject) {
| `- note: add '@MainActor' to make instance method 'togglePopover(sender:)' part of global actor 'MainActor'
132 | if popover?.isShown == true {
133 | popover?.performClose(sender)
:
135 | if let menuBtn = statusItem?.button {
136 | popover?.show(relativeTo: menuBtn.bounds, of: menuBtn, preferredEdge: .minY)
137 | popover?.contentViewController?.view.window?.level = self.level
| `- warning: main actor-isolated property 'contentViewController' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
138 | popover?.contentViewController?.view.window?.makeKey()
139 | }
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSPopover.h:121:56: note: property declared here
119 | /* The view controller that manages the content of the popover. The default value is nil. You must set the content view controller of the popover to a non-nil value before the popover is shown. Changes to the popover's content view controller while the popover is shown will animate (provided animates is YES).
120 | */
121 | @property(nullable, retain) IBOutlet NSViewController *contentViewController;
| `- note: property declared here
122 |
123 | /* The content size of the popover. The popover's content size is set to match the size of the content view when the content view controller is set. Changes to the content size of the popover will animate while the popover is shown (provided animates is YES).
/Users/admin/builder/spi-builder-workspace/Sources/Tray/Tray.swift:138:62: warning: call to main actor-isolated instance method 'makeKey()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
129 | }
130 |
131 | private func togglePopover(sender: AnyObject) {
| `- note: add '@MainActor' to make instance method 'togglePopover(sender:)' part of global actor 'MainActor'
132 | if popover?.isShown == true {
133 | popover?.performClose(sender)
:
136 | popover?.show(relativeTo: menuBtn.bounds, of: menuBtn, preferredEdge: .minY)
137 | popover?.contentViewController?.view.window?.level = self.level
138 | popover?.contentViewController?.view.window?.makeKey()
| `- warning: call to main actor-isolated instance method 'makeKey()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
139 | }
140 | }
AppKit.NSWindow.makeKey:2:22: note: calls to instance method 'makeKey()' from outside of its actor context are implicitly asynchronous
1 | class NSWindow {
2 | @MainActor open func makeKey()}
| |- note: calls to instance method 'makeKey()' from outside of its actor context are implicitly asynchronous
| `- note: main actor isolation inferred from inheritance from class 'NSResponder'
3 |
/Users/admin/builder/spi-builder-workspace/Sources/Tray/Tray.swift:138:54: warning: main actor-isolated property 'window' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
129 | }
130 |
131 | private func togglePopover(sender: AnyObject) {
| `- note: add '@MainActor' to make instance method 'togglePopover(sender:)' part of global actor 'MainActor'
132 | if popover?.isShown == true {
133 | popover?.performClose(sender)
:
136 | popover?.show(relativeTo: menuBtn.bounds, of: menuBtn, preferredEdge: .minY)
137 | popover?.contentViewController?.view.window?.level = self.level
138 | popover?.contentViewController?.view.window?.makeKey()
| `- warning: main actor-isolated property 'window' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
139 | }
140 | }
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSView.h:86:61: note: property declared here
84 | - (nullable instancetype)initWithCoder:(NSCoder *)coder NS_DESIGNATED_INITIALIZER;
85 |
86 | @property (nullable, readonly, unsafe_unretained) NSWindow *window;
| `- note: property declared here
87 | @property (nullable, readonly, unsafe_unretained) NSView *superview;
88 | @property (copy) NSArray<__kindof NSView *> *subviews;
/Users/admin/builder/spi-builder-workspace/Sources/Tray/Tray.swift:138:49: warning: main actor-isolated property 'view' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
129 | }
130 |
131 | private func togglePopover(sender: AnyObject) {
| `- note: add '@MainActor' to make instance method 'togglePopover(sender:)' part of global actor 'MainActor'
132 | if popover?.isShown == true {
133 | popover?.performClose(sender)
:
136 | popover?.show(relativeTo: menuBtn.bounds, of: menuBtn, preferredEdge: .minY)
137 | popover?.contentViewController?.view.window?.level = self.level
138 | popover?.contentViewController?.view.window?.makeKey()
| `- warning: main actor-isolated property 'view' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
139 | }
140 | }
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSViewController.h:78:37: note: property declared here
76 | /* The default implementation of the getter first invokes [self loadView] if the view hasn't been set yet. After -loadView is called, -viewDidLoad will be called. The setter can be used to assign a view that's created in a different manner than what -view's default implementation would do.
77 | */
78 | @property (strong) IBOutlet NSView *view;
| `- note: property declared here
79 |
80 | /* Returns the view controller's view, or nil if the view has not been loaded.
/Users/admin/builder/spi-builder-workspace/Sources/Tray/Tray.swift:138:26: warning: main actor-isolated property 'contentViewController' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
129 | }
130 |
131 | private func togglePopover(sender: AnyObject) {
| `- note: add '@MainActor' to make instance method 'togglePopover(sender:)' part of global actor 'MainActor'
132 | if popover?.isShown == true {
133 | popover?.performClose(sender)
:
136 | popover?.show(relativeTo: menuBtn.bounds, of: menuBtn, preferredEdge: .minY)
137 | popover?.contentViewController?.view.window?.level = self.level
138 | popover?.contentViewController?.view.window?.makeKey()
| `- warning: main actor-isolated property 'contentViewController' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
139 | }
140 | }
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSPopover.h:121:56: note: property declared here
119 | /* The view controller that manages the content of the popover. The default value is nil. You must set the content view controller of the popover to a non-nil value before the popover is shown. Changes to the popover's content view controller while the popover is shown will animate (provided animates is YES).
120 | */
121 | @property(nullable, retain) IBOutlet NSViewController *contentViewController;
| `- note: property declared here
122 |
123 | /* The content size of the popover. The popover's content size is set to match the size of the content view when the content view controller is set. Changes to the content size of the popover will animate while the popover is shown (provided animates is YES).
/Users/admin/builder/spi-builder-workspace/Sources/Tray/Tray.swift:93:28: warning: sending 'content' risks causing data races; this is an error in the Swift 6 language mode
91 | @available(macOS 10.15, *)
92 | public func setView<Content: View>(content: Content, behavior: NSPopover.Behavior = .transient, level: NSWindow.Level = .floating, size: CGSize? = nil) {
93 | self.setView(view: NSHostingView(rootView: content), behavior: behavior, level: level, size: size)
| |- warning: sending 'content' risks causing data races; this is an error in the Swift 6 language mode
| `- note: sending task-isolated 'content' to main actor-isolated callee risks causing data races between main actor-isolated and task-isolated uses
94 | }
95 |
/Users/admin/builder/spi-builder-workspace/Sources/Tray/Tray.swift:133:22: warning: sending 'sender.some' risks causing data races; this is an error in the Swift 6 language mode
131 | private func togglePopover(sender: AnyObject) {
132 | if popover?.isShown == true {
133 | popover?.performClose(sender)
| |- warning: sending 'sender.some' risks causing data races; this is an error in the Swift 6 language mode
| `- note: sending task-isolated 'sender.some' to main actor-isolated instance method 'performClose' risks causing data races between main actor-isolated and task-isolated uses
134 | } else {
135 | if let menuBtn = statusItem?.button {
Build complete! (8.29s)
Build complete.
{
"dependencies" : [
],
"manifest_display_name" : "Tray",
"name" : "Tray",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
],
"products" : [
{
"name" : "Tray",
"targets" : [
"Tray"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "TrayTests",
"module_type" : "SwiftTarget",
"name" : "TrayTests",
"path" : "Tests/TrayTests",
"sources" : [
"TrayTests.swift"
],
"target_dependencies" : [
"Tray"
],
"type" : "test"
},
{
"c99name" : "Tray",
"module_type" : "SwiftTarget",
"name" : "Tray",
"path" : "Sources/Tray",
"product_memberships" : [
"Tray"
],
"sources" : [
"Tray.swift"
],
"type" : "library"
}
],
"tools_version" : "5.10"
}
Done.