Build Information
Failed to build OctopusKit, reference 4.0.0-beta.5 (3c7aeb
), with Swift 6.0 for macOS (SPM) on 29 Nov 2024 21:04:45 UTC.
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 -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
| |- note: annotate 'printEmptyLineBetweenEntries' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
38 |
39 | /// If `true` then an empty line is printed between entries with different frame counts (e.g. F0 and F1).
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/Logging/OKLog.swift:68:23: warning: static property 'lastFrameLogged' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
66 |
67 | /// Stores the frame number during the most recent log entry, so we can mark the beginning of a new frame to make logs easier to read.
68 | public static var lastFrameLogged: UInt64 = 0 // Not fileprivate(set) so functions can be @inlinable
| |- warning: static property 'lastFrameLogged' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'lastFrameLogged' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'lastFrameLogged' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
69 |
70 | /// Returns the `currentFrameNumber` of `OctopusKit.shared.currentScene`, if available, otherwise `0`.
SpriteKit.SKNode:36:14: warning: main actor-isolated property 'name' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
34 | open var parent: SKNode? { get }
35 | open var children: [SKNode] { get }
36 | open var name: String? { get set }
| `- warning: main actor-isolated property 'name' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
37 | open var scene: SKScene? { get }
38 | open var physicsBody: SKPhysicsBody? { get set }
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/Protocols/Nameable.swift:18:24: note: add '@preconcurrency' to the 'Nameable' conformance to defer isolation checking to run time
12 | /// A protocol for types that have a `name` property.
13 | public protocol Nameable {
14 | var name: String? { get }
| `- note: 'name' declared here
15 | }
16 |
17 | extension OKEntity: Nameable {}
18 | extension SKNode: Nameable {}
| `- note: add '@preconcurrency' to the 'Nameable' conformance to defer isolation checking to run time
19 | extension SKTileGroup: Nameable {}
20 |
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/SwiftUI/OKViewControllerRepresentable.swift:111:40: warning: call to main actor-isolated initializer 'init(gameCoordinator:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
109 |
110 | init(gameCoordinator: OKGameCoordinator) {
111 | self.viewController = try! OKViewControllerTypeForCoordinator(gameCoordinator: gameCoordinator)
| `- warning: call to main actor-isolated initializer 'init(gameCoordinator:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
112 | super.init()
113 | }
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Core/Launch/OKViewController.swift:64:21: note: calls to initializer 'init(gameCoordinator:)' from outside of its actor context are implicitly asynchronous
62 | // MARK: - Life Cycle
63 |
64 | public required init(gameCoordinator: OKGameCoordinator? = nil) throws {
| `- note: calls to initializer 'init(gameCoordinator:)' from outside of its actor context are implicitly asynchronous
65 |
66 | // To support easy SwiftUI usage...
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/SwiftUI/OKViewControllerRepresentable.swift:111:40: warning: sending 'gameCoordinator.some' risks causing data races; this is an error in the Swift 6 language mode
109 |
110 | init(gameCoordinator: OKGameCoordinator) {
111 | self.viewController = try! OKViewControllerTypeForCoordinator(gameCoordinator: gameCoordinator)
| |- warning: sending 'gameCoordinator.some' risks causing data races; this is an error in the Swift 6 language mode
| `- note: sending task-isolated 'gameCoordinator.some' to main actor-isolated initializer 'init(gameCoordinator:)' risks causing data races between main actor-isolated and task-isolated uses
112 | super.init()
113 | }
[255/263] Compiling OctopusKit Pseudocomponent.swift
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Core/Launch/OctopusKit+Logs.swift:25:16: warning: static property 'logForResources' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
23 |
24 | /// A log for operations that involve loading, downloading, caching and writing game assets and related resources.
25 | static var logForResources = OKLog(title: "Resources", prefix: "📦", suffix: "📦")
| |- warning: static property 'logForResources' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'logForResources' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'logForResources' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
26 |
27 | /// A log for the cycle of turn updates in a turn-based game.
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Core/Launch/OctopusKit+Logs.swift:42:16: warning: static property 'logForDebug' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
40 |
41 | /// A log for verbose debugging information.
42 | static var logForDebug = OKLog(title: "Debugging", prefix: "🐞")
| |- warning: static property 'logForDebug' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'logForDebug' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'logForDebug' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
43 |
44 | /// A log for developer tips to assist with fixing warnings and errors.
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Core/Launch/OctopusKit+Logs.swift:16:16: warning: static property 'logForFramework' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 |
15 | /// A log for core or general engine events.
16 | static var logForFramework = OKLog(title: "Framework", prefix: "⚙️")
| |- warning: static property 'logForFramework' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'logForFramework' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'logForFramework' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |
18 | /// A log for transitions within game states and entity states.
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OKUtility+Graphics.swift:24:51: warning: main actor-isolated property 'particleBirthRate' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
22 | // CREDIT: Apple Adventure Sample
23 | let waitAction = SKAction.wait(forDuration: TimeInterval(duration))
24 | let birthRateSet = SKAction.run { emitter.particleBirthRate = 0.0 }
| `- warning: main actor-isolated property 'particleBirthRate' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
25 | let waitAction2 = SKAction.wait(forDuration: TimeInterval(emitter.particleLifetime + emitter.particleLifetimeRange))
26 | let removeAction = SKAction.removeFromParent()
SpriteKit.SKEmitterNode:28:25: note: mutation of this property is only permitted within the actor
26 | open var xAcceleration: CGFloat { get set }
27 | open var yAcceleration: CGFloat { get set }
28 | @MainActor open var particleBirthRate: CGFloat { get set }
| `- note: mutation of this property is only permitted within the actor
29 | open var numParticlesToEmit: Int { get set }
30 | open var particleLifetime: CGFloat { get set }
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OKUtility+Graphics.swift:25:75: warning: main actor-isolated property 'particleLifetime' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
19 | }
20 |
21 | public static func runOneShotEmitter(emitter: SKEmitterNode, withDuration duration: CGFloat) {
| `- note: add '@MainActor' to make static method 'runOneShotEmitter(emitter:withDuration:)' part of global actor 'MainActor'
22 | // CREDIT: Apple Adventure Sample
23 | let waitAction = SKAction.wait(forDuration: TimeInterval(duration))
24 | let birthRateSet = SKAction.run { emitter.particleBirthRate = 0.0 }
25 | let waitAction2 = SKAction.wait(forDuration: TimeInterval(emitter.particleLifetime + emitter.particleLifetimeRange))
| `- warning: main actor-isolated property 'particleLifetime' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
26 | let removeAction = SKAction.removeFromParent()
27 |
SpriteKit.SKEmitterNode:30:14: note: property declared here
28 | @MainActor open var particleBirthRate: CGFloat { get set }
29 | open var numParticlesToEmit: Int { get set }
30 | open var particleLifetime: CGFloat { get set }
| `- note: property declared here
31 | open var particleLifetimeRange: CGFloat { get set }
32 | open var particleRotation: CGFloat { get set }
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OKUtility+Graphics.swift:25:102: warning: main actor-isolated property 'particleLifetimeRange' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
19 | }
20 |
21 | public static func runOneShotEmitter(emitter: SKEmitterNode, withDuration duration: CGFloat) {
| `- note: add '@MainActor' to make static method 'runOneShotEmitter(emitter:withDuration:)' part of global actor 'MainActor'
22 | // CREDIT: Apple Adventure Sample
23 | let waitAction = SKAction.wait(forDuration: TimeInterval(duration))
24 | let birthRateSet = SKAction.run { emitter.particleBirthRate = 0.0 }
25 | let waitAction2 = SKAction.wait(forDuration: TimeInterval(emitter.particleLifetime + emitter.particleLifetimeRange))
| `- warning: main actor-isolated property 'particleLifetimeRange' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
26 | let removeAction = SKAction.removeFromParent()
27 |
SpriteKit.SKEmitterNode:31:14: note: property declared here
29 | open var numParticlesToEmit: Int { get set }
30 | open var particleLifetime: CGFloat { get set }
31 | open var particleLifetimeRange: CGFloat { get set }
| `- note: property declared here
32 | open var particleRotation: CGFloat { get set }
33 | open var particleRotationRange: CGFloat { get set }
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OKUtility+Graphics.swift:29:17: warning: call to main actor-isolated instance method 'run' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
19 | }
20 |
21 | public static func runOneShotEmitter(emitter: SKEmitterNode, withDuration duration: CGFloat) {
| `- note: add '@MainActor' to make static method 'runOneShotEmitter(emitter:withDuration:)' part of global actor 'MainActor'
22 | // CREDIT: Apple Adventure Sample
23 | let waitAction = SKAction.wait(forDuration: TimeInterval(duration))
:
27 |
28 | let sequence = [waitAction, birthRateSet, waitAction2, removeAction] // Correction: var changed to let
29 | emitter.run(SKAction.sequence(sequence))
| `- warning: call to main actor-isolated instance method 'run' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
30 | }
31 |
SpriteKit.SKNode:80:26: note: calls to instance method 'run' from outside of its actor context are implicitly asynchronous
78 | open func objectForKeyedSubscript(_ name: String) -> [SKNode]
79 | open func inParentHierarchy(_ parent: SKNode) -> Bool
80 | @MainActor open func run(_ action: SKAction)
| `- note: calls to instance method 'run' from outside of its actor context are implicitly asynchronous
81 | @available(swift, obsoleted: 3, renamed: "run(_:)")
82 | open func runAction(_ action: SKAction)
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OctopusKit+Caches.swift:18:16: warning: static property 'textureAtlases' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
16 | // MARK: - Graphics
17 |
18 | static var textureAtlases: OKCache<String, SKTextureAtlas> = {
| |- warning: static property 'textureAtlases' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'textureAtlases' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'textureAtlases' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
19 |
20 | let cache = OKCache<String, SKTextureAtlas> { key in
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OctopusKit+Caches.swift:30:16: warning: static property 'textures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
28 | }()
29 |
30 | static var textures: OKCache<String, SKTexture> = {
| |- warning: static property 'textures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'textures' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'textures' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
31 |
32 | let cache = OKCache<String, SKTexture> { key in
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OctopusKit+Caches.swift:42:16: warning: static property 'shaders' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
40 | }()
41 |
42 | static var shaders: OKCache<String, SKShader> = {
| |- warning: static property 'shaders' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'shaders' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'shaders' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
43 |
44 | let cache = OKCache<String, SKShader> { key in
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/Logging/OKLog.swift:48:23: warning: static property 'printAsCSV' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
46 | ///
47 | /// See the `OKEntry.csv` property for a list of the values i.e. columns.
48 | public static var printAsCSV: Bool = false
| |- warning: static property 'printAsCSV' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'printAsCSV' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'printAsCSV' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
49 |
50 | /// The separator to print between values when `printAsCSV` is `true`. Default: `tab`
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/Logging/OKLog.swift:51:23: warning: static property 'csvDelimiter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
49 |
50 | /// The separator to print between values when `printAsCSV` is `true`. Default: `tab`
51 | public static var csvDelimiter: String = "\t"
| |- warning: static property 'csvDelimiter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'csvDelimiter' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'csvDelimiter' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
52 |
53 | // MARK: Padding
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/Logging/OKLog.swift:43:23: warning: static property 'printTextOnSecondLine' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
41 |
42 | /// If `true` then an entry is printed on at least 2 lines in the debug console, where the time and calling file is on the first line and the text is on the second line.
43 | public static var printTextOnSecondLine: Bool = false
| |- warning: static property 'printTextOnSecondLine' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'printTextOnSecondLine' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'printTextOnSecondLine' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
44 |
45 | /// If `true` then debug console output is printed in CSV format, that may then be copied into a spreadsheet table such as Numbers etc.
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/Logging/OKLog.swift:37:23: warning: static property 'printEmptyLineBetweenEntries' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
35 |
36 | /// If `true` then an empty line is printed between each entry in the debug console.
37 | public static var printEmptyLineBetweenEntries: Bool = false
| |- warning: static property 'printEmptyLineBetweenEntries' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'printEmptyLineBetweenEntries' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'printEmptyLineBetweenEntries' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
38 |
39 | /// If `true` then an empty line is printed between entries with different frame counts (e.g. F0 and F1).
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/Logging/OKLog.swift:68:23: warning: static property 'lastFrameLogged' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
66 |
67 | /// Stores the frame number during the most recent log entry, so we can mark the beginning of a new frame to make logs easier to read.
68 | public static var lastFrameLogged: UInt64 = 0 // Not fileprivate(set) so functions can be @inlinable
| |- warning: static property 'lastFrameLogged' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'lastFrameLogged' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'lastFrameLogged' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
69 |
70 | /// Returns the `currentFrameNumber` of `OctopusKit.shared.currentScene`, if available, otherwise `0`.
SpriteKit.SKNode:36:14: warning: main actor-isolated property 'name' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
34 | open var parent: SKNode? { get }
35 | open var children: [SKNode] { get }
36 | open var name: String? { get set }
| `- warning: main actor-isolated property 'name' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
37 | open var scene: SKScene? { get }
38 | open var physicsBody: SKPhysicsBody? { get set }
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/Protocols/Nameable.swift:18:24: note: add '@preconcurrency' to the 'Nameable' conformance to defer isolation checking to run time
12 | /// A protocol for types that have a `name` property.
13 | public protocol Nameable {
14 | var name: String? { get }
| `- note: 'name' declared here
15 | }
16 |
17 | extension OKEntity: Nameable {}
18 | extension SKNode: Nameable {}
| `- note: add '@preconcurrency' to the 'Nameable' conformance to defer isolation checking to run time
19 | extension SKTileGroup: Nameable {}
20 |
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/SwiftUI/OKViewControllerRepresentable.swift:111:40: warning: call to main actor-isolated initializer 'init(gameCoordinator:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
109 |
110 | init(gameCoordinator: OKGameCoordinator) {
111 | self.viewController = try! OKViewControllerTypeForCoordinator(gameCoordinator: gameCoordinator)
| `- warning: call to main actor-isolated initializer 'init(gameCoordinator:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
112 | super.init()
113 | }
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Core/Launch/OKViewController.swift:64:21: note: calls to initializer 'init(gameCoordinator:)' from outside of its actor context are implicitly asynchronous
62 | // MARK: - Life Cycle
63 |
64 | public required init(gameCoordinator: OKGameCoordinator? = nil) throws {
| `- note: calls to initializer 'init(gameCoordinator:)' from outside of its actor context are implicitly asynchronous
65 |
66 | // To support easy SwiftUI usage...
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/SwiftUI/OKViewControllerRepresentable.swift:111:40: warning: sending 'gameCoordinator.some' risks causing data races; this is an error in the Swift 6 language mode
109 |
110 | init(gameCoordinator: OKGameCoordinator) {
111 | self.viewController = try! OKViewControllerTypeForCoordinator(gameCoordinator: gameCoordinator)
| |- warning: sending 'gameCoordinator.some' risks causing data races; this is an error in the Swift 6 language mode
| `- note: sending task-isolated 'gameCoordinator.some' to main actor-isolated initializer 'init(gameCoordinator:)' risks causing data races between main actor-isolated and task-isolated uses
112 | super.init()
113 | }
[256/263] Compiling OctopusKit RequiresUpdatesPerFrame.swift
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Core/Launch/OctopusKit+Logs.swift:25:16: warning: static property 'logForResources' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
23 |
24 | /// A log for operations that involve loading, downloading, caching and writing game assets and related resources.
25 | static var logForResources = OKLog(title: "Resources", prefix: "📦", suffix: "📦")
| |- warning: static property 'logForResources' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'logForResources' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'logForResources' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
26 |
27 | /// A log for the cycle of turn updates in a turn-based game.
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Core/Launch/OctopusKit+Logs.swift:42:16: warning: static property 'logForDebug' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
40 |
41 | /// A log for verbose debugging information.
42 | static var logForDebug = OKLog(title: "Debugging", prefix: "🐞")
| |- warning: static property 'logForDebug' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'logForDebug' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'logForDebug' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
43 |
44 | /// A log for developer tips to assist with fixing warnings and errors.
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Core/Launch/OctopusKit+Logs.swift:16:16: warning: static property 'logForFramework' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 |
15 | /// A log for core or general engine events.
16 | static var logForFramework = OKLog(title: "Framework", prefix: "⚙️")
| |- warning: static property 'logForFramework' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'logForFramework' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'logForFramework' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |
18 | /// A log for transitions within game states and entity states.
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OKUtility+Graphics.swift:24:51: warning: main actor-isolated property 'particleBirthRate' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
22 | // CREDIT: Apple Adventure Sample
23 | let waitAction = SKAction.wait(forDuration: TimeInterval(duration))
24 | let birthRateSet = SKAction.run { emitter.particleBirthRate = 0.0 }
| `- warning: main actor-isolated property 'particleBirthRate' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
25 | let waitAction2 = SKAction.wait(forDuration: TimeInterval(emitter.particleLifetime + emitter.particleLifetimeRange))
26 | let removeAction = SKAction.removeFromParent()
SpriteKit.SKEmitterNode:28:25: note: mutation of this property is only permitted within the actor
26 | open var xAcceleration: CGFloat { get set }
27 | open var yAcceleration: CGFloat { get set }
28 | @MainActor open var particleBirthRate: CGFloat { get set }
| `- note: mutation of this property is only permitted within the actor
29 | open var numParticlesToEmit: Int { get set }
30 | open var particleLifetime: CGFloat { get set }
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OKUtility+Graphics.swift:25:75: warning: main actor-isolated property 'particleLifetime' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
19 | }
20 |
21 | public static func runOneShotEmitter(emitter: SKEmitterNode, withDuration duration: CGFloat) {
| `- note: add '@MainActor' to make static method 'runOneShotEmitter(emitter:withDuration:)' part of global actor 'MainActor'
22 | // CREDIT: Apple Adventure Sample
23 | let waitAction = SKAction.wait(forDuration: TimeInterval(duration))
24 | let birthRateSet = SKAction.run { emitter.particleBirthRate = 0.0 }
25 | let waitAction2 = SKAction.wait(forDuration: TimeInterval(emitter.particleLifetime + emitter.particleLifetimeRange))
| `- warning: main actor-isolated property 'particleLifetime' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
26 | let removeAction = SKAction.removeFromParent()
27 |
SpriteKit.SKEmitterNode:30:14: note: property declared here
28 | @MainActor open var particleBirthRate: CGFloat { get set }
29 | open var numParticlesToEmit: Int { get set }
30 | open var particleLifetime: CGFloat { get set }
| `- note: property declared here
31 | open var particleLifetimeRange: CGFloat { get set }
32 | open var particleRotation: CGFloat { get set }
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OKUtility+Graphics.swift:25:102: warning: main actor-isolated property 'particleLifetimeRange' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
19 | }
20 |
21 | public static func runOneShotEmitter(emitter: SKEmitterNode, withDuration duration: CGFloat) {
| `- note: add '@MainActor' to make static method 'runOneShotEmitter(emitter:withDuration:)' part of global actor 'MainActor'
22 | // CREDIT: Apple Adventure Sample
23 | let waitAction = SKAction.wait(forDuration: TimeInterval(duration))
24 | let birthRateSet = SKAction.run { emitter.particleBirthRate = 0.0 }
25 | let waitAction2 = SKAction.wait(forDuration: TimeInterval(emitter.particleLifetime + emitter.particleLifetimeRange))
| `- warning: main actor-isolated property 'particleLifetimeRange' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
26 | let removeAction = SKAction.removeFromParent()
27 |
SpriteKit.SKEmitterNode:31:14: note: property declared here
29 | open var numParticlesToEmit: Int { get set }
30 | open var particleLifetime: CGFloat { get set }
31 | open var particleLifetimeRange: CGFloat { get set }
| `- note: property declared here
32 | open var particleRotation: CGFloat { get set }
33 | open var particleRotationRange: CGFloat { get set }
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OKUtility+Graphics.swift:29:17: warning: call to main actor-isolated instance method 'run' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
19 | }
20 |
21 | public static func runOneShotEmitter(emitter: SKEmitterNode, withDuration duration: CGFloat) {
| `- note: add '@MainActor' to make static method 'runOneShotEmitter(emitter:withDuration:)' part of global actor 'MainActor'
22 | // CREDIT: Apple Adventure Sample
23 | let waitAction = SKAction.wait(forDuration: TimeInterval(duration))
:
27 |
28 | let sequence = [waitAction, birthRateSet, waitAction2, removeAction] // Correction: var changed to let
29 | emitter.run(SKAction.sequence(sequence))
| `- warning: call to main actor-isolated instance method 'run' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
30 | }
31 |
SpriteKit.SKNode:80:26: note: calls to instance method 'run' from outside of its actor context are implicitly asynchronous
78 | open func objectForKeyedSubscript(_ name: String) -> [SKNode]
79 | open func inParentHierarchy(_ parent: SKNode) -> Bool
80 | @MainActor open func run(_ action: SKAction)
| `- note: calls to instance method 'run' from outside of its actor context are implicitly asynchronous
81 | @available(swift, obsoleted: 3, renamed: "run(_:)")
82 | open func runAction(_ action: SKAction)
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OctopusKit+Caches.swift:18:16: warning: static property 'textureAtlases' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
16 | // MARK: - Graphics
17 |
18 | static var textureAtlases: OKCache<String, SKTextureAtlas> = {
| |- warning: static property 'textureAtlases' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'textureAtlases' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'textureAtlases' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
19 |
20 | let cache = OKCache<String, SKTextureAtlas> { key in
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OctopusKit+Caches.swift:30:16: warning: static property 'textures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
28 | }()
29 |
30 | static var textures: OKCache<String, SKTexture> = {
| |- warning: static property 'textures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'textures' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'textures' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
31 |
32 | let cache = OKCache<String, SKTexture> { key in
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OctopusKit+Caches.swift:42:16: warning: static property 'shaders' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
40 | }()
41 |
42 | static var shaders: OKCache<String, SKShader> = {
| |- warning: static property 'shaders' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'shaders' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'shaders' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
43 |
44 | let cache = OKCache<String, SKShader> { key in
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/Logging/OKLog.swift:48:23: warning: static property 'printAsCSV' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
46 | ///
47 | /// See the `OKEntry.csv` property for a list of the values i.e. columns.
48 | public static var printAsCSV: Bool = false
| |- warning: static property 'printAsCSV' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'printAsCSV' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'printAsCSV' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
49 |
50 | /// The separator to print between values when `printAsCSV` is `true`. Default: `tab`
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/Logging/OKLog.swift:51:23: warning: static property 'csvDelimiter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
49 |
50 | /// The separator to print between values when `printAsCSV` is `true`. Default: `tab`
51 | public static var csvDelimiter: String = "\t"
| |- warning: static property 'csvDelimiter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'csvDelimiter' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'csvDelimiter' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
52 |
53 | // MARK: Padding
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/Logging/OKLog.swift:43:23: warning: static property 'printTextOnSecondLine' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
41 |
42 | /// If `true` then an entry is printed on at least 2 lines in the debug console, where the time and calling file is on the first line and the text is on the second line.
43 | public static var printTextOnSecondLine: Bool = false
| |- warning: static property 'printTextOnSecondLine' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'printTextOnSecondLine' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'printTextOnSecondLine' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
44 |
45 | /// If `true` then debug console output is printed in CSV format, that may then be copied into a spreadsheet table such as Numbers etc.
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/Logging/OKLog.swift:37:23: warning: static property 'printEmptyLineBetweenEntries' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
35 |
36 | /// If `true` then an empty line is printed between each entry in the debug console.
37 | public static var printEmptyLineBetweenEntries: Bool = false
| |- warning: static property 'printEmptyLineBetweenEntries' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'printEmptyLineBetweenEntries' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'printEmptyLineBetweenEntries' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
38 |
39 | /// If `true` then an empty line is printed between entries with different frame counts (e.g. F0 and F1).
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/Logging/OKLog.swift:68:23: warning: static property 'lastFrameLogged' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
66 |
67 | /// Stores the frame number during the most recent log entry, so we can mark the beginning of a new frame to make logs easier to read.
68 | public static var lastFrameLogged: UInt64 = 0 // Not fileprivate(set) so functions can be @inlinable
| |- warning: static property 'lastFrameLogged' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'lastFrameLogged' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'lastFrameLogged' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
69 |
70 | /// Returns the `currentFrameNumber` of `OctopusKit.shared.currentScene`, if available, otherwise `0`.
SpriteKit.SKNode:36:14: warning: main actor-isolated property 'name' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
34 | open var parent: SKNode? { get }
35 | open var children: [SKNode] { get }
36 | open var name: String? { get set }
| `- warning: main actor-isolated property 'name' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
37 | open var scene: SKScene? { get }
38 | open var physicsBody: SKPhysicsBody? { get set }
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/Protocols/Nameable.swift:18:24: note: add '@preconcurrency' to the 'Nameable' conformance to defer isolation checking to run time
12 | /// A protocol for types that have a `name` property.
13 | public protocol Nameable {
14 | var name: String? { get }
| `- note: 'name' declared here
15 | }
16 |
17 | extension OKEntity: Nameable {}
18 | extension SKNode: Nameable {}
| `- note: add '@preconcurrency' to the 'Nameable' conformance to defer isolation checking to run time
19 | extension SKTileGroup: Nameable {}
20 |
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/SwiftUI/OKViewControllerRepresentable.swift:111:40: warning: call to main actor-isolated initializer 'init(gameCoordinator:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
109 |
110 | init(gameCoordinator: OKGameCoordinator) {
111 | self.viewController = try! OKViewControllerTypeForCoordinator(gameCoordinator: gameCoordinator)
| `- warning: call to main actor-isolated initializer 'init(gameCoordinator:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
112 | super.init()
113 | }
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Core/Launch/OKViewController.swift:64:21: note: calls to initializer 'init(gameCoordinator:)' from outside of its actor context are implicitly asynchronous
62 | // MARK: - Life Cycle
63 |
64 | public required init(gameCoordinator: OKGameCoordinator? = nil) throws {
| `- note: calls to initializer 'init(gameCoordinator:)' from outside of its actor context are implicitly asynchronous
65 |
66 | // To support easy SwiftUI usage...
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/SwiftUI/OKViewControllerRepresentable.swift:111:40: warning: sending 'gameCoordinator.some' risks causing data races; this is an error in the Swift 6 language mode
109 |
110 | init(gameCoordinator: OKGameCoordinator) {
111 | self.viewController = try! OKViewControllerTypeForCoordinator(gameCoordinator: gameCoordinator)
| |- warning: sending 'gameCoordinator.some' risks causing data races; this is an error in the Swift 6 language mode
| `- note: sending task-isolated 'gameCoordinator.some' to main actor-isolated initializer 'init(gameCoordinator:)' risks causing data races between main actor-isolated and task-isolated uses
112 | super.init()
113 | }
[257/263] Compiling OctopusKit TurnBased.swift
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Core/Launch/OctopusKit+Logs.swift:25:16: warning: static property 'logForResources' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
23 |
24 | /// A log for operations that involve loading, downloading, caching and writing game assets and related resources.
25 | static var logForResources = OKLog(title: "Resources", prefix: "📦", suffix: "📦")
| |- warning: static property 'logForResources' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'logForResources' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'logForResources' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
26 |
27 | /// A log for the cycle of turn updates in a turn-based game.
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Core/Launch/OctopusKit+Logs.swift:42:16: warning: static property 'logForDebug' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
40 |
41 | /// A log for verbose debugging information.
42 | static var logForDebug = OKLog(title: "Debugging", prefix: "🐞")
| |- warning: static property 'logForDebug' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'logForDebug' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'logForDebug' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
43 |
44 | /// A log for developer tips to assist with fixing warnings and errors.
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Core/Launch/OctopusKit+Logs.swift:16:16: warning: static property 'logForFramework' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 |
15 | /// A log for core or general engine events.
16 | static var logForFramework = OKLog(title: "Framework", prefix: "⚙️")
| |- warning: static property 'logForFramework' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'logForFramework' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'logForFramework' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |
18 | /// A log for transitions within game states and entity states.
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OKUtility+Graphics.swift:24:51: warning: main actor-isolated property 'particleBirthRate' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
22 | // CREDIT: Apple Adventure Sample
23 | let waitAction = SKAction.wait(forDuration: TimeInterval(duration))
24 | let birthRateSet = SKAction.run { emitter.particleBirthRate = 0.0 }
| `- warning: main actor-isolated property 'particleBirthRate' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
25 | let waitAction2 = SKAction.wait(forDuration: TimeInterval(emitter.particleLifetime + emitter.particleLifetimeRange))
26 | let removeAction = SKAction.removeFromParent()
SpriteKit.SKEmitterNode:28:25: note: mutation of this property is only permitted within the actor
26 | open var xAcceleration: CGFloat { get set }
27 | open var yAcceleration: CGFloat { get set }
28 | @MainActor open var particleBirthRate: CGFloat { get set }
| `- note: mutation of this property is only permitted within the actor
29 | open var numParticlesToEmit: Int { get set }
30 | open var particleLifetime: CGFloat { get set }
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OKUtility+Graphics.swift:25:75: warning: main actor-isolated property 'particleLifetime' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
19 | }
20 |
21 | public static func runOneShotEmitter(emitter: SKEmitterNode, withDuration duration: CGFloat) {
| `- note: add '@MainActor' to make static method 'runOneShotEmitter(emitter:withDuration:)' part of global actor 'MainActor'
22 | // CREDIT: Apple Adventure Sample
23 | let waitAction = SKAction.wait(forDuration: TimeInterval(duration))
24 | let birthRateSet = SKAction.run { emitter.particleBirthRate = 0.0 }
25 | let waitAction2 = SKAction.wait(forDuration: TimeInterval(emitter.particleLifetime + emitter.particleLifetimeRange))
| `- warning: main actor-isolated property 'particleLifetime' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
26 | let removeAction = SKAction.removeFromParent()
27 |
SpriteKit.SKEmitterNode:30:14: note: property declared here
28 | @MainActor open var particleBirthRate: CGFloat { get set }
29 | open var numParticlesToEmit: Int { get set }
30 | open var particleLifetime: CGFloat { get set }
| `- note: property declared here
31 | open var particleLifetimeRange: CGFloat { get set }
32 | open var particleRotation: CGFloat { get set }
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OKUtility+Graphics.swift:25:102: warning: main actor-isolated property 'particleLifetimeRange' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
19 | }
20 |
21 | public static func runOneShotEmitter(emitter: SKEmitterNode, withDuration duration: CGFloat) {
| `- note: add '@MainActor' to make static method 'runOneShotEmitter(emitter:withDuration:)' part of global actor 'MainActor'
22 | // CREDIT: Apple Adventure Sample
23 | let waitAction = SKAction.wait(forDuration: TimeInterval(duration))
24 | let birthRateSet = SKAction.run { emitter.particleBirthRate = 0.0 }
25 | let waitAction2 = SKAction.wait(forDuration: TimeInterval(emitter.particleLifetime + emitter.particleLifetimeRange))
| `- warning: main actor-isolated property 'particleLifetimeRange' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
26 | let removeAction = SKAction.removeFromParent()
27 |
SpriteKit.SKEmitterNode:31:14: note: property declared here
29 | open var numParticlesToEmit: Int { get set }
30 | open var particleLifetime: CGFloat { get set }
31 | open var particleLifetimeRange: CGFloat { get set }
| `- note: property declared here
32 | open var particleRotation: CGFloat { get set }
33 | open var particleRotationRange: CGFloat { get set }
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OKUtility+Graphics.swift:29:17: warning: call to main actor-isolated instance method 'run' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
19 | }
20 |
21 | public static func runOneShotEmitter(emitter: SKEmitterNode, withDuration duration: CGFloat) {
| `- note: add '@MainActor' to make static method 'runOneShotEmitter(emitter:withDuration:)' part of global actor 'MainActor'
22 | // CREDIT: Apple Adventure Sample
23 | let waitAction = SKAction.wait(forDuration: TimeInterval(duration))
:
27 |
28 | let sequence = [waitAction, birthRateSet, waitAction2, removeAction] // Correction: var changed to let
29 | emitter.run(SKAction.sequence(sequence))
| `- warning: call to main actor-isolated instance method 'run' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
30 | }
31 |
SpriteKit.SKNode:80:26: note: calls to instance method 'run' from outside of its actor context are implicitly asynchronous
78 | open func objectForKeyedSubscript(_ name: String) -> [SKNode]
79 | open func inParentHierarchy(_ parent: SKNode) -> Bool
80 | @MainActor open func run(_ action: SKAction)
| `- note: calls to instance method 'run' from outside of its actor context are implicitly asynchronous
81 | @available(swift, obsoleted: 3, renamed: "run(_:)")
82 | open func runAction(_ action: SKAction)
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OctopusKit+Caches.swift:18:16: warning: static property 'textureAtlases' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
16 | // MARK: - Graphics
17 |
18 | static var textureAtlases: OKCache<String, SKTextureAtlas> = {
| |- warning: static property 'textureAtlases' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'textureAtlases' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'textureAtlases' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
19 |
20 | let cache = OKCache<String, SKTextureAtlas> { key in
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OctopusKit+Caches.swift:30:16: warning: static property 'textures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
28 | }()
29 |
30 | static var textures: OKCache<String, SKTexture> = {
| |- warning: static property 'textures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'textures' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'textures' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
31 |
32 | let cache = OKCache<String, SKTexture> { key in
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OctopusKit+Caches.swift:42:16: warning: static property 'shaders' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
40 | }()
41 |
42 | static var shaders: OKCache<String, SKShader> = {
| |- warning: static property 'shaders' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'shaders' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'shaders' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
43 |
44 | let cache = OKCache<String, SKShader> { key in
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/Logging/OKLog.swift:48:23: warning: static property 'printAsCSV' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
46 | ///
47 | /// See the `OKEntry.csv` property for a list of the values i.e. columns.
48 | public static var printAsCSV: Bool = false
| |- warning: static property 'printAsCSV' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'printAsCSV' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'printAsCSV' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
49 |
50 | /// The separator to print between values when `printAsCSV` is `true`. Default: `tab`
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/Logging/OKLog.swift:51:23: warning: static property 'csvDelimiter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
49 |
50 | /// The separator to print between values when `printAsCSV` is `true`. Default: `tab`
51 | public static var csvDelimiter: String = "\t"
| |- warning: static property 'csvDelimiter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'csvDelimiter' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'csvDelimiter' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
52 |
53 | // MARK: Padding
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/Logging/OKLog.swift:43:23: warning: static property 'printTextOnSecondLine' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
41 |
42 | /// If `true` then an entry is printed on at least 2 lines in the debug console, where the time and calling file is on the first line and the text is on the second line.
43 | public static var printTextOnSecondLine: Bool = false
| |- warning: static property 'printTextOnSecondLine' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'printTextOnSecondLine' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'printTextOnSecondLine' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
44 |
45 | /// If `true` then debug console output is printed in CSV format, that may then be copied into a spreadsheet table such as Numbers etc.
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/Logging/OKLog.swift:37:23: warning: static property 'printEmptyLineBetweenEntries' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
35 |
36 | /// If `true` then an empty line is printed between each entry in the debug console.
37 | public static var printEmptyLineBetweenEntries: Bool = false
| |- warning: static property 'printEmptyLineBetweenEntries' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'printEmptyLineBetweenEntries' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'printEmptyLineBetweenEntries' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
38 |
39 | /// If `true` then an empty line is printed between entries with different frame counts (e.g. F0 and F1).
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/Logging/OKLog.swift:68:23: warning: static property 'lastFrameLogged' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
66 |
67 | /// Stores the frame number during the most recent log entry, so we can mark the beginning of a new frame to make logs easier to read.
68 | public static var lastFrameLogged: UInt64 = 0 // Not fileprivate(set) so functions can be @inlinable
| |- warning: static property 'lastFrameLogged' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'lastFrameLogged' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'lastFrameLogged' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
69 |
70 | /// Returns the `currentFrameNumber` of `OctopusKit.shared.currentScene`, if available, otherwise `0`.
SpriteKit.SKNode:36:14: warning: main actor-isolated property 'name' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
34 | open var parent: SKNode? { get }
35 | open var children: [SKNode] { get }
36 | open var name: String? { get set }
| `- warning: main actor-isolated property 'name' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
37 | open var scene: SKScene? { get }
38 | open var physicsBody: SKPhysicsBody? { get set }
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/Protocols/Nameable.swift:18:24: note: add '@preconcurrency' to the 'Nameable' conformance to defer isolation checking to run time
12 | /// A protocol for types that have a `name` property.
13 | public protocol Nameable {
14 | var name: String? { get }
| `- note: 'name' declared here
15 | }
16 |
17 | extension OKEntity: Nameable {}
18 | extension SKNode: Nameable {}
| `- note: add '@preconcurrency' to the 'Nameable' conformance to defer isolation checking to run time
19 | extension SKTileGroup: Nameable {}
20 |
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/SwiftUI/OKViewControllerRepresentable.swift:111:40: warning: call to main actor-isolated initializer 'init(gameCoordinator:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
109 |
110 | init(gameCoordinator: OKGameCoordinator) {
111 | self.viewController = try! OKViewControllerTypeForCoordinator(gameCoordinator: gameCoordinator)
| `- warning: call to main actor-isolated initializer 'init(gameCoordinator:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
112 | super.init()
113 | }
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Core/Launch/OKViewController.swift:64:21: note: calls to initializer 'init(gameCoordinator:)' from outside of its actor context are implicitly asynchronous
62 | // MARK: - Life Cycle
63 |
64 | public required init(gameCoordinator: OKGameCoordinator? = nil) throws {
| `- note: calls to initializer 'init(gameCoordinator:)' from outside of its actor context are implicitly asynchronous
65 |
66 | // To support easy SwiftUI usage...
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/SwiftUI/OKViewControllerRepresentable.swift:111:40: warning: sending 'gameCoordinator.some' risks causing data races; this is an error in the Swift 6 language mode
109 |
110 | init(gameCoordinator: OKGameCoordinator) {
111 | self.viewController = try! OKViewControllerTypeForCoordinator(gameCoordinator: gameCoordinator)
| |- warning: sending 'gameCoordinator.some' risks causing data races; this is an error in the Swift 6 language mode
| `- note: sending task-isolated 'gameCoordinator.some' to main actor-isolated initializer 'init(gameCoordinator:)' risks causing data races between main actor-isolated and task-isolated uses
112 | super.init()
113 | }
[258/263] Compiling OctopusKit TypeSafeIdentifiers.swift
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Core/Launch/OctopusKit+Logs.swift:25:16: warning: static property 'logForResources' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
23 |
24 | /// A log for operations that involve loading, downloading, caching and writing game assets and related resources.
25 | static var logForResources = OKLog(title: "Resources", prefix: "📦", suffix: "📦")
| |- warning: static property 'logForResources' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'logForResources' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'logForResources' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
26 |
27 | /// A log for the cycle of turn updates in a turn-based game.
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Core/Launch/OctopusKit+Logs.swift:42:16: warning: static property 'logForDebug' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
40 |
41 | /// A log for verbose debugging information.
42 | static var logForDebug = OKLog(title: "Debugging", prefix: "🐞")
| |- warning: static property 'logForDebug' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'logForDebug' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'logForDebug' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
43 |
44 | /// A log for developer tips to assist with fixing warnings and errors.
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Core/Launch/OctopusKit+Logs.swift:16:16: warning: static property 'logForFramework' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 |
15 | /// A log for core or general engine events.
16 | static var logForFramework = OKLog(title: "Framework", prefix: "⚙️")
| |- warning: static property 'logForFramework' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'logForFramework' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'logForFramework' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |
18 | /// A log for transitions within game states and entity states.
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OKUtility+Graphics.swift:24:51: warning: main actor-isolated property 'particleBirthRate' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
22 | // CREDIT: Apple Adventure Sample
23 | let waitAction = SKAction.wait(forDuration: TimeInterval(duration))
24 | let birthRateSet = SKAction.run { emitter.particleBirthRate = 0.0 }
| `- warning: main actor-isolated property 'particleBirthRate' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
25 | let waitAction2 = SKAction.wait(forDuration: TimeInterval(emitter.particleLifetime + emitter.particleLifetimeRange))
26 | let removeAction = SKAction.removeFromParent()
SpriteKit.SKEmitterNode:28:25: note: mutation of this property is only permitted within the actor
26 | open var xAcceleration: CGFloat { get set }
27 | open var yAcceleration: CGFloat { get set }
28 | @MainActor open var particleBirthRate: CGFloat { get set }
| `- note: mutation of this property is only permitted within the actor
29 | open var numParticlesToEmit: Int { get set }
30 | open var particleLifetime: CGFloat { get set }
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OKUtility+Graphics.swift:25:75: warning: main actor-isolated property 'particleLifetime' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
19 | }
20 |
21 | public static func runOneShotEmitter(emitter: SKEmitterNode, withDuration duration: CGFloat) {
| `- note: add '@MainActor' to make static method 'runOneShotEmitter(emitter:withDuration:)' part of global actor 'MainActor'
22 | // CREDIT: Apple Adventure Sample
23 | let waitAction = SKAction.wait(forDuration: TimeInterval(duration))
24 | let birthRateSet = SKAction.run { emitter.particleBirthRate = 0.0 }
25 | let waitAction2 = SKAction.wait(forDuration: TimeInterval(emitter.particleLifetime + emitter.particleLifetimeRange))
| `- warning: main actor-isolated property 'particleLifetime' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
26 | let removeAction = SKAction.removeFromParent()
27 |
SpriteKit.SKEmitterNode:30:14: note: property declared here
28 | @MainActor open var particleBirthRate: CGFloat { get set }
29 | open var numParticlesToEmit: Int { get set }
30 | open var particleLifetime: CGFloat { get set }
| `- note: property declared here
31 | open var particleLifetimeRange: CGFloat { get set }
32 | open var particleRotation: CGFloat { get set }
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OKUtility+Graphics.swift:25:102: warning: main actor-isolated property 'particleLifetimeRange' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
19 | }
20 |
21 | public static func runOneShotEmitter(emitter: SKEmitterNode, withDuration duration: CGFloat) {
| `- note: add '@MainActor' to make static method 'runOneShotEmitter(emitter:withDuration:)' part of global actor 'MainActor'
22 | // CREDIT: Apple Adventure Sample
23 | let waitAction = SKAction.wait(forDuration: TimeInterval(duration))
24 | let birthRateSet = SKAction.run { emitter.particleBirthRate = 0.0 }
25 | let waitAction2 = SKAction.wait(forDuration: TimeInterval(emitter.particleLifetime + emitter.particleLifetimeRange))
| `- warning: main actor-isolated property 'particleLifetimeRange' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
26 | let removeAction = SKAction.removeFromParent()
27 |
SpriteKit.SKEmitterNode:31:14: note: property declared here
29 | open var numParticlesToEmit: Int { get set }
30 | open var particleLifetime: CGFloat { get set }
31 | open var particleLifetimeRange: CGFloat { get set }
| `- note: property declared here
32 | open var particleRotation: CGFloat { get set }
33 | open var particleRotationRange: CGFloat { get set }
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OKUtility+Graphics.swift:29:17: warning: call to main actor-isolated instance method 'run' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
19 | }
20 |
21 | public static func runOneShotEmitter(emitter: SKEmitterNode, withDuration duration: CGFloat) {
| `- note: add '@MainActor' to make static method 'runOneShotEmitter(emitter:withDuration:)' part of global actor 'MainActor'
22 | // CREDIT: Apple Adventure Sample
23 | let waitAction = SKAction.wait(forDuration: TimeInterval(duration))
:
27 |
28 | let sequence = [waitAction, birthRateSet, waitAction2, removeAction] // Correction: var changed to let
29 | emitter.run(SKAction.sequence(sequence))
| `- warning: call to main actor-isolated instance method 'run' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
30 | }
31 |
SpriteKit.SKNode:80:26: note: calls to instance method 'run' from outside of its actor context are implicitly asynchronous
78 | open func objectForKeyedSubscript(_ name: String) -> [SKNode]
79 | open func inParentHierarchy(_ parent: SKNode) -> Bool
80 | @MainActor open func run(_ action: SKAction)
| `- note: calls to instance method 'run' from outside of its actor context are implicitly asynchronous
81 | @available(swift, obsoleted: 3, renamed: "run(_:)")
82 | open func runAction(_ action: SKAction)
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OctopusKit+Caches.swift:18:16: warning: static property 'textureAtlases' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
16 | // MARK: - Graphics
17 |
18 | static var textureAtlases: OKCache<String, SKTextureAtlas> = {
| |- warning: static property 'textureAtlases' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'textureAtlases' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'textureAtlases' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
19 |
20 | let cache = OKCache<String, SKTextureAtlas> { key in
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OctopusKit+Caches.swift:30:16: warning: static property 'textures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
28 | }()
29 |
30 | static var textures: OKCache<String, SKTexture> = {
| |- warning: static property 'textures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'textures' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'textures' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
31 |
32 | let cache = OKCache<String, SKTexture> { key in
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OctopusKit+Caches.swift:42:16: warning: static property 'shaders' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
40 | }()
41 |
42 | static var shaders: OKCache<String, SKShader> = {
| |- warning: static property 'shaders' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'shaders' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'shaders' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
43 |
44 | let cache = OKCache<String, SKShader> { key in
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/Logging/OKLog.swift:48:23: warning: static property 'printAsCSV' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
46 | ///
47 | /// See the `OKEntry.csv` property for a list of the values i.e. columns.
48 | public static var printAsCSV: Bool = false
| |- warning: static property 'printAsCSV' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'printAsCSV' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'printAsCSV' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
49 |
50 | /// The separator to print between values when `printAsCSV` is `true`. Default: `tab`
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/Logging/OKLog.swift:51:23: warning: static property 'csvDelimiter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
49 |
50 | /// The separator to print between values when `printAsCSV` is `true`. Default: `tab`
51 | public static var csvDelimiter: String = "\t"
| |- warning: static property 'csvDelimiter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'csvDelimiter' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'csvDelimiter' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
52 |
53 | // MARK: Padding
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/Logging/OKLog.swift:43:23: warning: static property 'printTextOnSecondLine' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
41 |
42 | /// If `true` then an entry is printed on at least 2 lines in the debug console, where the time and calling file is on the first line and the text is on the second line.
43 | public static var printTextOnSecondLine: Bool = false
| |- warning: static property 'printTextOnSecondLine' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'printTextOnSecondLine' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'printTextOnSecondLine' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
44 |
45 | /// If `true` then debug console output is printed in CSV format, that may then be copied into a spreadsheet table such as Numbers etc.
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/Logging/OKLog.swift:37:23: warning: static property 'printEmptyLineBetweenEntries' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
35 |
36 | /// If `true` then an empty line is printed between each entry in the debug console.
37 | public static var printEmptyLineBetweenEntries: Bool = false
| |- warning: static property 'printEmptyLineBetweenEntries' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'printEmptyLineBetweenEntries' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'printEmptyLineBetweenEntries' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
38 |
39 | /// If `true` then an empty line is printed between entries with different frame counts (e.g. F0 and F1).
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/Logging/OKLog.swift:68:23: warning: static property 'lastFrameLogged' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
66 |
67 | /// Stores the frame number during the most recent log entry, so we can mark the beginning of a new frame to make logs easier to read.
68 | public static var lastFrameLogged: UInt64 = 0 // Not fileprivate(set) so functions can be @inlinable
| |- warning: static property 'lastFrameLogged' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'lastFrameLogged' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'lastFrameLogged' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
69 |
70 | /// Returns the `currentFrameNumber` of `OctopusKit.shared.currentScene`, if available, otherwise `0`.
SpriteKit.SKNode:36:14: warning: main actor-isolated property 'name' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
34 | open var parent: SKNode? { get }
35 | open var children: [SKNode] { get }
36 | open var name: String? { get set }
| `- warning: main actor-isolated property 'name' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
37 | open var scene: SKScene? { get }
38 | open var physicsBody: SKPhysicsBody? { get set }
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/Protocols/Nameable.swift:18:24: note: add '@preconcurrency' to the 'Nameable' conformance to defer isolation checking to run time
12 | /// A protocol for types that have a `name` property.
13 | public protocol Nameable {
14 | var name: String? { get }
| `- note: 'name' declared here
15 | }
16 |
17 | extension OKEntity: Nameable {}
18 | extension SKNode: Nameable {}
| `- note: add '@preconcurrency' to the 'Nameable' conformance to defer isolation checking to run time
19 | extension SKTileGroup: Nameable {}
20 |
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/SwiftUI/OKViewControllerRepresentable.swift:111:40: warning: call to main actor-isolated initializer 'init(gameCoordinator:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
109 |
110 | init(gameCoordinator: OKGameCoordinator) {
111 | self.viewController = try! OKViewControllerTypeForCoordinator(gameCoordinator: gameCoordinator)
| `- warning: call to main actor-isolated initializer 'init(gameCoordinator:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
112 | super.init()
113 | }
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Core/Launch/OKViewController.swift:64:21: note: calls to initializer 'init(gameCoordinator:)' from outside of its actor context are implicitly asynchronous
62 | // MARK: - Life Cycle
63 |
64 | public required init(gameCoordinator: OKGameCoordinator? = nil) throws {
| `- note: calls to initializer 'init(gameCoordinator:)' from outside of its actor context are implicitly asynchronous
65 |
66 | // To support easy SwiftUI usage...
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/SwiftUI/OKViewControllerRepresentable.swift:111:40: warning: sending 'gameCoordinator.some' risks causing data races; this is an error in the Swift 6 language mode
109 |
110 | init(gameCoordinator: OKGameCoordinator) {
111 | self.viewController = try! OKViewControllerTypeForCoordinator(gameCoordinator: gameCoordinator)
| |- warning: sending 'gameCoordinator.some' risks causing data races; this is an error in the Swift 6 language mode
| `- note: sending task-isolated 'gameCoordinator.some' to main actor-isolated initializer 'init(gameCoordinator:)' risks causing data races between main actor-isolated and task-isolated uses
112 | super.init()
113 | }
[259/263] Compiling OctopusKit OKContainerView.swift
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Core/Launch/OctopusKit+Logs.swift:25:16: warning: static property 'logForResources' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
23 |
24 | /// A log for operations that involve loading, downloading, caching and writing game assets and related resources.
25 | static var logForResources = OKLog(title: "Resources", prefix: "📦", suffix: "📦")
| |- warning: static property 'logForResources' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'logForResources' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'logForResources' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
26 |
27 | /// A log for the cycle of turn updates in a turn-based game.
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Core/Launch/OctopusKit+Logs.swift:42:16: warning: static property 'logForDebug' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
40 |
41 | /// A log for verbose debugging information.
42 | static var logForDebug = OKLog(title: "Debugging", prefix: "🐞")
| |- warning: static property 'logForDebug' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'logForDebug' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'logForDebug' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
43 |
44 | /// A log for developer tips to assist with fixing warnings and errors.
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Core/Launch/OctopusKit+Logs.swift:16:16: warning: static property 'logForFramework' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 |
15 | /// A log for core or general engine events.
16 | static var logForFramework = OKLog(title: "Framework", prefix: "⚙️")
| |- warning: static property 'logForFramework' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'logForFramework' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'logForFramework' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |
18 | /// A log for transitions within game states and entity states.
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OKUtility+Graphics.swift:24:51: warning: main actor-isolated property 'particleBirthRate' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
22 | // CREDIT: Apple Adventure Sample
23 | let waitAction = SKAction.wait(forDuration: TimeInterval(duration))
24 | let birthRateSet = SKAction.run { emitter.particleBirthRate = 0.0 }
| `- warning: main actor-isolated property 'particleBirthRate' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
25 | let waitAction2 = SKAction.wait(forDuration: TimeInterval(emitter.particleLifetime + emitter.particleLifetimeRange))
26 | let removeAction = SKAction.removeFromParent()
SpriteKit.SKEmitterNode:28:25: note: mutation of this property is only permitted within the actor
26 | open var xAcceleration: CGFloat { get set }
27 | open var yAcceleration: CGFloat { get set }
28 | @MainActor open var particleBirthRate: CGFloat { get set }
| `- note: mutation of this property is only permitted within the actor
29 | open var numParticlesToEmit: Int { get set }
30 | open var particleLifetime: CGFloat { get set }
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OKUtility+Graphics.swift:25:75: warning: main actor-isolated property 'particleLifetime' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
19 | }
20 |
21 | public static func runOneShotEmitter(emitter: SKEmitterNode, withDuration duration: CGFloat) {
| `- note: add '@MainActor' to make static method 'runOneShotEmitter(emitter:withDuration:)' part of global actor 'MainActor'
22 | // CREDIT: Apple Adventure Sample
23 | let waitAction = SKAction.wait(forDuration: TimeInterval(duration))
24 | let birthRateSet = SKAction.run { emitter.particleBirthRate = 0.0 }
25 | let waitAction2 = SKAction.wait(forDuration: TimeInterval(emitter.particleLifetime + emitter.particleLifetimeRange))
| `- warning: main actor-isolated property 'particleLifetime' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
26 | let removeAction = SKAction.removeFromParent()
27 |
SpriteKit.SKEmitterNode:30:14: note: property declared here
28 | @MainActor open var particleBirthRate: CGFloat { get set }
29 | open var numParticlesToEmit: Int { get set }
30 | open var particleLifetime: CGFloat { get set }
| `- note: property declared here
31 | open var particleLifetimeRange: CGFloat { get set }
32 | open var particleRotation: CGFloat { get set }
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OKUtility+Graphics.swift:25:102: warning: main actor-isolated property 'particleLifetimeRange' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
19 | }
20 |
21 | public static func runOneShotEmitter(emitter: SKEmitterNode, withDuration duration: CGFloat) {
| `- note: add '@MainActor' to make static method 'runOneShotEmitter(emitter:withDuration:)' part of global actor 'MainActor'
22 | // CREDIT: Apple Adventure Sample
23 | let waitAction = SKAction.wait(forDuration: TimeInterval(duration))
24 | let birthRateSet = SKAction.run { emitter.particleBirthRate = 0.0 }
25 | let waitAction2 = SKAction.wait(forDuration: TimeInterval(emitter.particleLifetime + emitter.particleLifetimeRange))
| `- warning: main actor-isolated property 'particleLifetimeRange' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
26 | let removeAction = SKAction.removeFromParent()
27 |
SpriteKit.SKEmitterNode:31:14: note: property declared here
29 | open var numParticlesToEmit: Int { get set }
30 | open var particleLifetime: CGFloat { get set }
31 | open var particleLifetimeRange: CGFloat { get set }
| `- note: property declared here
32 | open var particleRotation: CGFloat { get set }
33 | open var particleRotationRange: CGFloat { get set }
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OKUtility+Graphics.swift:29:17: warning: call to main actor-isolated instance method 'run' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
19 | }
20 |
21 | public static func runOneShotEmitter(emitter: SKEmitterNode, withDuration duration: CGFloat) {
| `- note: add '@MainActor' to make static method 'runOneShotEmitter(emitter:withDuration:)' part of global actor 'MainActor'
22 | // CREDIT: Apple Adventure Sample
23 | let waitAction = SKAction.wait(forDuration: TimeInterval(duration))
:
27 |
28 | let sequence = [waitAction, birthRateSet, waitAction2, removeAction] // Correction: var changed to let
29 | emitter.run(SKAction.sequence(sequence))
| `- warning: call to main actor-isolated instance method 'run' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
30 | }
31 |
SpriteKit.SKNode:80:26: note: calls to instance method 'run' from outside of its actor context are implicitly asynchronous
78 | open func objectForKeyedSubscript(_ name: String) -> [SKNode]
79 | open func inParentHierarchy(_ parent: SKNode) -> Bool
80 | @MainActor open func run(_ action: SKAction)
| `- note: calls to instance method 'run' from outside of its actor context are implicitly asynchronous
81 | @available(swift, obsoleted: 3, renamed: "run(_:)")
82 | open func runAction(_ action: SKAction)
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OctopusKit+Caches.swift:18:16: warning: static property 'textureAtlases' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
16 | // MARK: - Graphics
17 |
18 | static var textureAtlases: OKCache<String, SKTextureAtlas> = {
| |- warning: static property 'textureAtlases' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'textureAtlases' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'textureAtlases' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
19 |
20 | let cache = OKCache<String, SKTextureAtlas> { key in
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OctopusKit+Caches.swift:30:16: warning: static property 'textures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
28 | }()
29 |
30 | static var textures: OKCache<String, SKTexture> = {
| |- warning: static property 'textures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'textures' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'textures' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
31 |
32 | let cache = OKCache<String, SKTexture> { key in
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OctopusKit+Caches.swift:42:16: warning: static property 'shaders' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
40 | }()
41 |
42 | static var shaders: OKCache<String, SKShader> = {
| |- warning: static property 'shaders' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'shaders' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'shaders' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
43 |
44 | let cache = OKCache<String, SKShader> { key in
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/Logging/OKLog.swift:48:23: warning: static property 'printAsCSV' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
46 | ///
47 | /// See the `OKEntry.csv` property for a list of the values i.e. columns.
48 | public static var printAsCSV: Bool = false
| |- warning: static property 'printAsCSV' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'printAsCSV' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'printAsCSV' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
49 |
50 | /// The separator to print between values when `printAsCSV` is `true`. Default: `tab`
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/Logging/OKLog.swift:51:23: warning: static property 'csvDelimiter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
49 |
50 | /// The separator to print between values when `printAsCSV` is `true`. Default: `tab`
51 | public static var csvDelimiter: String = "\t"
| |- warning: static property 'csvDelimiter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'csvDelimiter' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'csvDelimiter' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
52 |
53 | // MARK: Padding
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/Logging/OKLog.swift:43:23: warning: static property 'printTextOnSecondLine' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
41 |
42 | /// If `true` then an entry is printed on at least 2 lines in the debug console, where the time and calling file is on the first line and the text is on the second line.
43 | public static var printTextOnSecondLine: Bool = false
| |- warning: static property 'printTextOnSecondLine' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'printTextOnSecondLine' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'printTextOnSecondLine' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
44 |
45 | /// If `true` then debug console output is printed in CSV format, that may then be copied into a spreadsheet table such as Numbers etc.
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/Logging/OKLog.swift:37:23: warning: static property 'printEmptyLineBetweenEntries' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
35 |
36 | /// If `true` then an empty line is printed between each entry in the debug console.
37 | public static var printEmptyLineBetweenEntries: Bool = false
| |- warning: static property 'printEmptyLineBetweenEntries' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'printEmptyLineBetweenEntries' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'printEmptyLineBetweenEntries' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
38 |
39 | /// If `true` then an empty line is printed between entries with different frame counts (e.g. F0 and F1).
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/Logging/OKLog.swift:68:23: warning: static property 'lastFrameLogged' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
66 |
67 | /// Stores the frame number during the most recent log entry, so we can mark the beginning of a new frame to make logs easier to read.
68 | public static var lastFrameLogged: UInt64 = 0 // Not fileprivate(set) so functions can be @inlinable
| |- warning: static property 'lastFrameLogged' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'lastFrameLogged' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'lastFrameLogged' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
69 |
70 | /// Returns the `currentFrameNumber` of `OctopusKit.shared.currentScene`, if available, otherwise `0`.
SpriteKit.SKNode:36:14: warning: main actor-isolated property 'name' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
34 | open var parent: SKNode? { get }
35 | open var children: [SKNode] { get }
36 | open var name: String? { get set }
| `- warning: main actor-isolated property 'name' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
37 | open var scene: SKScene? { get }
38 | open var physicsBody: SKPhysicsBody? { get set }
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/Protocols/Nameable.swift:18:24: note: add '@preconcurrency' to the 'Nameable' conformance to defer isolation checking to run time
12 | /// A protocol for types that have a `name` property.
13 | public protocol Nameable {
14 | var name: String? { get }
| `- note: 'name' declared here
15 | }
16 |
17 | extension OKEntity: Nameable {}
18 | extension SKNode: Nameable {}
| `- note: add '@preconcurrency' to the 'Nameable' conformance to defer isolation checking to run time
19 | extension SKTileGroup: Nameable {}
20 |
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/SwiftUI/OKViewControllerRepresentable.swift:111:40: warning: call to main actor-isolated initializer 'init(gameCoordinator:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
109 |
110 | init(gameCoordinator: OKGameCoordinator) {
111 | self.viewController = try! OKViewControllerTypeForCoordinator(gameCoordinator: gameCoordinator)
| `- warning: call to main actor-isolated initializer 'init(gameCoordinator:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
112 | super.init()
113 | }
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Core/Launch/OKViewController.swift:64:21: note: calls to initializer 'init(gameCoordinator:)' from outside of its actor context are implicitly asynchronous
62 | // MARK: - Life Cycle
63 |
64 | public required init(gameCoordinator: OKGameCoordinator? = nil) throws {
| `- note: calls to initializer 'init(gameCoordinator:)' from outside of its actor context are implicitly asynchronous
65 |
66 | // To support easy SwiftUI usage...
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/SwiftUI/OKViewControllerRepresentable.swift:111:40: warning: sending 'gameCoordinator.some' risks causing data races; this is an error in the Swift 6 language mode
109 |
110 | init(gameCoordinator: OKGameCoordinator) {
111 | self.viewController = try! OKViewControllerTypeForCoordinator(gameCoordinator: gameCoordinator)
| |- warning: sending 'gameCoordinator.some' risks causing data races; this is an error in the Swift 6 language mode
| `- note: sending task-isolated 'gameCoordinator.some' to main actor-isolated initializer 'init(gameCoordinator:)' risks causing data races between main actor-isolated and task-isolated uses
112 | super.init()
113 | }
[260/263] Compiling OctopusKit OKUIOverlay.swift
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Core/Launch/OctopusKit+Logs.swift:25:16: warning: static property 'logForResources' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
23 |
24 | /// A log for operations that involve loading, downloading, caching and writing game assets and related resources.
25 | static var logForResources = OKLog(title: "Resources", prefix: "📦", suffix: "📦")
| |- warning: static property 'logForResources' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'logForResources' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'logForResources' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
26 |
27 | /// A log for the cycle of turn updates in a turn-based game.
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Core/Launch/OctopusKit+Logs.swift:42:16: warning: static property 'logForDebug' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
40 |
41 | /// A log for verbose debugging information.
42 | static var logForDebug = OKLog(title: "Debugging", prefix: "🐞")
| |- warning: static property 'logForDebug' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'logForDebug' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'logForDebug' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
43 |
44 | /// A log for developer tips to assist with fixing warnings and errors.
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Core/Launch/OctopusKit+Logs.swift:16:16: warning: static property 'logForFramework' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 |
15 | /// A log for core or general engine events.
16 | static var logForFramework = OKLog(title: "Framework", prefix: "⚙️")
| |- warning: static property 'logForFramework' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'logForFramework' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'logForFramework' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |
18 | /// A log for transitions within game states and entity states.
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OKUtility+Graphics.swift:24:51: warning: main actor-isolated property 'particleBirthRate' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
22 | // CREDIT: Apple Adventure Sample
23 | let waitAction = SKAction.wait(forDuration: TimeInterval(duration))
24 | let birthRateSet = SKAction.run { emitter.particleBirthRate = 0.0 }
| `- warning: main actor-isolated property 'particleBirthRate' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
25 | let waitAction2 = SKAction.wait(forDuration: TimeInterval(emitter.particleLifetime + emitter.particleLifetimeRange))
26 | let removeAction = SKAction.removeFromParent()
SpriteKit.SKEmitterNode:28:25: note: mutation of this property is only permitted within the actor
26 | open var xAcceleration: CGFloat { get set }
27 | open var yAcceleration: CGFloat { get set }
28 | @MainActor open var particleBirthRate: CGFloat { get set }
| `- note: mutation of this property is only permitted within the actor
29 | open var numParticlesToEmit: Int { get set }
30 | open var particleLifetime: CGFloat { get set }
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OKUtility+Graphics.swift:25:75: warning: main actor-isolated property 'particleLifetime' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
19 | }
20 |
21 | public static func runOneShotEmitter(emitter: SKEmitterNode, withDuration duration: CGFloat) {
| `- note: add '@MainActor' to make static method 'runOneShotEmitter(emitter:withDuration:)' part of global actor 'MainActor'
22 | // CREDIT: Apple Adventure Sample
23 | let waitAction = SKAction.wait(forDuration: TimeInterval(duration))
24 | let birthRateSet = SKAction.run { emitter.particleBirthRate = 0.0 }
25 | let waitAction2 = SKAction.wait(forDuration: TimeInterval(emitter.particleLifetime + emitter.particleLifetimeRange))
| `- warning: main actor-isolated property 'particleLifetime' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
26 | let removeAction = SKAction.removeFromParent()
27 |
SpriteKit.SKEmitterNode:30:14: note: property declared here
28 | @MainActor open var particleBirthRate: CGFloat { get set }
29 | open var numParticlesToEmit: Int { get set }
30 | open var particleLifetime: CGFloat { get set }
| `- note: property declared here
31 | open var particleLifetimeRange: CGFloat { get set }
32 | open var particleRotation: CGFloat { get set }
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OKUtility+Graphics.swift:25:102: warning: main actor-isolated property 'particleLifetimeRange' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
19 | }
20 |
21 | public static func runOneShotEmitter(emitter: SKEmitterNode, withDuration duration: CGFloat) {
| `- note: add '@MainActor' to make static method 'runOneShotEmitter(emitter:withDuration:)' part of global actor 'MainActor'
22 | // CREDIT: Apple Adventure Sample
23 | let waitAction = SKAction.wait(forDuration: TimeInterval(duration))
24 | let birthRateSet = SKAction.run { emitter.particleBirthRate = 0.0 }
25 | let waitAction2 = SKAction.wait(forDuration: TimeInterval(emitter.particleLifetime + emitter.particleLifetimeRange))
| `- warning: main actor-isolated property 'particleLifetimeRange' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
26 | let removeAction = SKAction.removeFromParent()
27 |
SpriteKit.SKEmitterNode:31:14: note: property declared here
29 | open var numParticlesToEmit: Int { get set }
30 | open var particleLifetime: CGFloat { get set }
31 | open var particleLifetimeRange: CGFloat { get set }
| `- note: property declared here
32 | open var particleRotation: CGFloat { get set }
33 | open var particleRotationRange: CGFloat { get set }
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OKUtility+Graphics.swift:29:17: warning: call to main actor-isolated instance method 'run' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
19 | }
20 |
21 | public static func runOneShotEmitter(emitter: SKEmitterNode, withDuration duration: CGFloat) {
| `- note: add '@MainActor' to make static method 'runOneShotEmitter(emitter:withDuration:)' part of global actor 'MainActor'
22 | // CREDIT: Apple Adventure Sample
23 | let waitAction = SKAction.wait(forDuration: TimeInterval(duration))
:
27 |
28 | let sequence = [waitAction, birthRateSet, waitAction2, removeAction] // Correction: var changed to let
29 | emitter.run(SKAction.sequence(sequence))
| `- warning: call to main actor-isolated instance method 'run' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
30 | }
31 |
SpriteKit.SKNode:80:26: note: calls to instance method 'run' from outside of its actor context are implicitly asynchronous
78 | open func objectForKeyedSubscript(_ name: String) -> [SKNode]
79 | open func inParentHierarchy(_ parent: SKNode) -> Bool
80 | @MainActor open func run(_ action: SKAction)
| `- note: calls to instance method 'run' from outside of its actor context are implicitly asynchronous
81 | @available(swift, obsoleted: 3, renamed: "run(_:)")
82 | open func runAction(_ action: SKAction)
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OctopusKit+Caches.swift:18:16: warning: static property 'textureAtlases' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
16 | // MARK: - Graphics
17 |
18 | static var textureAtlases: OKCache<String, SKTextureAtlas> = {
| |- warning: static property 'textureAtlases' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'textureAtlases' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'textureAtlases' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
19 |
20 | let cache = OKCache<String, SKTextureAtlas> { key in
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OctopusKit+Caches.swift:30:16: warning: static property 'textures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
28 | }()
29 |
30 | static var textures: OKCache<String, SKTexture> = {
| |- warning: static property 'textures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'textures' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'textures' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
31 |
32 | let cache = OKCache<String, SKTexture> { key in
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OctopusKit+Caches.swift:42:16: warning: static property 'shaders' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
40 | }()
41 |
42 | static var shaders: OKCache<String, SKShader> = {
| |- warning: static property 'shaders' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'shaders' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'shaders' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
43 |
44 | let cache = OKCache<String, SKShader> { key in
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/Logging/OKLog.swift:48:23: warning: static property 'printAsCSV' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
46 | ///
47 | /// See the `OKEntry.csv` property for a list of the values i.e. columns.
48 | public static var printAsCSV: Bool = false
| |- warning: static property 'printAsCSV' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'printAsCSV' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'printAsCSV' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
49 |
50 | /// The separator to print between values when `printAsCSV` is `true`. Default: `tab`
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/Logging/OKLog.swift:51:23: warning: static property 'csvDelimiter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
49 |
50 | /// The separator to print between values when `printAsCSV` is `true`. Default: `tab`
51 | public static var csvDelimiter: String = "\t"
| |- warning: static property 'csvDelimiter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'csvDelimiter' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'csvDelimiter' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
52 |
53 | // MARK: Padding
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/Logging/OKLog.swift:43:23: warning: static property 'printTextOnSecondLine' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
41 |
42 | /// If `true` then an entry is printed on at least 2 lines in the debug console, where the time and calling file is on the first line and the text is on the second line.
43 | public static var printTextOnSecondLine: Bool = false
| |- warning: static property 'printTextOnSecondLine' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'printTextOnSecondLine' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'printTextOnSecondLine' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
44 |
45 | /// If `true` then debug console output is printed in CSV format, that may then be copied into a spreadsheet table such as Numbers etc.
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/Logging/OKLog.swift:37:23: warning: static property 'printEmptyLineBetweenEntries' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
35 |
36 | /// If `true` then an empty line is printed between each entry in the debug console.
37 | public static var printEmptyLineBetweenEntries: Bool = false
| |- warning: static property 'printEmptyLineBetweenEntries' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'printEmptyLineBetweenEntries' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'printEmptyLineBetweenEntries' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
38 |
39 | /// If `true` then an empty line is printed between entries with different frame counts (e.g. F0 and F1).
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/Logging/OKLog.swift:68:23: warning: static property 'lastFrameLogged' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
66 |
67 | /// Stores the frame number during the most recent log entry, so we can mark the beginning of a new frame to make logs easier to read.
68 | public static var lastFrameLogged: UInt64 = 0 // Not fileprivate(set) so functions can be @inlinable
| |- warning: static property 'lastFrameLogged' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'lastFrameLogged' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'lastFrameLogged' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
69 |
70 | /// Returns the `currentFrameNumber` of `OctopusKit.shared.currentScene`, if available, otherwise `0`.
SpriteKit.SKNode:36:14: warning: main actor-isolated property 'name' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
34 | open var parent: SKNode? { get }
35 | open var children: [SKNode] { get }
36 | open var name: String? { get set }
| `- warning: main actor-isolated property 'name' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
37 | open var scene: SKScene? { get }
38 | open var physicsBody: SKPhysicsBody? { get set }
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/Protocols/Nameable.swift:18:24: note: add '@preconcurrency' to the 'Nameable' conformance to defer isolation checking to run time
12 | /// A protocol for types that have a `name` property.
13 | public protocol Nameable {
14 | var name: String? { get }
| `- note: 'name' declared here
15 | }
16 |
17 | extension OKEntity: Nameable {}
18 | extension SKNode: Nameable {}
| `- note: add '@preconcurrency' to the 'Nameable' conformance to defer isolation checking to run time
19 | extension SKTileGroup: Nameable {}
20 |
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/SwiftUI/OKViewControllerRepresentable.swift:111:40: warning: call to main actor-isolated initializer 'init(gameCoordinator:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
109 |
110 | init(gameCoordinator: OKGameCoordinator) {
111 | self.viewController = try! OKViewControllerTypeForCoordinator(gameCoordinator: gameCoordinator)
| `- warning: call to main actor-isolated initializer 'init(gameCoordinator:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
112 | super.init()
113 | }
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Core/Launch/OKViewController.swift:64:21: note: calls to initializer 'init(gameCoordinator:)' from outside of its actor context are implicitly asynchronous
62 | // MARK: - Life Cycle
63 |
64 | public required init(gameCoordinator: OKGameCoordinator? = nil) throws {
| `- note: calls to initializer 'init(gameCoordinator:)' from outside of its actor context are implicitly asynchronous
65 |
66 | // To support easy SwiftUI usage...
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/SwiftUI/OKViewControllerRepresentable.swift:111:40: warning: sending 'gameCoordinator.some' risks causing data races; this is an error in the Swift 6 language mode
109 |
110 | init(gameCoordinator: OKGameCoordinator) {
111 | self.viewController = try! OKViewControllerTypeForCoordinator(gameCoordinator: gameCoordinator)
| |- warning: sending 'gameCoordinator.some' risks causing data races; this is an error in the Swift 6 language mode
| `- note: sending task-isolated 'gameCoordinator.some' to main actor-isolated initializer 'init(gameCoordinator:)' risks causing data races between main actor-isolated and task-isolated uses
112 | super.init()
113 | }
[261/263] Compiling OctopusKit OKViewControllerRepresentable.swift
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Core/Launch/OctopusKit+Logs.swift:25:16: warning: static property 'logForResources' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
23 |
24 | /// A log for operations that involve loading, downloading, caching and writing game assets and related resources.
25 | static var logForResources = OKLog(title: "Resources", prefix: "📦", suffix: "📦")
| |- warning: static property 'logForResources' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'logForResources' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'logForResources' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
26 |
27 | /// A log for the cycle of turn updates in a turn-based game.
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Core/Launch/OctopusKit+Logs.swift:42:16: warning: static property 'logForDebug' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
40 |
41 | /// A log for verbose debugging information.
42 | static var logForDebug = OKLog(title: "Debugging", prefix: "🐞")
| |- warning: static property 'logForDebug' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'logForDebug' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'logForDebug' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
43 |
44 | /// A log for developer tips to assist with fixing warnings and errors.
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Core/Launch/OctopusKit+Logs.swift:16:16: warning: static property 'logForFramework' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 |
15 | /// A log for core or general engine events.
16 | static var logForFramework = OKLog(title: "Framework", prefix: "⚙️")
| |- warning: static property 'logForFramework' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'logForFramework' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'logForFramework' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |
18 | /// A log for transitions within game states and entity states.
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OKUtility+Graphics.swift:24:51: warning: main actor-isolated property 'particleBirthRate' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
22 | // CREDIT: Apple Adventure Sample
23 | let waitAction = SKAction.wait(forDuration: TimeInterval(duration))
24 | let birthRateSet = SKAction.run { emitter.particleBirthRate = 0.0 }
| `- warning: main actor-isolated property 'particleBirthRate' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
25 | let waitAction2 = SKAction.wait(forDuration: TimeInterval(emitter.particleLifetime + emitter.particleLifetimeRange))
26 | let removeAction = SKAction.removeFromParent()
SpriteKit.SKEmitterNode:28:25: note: mutation of this property is only permitted within the actor
26 | open var xAcceleration: CGFloat { get set }
27 | open var yAcceleration: CGFloat { get set }
28 | @MainActor open var particleBirthRate: CGFloat { get set }
| `- note: mutation of this property is only permitted within the actor
29 | open var numParticlesToEmit: Int { get set }
30 | open var particleLifetime: CGFloat { get set }
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OKUtility+Graphics.swift:25:75: warning: main actor-isolated property 'particleLifetime' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
19 | }
20 |
21 | public static func runOneShotEmitter(emitter: SKEmitterNode, withDuration duration: CGFloat) {
| `- note: add '@MainActor' to make static method 'runOneShotEmitter(emitter:withDuration:)' part of global actor 'MainActor'
22 | // CREDIT: Apple Adventure Sample
23 | let waitAction = SKAction.wait(forDuration: TimeInterval(duration))
24 | let birthRateSet = SKAction.run { emitter.particleBirthRate = 0.0 }
25 | let waitAction2 = SKAction.wait(forDuration: TimeInterval(emitter.particleLifetime + emitter.particleLifetimeRange))
| `- warning: main actor-isolated property 'particleLifetime' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
26 | let removeAction = SKAction.removeFromParent()
27 |
SpriteKit.SKEmitterNode:30:14: note: property declared here
28 | @MainActor open var particleBirthRate: CGFloat { get set }
29 | open var numParticlesToEmit: Int { get set }
30 | open var particleLifetime: CGFloat { get set }
| `- note: property declared here
31 | open var particleLifetimeRange: CGFloat { get set }
32 | open var particleRotation: CGFloat { get set }
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OKUtility+Graphics.swift:25:102: warning: main actor-isolated property 'particleLifetimeRange' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
19 | }
20 |
21 | public static func runOneShotEmitter(emitter: SKEmitterNode, withDuration duration: CGFloat) {
| `- note: add '@MainActor' to make static method 'runOneShotEmitter(emitter:withDuration:)' part of global actor 'MainActor'
22 | // CREDIT: Apple Adventure Sample
23 | let waitAction = SKAction.wait(forDuration: TimeInterval(duration))
24 | let birthRateSet = SKAction.run { emitter.particleBirthRate = 0.0 }
25 | let waitAction2 = SKAction.wait(forDuration: TimeInterval(emitter.particleLifetime + emitter.particleLifetimeRange))
| `- warning: main actor-isolated property 'particleLifetimeRange' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
26 | let removeAction = SKAction.removeFromParent()
27 |
SpriteKit.SKEmitterNode:31:14: note: property declared here
29 | open var numParticlesToEmit: Int { get set }
30 | open var particleLifetime: CGFloat { get set }
31 | open var particleLifetimeRange: CGFloat { get set }
| `- note: property declared here
32 | open var particleRotation: CGFloat { get set }
33 | open var particleRotationRange: CGFloat { get set }
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OKUtility+Graphics.swift:29:17: warning: call to main actor-isolated instance method 'run' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
19 | }
20 |
21 | public static func runOneShotEmitter(emitter: SKEmitterNode, withDuration duration: CGFloat) {
| `- note: add '@MainActor' to make static method 'runOneShotEmitter(emitter:withDuration:)' part of global actor 'MainActor'
22 | // CREDIT: Apple Adventure Sample
23 | let waitAction = SKAction.wait(forDuration: TimeInterval(duration))
:
27 |
28 | let sequence = [waitAction, birthRateSet, waitAction2, removeAction] // Correction: var changed to let
29 | emitter.run(SKAction.sequence(sequence))
| `- warning: call to main actor-isolated instance method 'run' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
30 | }
31 |
SpriteKit.SKNode:80:26: note: calls to instance method 'run' from outside of its actor context are implicitly asynchronous
78 | open func objectForKeyedSubscript(_ name: String) -> [SKNode]
79 | open func inParentHierarchy(_ parent: SKNode) -> Bool
80 | @MainActor open func run(_ action: SKAction)
| `- note: calls to instance method 'run' from outside of its actor context are implicitly asynchronous
81 | @available(swift, obsoleted: 3, renamed: "run(_:)")
82 | open func runAction(_ action: SKAction)
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OctopusKit+Caches.swift:18:16: warning: static property 'textureAtlases' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
16 | // MARK: - Graphics
17 |
18 | static var textureAtlases: OKCache<String, SKTextureAtlas> = {
| |- warning: static property 'textureAtlases' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'textureAtlases' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'textureAtlases' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
19 |
20 | let cache = OKCache<String, SKTextureAtlas> { key in
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OctopusKit+Caches.swift:30:16: warning: static property 'textures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
28 | }()
29 |
30 | static var textures: OKCache<String, SKTexture> = {
| |- warning: static property 'textures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'textures' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'textures' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
31 |
32 | let cache = OKCache<String, SKTexture> { key in
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OctopusKit+Caches.swift:42:16: warning: static property 'shaders' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
40 | }()
41 |
42 | static var shaders: OKCache<String, SKShader> = {
| |- warning: static property 'shaders' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'shaders' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'shaders' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
43 |
44 | let cache = OKCache<String, SKShader> { key in
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/Logging/OKLog.swift:48:23: warning: static property 'printAsCSV' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
46 | ///
47 | /// See the `OKEntry.csv` property for a list of the values i.e. columns.
48 | public static var printAsCSV: Bool = false
| |- warning: static property 'printAsCSV' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'printAsCSV' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'printAsCSV' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
49 |
50 | /// The separator to print between values when `printAsCSV` is `true`. Default: `tab`
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/Logging/OKLog.swift:51:23: warning: static property 'csvDelimiter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
49 |
50 | /// The separator to print between values when `printAsCSV` is `true`. Default: `tab`
51 | public static var csvDelimiter: String = "\t"
| |- warning: static property 'csvDelimiter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'csvDelimiter' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'csvDelimiter' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
52 |
53 | // MARK: Padding
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/Logging/OKLog.swift:43:23: warning: static property 'printTextOnSecondLine' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
41 |
42 | /// If `true` then an entry is printed on at least 2 lines in the debug console, where the time and calling file is on the first line and the text is on the second line.
43 | public static var printTextOnSecondLine: Bool = false
| |- warning: static property 'printTextOnSecondLine' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'printTextOnSecondLine' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'printTextOnSecondLine' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
44 |
45 | /// If `true` then debug console output is printed in CSV format, that may then be copied into a spreadsheet table such as Numbers etc.
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/Logging/OKLog.swift:37:23: warning: static property 'printEmptyLineBetweenEntries' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
35 |
36 | /// If `true` then an empty line is printed between each entry in the debug console.
37 | public static var printEmptyLineBetweenEntries: Bool = false
| |- warning: static property 'printEmptyLineBetweenEntries' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'printEmptyLineBetweenEntries' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'printEmptyLineBetweenEntries' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
38 |
39 | /// If `true` then an empty line is printed between entries with different frame counts (e.g. F0 and F1).
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/Logging/OKLog.swift:68:23: warning: static property 'lastFrameLogged' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
66 |
67 | /// Stores the frame number during the most recent log entry, so we can mark the beginning of a new frame to make logs easier to read.
68 | public static var lastFrameLogged: UInt64 = 0 // Not fileprivate(set) so functions can be @inlinable
| |- warning: static property 'lastFrameLogged' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'lastFrameLogged' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'lastFrameLogged' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
69 |
70 | /// Returns the `currentFrameNumber` of `OctopusKit.shared.currentScene`, if available, otherwise `0`.
SpriteKit.SKNode:36:14: warning: main actor-isolated property 'name' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
34 | open var parent: SKNode? { get }
35 | open var children: [SKNode] { get }
36 | open var name: String? { get set }
| `- warning: main actor-isolated property 'name' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
37 | open var scene: SKScene? { get }
38 | open var physicsBody: SKPhysicsBody? { get set }
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/Protocols/Nameable.swift:18:24: note: add '@preconcurrency' to the 'Nameable' conformance to defer isolation checking to run time
12 | /// A protocol for types that have a `name` property.
13 | public protocol Nameable {
14 | var name: String? { get }
| `- note: 'name' declared here
15 | }
16 |
17 | extension OKEntity: Nameable {}
18 | extension SKNode: Nameable {}
| `- note: add '@preconcurrency' to the 'Nameable' conformance to defer isolation checking to run time
19 | extension SKTileGroup: Nameable {}
20 |
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/SwiftUI/OKViewControllerRepresentable.swift:111:40: warning: call to main actor-isolated initializer 'init(gameCoordinator:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
109 |
110 | init(gameCoordinator: OKGameCoordinator) {
111 | self.viewController = try! OKViewControllerTypeForCoordinator(gameCoordinator: gameCoordinator)
| `- warning: call to main actor-isolated initializer 'init(gameCoordinator:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
112 | super.init()
113 | }
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Core/Launch/OKViewController.swift:64:21: note: calls to initializer 'init(gameCoordinator:)' from outside of its actor context are implicitly asynchronous
62 | // MARK: - Life Cycle
63 |
64 | public required init(gameCoordinator: OKGameCoordinator? = nil) throws {
| `- note: calls to initializer 'init(gameCoordinator:)' from outside of its actor context are implicitly asynchronous
65 |
66 | // To support easy SwiftUI usage...
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/SwiftUI/OKViewControllerRepresentable.swift:111:40: warning: sending 'gameCoordinator.some' risks causing data races; this is an error in the Swift 6 language mode
109 |
110 | init(gameCoordinator: OKGameCoordinator) {
111 | self.viewController = try! OKViewControllerTypeForCoordinator(gameCoordinator: gameCoordinator)
| |- warning: sending 'gameCoordinator.some' risks causing data races; this is an error in the Swift 6 language mode
| `- note: sending task-isolated 'gameCoordinator.some' to main actor-isolated initializer 'init(gameCoordinator:)' risks causing data races between main actor-isolated and task-isolated uses
112 | super.init()
113 | }
[262/263] Compiling OctopusKit OctopusUI.swift
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Core/Launch/OctopusKit+Logs.swift:25:16: warning: static property 'logForResources' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
23 |
24 | /// A log for operations that involve loading, downloading, caching and writing game assets and related resources.
25 | static var logForResources = OKLog(title: "Resources", prefix: "📦", suffix: "📦")
| |- warning: static property 'logForResources' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'logForResources' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'logForResources' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
26 |
27 | /// A log for the cycle of turn updates in a turn-based game.
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Core/Launch/OctopusKit+Logs.swift:42:16: warning: static property 'logForDebug' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
40 |
41 | /// A log for verbose debugging information.
42 | static var logForDebug = OKLog(title: "Debugging", prefix: "🐞")
| |- warning: static property 'logForDebug' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'logForDebug' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'logForDebug' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
43 |
44 | /// A log for developer tips to assist with fixing warnings and errors.
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Core/Launch/OctopusKit+Logs.swift:16:16: warning: static property 'logForFramework' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 |
15 | /// A log for core or general engine events.
16 | static var logForFramework = OKLog(title: "Framework", prefix: "⚙️")
| |- warning: static property 'logForFramework' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'logForFramework' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'logForFramework' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |
18 | /// A log for transitions within game states and entity states.
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OKUtility+Graphics.swift:24:51: warning: main actor-isolated property 'particleBirthRate' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
22 | // CREDIT: Apple Adventure Sample
23 | let waitAction = SKAction.wait(forDuration: TimeInterval(duration))
24 | let birthRateSet = SKAction.run { emitter.particleBirthRate = 0.0 }
| `- warning: main actor-isolated property 'particleBirthRate' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
25 | let waitAction2 = SKAction.wait(forDuration: TimeInterval(emitter.particleLifetime + emitter.particleLifetimeRange))
26 | let removeAction = SKAction.removeFromParent()
SpriteKit.SKEmitterNode:28:25: note: mutation of this property is only permitted within the actor
26 | open var xAcceleration: CGFloat { get set }
27 | open var yAcceleration: CGFloat { get set }
28 | @MainActor open var particleBirthRate: CGFloat { get set }
| `- note: mutation of this property is only permitted within the actor
29 | open var numParticlesToEmit: Int { get set }
30 | open var particleLifetime: CGFloat { get set }
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OKUtility+Graphics.swift:25:75: warning: main actor-isolated property 'particleLifetime' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
19 | }
20 |
21 | public static func runOneShotEmitter(emitter: SKEmitterNode, withDuration duration: CGFloat) {
| `- note: add '@MainActor' to make static method 'runOneShotEmitter(emitter:withDuration:)' part of global actor 'MainActor'
22 | // CREDIT: Apple Adventure Sample
23 | let waitAction = SKAction.wait(forDuration: TimeInterval(duration))
24 | let birthRateSet = SKAction.run { emitter.particleBirthRate = 0.0 }
25 | let waitAction2 = SKAction.wait(forDuration: TimeInterval(emitter.particleLifetime + emitter.particleLifetimeRange))
| `- warning: main actor-isolated property 'particleLifetime' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
26 | let removeAction = SKAction.removeFromParent()
27 |
SpriteKit.SKEmitterNode:30:14: note: property declared here
28 | @MainActor open var particleBirthRate: CGFloat { get set }
29 | open var numParticlesToEmit: Int { get set }
30 | open var particleLifetime: CGFloat { get set }
| `- note: property declared here
31 | open var particleLifetimeRange: CGFloat { get set }
32 | open var particleRotation: CGFloat { get set }
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OKUtility+Graphics.swift:25:102: warning: main actor-isolated property 'particleLifetimeRange' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
19 | }
20 |
21 | public static func runOneShotEmitter(emitter: SKEmitterNode, withDuration duration: CGFloat) {
| `- note: add '@MainActor' to make static method 'runOneShotEmitter(emitter:withDuration:)' part of global actor 'MainActor'
22 | // CREDIT: Apple Adventure Sample
23 | let waitAction = SKAction.wait(forDuration: TimeInterval(duration))
24 | let birthRateSet = SKAction.run { emitter.particleBirthRate = 0.0 }
25 | let waitAction2 = SKAction.wait(forDuration: TimeInterval(emitter.particleLifetime + emitter.particleLifetimeRange))
| `- warning: main actor-isolated property 'particleLifetimeRange' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
26 | let removeAction = SKAction.removeFromParent()
27 |
SpriteKit.SKEmitterNode:31:14: note: property declared here
29 | open var numParticlesToEmit: Int { get set }
30 | open var particleLifetime: CGFloat { get set }
31 | open var particleLifetimeRange: CGFloat { get set }
| `- note: property declared here
32 | open var particleRotation: CGFloat { get set }
33 | open var particleRotationRange: CGFloat { get set }
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OKUtility+Graphics.swift:29:17: warning: call to main actor-isolated instance method 'run' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
19 | }
20 |
21 | public static func runOneShotEmitter(emitter: SKEmitterNode, withDuration duration: CGFloat) {
| `- note: add '@MainActor' to make static method 'runOneShotEmitter(emitter:withDuration:)' part of global actor 'MainActor'
22 | // CREDIT: Apple Adventure Sample
23 | let waitAction = SKAction.wait(forDuration: TimeInterval(duration))
:
27 |
28 | let sequence = [waitAction, birthRateSet, waitAction2, removeAction] // Correction: var changed to let
29 | emitter.run(SKAction.sequence(sequence))
| `- warning: call to main actor-isolated instance method 'run' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
30 | }
31 |
SpriteKit.SKNode:80:26: note: calls to instance method 'run' from outside of its actor context are implicitly asynchronous
78 | open func objectForKeyedSubscript(_ name: String) -> [SKNode]
79 | open func inParentHierarchy(_ parent: SKNode) -> Bool
80 | @MainActor open func run(_ action: SKAction)
| `- note: calls to instance method 'run' from outside of its actor context are implicitly asynchronous
81 | @available(swift, obsoleted: 3, renamed: "run(_:)")
82 | open func runAction(_ action: SKAction)
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OctopusKit+Caches.swift:18:16: warning: static property 'textureAtlases' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
16 | // MARK: - Graphics
17 |
18 | static var textureAtlases: OKCache<String, SKTextureAtlas> = {
| |- warning: static property 'textureAtlases' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'textureAtlases' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'textureAtlases' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
19 |
20 | let cache = OKCache<String, SKTextureAtlas> { key in
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OctopusKit+Caches.swift:30:16: warning: static property 'textures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
28 | }()
29 |
30 | static var textures: OKCache<String, SKTexture> = {
| |- warning: static property 'textures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'textures' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'textures' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
31 |
32 | let cache = OKCache<String, SKTexture> { key in
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OctopusKit+Caches.swift:42:16: warning: static property 'shaders' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
40 | }()
41 |
42 | static var shaders: OKCache<String, SKShader> = {
| |- warning: static property 'shaders' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'shaders' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'shaders' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
43 |
44 | let cache = OKCache<String, SKShader> { key in
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/Logging/OKLog.swift:48:23: warning: static property 'printAsCSV' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
46 | ///
47 | /// See the `OKEntry.csv` property for a list of the values i.e. columns.
48 | public static var printAsCSV: Bool = false
| |- warning: static property 'printAsCSV' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'printAsCSV' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'printAsCSV' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
49 |
50 | /// The separator to print between values when `printAsCSV` is `true`. Default: `tab`
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/Logging/OKLog.swift:51:23: warning: static property 'csvDelimiter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
49 |
50 | /// The separator to print between values when `printAsCSV` is `true`. Default: `tab`
51 | public static var csvDelimiter: String = "\t"
| |- warning: static property 'csvDelimiter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'csvDelimiter' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'csvDelimiter' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
52 |
53 | // MARK: Padding
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/Logging/OKLog.swift:43:23: warning: static property 'printTextOnSecondLine' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
41 |
42 | /// If `true` then an entry is printed on at least 2 lines in the debug console, where the time and calling file is on the first line and the text is on the second line.
43 | public static var printTextOnSecondLine: Bool = false
| |- warning: static property 'printTextOnSecondLine' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'printTextOnSecondLine' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'printTextOnSecondLine' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
44 |
45 | /// If `true` then debug console output is printed in CSV format, that may then be copied into a spreadsheet table such as Numbers etc.
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/Logging/OKLog.swift:37:23: warning: static property 'printEmptyLineBetweenEntries' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
35 |
36 | /// If `true` then an empty line is printed between each entry in the debug console.
37 | public static var printEmptyLineBetweenEntries: Bool = false
| |- warning: static property 'printEmptyLineBetweenEntries' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'printEmptyLineBetweenEntries' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'printEmptyLineBetweenEntries' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
38 |
39 | /// If `true` then an empty line is printed between entries with different frame counts (e.g. F0 and F1).
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/Logging/OKLog.swift:68:23: warning: static property 'lastFrameLogged' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
66 |
67 | /// Stores the frame number during the most recent log entry, so we can mark the beginning of a new frame to make logs easier to read.
68 | public static var lastFrameLogged: UInt64 = 0 // Not fileprivate(set) so functions can be @inlinable
| |- warning: static property 'lastFrameLogged' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'lastFrameLogged' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'lastFrameLogged' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
69 |
70 | /// Returns the `currentFrameNumber` of `OctopusKit.shared.currentScene`, if available, otherwise `0`.
SpriteKit.SKNode:36:14: warning: main actor-isolated property 'name' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
34 | open var parent: SKNode? { get }
35 | open var children: [SKNode] { get }
36 | open var name: String? { get set }
| `- warning: main actor-isolated property 'name' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
37 | open var scene: SKScene? { get }
38 | open var physicsBody: SKPhysicsBody? { get set }
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/Protocols/Nameable.swift:18:24: note: add '@preconcurrency' to the 'Nameable' conformance to defer isolation checking to run time
12 | /// A protocol for types that have a `name` property.
13 | public protocol Nameable {
14 | var name: String? { get }
| `- note: 'name' declared here
15 | }
16 |
17 | extension OKEntity: Nameable {}
18 | extension SKNode: Nameable {}
| `- note: add '@preconcurrency' to the 'Nameable' conformance to defer isolation checking to run time
19 | extension SKTileGroup: Nameable {}
20 |
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/SwiftUI/OKViewControllerRepresentable.swift:111:40: warning: call to main actor-isolated initializer 'init(gameCoordinator:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
109 |
110 | init(gameCoordinator: OKGameCoordinator) {
111 | self.viewController = try! OKViewControllerTypeForCoordinator(gameCoordinator: gameCoordinator)
| `- warning: call to main actor-isolated initializer 'init(gameCoordinator:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
112 | super.init()
113 | }
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Core/Launch/OKViewController.swift:64:21: note: calls to initializer 'init(gameCoordinator:)' from outside of its actor context are implicitly asynchronous
62 | // MARK: - Life Cycle
63 |
64 | public required init(gameCoordinator: OKGameCoordinator? = nil) throws {
| `- note: calls to initializer 'init(gameCoordinator:)' from outside of its actor context are implicitly asynchronous
65 |
66 | // To support easy SwiftUI usage...
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/SwiftUI/OKViewControllerRepresentable.swift:111:40: warning: sending 'gameCoordinator.some' risks causing data races; this is an error in the Swift 6 language mode
109 |
110 | init(gameCoordinator: OKGameCoordinator) {
111 | self.viewController = try! OKViewControllerTypeForCoordinator(gameCoordinator: gameCoordinator)
| |- warning: sending 'gameCoordinator.some' risks causing data races; this is an error in the Swift 6 language mode
| `- note: sending task-isolated 'gameCoordinator.some' to main actor-isolated initializer 'init(gameCoordinator:)' risks causing data races between main actor-isolated and task-isolated uses
112 | super.init()
113 | }
[263/263] Compiling OctopusKit resource_bundle_accessor.swift
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Core/Launch/OctopusKit+Logs.swift:25:16: warning: static property 'logForResources' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
23 |
24 | /// A log for operations that involve loading, downloading, caching and writing game assets and related resources.
25 | static var logForResources = OKLog(title: "Resources", prefix: "📦", suffix: "📦")
| |- warning: static property 'logForResources' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'logForResources' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'logForResources' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
26 |
27 | /// A log for the cycle of turn updates in a turn-based game.
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Core/Launch/OctopusKit+Logs.swift:42:16: warning: static property 'logForDebug' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
40 |
41 | /// A log for verbose debugging information.
42 | static var logForDebug = OKLog(title: "Debugging", prefix: "🐞")
| |- warning: static property 'logForDebug' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'logForDebug' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'logForDebug' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
43 |
44 | /// A log for developer tips to assist with fixing warnings and errors.
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Core/Launch/OctopusKit+Logs.swift:16:16: warning: static property 'logForFramework' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 |
15 | /// A log for core or general engine events.
16 | static var logForFramework = OKLog(title: "Framework", prefix: "⚙️")
| |- warning: static property 'logForFramework' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'logForFramework' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'logForFramework' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |
18 | /// A log for transitions within game states and entity states.
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OKUtility+Graphics.swift:24:51: warning: main actor-isolated property 'particleBirthRate' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
22 | // CREDIT: Apple Adventure Sample
23 | let waitAction = SKAction.wait(forDuration: TimeInterval(duration))
24 | let birthRateSet = SKAction.run { emitter.particleBirthRate = 0.0 }
| `- warning: main actor-isolated property 'particleBirthRate' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
25 | let waitAction2 = SKAction.wait(forDuration: TimeInterval(emitter.particleLifetime + emitter.particleLifetimeRange))
26 | let removeAction = SKAction.removeFromParent()
SpriteKit.SKEmitterNode:28:25: note: mutation of this property is only permitted within the actor
26 | open var xAcceleration: CGFloat { get set }
27 | open var yAcceleration: CGFloat { get set }
28 | @MainActor open var particleBirthRate: CGFloat { get set }
| `- note: mutation of this property is only permitted within the actor
29 | open var numParticlesToEmit: Int { get set }
30 | open var particleLifetime: CGFloat { get set }
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OKUtility+Graphics.swift:25:75: warning: main actor-isolated property 'particleLifetime' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
19 | }
20 |
21 | public static func runOneShotEmitter(emitter: SKEmitterNode, withDuration duration: CGFloat) {
| `- note: add '@MainActor' to make static method 'runOneShotEmitter(emitter:withDuration:)' part of global actor 'MainActor'
22 | // CREDIT: Apple Adventure Sample
23 | let waitAction = SKAction.wait(forDuration: TimeInterval(duration))
24 | let birthRateSet = SKAction.run { emitter.particleBirthRate = 0.0 }
25 | let waitAction2 = SKAction.wait(forDuration: TimeInterval(emitter.particleLifetime + emitter.particleLifetimeRange))
| `- warning: main actor-isolated property 'particleLifetime' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
26 | let removeAction = SKAction.removeFromParent()
27 |
SpriteKit.SKEmitterNode:30:14: note: property declared here
28 | @MainActor open var particleBirthRate: CGFloat { get set }
29 | open var numParticlesToEmit: Int { get set }
30 | open var particleLifetime: CGFloat { get set }
| `- note: property declared here
31 | open var particleLifetimeRange: CGFloat { get set }
32 | open var particleRotation: CGFloat { get set }
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OKUtility+Graphics.swift:25:102: warning: main actor-isolated property 'particleLifetimeRange' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
19 | }
20 |
21 | public static func runOneShotEmitter(emitter: SKEmitterNode, withDuration duration: CGFloat) {
| `- note: add '@MainActor' to make static method 'runOneShotEmitter(emitter:withDuration:)' part of global actor 'MainActor'
22 | // CREDIT: Apple Adventure Sample
23 | let waitAction = SKAction.wait(forDuration: TimeInterval(duration))
24 | let birthRateSet = SKAction.run { emitter.particleBirthRate = 0.0 }
25 | let waitAction2 = SKAction.wait(forDuration: TimeInterval(emitter.particleLifetime + emitter.particleLifetimeRange))
| `- warning: main actor-isolated property 'particleLifetimeRange' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
26 | let removeAction = SKAction.removeFromParent()
27 |
SpriteKit.SKEmitterNode:31:14: note: property declared here
29 | open var numParticlesToEmit: Int { get set }
30 | open var particleLifetime: CGFloat { get set }
31 | open var particleLifetimeRange: CGFloat { get set }
| `- note: property declared here
32 | open var particleRotation: CGFloat { get set }
33 | open var particleRotationRange: CGFloat { get set }
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OKUtility+Graphics.swift:29:17: warning: call to main actor-isolated instance method 'run' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
19 | }
20 |
21 | public static func runOneShotEmitter(emitter: SKEmitterNode, withDuration duration: CGFloat) {
| `- note: add '@MainActor' to make static method 'runOneShotEmitter(emitter:withDuration:)' part of global actor 'MainActor'
22 | // CREDIT: Apple Adventure Sample
23 | let waitAction = SKAction.wait(forDuration: TimeInterval(duration))
:
27 |
28 | let sequence = [waitAction, birthRateSet, waitAction2, removeAction] // Correction: var changed to let
29 | emitter.run(SKAction.sequence(sequence))
| `- warning: call to main actor-isolated instance method 'run' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
30 | }
31 |
SpriteKit.SKNode:80:26: note: calls to instance method 'run' from outside of its actor context are implicitly asynchronous
78 | open func objectForKeyedSubscript(_ name: String) -> [SKNode]
79 | open func inParentHierarchy(_ parent: SKNode) -> Bool
80 | @MainActor open func run(_ action: SKAction)
| `- note: calls to instance method 'run' from outside of its actor context are implicitly asynchronous
81 | @available(swift, obsoleted: 3, renamed: "run(_:)")
82 | open func runAction(_ action: SKAction)
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OctopusKit+Caches.swift:18:16: warning: static property 'textureAtlases' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
16 | // MARK: - Graphics
17 |
18 | static var textureAtlases: OKCache<String, SKTextureAtlas> = {
| |- warning: static property 'textureAtlases' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'textureAtlases' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'textureAtlases' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
19 |
20 | let cache = OKCache<String, SKTextureAtlas> { key in
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OctopusKit+Caches.swift:30:16: warning: static property 'textures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
28 | }()
29 |
30 | static var textures: OKCache<String, SKTexture> = {
| |- warning: static property 'textures' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'textures' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'textures' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
31 |
32 | let cache = OKCache<String, SKTexture> { key in
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/OctopusKit+Caches.swift:42:16: warning: static property 'shaders' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
40 | }()
41 |
42 | static var shaders: OKCache<String, SKShader> = {
| |- warning: static property 'shaders' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'shaders' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'shaders' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
43 |
44 | let cache = OKCache<String, SKShader> { key in
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/Logging/OKLog.swift:48:23: warning: static property 'printAsCSV' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
46 | ///
47 | /// See the `OKEntry.csv` property for a list of the values i.e. columns.
48 | public static var printAsCSV: Bool = false
| |- warning: static property 'printAsCSV' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'printAsCSV' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'printAsCSV' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
49 |
50 | /// The separator to print between values when `printAsCSV` is `true`. Default: `tab`
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/Logging/OKLog.swift:51:23: warning: static property 'csvDelimiter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
49 |
50 | /// The separator to print between values when `printAsCSV` is `true`. Default: `tab`
51 | public static var csvDelimiter: String = "\t"
| |- warning: static property 'csvDelimiter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'csvDelimiter' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'csvDelimiter' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
52 |
53 | // MARK: Padding
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/Logging/OKLog.swift:43:23: warning: static property 'printTextOnSecondLine' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
41 |
42 | /// If `true` then an entry is printed on at least 2 lines in the debug console, where the time and calling file is on the first line and the text is on the second line.
43 | public static var printTextOnSecondLine: Bool = false
| |- warning: static property 'printTextOnSecondLine' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'printTextOnSecondLine' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'printTextOnSecondLine' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
44 |
45 | /// If `true` then debug console output is printed in CSV format, that may then be copied into a spreadsheet table such as Numbers etc.
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/Logging/OKLog.swift:37:23: warning: static property 'printEmptyLineBetweenEntries' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
35 |
36 | /// If `true` then an empty line is printed between each entry in the debug console.
37 | public static var printEmptyLineBetweenEntries: Bool = false
| |- warning: static property 'printEmptyLineBetweenEntries' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'printEmptyLineBetweenEntries' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'printEmptyLineBetweenEntries' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
38 |
39 | /// If `true` then an empty line is printed between entries with different frame counts (e.g. F0 and F1).
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/Logging/OKLog.swift:68:23: warning: static property 'lastFrameLogged' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
66 |
67 | /// Stores the frame number during the most recent log entry, so we can mark the beginning of a new frame to make logs easier to read.
68 | public static var lastFrameLogged: UInt64 = 0 // Not fileprivate(set) so functions can be @inlinable
| |- warning: static property 'lastFrameLogged' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'lastFrameLogged' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'lastFrameLogged' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
69 |
70 | /// Returns the `currentFrameNumber` of `OctopusKit.shared.currentScene`, if available, otherwise `0`.
SpriteKit.SKNode:36:14: warning: main actor-isolated property 'name' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
34 | open var parent: SKNode? { get }
35 | open var children: [SKNode] { get }
36 | open var name: String? { get set }
| `- warning: main actor-isolated property 'name' cannot be used to satisfy nonisolated protocol requirement; this is an error in the Swift 6 language mode
37 | open var scene: SKScene? { get }
38 | open var physicsBody: SKPhysicsBody? { get set }
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Support & Utility/Protocols/Nameable.swift:18:24: note: add '@preconcurrency' to the 'Nameable' conformance to defer isolation checking to run time
12 | /// A protocol for types that have a `name` property.
13 | public protocol Nameable {
14 | var name: String? { get }
| `- note: 'name' declared here
15 | }
16 |
17 | extension OKEntity: Nameable {}
18 | extension SKNode: Nameable {}
| `- note: add '@preconcurrency' to the 'Nameable' conformance to defer isolation checking to run time
19 | extension SKTileGroup: Nameable {}
20 |
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/SwiftUI/OKViewControllerRepresentable.swift:111:40: warning: call to main actor-isolated initializer 'init(gameCoordinator:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
109 |
110 | init(gameCoordinator: OKGameCoordinator) {
111 | self.viewController = try! OKViewControllerTypeForCoordinator(gameCoordinator: gameCoordinator)
| `- warning: call to main actor-isolated initializer 'init(gameCoordinator:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
112 | super.init()
113 | }
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Core/Launch/OKViewController.swift:64:21: note: calls to initializer 'init(gameCoordinator:)' from outside of its actor context are implicitly asynchronous
62 | // MARK: - Life Cycle
63 |
64 | public required init(gameCoordinator: OKGameCoordinator? = nil) throws {
| `- note: calls to initializer 'init(gameCoordinator:)' from outside of its actor context are implicitly asynchronous
65 |
66 | // To support easy SwiftUI usage...
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/SwiftUI/OKViewControllerRepresentable.swift:111:40: warning: sending 'gameCoordinator.some' risks causing data races; this is an error in the Swift 6 language mode
109 |
110 | init(gameCoordinator: OKGameCoordinator) {
111 | self.viewController = try! OKViewControllerTypeForCoordinator(gameCoordinator: gameCoordinator)
| |- warning: sending 'gameCoordinator.some' risks causing data races; this is an error in the Swift 6 language mode
| `- note: sending task-isolated 'gameCoordinator.some' to main actor-isolated initializer 'init(gameCoordinator:)' risks causing data races between main actor-isolated and task-isolated uses
112 | super.init()
113 | }
warning: 'spi-builder-workspace': found 1 file(s) which are unhandled; explicitly declare them as resources or exclude from the target
/Users/admin/builder/spi-builder-workspace/Sources/OctopusKit/Assets/OctopusKit.xcassets
BUILD FAILURE 6.0 macosSpm