Build Information
Successful build of UtilityKit, reference master (e4364f
), with Swift 6.0 for macOS (SPM) on 31 Oct 2024 23:26:35 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/Samasaur1/UtilityKit.git
Reference: master
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/Samasaur1/UtilityKit
* branch master -> FETCH_HEAD
* [new branch] master -> origin/master
HEAD is now at e4364f2 Various non-code fixes (#2)
Cloned https://github.com/Samasaur1/UtilityKit.git
Revision (git rev-parse @):
e4364f247d45bb5d103224464b9e6f8bcb6fb448
SUCCESS checkout https://github.com/Samasaur1/UtilityKit.git at master
========================================
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": "utilitykit",
"name": "UtilityKit",
"url": "https://github.com/Samasaur1/UtilityKit.git",
"version": "unspecified",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/UtilityKit",
"dependencies": [
]
}
]
}
Fetching https://github.com/Samasaur1/UtilityKit.git
[1/107] Fetching utilitykit
Fetched https://github.com/Samasaur1/UtilityKit.git from cache (0.65s)
Creating working copy for https://github.com/Samasaur1/UtilityKit.git
Working copy of https://github.com/Samasaur1/UtilityKit.git resolved at master (e4364f2)
warning: '.resolve-product-dependencies': dependency 'utilitykit' 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/Samasaur1/UtilityKit.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/8] Compiling UtilityKit UtilityKit.swift
[4/8] Emitting module UtilityKit
/Users/admin/builder/spi-builder-workspace/Sources/UtilityKit/Colors.swift:11:5: warning: 'public' modifier is redundant for initializer declared in a public extension
9 | /// - green: The green component of the color, from 0-255.
10 | /// - blue: The blue component of the color, from 0-255.
11 | public convenience init?(red: Int, green: Int, blue: Int) {
| `- warning: 'public' modifier is redundant for initializer declared in a public extension
12 | guard red >= 0 && red <= 255 else { return nil }
13 | guard green >= 0 && green <= 255 else { return nil }
/Users/admin/builder/spi-builder-workspace/Sources/UtilityKit/Colors.swift:21:5: warning: 'public' modifier is redundant for initializer declared in a public extension
19 | ///
20 | /// - Parameter hex: A hex value in the format RRGGBB.
21 | public convenience init?(_ hex: Int) {
| `- warning: 'public' modifier is redundant for initializer declared in a public extension
22 | self.init(red:(hex >> 16) & 0xff, green:(hex >> 8) & 0xff, blue:hex & 0xff)
23 | }
/Users/admin/builder/spi-builder-workspace/Sources/UtilityKit/SKButton.swift:17:16: warning: main actor-isolated property 'onClick' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
6 | public protocol SKButton {
7 | /// The closure to be called on a click.
8 | var onClick: () -> () { get set }
| `- note: 'onClick' declared here
9 | /// Called when this node is clicked. Should simply call the closure stored in `onClick`.
10 | ///
:
14 |
15 | /// An SKSpriteNode that makes clicks easier to handle.
16 | open class SKSpriteButton: SKSpriteNode, SKButton {
| `- note: add '@preconcurrency' to the 'SKButton' conformance to defer isolation checking to run time
17 | public var onClick: () -> ()
| `- warning: main actor-isolated property 'onClick' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
18 | /// Called whenever this node is clicked. Simply calls the closure stored in `onClick`.
19 | ///
/Users/admin/builder/spi-builder-workspace/Sources/UtilityKit/SKButton.swift:21:24: warning: main actor-isolated instance method 'mouseDown(with:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
10 | ///
11 | /// - Parameter event: An object encapsulating information about the mouse-down event.
12 | func mouseDown(with event: NSEvent)
| `- note: mark the protocol requirement 'mouseDown(with:)' 'async' to allow actor-isolated conformances
13 | }
14 |
:
19 | ///
20 | /// - Parameter event: An object encapsulating information about the mouse-down event.
21 | open override func mouseDown(with event: NSEvent) {
| |- warning: main actor-isolated instance method 'mouseDown(with:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'mouseDown(with:)' to make this instance method not isolated to the actor
22 | onClick()
23 | }
/Users/admin/builder/spi-builder-workspace/Sources/UtilityKit/SKButton.swift:75:16: warning: main actor-isolated property 'onClick' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
6 | public protocol SKButton {
7 | /// The closure to be called on a click.
8 | var onClick: () -> () { get set }
| `- note: 'onClick' declared here
9 | /// Called when this node is clicked. Should simply call the closure stored in `onClick`.
10 | ///
:
72 |
73 | /// An SKShapeNode that makes clicks easier to handle.
74 | open class SKShapeButton: SKShapeNode, SKButton {
| `- note: add '@preconcurrency' to the 'SKButton' conformance to defer isolation checking to run time
75 | public var onClick: () -> ()
| `- warning: main actor-isolated property 'onClick' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
76 | /// Called whenever this node is clicked. Simply calls the closure stored in `onClick`.
77 | ///
/Users/admin/builder/spi-builder-workspace/Sources/UtilityKit/SKButton.swift:79:24: warning: main actor-isolated instance method 'mouseDown(with:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
10 | ///
11 | /// - Parameter event: An object encapsulating information about the mouse-down event.
12 | func mouseDown(with event: NSEvent)
| `- note: mark the protocol requirement 'mouseDown(with:)' 'async' to allow actor-isolated conformances
13 | }
14 |
:
77 | ///
78 | /// - Parameter event: An object encapsulating information about the mouse-down event.
79 | open override func mouseDown(with event: NSEvent) {
| |- warning: main actor-isolated instance method 'mouseDown(with:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'mouseDown(with:)' to make this instance method not isolated to the actor
80 | onClick()
81 | }
[5/8] Compiling UtilityKit Colors.swift
/Users/admin/builder/spi-builder-workspace/Sources/UtilityKit/Colors.swift:11:5: warning: 'public' modifier is redundant for initializer declared in a public extension
9 | /// - green: The green component of the color, from 0-255.
10 | /// - blue: The blue component of the color, from 0-255.
11 | public convenience init?(red: Int, green: Int, blue: Int) {
| `- warning: 'public' modifier is redundant for initializer declared in a public extension
12 | guard red >= 0 && red <= 255 else { return nil }
13 | guard green >= 0 && green <= 255 else { return nil }
/Users/admin/builder/spi-builder-workspace/Sources/UtilityKit/Colors.swift:21:5: warning: 'public' modifier is redundant for initializer declared in a public extension
19 | ///
20 | /// - Parameter hex: A hex value in the format RRGGBB.
21 | public convenience init?(_ hex: Int) {
| `- warning: 'public' modifier is redundant for initializer declared in a public extension
22 | self.init(red:(hex >> 16) & 0xff, green:(hex >> 8) & 0xff, blue:hex & 0xff)
23 | }
[6/8] Compiling UtilityKit ActionQueueManager.swift
/Users/admin/builder/spi-builder-workspace/Sources/UtilityKit/ActionQueueManager.swift:49:18: warning: call to main actor-isolated instance method 'run(_:completion:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
43 |
44 | /// A method called every time the node finishes running an action. This method is only called if the ActionQueueManager was used to start the action.
45 | private func actionCompleted() {
| `- note: add '@MainActor' to make instance method 'actionCompleted()' part of global actor 'MainActor'
46 | isRunning = false
47 | queue.remove(at: 0)
48 | if !queue.isEmpty {
49 | node.run(queue[0], completion: self.actionCompleted)
| `- warning: call to main actor-isolated instance method 'run(_:completion:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
50 | isRunning = true
51 | }
SpriteKit.SKNode:83:26: note: calls to instance method 'run(_:completion:)' from outside of its actor context are implicitly asynchronous
81 | @available(swift, obsoleted: 3, renamed: "run(_:)")
82 | open func runAction(_ action: SKAction)
83 | @MainActor open func run(_ action: SKAction, completion block: @escaping () -> Void)
| `- note: calls to instance method 'run(_:completion:)' from outside of its actor context are implicitly asynchronous
84 | open func run(_ action: SKAction) async
85 | @available(swift, obsoleted: 3, renamed: "run(_:completion:)")
/Users/admin/builder/spi-builder-workspace/Sources/UtilityKit/ActionQueueManager.swift:49:18: warning: sending task-isolated value of type 'SKAction' with later accesses to main actor-isolated context risks causing data races; this is an error in the Swift 6 language mode
47 | queue.remove(at: 0)
48 | if !queue.isEmpty {
49 | node.run(queue[0], completion: self.actionCompleted)
| `- warning: sending task-isolated value of type 'SKAction' with later accesses to main actor-isolated context risks causing data races; this is an error in the Swift 6 language mode
50 | isRunning = true
51 | }
/Users/admin/builder/spi-builder-workspace/Sources/UtilityKit/ActionQueueManager.swift:49:18: warning: sending task-isolated value of type '() -> ()' with later accesses to main actor-isolated context risks causing data races; this is an error in the Swift 6 language mode
47 | queue.remove(at: 0)
48 | if !queue.isEmpty {
49 | node.run(queue[0], completion: self.actionCompleted)
| `- warning: sending task-isolated value of type '() -> ()' with later accesses to main actor-isolated context risks causing data races; this is an error in the Swift 6 language mode
50 | isRunning = true
51 | }
[7/8] Compiling UtilityKit SKButton.swift
/Users/admin/builder/spi-builder-workspace/Sources/UtilityKit/SKButton.swift:17:16: warning: main actor-isolated property 'onClick' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
6 | public protocol SKButton {
7 | /// The closure to be called on a click.
8 | var onClick: () -> () { get set }
| `- note: 'onClick' declared here
9 | /// Called when this node is clicked. Should simply call the closure stored in `onClick`.
10 | ///
:
14 |
15 | /// An SKSpriteNode that makes clicks easier to handle.
16 | open class SKSpriteButton: SKSpriteNode, SKButton {
| `- note: add '@preconcurrency' to the 'SKButton' conformance to defer isolation checking to run time
17 | public var onClick: () -> ()
| `- warning: main actor-isolated property 'onClick' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
18 | /// Called whenever this node is clicked. Simply calls the closure stored in `onClick`.
19 | ///
/Users/admin/builder/spi-builder-workspace/Sources/UtilityKit/SKButton.swift:21:24: warning: main actor-isolated instance method 'mouseDown(with:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
10 | ///
11 | /// - Parameter event: An object encapsulating information about the mouse-down event.
12 | func mouseDown(with event: NSEvent)
| `- note: mark the protocol requirement 'mouseDown(with:)' 'async' to allow actor-isolated conformances
13 | }
14 |
:
19 | ///
20 | /// - Parameter event: An object encapsulating information about the mouse-down event.
21 | open override func mouseDown(with event: NSEvent) {
| |- warning: main actor-isolated instance method 'mouseDown(with:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'mouseDown(with:)' to make this instance method not isolated to the actor
22 | onClick()
23 | }
/Users/admin/builder/spi-builder-workspace/Sources/UtilityKit/SKButton.swift:75:16: warning: main actor-isolated property 'onClick' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
6 | public protocol SKButton {
7 | /// The closure to be called on a click.
8 | var onClick: () -> () { get set }
| `- note: 'onClick' declared here
9 | /// Called when this node is clicked. Should simply call the closure stored in `onClick`.
10 | ///
:
72 |
73 | /// An SKShapeNode that makes clicks easier to handle.
74 | open class SKShapeButton: SKShapeNode, SKButton {
| `- note: add '@preconcurrency' to the 'SKButton' conformance to defer isolation checking to run time
75 | public var onClick: () -> ()
| `- warning: main actor-isolated property 'onClick' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
76 | /// Called whenever this node is clicked. Simply calls the closure stored in `onClick`.
77 | ///
/Users/admin/builder/spi-builder-workspace/Sources/UtilityKit/SKButton.swift:79:24: warning: main actor-isolated instance method 'mouseDown(with:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
10 | ///
11 | /// - Parameter event: An object encapsulating information about the mouse-down event.
12 | func mouseDown(with event: NSEvent)
| `- note: mark the protocol requirement 'mouseDown(with:)' 'async' to allow actor-isolated conformances
13 | }
14 |
:
77 | ///
78 | /// - Parameter event: An object encapsulating information about the mouse-down event.
79 | open override func mouseDown(with event: NSEvent) {
| |- warning: main actor-isolated instance method 'mouseDown(with:)' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
| `- note: add 'nonisolated' to 'mouseDown(with:)' to make this instance method not isolated to the actor
80 | onClick()
81 | }
[8/8] Compiling UtilityKit CGOperators.swift
Build complete! (10.28s)
Build complete.
{
"dependencies" : [
],
"manifest_display_name" : "UtilityKit",
"name" : "UtilityKit",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
],
"products" : [
{
"name" : "UtilityKit",
"targets" : [
"UtilityKit"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "UtilityKitTests",
"module_type" : "SwiftTarget",
"name" : "UtilityKitTests",
"path" : "Tests/UtilityKitTests",
"sources" : [
"UtilityKitTests.swift",
"XCTestManifests.swift"
],
"target_dependencies" : [
"UtilityKit"
],
"type" : "test"
},
{
"c99name" : "UtilityKit",
"module_type" : "SwiftTarget",
"name" : "UtilityKit",
"path" : "Sources/UtilityKit",
"product_memberships" : [
"UtilityKit"
],
"sources" : [
"ActionQueueManager.swift",
"CGOperators.swift",
"Colors.swift",
"SKButton.swift",
"UtilityKit.swift"
],
"type" : "library"
}
],
"tools_version" : "4.0"
}
Done.