The Swift Package Index logo.Swift Package Index

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

Build Information

Successful build of KeyboardShortcuts, reference 2.3.0 (045cf1), with Swift 6.1 for macOS (SPM) on 30 Apr 2025 20:17:37 UTC.

Swift 6 data race errors: 17

Build Command

env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures

Build Log

========================================
RunAll
========================================
Builder version: 4.61.2
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/sindresorhus/KeyboardShortcuts.git
Reference: 2.3.0
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/sindresorhus/KeyboardShortcuts
 * tag               2.3.0      -> FETCH_HEAD
HEAD is now at 045cf17 Add `Shortcut#nsMenuItemKeyEquivalent` property
Cloned https://github.com/sindresorhus/KeyboardShortcuts.git
Revision (git rev-parse @):
045cf174010beb335fa1d2567d18c057b8787165
SPI manifest file found: $PWD/.spi.yml
SUCCESS checkout https://github.com/sindresorhus/KeyboardShortcuts.git at 2.3.0
========================================
ResolveProductDependencies
========================================
Resolving dependencies ...
{
  "identity": ".resolve-product-dependencies",
  "name": "resolve-dependencies",
  "url": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
  "version": "unspecified",
  "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
  "dependencies": [
    {
      "identity": "keyboardshortcuts",
      "name": "KeyboardShortcuts",
      "url": "https://github.com/sindresorhus/KeyboardShortcuts.git",
      "version": "unspecified",
      "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/KeyboardShortcuts",
      "dependencies": [
      ]
    }
  ]
}
Fetching https://github.com/sindresorhus/KeyboardShortcuts.git
[1/6707] Fetching keyboardshortcuts
Fetched https://github.com/sindresorhus/KeyboardShortcuts.git from cache (1.04s)
Creating working copy for https://github.com/sindresorhus/KeyboardShortcuts.git
Working copy of https://github.com/sindresorhus/KeyboardShortcuts.git resolved at 2.3.0 (045cf17)
warning: '.resolve-product-dependencies': dependency 'keyboardshortcuts' is not used by any target
Found 0 product dependencies
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.1
Building package at path:  $PWD
https://github.com/sindresorhus/KeyboardShortcuts.git
https://github.com/sindresorhus/KeyboardShortcuts.git
{
  "default_localization" : "en",
  "dependencies" : [
  ],
  "manifest_display_name" : "KeyboardShortcuts",
  "name" : "KeyboardShortcuts",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "10.15"
    }
  ],
  "products" : [
    {
      "name" : "KeyboardShortcuts",
      "targets" : [
        "KeyboardShortcuts"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "KeyboardShortcutsTests",
      "module_type" : "SwiftTarget",
      "name" : "KeyboardShortcutsTests",
      "path" : "Tests/KeyboardShortcutsTests",
      "sources" : [
        "KeyboardShortcutsTests.swift",
        "Utilities.swift"
      ],
      "target_dependencies" : [
        "KeyboardShortcuts"
      ],
      "type" : "test"
    },
    {
      "c99name" : "KeyboardShortcuts",
      "module_type" : "SwiftTarget",
      "name" : "KeyboardShortcuts",
      "path" : "Sources/KeyboardShortcuts",
      "product_memberships" : [
        "KeyboardShortcuts"
      ],
      "resources" : [
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/Localization/ar.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "ar"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/Localization/cs.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "cs"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/Localization/de.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "de"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/Localization/en.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "en"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/Localization/es.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "es"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/Localization/fr.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "fr"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/Localization/hu.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "hu"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/Localization/ja.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "ja"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/Localization/ko.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "ko"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/Localization/nl.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "nl"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/Localization/pt-BR.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "pt-br"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/Localization/ru.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "ru"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/Localization/sk.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "sk"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/Localization/zh-Hans.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "zh-hans"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/Localization/zh-TW.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "zh-tw"
            }
          }
        }
      ],
      "sources" : [
        "CarbonKeyboardShortcuts.swift",
        "Key.swift",
        "KeyboardShortcuts.swift",
        "NSMenuItem++.swift",
        "Name.swift",
        "Recorder.swift",
        "RecorderCocoa.swift",
        "Shortcut.swift",
        "Utilities.swift",
        "ViewModifiers.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.11"
}
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures
Building for debugging...
[0/18] Write sources
[1/18] Copying Localizable.strings
[12/18] Copying Info.plist
[13/18] Copying Localizable.strings
[17/18] Write swift-version-2F0A5646E1D333AE.txt
[19/29] Compiling KeyboardShortcuts NSMenuItem++.swift
/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/NSMenuItem++.swift:75:5: warning: capture of 'set()' with non-sendable type '() -> ()' in a '@Sendable' closure
 73 |
 74 | 			DispatchQueue.main.async { // TODO: Use `Task { @MainActor`
 75 | 				set()
    |     |- warning: capture of 'set()' with non-sendable type '() -> ()' in a '@Sendable' closure
    |     `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
 76 | 			}
 77 | 		}
[20/29] Compiling KeyboardShortcuts Name.swift
[21/29] Compiling KeyboardShortcuts KeyboardShortcuts.swift
/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/KeyboardShortcuts.swift:8:21: warning: static property 'registeredShortcuts' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
  6 | */
  7 | public enum KeyboardShortcuts {
  8 | 	private static var registeredShortcuts = Set<Shortcut>()
    |                     |- warning: static property 'registeredShortcuts' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: convert 'registeredShortcuts' to a 'let' constant to make 'Sendable' shared state immutable
    |                     |- note: add '@MainActor' to make static property 'registeredShortcuts' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
  9 |
 10 | 	private static var legacyKeyDownHandlers = [Name: [() -> Void]]()
/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/KeyboardShortcuts.swift:10:21: warning: static property 'legacyKeyDownHandlers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
  8 | 	private static var registeredShortcuts = Set<Shortcut>()
  9 |
 10 | 	private static var legacyKeyDownHandlers = [Name: [() -> Void]]()
    |                     |- warning: static property 'legacyKeyDownHandlers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: convert 'legacyKeyDownHandlers' to a 'let' constant to make 'Sendable' shared state immutable
    |                     |- note: add '@MainActor' to make static property 'legacyKeyDownHandlers' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 11 | 	private static var legacyKeyUpHandlers = [Name: [() -> Void]]()
 12 |
/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/KeyboardShortcuts.swift:11:21: warning: static property 'legacyKeyUpHandlers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
  9 |
 10 | 	private static var legacyKeyDownHandlers = [Name: [() -> Void]]()
 11 | 	private static var legacyKeyUpHandlers = [Name: [() -> Void]]()
    |                     |- warning: static property 'legacyKeyUpHandlers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: convert 'legacyKeyUpHandlers' to a 'let' constant to make 'Sendable' shared state immutable
    |                     |- note: add '@MainActor' to make static property 'legacyKeyUpHandlers' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 12 |
 13 | 	private static var streamKeyDownHandlers = [Name: [UUID: () -> Void]]()
/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/KeyboardShortcuts.swift:13:21: warning: static property 'streamKeyDownHandlers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 11 | 	private static var legacyKeyUpHandlers = [Name: [() -> Void]]()
 12 |
 13 | 	private static var streamKeyDownHandlers = [Name: [UUID: () -> Void]]()
    |                     |- warning: static property 'streamKeyDownHandlers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: convert 'streamKeyDownHandlers' to a 'let' constant to make 'Sendable' shared state immutable
    |                     |- note: add '@MainActor' to make static property 'streamKeyDownHandlers' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 14 | 	private static var streamKeyUpHandlers = [Name: [UUID: () -> Void]]()
 15 |
/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/KeyboardShortcuts.swift:14:21: warning: static property 'streamKeyUpHandlers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 12 |
 13 | 	private static var streamKeyDownHandlers = [Name: [UUID: () -> Void]]()
 14 | 	private static var streamKeyUpHandlers = [Name: [UUID: () -> Void]]()
    |                     |- warning: static property 'streamKeyUpHandlers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: convert 'streamKeyUpHandlers' to a 'let' constant to make 'Sendable' shared state immutable
    |                     |- note: add '@MainActor' to make static property 'streamKeyUpHandlers' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 15 |
 16 | 	private static var shortcutsForLegacyHandlers: Set<Shortcut> {
/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/KeyboardShortcuts.swift:36:21: warning: static property 'isInitialized' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 34 | 	}
 35 |
 36 | 	private static var isInitialized = false
    |                     |- warning: static property 'isInitialized' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: convert 'isInitialized' to a 'let' constant to make 'Sendable' shared state immutable
    |                     |- note: add '@MainActor' to make static property 'isInitialized' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 37 |
 38 | 	private static var openMenuObserver: NSObjectProtocol?
/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/KeyboardShortcuts.swift:38:21: warning: static property 'openMenuObserver' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 36 | 	private static var isInitialized = false
 37 |
 38 | 	private static var openMenuObserver: NSObjectProtocol?
    |                     |- warning: static property 'openMenuObserver' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: convert 'openMenuObserver' to a 'let' constant to make 'Sendable' shared state immutable
    |                     |- note: add '@MainActor' to make static property 'openMenuObserver' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 39 | 	private static var closeMenuObserver: NSObjectProtocol?
 40 |
/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/KeyboardShortcuts.swift:39:21: warning: static property 'closeMenuObserver' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 37 |
 38 | 	private static var openMenuObserver: NSObjectProtocol?
 39 | 	private static var closeMenuObserver: NSObjectProtocol?
    |                     |- warning: static property 'closeMenuObserver' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: convert 'closeMenuObserver' to a 'let' constant to make 'Sendable' shared state immutable
    |                     |- note: add '@MainActor' to make static property 'closeMenuObserver' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 40 |
 41 | 	/**
/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/KeyboardShortcuts.swift:44:13: warning: static property 'isPaused' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 42 | 	When `true`, event handlers will not be called for registered keyboard shortcuts.
 43 | 	*/
 44 | 	static var isPaused = false
    |             |- warning: static property 'isPaused' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |             |- note: convert 'isPaused' to a 'let' constant to make 'Sendable' shared state immutable
    |             |- note: add '@MainActor' to make static property 'isPaused' part of global actor 'MainActor'
    |             `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 45 |
 46 | 	/**
/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/KeyboardShortcuts.swift:51:20: warning: static property 'isEnabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 49 | 	The default is `true`.
 50 | 	*/
 51 | 	public static var isEnabled = true {
    |                    |- warning: static property 'isEnabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: convert 'isEnabled' to a 'let' constant to make 'Sendable' shared state immutable
    |                    |- note: add '@MainActor' to make static property 'isEnabled' part of global actor 'MainActor'
    |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 52 | 		didSet {
 53 | 			guard isEnabled != oldValue else {
/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/KeyboardShortcuts.swift:81:26: warning: static property 'isMenuOpen' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 79 | 	The main use-case for this is toggling the menu of a menu bar app with a keyboard shortcut.
 80 | 	*/
 81 | 	private(set) static var isMenuOpen = false {
    |                          |- warning: static property 'isMenuOpen' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                          |- note: convert 'isMenuOpen' to a 'let' constant to make 'Sendable' shared state immutable
    |                          |- note: add '@MainActor' to make static property 'isMenuOpen' part of global actor 'MainActor'
    |                          `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 82 | 		didSet {
 83 | 			guard isMenuOpen != oldValue else {
[22/29] Compiling KeyboardShortcuts CarbonKeyboardShortcuts.swift
/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/CarbonKeyboardShortcuts.swift:31:21: warning: static property 'hotKeys' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 29 | 	}
 30 |
 31 | 	private static var hotKeys = [Int: HotKey]()
    |                     |- warning: static property 'hotKeys' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: convert 'hotKeys' to a 'let' constant to make 'Sendable' shared state immutable
    |                     |- note: add '@MainActor' to make static property 'hotKeys' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 32 |
 33 | 	// `SSKS` is just short for `Sindre Sorhus Keyboard Shortcuts`.
/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/CarbonKeyboardShortcuts.swift:38:21: warning: static property 'hotKeyId' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 36 | 	private static let hotKeySignature: UInt32 = 1397967699 // OSType => "SSKS"
 37 |
 38 | 	private static var hotKeyId = 0
    |                     |- warning: static property 'hotKeyId' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: convert 'hotKeyId' to a 'let' constant to make 'Sendable' shared state immutable
    |                     |- note: add '@MainActor' to make static property 'hotKeyId' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 39 | 	private static var eventHandler: EventHandlerRef?
 40 |
/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/CarbonKeyboardShortcuts.swift:39:21: warning: static property 'eventHandler' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 37 |
 38 | 	private static var hotKeyId = 0
 39 | 	private static var eventHandler: EventHandlerRef?
    |                     |- warning: static property 'eventHandler' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: convert 'eventHandler' to a 'let' constant to make 'Sendable' shared state immutable
    |                     |- note: add '@MainActor' to make static property 'eventHandler' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 40 |
 41 | 	private static let hotKeyEventTypes = [
/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/CarbonKeyboardShortcuts.swift:50:21: warning: static property 'keyEventMonitor' is not concurrency-safe because non-'Sendable' type 'RunLoopLocalEventMonitor' may have shared mutable state; this is an error in the Swift 6 language mode
 48 | 	]
 49 |
 50 | 	private static let keyEventMonitor = RunLoopLocalEventMonitor(events: [.keyDown, .keyUp], runLoopMode: .eventTracking) { event in
    |                     |- warning: static property 'keyEventMonitor' is not concurrency-safe because non-'Sendable' type 'RunLoopLocalEventMonitor' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: add '@MainActor' to make static property 'keyEventMonitor' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 51 | 		guard
 52 | 			let eventRef = OpaquePointer(event.eventRef),
/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/Utilities.swift:92:13: note: class 'RunLoopLocalEventMonitor' does not conform to the 'Sendable' protocol
 90 |
 91 |
 92 | final class RunLoopLocalEventMonitor {
    |             `- note: class 'RunLoopLocalEventMonitor' does not conform to the 'Sendable' protocol
 93 | 	private let runLoopMode: RunLoop.Mode
 94 | 	private let callback: (NSEvent) -> NSEvent?
[23/29] Compiling KeyboardShortcuts Key.swift
/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/CarbonKeyboardShortcuts.swift:31:21: warning: static property 'hotKeys' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 29 | 	}
 30 |
 31 | 	private static var hotKeys = [Int: HotKey]()
    |                     |- warning: static property 'hotKeys' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: convert 'hotKeys' to a 'let' constant to make 'Sendable' shared state immutable
    |                     |- note: add '@MainActor' to make static property 'hotKeys' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 32 |
 33 | 	// `SSKS` is just short for `Sindre Sorhus Keyboard Shortcuts`.
/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/CarbonKeyboardShortcuts.swift:38:21: warning: static property 'hotKeyId' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 36 | 	private static let hotKeySignature: UInt32 = 1397967699 // OSType => "SSKS"
 37 |
 38 | 	private static var hotKeyId = 0
    |                     |- warning: static property 'hotKeyId' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: convert 'hotKeyId' to a 'let' constant to make 'Sendable' shared state immutable
    |                     |- note: add '@MainActor' to make static property 'hotKeyId' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 39 | 	private static var eventHandler: EventHandlerRef?
 40 |
/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/CarbonKeyboardShortcuts.swift:39:21: warning: static property 'eventHandler' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 37 |
 38 | 	private static var hotKeyId = 0
 39 | 	private static var eventHandler: EventHandlerRef?
    |                     |- warning: static property 'eventHandler' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: convert 'eventHandler' to a 'let' constant to make 'Sendable' shared state immutable
    |                     |- note: add '@MainActor' to make static property 'eventHandler' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 40 |
 41 | 	private static let hotKeyEventTypes = [
/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/CarbonKeyboardShortcuts.swift:50:21: warning: static property 'keyEventMonitor' is not concurrency-safe because non-'Sendable' type 'RunLoopLocalEventMonitor' may have shared mutable state; this is an error in the Swift 6 language mode
 48 | 	]
 49 |
 50 | 	private static let keyEventMonitor = RunLoopLocalEventMonitor(events: [.keyDown, .keyUp], runLoopMode: .eventTracking) { event in
    |                     |- warning: static property 'keyEventMonitor' is not concurrency-safe because non-'Sendable' type 'RunLoopLocalEventMonitor' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: add '@MainActor' to make static property 'keyEventMonitor' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 51 | 		guard
 52 | 			let eventRef = OpaquePointer(event.eventRef),
/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/Utilities.swift:92:13: note: class 'RunLoopLocalEventMonitor' does not conform to the 'Sendable' protocol
 90 |
 91 |
 92 | final class RunLoopLocalEventMonitor {
    |             `- note: class 'RunLoopLocalEventMonitor' does not conform to the 'Sendable' protocol
 93 | 	private let runLoopMode: RunLoop.Mode
 94 | 	private let callback: (NSEvent) -> NSEvent?
[24/29] Emitting module KeyboardShortcuts
/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/CarbonKeyboardShortcuts.swift:31:21: warning: static property 'hotKeys' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 29 | 	}
 30 |
 31 | 	private static var hotKeys = [Int: HotKey]()
    |                     |- warning: static property 'hotKeys' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: convert 'hotKeys' to a 'let' constant to make 'Sendable' shared state immutable
    |                     |- note: add '@MainActor' to make static property 'hotKeys' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 32 |
 33 | 	// `SSKS` is just short for `Sindre Sorhus Keyboard Shortcuts`.
/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/CarbonKeyboardShortcuts.swift:38:21: warning: static property 'hotKeyId' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 36 | 	private static let hotKeySignature: UInt32 = 1397967699 // OSType => "SSKS"
 37 |
 38 | 	private static var hotKeyId = 0
    |                     |- warning: static property 'hotKeyId' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: convert 'hotKeyId' to a 'let' constant to make 'Sendable' shared state immutable
    |                     |- note: add '@MainActor' to make static property 'hotKeyId' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 39 | 	private static var eventHandler: EventHandlerRef?
 40 |
/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/CarbonKeyboardShortcuts.swift:39:21: warning: static property 'eventHandler' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 37 |
 38 | 	private static var hotKeyId = 0
 39 | 	private static var eventHandler: EventHandlerRef?
    |                     |- warning: static property 'eventHandler' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: convert 'eventHandler' to a 'let' constant to make 'Sendable' shared state immutable
    |                     |- note: add '@MainActor' to make static property 'eventHandler' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 40 |
 41 | 	private static let hotKeyEventTypes = [
/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/CarbonKeyboardShortcuts.swift:50:21: warning: static property 'keyEventMonitor' is not concurrency-safe because non-'Sendable' type 'RunLoopLocalEventMonitor' may have shared mutable state; this is an error in the Swift 6 language mode
 48 | 	]
 49 |
 50 | 	private static let keyEventMonitor = RunLoopLocalEventMonitor(events: [.keyDown, .keyUp], runLoopMode: .eventTracking) { event in
    |                     |- warning: static property 'keyEventMonitor' is not concurrency-safe because non-'Sendable' type 'RunLoopLocalEventMonitor' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: add '@MainActor' to make static property 'keyEventMonitor' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 51 | 		guard
 52 | 			let eventRef = OpaquePointer(event.eventRef),
/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/Utilities.swift:92:13: note: class 'RunLoopLocalEventMonitor' does not conform to the 'Sendable' protocol
 90 |
 91 |
 92 | final class RunLoopLocalEventMonitor {
    |             `- note: class 'RunLoopLocalEventMonitor' does not conform to the 'Sendable' protocol
 93 | 	private let runLoopMode: RunLoop.Mode
 94 | 	private let callback: (NSEvent) -> NSEvent?
/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/KeyboardShortcuts.swift:8:21: warning: static property 'registeredShortcuts' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
  6 | */
  7 | public enum KeyboardShortcuts {
  8 | 	private static var registeredShortcuts = Set<Shortcut>()
    |                     |- warning: static property 'registeredShortcuts' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: convert 'registeredShortcuts' to a 'let' constant to make 'Sendable' shared state immutable
    |                     |- note: add '@MainActor' to make static property 'registeredShortcuts' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
  9 |
 10 | 	private static var legacyKeyDownHandlers = [Name: [() -> Void]]()
/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/KeyboardShortcuts.swift:10:21: warning: static property 'legacyKeyDownHandlers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
  8 | 	private static var registeredShortcuts = Set<Shortcut>()
  9 |
 10 | 	private static var legacyKeyDownHandlers = [Name: [() -> Void]]()
    |                     |- warning: static property 'legacyKeyDownHandlers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: convert 'legacyKeyDownHandlers' to a 'let' constant to make 'Sendable' shared state immutable
    |                     |- note: add '@MainActor' to make static property 'legacyKeyDownHandlers' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 11 | 	private static var legacyKeyUpHandlers = [Name: [() -> Void]]()
 12 |
/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/KeyboardShortcuts.swift:11:21: warning: static property 'legacyKeyUpHandlers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
  9 |
 10 | 	private static var legacyKeyDownHandlers = [Name: [() -> Void]]()
 11 | 	private static var legacyKeyUpHandlers = [Name: [() -> Void]]()
    |                     |- warning: static property 'legacyKeyUpHandlers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: convert 'legacyKeyUpHandlers' to a 'let' constant to make 'Sendable' shared state immutable
    |                     |- note: add '@MainActor' to make static property 'legacyKeyUpHandlers' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 12 |
 13 | 	private static var streamKeyDownHandlers = [Name: [UUID: () -> Void]]()
/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/KeyboardShortcuts.swift:13:21: warning: static property 'streamKeyDownHandlers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 11 | 	private static var legacyKeyUpHandlers = [Name: [() -> Void]]()
 12 |
 13 | 	private static var streamKeyDownHandlers = [Name: [UUID: () -> Void]]()
    |                     |- warning: static property 'streamKeyDownHandlers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: convert 'streamKeyDownHandlers' to a 'let' constant to make 'Sendable' shared state immutable
    |                     |- note: add '@MainActor' to make static property 'streamKeyDownHandlers' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 14 | 	private static var streamKeyUpHandlers = [Name: [UUID: () -> Void]]()
 15 |
/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/KeyboardShortcuts.swift:14:21: warning: static property 'streamKeyUpHandlers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 12 |
 13 | 	private static var streamKeyDownHandlers = [Name: [UUID: () -> Void]]()
 14 | 	private static var streamKeyUpHandlers = [Name: [UUID: () -> Void]]()
    |                     |- warning: static property 'streamKeyUpHandlers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: convert 'streamKeyUpHandlers' to a 'let' constant to make 'Sendable' shared state immutable
    |                     |- note: add '@MainActor' to make static property 'streamKeyUpHandlers' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 15 |
 16 | 	private static var shortcutsForLegacyHandlers: Set<Shortcut> {
/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/KeyboardShortcuts.swift:36:21: warning: static property 'isInitialized' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 34 | 	}
 35 |
 36 | 	private static var isInitialized = false
    |                     |- warning: static property 'isInitialized' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: convert 'isInitialized' to a 'let' constant to make 'Sendable' shared state immutable
    |                     |- note: add '@MainActor' to make static property 'isInitialized' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 37 |
 38 | 	private static var openMenuObserver: NSObjectProtocol?
/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/KeyboardShortcuts.swift:38:21: warning: static property 'openMenuObserver' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 36 | 	private static var isInitialized = false
 37 |
 38 | 	private static var openMenuObserver: NSObjectProtocol?
    |                     |- warning: static property 'openMenuObserver' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: convert 'openMenuObserver' to a 'let' constant to make 'Sendable' shared state immutable
    |                     |- note: add '@MainActor' to make static property 'openMenuObserver' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 39 | 	private static var closeMenuObserver: NSObjectProtocol?
 40 |
/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/KeyboardShortcuts.swift:39:21: warning: static property 'closeMenuObserver' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 37 |
 38 | 	private static var openMenuObserver: NSObjectProtocol?
 39 | 	private static var closeMenuObserver: NSObjectProtocol?
    |                     |- warning: static property 'closeMenuObserver' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: convert 'closeMenuObserver' to a 'let' constant to make 'Sendable' shared state immutable
    |                     |- note: add '@MainActor' to make static property 'closeMenuObserver' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 40 |
 41 | 	/**
/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/KeyboardShortcuts.swift:44:13: warning: static property 'isPaused' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 42 | 	When `true`, event handlers will not be called for registered keyboard shortcuts.
 43 | 	*/
 44 | 	static var isPaused = false
    |             |- warning: static property 'isPaused' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |             |- note: convert 'isPaused' to a 'let' constant to make 'Sendable' shared state immutable
    |             |- note: add '@MainActor' to make static property 'isPaused' part of global actor 'MainActor'
    |             `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 45 |
 46 | 	/**
/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/KeyboardShortcuts.swift:51:20: warning: static property 'isEnabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 49 | 	The default is `true`.
 50 | 	*/
 51 | 	public static var isEnabled = true {
    |                    |- warning: static property 'isEnabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: convert 'isEnabled' to a 'let' constant to make 'Sendable' shared state immutable
    |                    |- note: add '@MainActor' to make static property 'isEnabled' part of global actor 'MainActor'
    |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 52 | 		didSet {
 53 | 			guard isEnabled != oldValue else {
/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/KeyboardShortcuts.swift:81:26: warning: static property 'isMenuOpen' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 79 | 	The main use-case for this is toggling the menu of a menu bar app with a keyboard shortcut.
 80 | 	*/
 81 | 	private(set) static var isMenuOpen = false {
    |                          |- warning: static property 'isMenuOpen' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                          |- note: convert 'isMenuOpen' to a 'let' constant to make 'Sendable' shared state immutable
    |                          |- note: add '@MainActor' to make static property 'isMenuOpen' part of global actor 'MainActor'
    |                          `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 82 | 		didSet {
 83 | 			guard isMenuOpen != oldValue else {
/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/Shortcut.swift:745:13: warning: main actor-isolated property 'description' cannot be used to satisfy nonisolated requirement from protocol 'CustomStringConvertible'; this is an error in the Swift 6 language mode
720 | }
721 |
722 | extension KeyboardShortcuts.Shortcut: CustomStringConvertible {
    |                                       `- note: add '@preconcurrency' to the 'CustomStringConvertible' conformance to defer isolation checking to run time
723 | 	/**
724 | 	The string representation of the keyboard shortcut.
    :
743 |
744 | 	@MainActor
745 | 	public var description: String {
    |             `- warning: main actor-isolated property 'description' cannot be used to satisfy nonisolated requirement from protocol 'CustomStringConvertible'; this is an error in the Swift 6 language mode
746 | 		// TODO: `description` needs to be `nonisolated`
747 | 		presentableDescription
/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/Utilities.swift:399:13: warning: static property 'functionKeys' is not concurrency-safe because non-'Sendable' type 'Set<NSEvent.SpecialKey>' may have shared mutable state; this is an error in the Swift 6 language mode
397 |
398 | extension NSEvent.SpecialKey {
399 | 	static let functionKeys: Set<Self> = [
    |             `- warning: static property 'functionKeys' is not concurrency-safe because non-'Sendable' type 'Set<NSEvent.SpecialKey>' may have shared mutable state; this is an error in the Swift 6 language mode
400 | 		.f1,
401 | 		.f2,
AppKit.NSEvent.SpecialKey:2:15: note: struct 'SpecialKey' does not conform to the 'Sendable' protocol
1 | class NSEvent {
2 | public struct SpecialKey : RawRepresentable, Equatable, Hashable {
  |               `- note: struct 'SpecialKey' does not conform to the 'Sendable' protocol
3 |     public init(rawValue: Int)
4 |     public let rawValue: Int
/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/Utilities.swift:1:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'AppKit'
  1 | import SwiftUI
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'AppKit'
  2 |
  3 | #if os(macOS)
    :
397 |
398 | extension NSEvent.SpecialKey {
399 | 	static let functionKeys: Set<Self> = [
    |             |- note: add '@MainActor' to make static property 'functionKeys' part of global actor 'MainActor'
    |             `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
400 | 		.f1,
401 | 		.f2,
[25/29] Compiling KeyboardShortcuts Recorder.swift
[26/30] Compiling KeyboardShortcuts RecorderCocoa.swift
/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/RecorderCocoa.swift:126:28: warning: main actor-isolated property 'shortcutName' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
 41 | 		Can be dynamically changed at any time.
 42 | 		*/
 43 | 		public var shortcutName: Name {
    |              `- note: property declared here
 44 | 			didSet {
 45 | 				guard shortcutName != oldValue else {
    :
124 | 					let self,
125 | 					let nameInNotification = notification.userInfo?["name"] as? KeyboardShortcuts.Name,
126 | 					nameInNotification == shortcutName
    |                            `- warning: main actor-isolated property 'shortcutName' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
127 | 				else {
128 | 					return
/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/RecorderCocoa.swift:131:5: warning: call to main actor-isolated instance method 'setStringValue(name:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
112 | 		}
113 |
114 | 		private func setStringValue(name: KeyboardShortcuts.Name) {
    |                |- note: calls to instance method 'setStringValue(name:)' from outside of its actor context are implicitly asynchronous
    |                `- note: main actor isolation inferred from inheritance from class 'NSSearchField'
115 | 			stringValue = getShortcut(for: shortcutName).map { "\($0)" } ?? ""
116 |
    :
129 | 				}
130 |
131 | 				setStringValue(name: nameInNotification)
    |     `- warning: call to main actor-isolated instance method 'setStringValue(name:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
132 | 			}
133 | 		}
/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/RecorderCocoa.swift:186:24: warning: main actor-isolated property 'window' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
184 | 				guard
185 | 					let self,
186 | 					let window = self.window
    |                        `- warning: main actor-isolated property 'window' can not be referenced from a Sendable closure; this is an error in the Swift 6 language mode
187 | 				else {
188 | 					return
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSView.h:86:61: note: property declared here
 84 | - (nullable instancetype)initWithCoder:(NSCoder *)coder NS_DESIGNATED_INITIALIZER;
 85 |
 86 | @property (nullable, readonly, unsafe_unretained) NSWindow *window;
    |                                                             `- note: property declared here
 87 | @property (nullable, readonly, unsafe_unretained) NSView *superview;
 88 | @property (copy) NSArray<__kindof NSView *> *subviews;
/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/RecorderCocoa.swift:191:5: warning: call to main actor-isolated instance method 'endRecording()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
133 | 		}
134 |
135 | 		private func endRecording() {
    |                |- note: calls to instance method 'endRecording()' from outside of its actor context are implicitly asynchronous
    |                `- note: main actor isolation inferred from inheritance from class 'NSSearchField'
136 | 			eventMonitor = nil
137 | 			placeholderString = "record_shortcut".localized
    :
189 | 				}
190 |
191 | 				endRecording()
    |     `- warning: call to main actor-isolated instance method 'endRecording()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
192 | 				window.makeFirstResponder(nil)
193 | 			}
/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/RecorderCocoa.swift:192:12: warning: call to main actor-isolated instance method 'makeFirstResponder' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
190 |
191 | 				endRecording()
192 | 				window.makeFirstResponder(nil)
    |            `- warning: call to main actor-isolated instance method 'makeFirstResponder' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
193 | 			}
194 |
AppKit.NSWindow.makeFirstResponder:2:22: note: calls to instance method 'makeFirstResponder' from outside of its actor context are implicitly asynchronous
1 | class NSWindow {
2 | @MainActor open func makeFirstResponder(_ responder: NSResponder?) -> Bool}
  |                      |- note: calls to instance method 'makeFirstResponder' from outside of its actor context are implicitly asynchronous
  |                      `- note: main actor isolation inferred from inheritance from class 'NSResponder'
3 |
/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/RecorderCocoa.swift:197:11: warning: call to main actor-isolated instance method 'preventBecomingKey()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
142 | 		}
143 |
144 | 		private func preventBecomingKey() {
    |                |- note: calls to instance method 'preventBecomingKey()' from outside of its actor context are implicitly asynchronous
    |                `- note: main actor isolation inferred from inheritance from class 'NSSearchField'
145 | 			canBecomeKey = false
146 |
    :
195 | 			// Ensures the recorder does not receive initial focus when a hidden window becomes unhidden.
196 | 			windowDidBecomeKeyObserver = NotificationCenter.default.addObserver(forName: NSWindow.didBecomeKeyNotification, object: window, queue: nil) { [weak self] _ in
197 | 				self?.preventBecomingKey()
    |           `- warning: call to main actor-isolated instance method 'preventBecomingKey()' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
198 | 			}
199 |
[27/30] Compiling KeyboardShortcuts ViewModifiers.swift
[28/30] Compiling KeyboardShortcuts Shortcut.swift
/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/Shortcut.swift:745:13: warning: main actor-isolated property 'description' cannot be used to satisfy nonisolated requirement from protocol 'CustomStringConvertible'; this is an error in the Swift 6 language mode
720 | }
721 |
722 | extension KeyboardShortcuts.Shortcut: CustomStringConvertible {
    |                                       `- note: add '@preconcurrency' to the 'CustomStringConvertible' conformance to defer isolation checking to run time
723 | 	/**
724 | 	The string representation of the keyboard shortcut.
    :
743 |
744 | 	@MainActor
745 | 	public var description: String {
    |             `- warning: main actor-isolated property 'description' cannot be used to satisfy nonisolated requirement from protocol 'CustomStringConvertible'; this is an error in the Swift 6 language mode
746 | 		// TODO: `description` needs to be `nonisolated`
747 | 		presentableDescription
[29/30] Compiling KeyboardShortcuts Utilities.swift
/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/Utilities.swift:399:13: warning: static property 'functionKeys' is not concurrency-safe because non-'Sendable' type 'Set<NSEvent.SpecialKey>' may have shared mutable state; this is an error in the Swift 6 language mode
397 |
398 | extension NSEvent.SpecialKey {
399 | 	static let functionKeys: Set<Self> = [
    |             `- warning: static property 'functionKeys' is not concurrency-safe because non-'Sendable' type 'Set<NSEvent.SpecialKey>' may have shared mutable state; this is an error in the Swift 6 language mode
400 | 		.f1,
401 | 		.f2,
AppKit.NSEvent.SpecialKey:2:15: note: struct 'SpecialKey' does not conform to the 'Sendable' protocol
1 | class NSEvent {
2 | public struct SpecialKey : RawRepresentable, Equatable, Hashable {
  |               `- note: struct 'SpecialKey' does not conform to the 'Sendable' protocol
3 |     public init(rawValue: Int)
4 |     public let rawValue: Int
/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/Utilities.swift:1:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'AppKit'
  1 | import SwiftUI
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'AppKit'
  2 |
  3 | #if os(macOS)
    :
397 |
398 | extension NSEvent.SpecialKey {
399 | 	static let functionKeys: Set<Self> = [
    |             |- note: add '@MainActor' to make static property 'functionKeys' part of global actor 'MainActor'
    |             `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
400 | 		.f1,
401 | 		.f2,
/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/Utilities.swift:112:36: warning: call to main actor-isolated instance method 'nextEvent(matching:until:inMode:dequeue:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
110 |
111 | 			// Retrieve all events from the event queue to preserve their order (instead of using the `matching` parameter).
112 | 			while let eventToHandle = NSApp.nextEvent(matching: .any, until: nil, inMode: .default, dequeue: true) {
    |                                    `- warning: call to main actor-isolated instance method 'nextEvent(matching:until:inMode:dequeue:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
113 | 				eventsToHandle.append(eventToHandle)
114 | 			}
AppKit.NSApplication.nextEvent:2:22: note: calls to instance method 'nextEvent(matching:until:inMode:dequeue:)' from outside of its actor context are implicitly asynchronous
1 | class NSApplication {
2 | @MainActor open func nextEvent(matching mask: NSEvent.EventTypeMask, until expiration: Date?, inMode mode: RunLoop.Mode, dequeue deqFlag: Bool) -> NSEvent?}
  |                      |- note: calls to instance method 'nextEvent(matching:until:inMode:dequeue:)' from outside of its actor context are implicitly asynchronous
  |                      `- note: main actor isolation inferred from inheritance from class 'NSResponder'
3 |
/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/Utilities.swift:112:30: warning: main actor-isolated var 'NSApp' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
110 |
111 | 			// Retrieve all events from the event queue to preserve their order (instead of using the `matching` parameter).
112 | 			while let eventToHandle = NSApp.nextEvent(matching: .any, until: nil, inMode: .default, dequeue: true) {
    |                              `- warning: main actor-isolated var 'NSApp' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
113 | 				eventsToHandle.append(eventToHandle)
114 | 			}
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSApplication.h:191:58: note: var declared here
189 | @interface NSApplication : NSResponder <NSUserInterfaceValidations, NSMenuItemValidation, NSAccessibilityElement, NSAccessibility>
190 |
191 | APPKIT_EXTERN __kindof NSApplication * _Null_unspecified NSApp NS_SWIFT_UI_ACTOR;
    |                                                          `- note: var declared here
192 |
193 | @property (class, readonly, strong) __kindof NSApplication *sharedApplication;
/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/Utilities.swift:130:11: warning: call to main actor-isolated instance method 'postEvent(_:atStart:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
128 | 				}
129 |
130 | 				NSApp.postEvent(handledEvent, atStart: false)
    |           `- warning: call to main actor-isolated instance method 'postEvent(_:atStart:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
131 | 			}
132 | 		}
AppKit.NSApplication.postEvent:2:22: note: calls to instance method 'postEvent(_:atStart:)' from outside of its actor context are implicitly asynchronous
1 | class NSApplication {
2 | @MainActor open func postEvent(_ event: NSEvent, atStart: Bool)}
  |                      |- note: calls to instance method 'postEvent(_:atStart:)' from outside of its actor context are implicitly asynchronous
  |                      `- note: main actor isolation inferred from inheritance from class 'NSResponder'
3 |
/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/Utilities.swift:130:5: warning: main actor-isolated var 'NSApp' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
128 | 				}
129 |
130 | 				NSApp.postEvent(handledEvent, atStart: false)
    |     `- warning: main actor-isolated var 'NSApp' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
131 | 			}
132 | 		}
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSApplication.h:191:58: note: var declared here
189 | @interface NSApplication : NSResponder <NSUserInterfaceValidations, NSMenuItemValidation, NSAccessibilityElement, NSAccessibility>
190 |
191 | APPKIT_EXTERN __kindof NSApplication * _Null_unspecified NSApp NS_SWIFT_UI_ACTOR;
    |                                                          `- note: var declared here
192 |
193 | @property (class, readonly, strong) __kindof NSApplication *sharedApplication;
/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/Utilities.swift:130:11: warning: sending 'handledEvent' risks causing data races; this is an error in the Swift 6 language mode
128 | 				}
129 |
130 | 				NSApp.postEvent(handledEvent, atStart: false)
    |           |- warning: sending 'handledEvent' risks causing data races; this is an error in the Swift 6 language mode
    |           |- note: sending 'handledEvent' to main actor-isolated instance method 'postEvent(_:atStart:)' risks causing data races between main actor-isolated and local nonisolated uses
    |           `- note: access can happen concurrently
131 | 			}
132 | 		}
[30/30] Compiling KeyboardShortcuts resource_bundle_accessor.swift
Build complete! (8.80s)
Build complete.
{
  "default_localization" : "en",
  "dependencies" : [
  ],
  "manifest_display_name" : "KeyboardShortcuts",
  "name" : "KeyboardShortcuts",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "10.15"
    }
  ],
  "products" : [
    {
      "name" : "KeyboardShortcuts",
      "targets" : [
        "KeyboardShortcuts"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "KeyboardShortcutsTests",
      "module_type" : "SwiftTarget",
      "name" : "KeyboardShortcutsTests",
      "path" : "Tests/KeyboardShortcutsTests",
      "sources" : [
        "KeyboardShortcutsTests.swift",
        "Utilities.swift"
      ],
      "target_dependencies" : [
        "KeyboardShortcuts"
      ],
      "type" : "test"
    },
    {
      "c99name" : "KeyboardShortcuts",
      "module_type" : "SwiftTarget",
      "name" : "KeyboardShortcuts",
      "path" : "Sources/KeyboardShortcuts",
      "product_memberships" : [
        "KeyboardShortcuts"
      ],
      "resources" : [
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/Localization/ar.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "ar"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/Localization/cs.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "cs"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/Localization/de.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "de"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/Localization/en.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "en"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/Localization/es.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "es"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/Localization/fr.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "fr"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/Localization/hu.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "hu"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/Localization/ja.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "ja"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/Localization/ko.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "ko"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/Localization/nl.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "nl"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/Localization/pt-BR.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "pt-br"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/Localization/ru.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "ru"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/Localization/sk.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "sk"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/Localization/zh-Hans.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "zh-hans"
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/KeyboardShortcuts/Localization/zh-TW.lproj/Localizable.strings",
          "rule" : {
            "process" : {
              "localization" : "zh-tw"
            }
          }
        }
      ],
      "sources" : [
        "CarbonKeyboardShortcuts.swift",
        "Key.swift",
        "KeyboardShortcuts.swift",
        "NSMenuItem++.swift",
        "Name.swift",
        "Recorder.swift",
        "RecorderCocoa.swift",
        "Shortcut.swift",
        "Utilities.swift",
        "ViewModifiers.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.11"
}
✅  Doc result (pending) reported
========================================
GenerateDocs
========================================
Generating docs at path:  $PWD/.docs/sindresorhus/keyboardshortcuts/2.3.0
Repository:               sindresorhus/KeyboardShortcuts
Swift version used:       6.1
Target:                   KeyboardShortcuts
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/swift-docc-render-artifact/.git/
From https://github.com/swiftlang/swift-docc-render-artifact
 * branch            release/6.2 -> FETCH_HEAD
 * [new branch]      release/6.2 -> origin/release/6.2
HEAD is now at 8799b69 Update the artifact
Cloned https://github.com/swiftlang/swift-docc-render-artifact
Extracting symbol information for 'KeyboardShortcuts'...
Finished extracting symbol information for 'KeyboardShortcuts'. (5.42s)
Building documentation for 'KeyboardShortcuts'...
Finished building documentation for 'KeyboardShortcuts' (0.67s)
Generated documentation archive at:
  /Users/admin/builder/spi-builder-workspace/.docs/sindresorhus/keyboardshortcuts/2.3.0
Fetching https://github.com/swiftlang/swift-docc-plugin from cache
Fetched https://github.com/swiftlang/swift-docc-plugin from cache (0.47s)
Computing version for https://github.com/swiftlang/swift-docc-plugin
Computed https://github.com/swiftlang/swift-docc-plugin at 1.4.3 (1.14s)
Fetching https://github.com/swiftlang/swift-docc-symbolkit from cache
Fetched https://github.com/swiftlang/swift-docc-symbolkit from cache (0.75s)
Computing version for https://github.com/swiftlang/swift-docc-symbolkit
Computed https://github.com/swiftlang/swift-docc-symbolkit at 1.0.0 (1.39s)
Creating working copy for https://github.com/swiftlang/swift-docc-plugin
Working copy of https://github.com/swiftlang/swift-docc-plugin resolved at 1.4.3
Creating working copy for https://github.com/swiftlang/swift-docc-symbolkit
Working copy of https://github.com/swiftlang/swift-docc-symbolkit resolved at 1.0.0
Building for debugging...
[0/8] Write sources
[1/8] Write snippet-extract-tool-entitlement.plist
[2/8] Write sources
[4/8] Write swift-version-2F0A5646E1D333AE.txt
[6/53] Compiling Snippets SnippetParser.swift
[7/53] Compiling SymbolKit GenericConstraint.swift
[8/53] Compiling SymbolKit GenericParameter.swift
[9/53] Compiling SymbolKit Generics.swift
[10/53] Compiling SymbolKit Namespace.swift
[11/57] Compiling Snippets Snippet.swift
[12/57] Emitting module Snippets
[13/57] Emitting module SymbolKit
[14/57] Compiling SymbolKit DeclarationFragments.swift
[15/57] Compiling SymbolKit Fragment.swift
[16/57] Compiling SymbolKit FragmentKind.swift
[17/57] Compiling SymbolKit FunctionParameter.swift
[18/57] Compiling SymbolKit FunctionSignature.swift
[19/57] Compiling SymbolKit Relationship.swift
[20/57] Compiling SymbolKit RelationshipKind.swift
[21/57] Compiling SymbolKit SourceOrigin.swift
[22/57] Compiling SymbolKit GenericConstraints.swift
[23/57] Compiling SymbolKit Swift.swift
[24/57] Compiling SymbolKit Identifier.swift
[25/57] Compiling SymbolKit KindIdentifier.swift
[26/57] Compiling SymbolKit Location.swift
[27/57] Compiling SymbolKit Mutability.swift
[28/57] Compiling SymbolKit Names.swift
[29/57] Compiling SymbolKit SPI.swift
[30/57] Compiling SymbolKit Snippet.swift
[31/57] Compiling SymbolKit Extension.swift
[32/57] Compiling SymbolKit Symbol.swift
[33/57] Compiling SymbolKit SymbolKind.swift
[34/57] Compiling SymbolKit SymbolGraph.swift
[35/57] Compiling SymbolKit GraphCollector.swift
[36/57] Compiling SymbolKit SourceRange.swift
[37/57] Compiling SymbolKit Metadata.swift
[38/57] Compiling SymbolKit Module.swift
[39/57] Compiling SymbolKit OperatingSystem.swift
[40/57] Compiling SymbolKit Platform.swift
[41/57] Compiling SymbolKit Mixin+Equals.swift
[42/57] Compiling SymbolKit Mixin+Hash.swift
[43/57] Compiling SymbolKit Mixin.swift
[44/57] Compiling SymbolKit LineList.swift
[45/57] Compiling SymbolKit Position.swift
[46/57] Compiling SymbolKit SemanticVersion.swift
[47/57] Compiling SymbolKit AccessControl.swift
[48/57] Compiling SymbolKit Availability.swift
[49/57] Compiling SymbolKit AvailabilityItem.swift
[50/57] Compiling SymbolKit Domain.swift
[51/57] Compiling SymbolKit UnifiedSymbol+Encodable.swift
[52/57] Compiling SymbolKit UnifiedSymbol.swift
[53/57] Compiling SymbolKit UnifiedSymbolGraph+Encodable.swift
[54/57] Compiling SymbolKit UnifiedSymbolGraph.swift
[55/61] Compiling snippet_extract URL+Status.swift
[56/61] Compiling snippet_extract SymbolGraph+Snippet.swift
[57/61] Emitting module snippet_extract
[58/61] Compiling snippet_extract SnippetBuildCommand.swift
[58/61] Write Objects.LinkFileList
[59/61] Linking snippet-extract-tool
[60/61] Applying snippet-extract-tool
Build of product 'snippet-extract' complete! (4.17s)
Building for debugging...
[0/1] Write swift-version-2F0A5646E1D333AE.txt
[2/12] Compiling KeyboardShortcuts ViewModifiers.swift
[3/12] Compiling KeyboardShortcuts Shortcut.swift
[4/12] Compiling KeyboardShortcuts Utilities.swift
[5/12] Compiling KeyboardShortcuts Name.swift
[6/12] Compiling KeyboardShortcuts KeyboardShortcuts.swift
[7/12] Compiling KeyboardShortcuts Recorder.swift
[8/12] Emitting module KeyboardShortcuts
[9/12] Compiling KeyboardShortcuts NSMenuItem++.swift
[10/12] Compiling KeyboardShortcuts RecorderCocoa.swift
[11/12] Compiling KeyboardShortcuts CarbonKeyboardShortcuts.swift
[12/12] Compiling KeyboardShortcuts Key.swift
[13/13] Compiling KeyboardShortcuts resource_bundle_accessor.swift
Build of target: 'KeyboardShortcuts' complete! (1.19s)
    1864
13	/Users/admin/builder/spi-builder-workspace/.docs/sindresorhus/keyboardshortcuts/2.3.0
✅  Doc result (uploading) reported
========================================
SyncDocs
========================================
Doc archive source directory: $PWD/.docs/sindresorhus/keyboardshortcuts/2.3.0
File count: 1864
Doc size:   13.0MB
Preparing doc bundle ...
Uploading prod-sindresorhus-keyboardshortcuts-2.3.0-64b24003.zip to s3://spi-docs-inbox/prod-sindresorhus-keyboardshortcuts-2.3.0-64b24003.zip
Copying... [12%]
Copying... [22%]
Copying... [32%]
Copying... [42%]
Copying... [51%]
Copying... [61%]
Copying... [71%]
Copying... [81%]
Copying... [91%]
Copying... [100%]
Done.