The Swift Package Index logo.Swift Package Index

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

Build Information

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