The Swift Package Index logo.Swift Package Index

Build Information

Failed to build VisionKeyboardKit, reference main (0804e4), with Swift 6.4 for tvOS using Xcode 27.0 on 19 Sep 2026 21:17:04 UTC.

Build Command

env DEVELOPER_DIR=/Applications/Xcode-27.0.0-Release.Candidate.app xcrun xcodebuild -IDEClonedSourcePackagesDirPathOverride=$PWD/.dependencies -skipMacroValidation -skipPackagePluginValidation -derivedDataPath $PWD/.derivedData build -scheme VisionKeyboardKit -destination generic/platform=tvOS

Build Log

SwiftExplicitDependencyGeneratePcm arm64 /Users/admin/builder/spi-builder-workspace/.derivedData/SDKExplicitPrecompiledModules/CoreTransferable-7V4O8DATEQ9F7SDNTCW8YWLG3.pcm
SwiftExplicitDependencyGeneratePcm arm64 /Users/admin/builder/spi-builder-workspace/.derivedData/SDKExplicitPrecompiledModules/OSLog-7OT6HHTMY0ZFEQJ095LJZ6NLC.pcm
SwiftExplicitDependencyGeneratePcm arm64 /Users/admin/builder/spi-builder-workspace/.derivedData/SDKExplicitPrecompiledModules/DataDetection-37JIYZ2GWDA1L166PP1D9JKAF.pcm
SwiftExplicitDependencyGeneratePcm arm64 /Users/admin/builder/spi-builder-workspace/.derivedData/SDKExplicitPrecompiledModules/Accessibility-B6BODGZ4MQQTY0PBC4SHRP009.pcm
SwiftExplicitDependencyGeneratePcm arm64 /Users/admin/builder/spi-builder-workspace/.derivedData/SDKExplicitPrecompiledModules/CoreData-DYMPHH3PH8AX9I1FHA4VFJ675.pcm
SwiftExplicitDependencyGeneratePcm arm64 /Users/admin/builder/spi-builder-workspace/.derivedData/SDKExplicitPrecompiledModules/Symbols-B5AU9VM9Y7NU79RLMH13Z4IFM.pcm
SwiftExplicitDependencyGeneratePcm arm64 /Users/admin/builder/spi-builder-workspace/.derivedData/SDKExplicitPrecompiledModules/CoreMIDI-23HL6T8YUJM8DF3NKDJAU0CM7.pcm
SwiftExplicitDependencyGeneratePcm arm64 /Users/admin/builder/spi-builder-workspace/.derivedData/SDKExplicitPrecompiledModules/IOSurface-38FJ1CKX9FV2RD97O64Z7QB17.pcm
SwiftExplicitDependencyGeneratePcm arm64 /Users/admin/builder/spi-builder-workspace/.derivedData/SDKExplicitPrecompiledModules/UserNotifications-E9ZW5TH066WIJWH9080RC5NG4.pcm
SwiftExplicitDependencyGeneratePcm arm64 /Users/admin/builder/spi-builder-workspace/.derivedData/SDKExplicitPrecompiledModules/CoreLocation-YVXXAOMVX0JH2KO1XTTKTY51.pcm
SwiftExplicitDependencyGeneratePcm arm64 /Users/admin/builder/spi-builder-workspace/.derivedData/SDKExplicitPrecompiledModules/OpenGLES-4NY99CNDU9WUNUYEIXSS1QFGE.pcm
SwiftExplicitDependencyGeneratePcm arm64 /Users/admin/builder/spi-builder-workspace/.derivedData/SDKExplicitPrecompiledModules/Metal-2KYBS7IML1SD788M91YV7Q0CC.pcm
SwiftExplicitDependencyGeneratePcm arm64 /Users/admin/builder/spi-builder-workspace/.derivedData/SDKExplicitPrecompiledModules/CloudKit-87XEUK0KFMLVKAO7BT1XG0RKM.pcm
SwiftExplicitDependencyGeneratePcm arm64 /Users/admin/builder/spi-builder-workspace/.derivedData/SDKExplicitPrecompiledModules/AudioToolbox-BFZSY3NS10U8E5FG2JHTQ7SO8.pcm
SwiftExplicitDependencyCompileModuleFromInterface arm64 /Users/admin/builder/spi-builder-workspace/.derivedData/SDKExplicitPrecompiledModules/ShaderGraph-3OY9VAVM0RPQF.swiftmodule
SwiftExplicitDependencyCompileModuleFromInterface arm64 /Users/admin/builder/spi-builder-workspace/.derivedData/SDKExplicitPrecompiledModules/RealityCoreDeformation-32J9N5VNKOXVU.swiftmodule
SwiftExplicitDependencyCompileModuleFromInterface arm64 /Users/admin/builder/spi-builder-workspace/.derivedData/SDKExplicitPrecompiledModules/RealityCoreTextureProcessing-16LBHBWTWKBPZ.swiftmodule
SwiftExplicitDependencyGeneratePcm arm64 /Users/admin/builder/spi-builder-workspace/.derivedData/SDKExplicitPrecompiledModules/CoreVideo-DPU0PB5X0XLSVA2ETRGI6FJBM.pcm
SwiftExplicitDependencyGeneratePcm arm64 /Users/admin/builder/spi-builder-workspace/.derivedData/SDKExplicitPrecompiledModules/CoreMedia-4OUKVT03LV547KZJDPPJRJ4F8.pcm
SwiftExplicitDependencyGeneratePcm arm64 /Users/admin/builder/spi-builder-workspace/.derivedData/SDKExplicitPrecompiledModules/QuartzCore-DJSYAWKXFGVSAK5CQMOB3JSR.pcm
SwiftExplicitDependencyGeneratePcm arm64 /Users/admin/builder/spi-builder-workspace/.derivedData/SDKExplicitPrecompiledModules/CoreImage-7S2AFJ8EIY3DUFYLEAX1JR1QV.pcm
SwiftExplicitDependencyGeneratePcm arm64 /Users/admin/builder/spi-builder-workspace/.derivedData/SDKExplicitPrecompiledModules/SwiftUICore-543QU5V2NHKUFCYFJDKUJ7NYG.pcm
SwiftExplicitDependencyGeneratePcm arm64 /Users/admin/builder/spi-builder-workspace/.derivedData/SDKExplicitPrecompiledModules/UIKit-1TKWN7VC2X6N3ITMRVA2G0EB2.pcm
SwiftExplicitDependencyGeneratePcm arm64 /Users/admin/builder/spi-builder-workspace/.derivedData/SDKExplicitPrecompiledModules/AVFAudio-I2OUXVW3JAJP9H9YYQSK67OC.pcm
SwiftExplicitDependencyGeneratePcm arm64 /Users/admin/builder/spi-builder-workspace/.derivedData/SDKExplicitPrecompiledModules/MediaToolbox-4OQJAKJ1UOGLVUHH8TJFAFUX8.pcm
SwiftExplicitDependencyGeneratePcm arm64 /Users/admin/builder/spi-builder-workspace/.derivedData/SDKExplicitPrecompiledModules/VideoToolbox-9D68N9ZVOUSE0ZFYNU39RYT33.pcm
SwiftExplicitDependencyCompileModuleFromInterface arm64 /Users/admin/builder/spi-builder-workspace/.derivedData/SDKExplicitPrecompiledModules/RealityCoreRenderer-21NRE2PBOA8V0.swiftmodule
SwiftExplicitDependencyGeneratePcm arm64 /Users/admin/builder/spi-builder-workspace/.derivedData/SDKExplicitPrecompiledModules/AVFoundation-4DKPNMYIKC5WBJ7VZILY1MMIU.pcm
SwiftExplicitDependencyGeneratePcm arm64 /Users/admin/builder/spi-builder-workspace/.derivedData/SDKExplicitPrecompiledModules/GameController-2R9MUNUBOZ67SO9FT81HJVJQ0.pcm
SwiftExplicitDependencyGeneratePcm arm64 /Users/admin/builder/spi-builder-workspace/.derivedData/SDKExplicitPrecompiledModules/MultipeerConnectivity-4NM01PSEFEX1HOKXYAGX2GJNG.pcm
SwiftExplicitDependencyGeneratePcm arm64 /Users/admin/builder/spi-builder-workspace/.derivedData/SDKExplicitPrecompiledModules/SwiftUI-7BV1YDT6IZWW6B8OC6ENV0Y0F.pcm
SwiftEmitModule normal arm64 Emitting\ module\ for\ VisionKeyboardKit (in target 'VisionKeyboardKit' from project 'VisionKeyboardKit')
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:20:28: error: 'Duration' is only available in tvOS 16.0 or newer
 18 | import RealityKit
 19 |
 20 | private let kDebounceTime: Duration = .milliseconds(25)
    |             |              `- error: 'Duration' is only available in tvOS 16.0 or newer
    |             `- note: add '@available' attribute to enclosing let
 21 |
 22 | struct KeyboardButtonStyle: PrimitiveButtonStyle {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:20:40: error: 'milliseconds' is only available in tvOS 16.0 or newer
 18 | import RealityKit
 19 |
 20 | private let kDebounceTime: Duration = .milliseconds(25)
    |             |                          `- error: 'milliseconds' is only available in tvOS 16.0 or newer
    |             `- note: add '@available' attribute to enclosing let
 21 |
 22 | struct KeyboardButtonStyle: PrimitiveButtonStyle {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardState.swift:19:2: error: 'Observable()' is only available in tvOS 17.0 or newer
17 | import SwiftUI
18 |
19 | @Observable
   |  `- error: 'Observable()' is only available in tvOS 17.0 or newer
20 | class KeyboardState {
21 |     private let id: KeyboardIdentifier
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:34:6: error: 'init(_:)' is only available in tvOS 17.0 or newer
 20 | private let kDebounceTime: Duration = .milliseconds(25)
 21 |
 22 | struct KeyboardButtonStyle: PrimitiveButtonStyle {
    |        `- note: add '@available' attribute to enclosing struct
 23 |     let isDark: Bool
 24 |     let isToggled: Bool
    :
 32 |     @State private var isPressed: Bool = false
 33 |     @State private var debounceTask: Task<Void, Never>?
 34 |     @Environment(KeyboardState.self) private var state
    |      `- error: 'init(_:)' is only available in tvOS 17.0 or newer
 35 |
 36 |     private func spatialGesture(configuration: Configuration) -> some Gesture {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:29:18: error: 'Entity' is only available in tvOS 26.0 or newer
 19 |
 20 | /// Plays the system keyboard click sound
 21 | class KeyboardClickSound {
    |       `- note: add '@available' attribute to enclosing class
 22 |     enum File {
 23 |         case normal
    :
 27 |
 28 |     /// The RK entity where the sound will originate
 29 |     let entity = Entity()
    |                  `- error: 'Entity' is only available in tvOS 26.0 or newer
 30 |
 31 |     private var pressNormalPlayer: AudioPlaybackController?
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:31:36: error: 'AudioPlaybackController' is only available in tvOS 26.0 or newer
 19 |
 20 | /// Plays the system keyboard click sound
 21 | class KeyboardClickSound {
    |       `- note: add '@available' attribute to enclosing class
 22 |     enum File {
 23 |         case normal
    :
 29 |     let entity = Entity()
 30 |
 31 |     private var pressNormalPlayer: AudioPlaybackController?
    |                                    `- error: 'AudioPlaybackController' is only available in tvOS 26.0 or newer
 32 |     private var pressDeletePlayer: AudioPlaybackController?
 33 |     private var pressModifierPlayer: AudioPlaybackController?
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:32:36: error: 'AudioPlaybackController' is only available in tvOS 26.0 or newer
 19 |
 20 | /// Plays the system keyboard click sound
 21 | class KeyboardClickSound {
    |       `- note: add '@available' attribute to enclosing class
 22 |     enum File {
 23 |         case normal
    :
 30 |
 31 |     private var pressNormalPlayer: AudioPlaybackController?
 32 |     private var pressDeletePlayer: AudioPlaybackController?
    |                                    `- error: 'AudioPlaybackController' is only available in tvOS 26.0 or newer
 33 |     private var pressModifierPlayer: AudioPlaybackController?
 34 |
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:33:38: error: 'AudioPlaybackController' is only available in tvOS 26.0 or newer
 19 |
 20 | /// Plays the system keyboard click sound
 21 | class KeyboardClickSound {
    |       `- note: add '@available' attribute to enclosing class
 22 |     enum File {
 23 |         case normal
    :
 31 |     private var pressNormalPlayer: AudioPlaybackController?
 32 |     private var pressDeletePlayer: AudioPlaybackController?
 33 |     private var pressModifierPlayer: AudioPlaybackController?
    |                                      `- error: 'AudioPlaybackController' is only available in tvOS 26.0 or newer
 34 |
 35 |     private func loadAudioResource(for url: URL) -> AudioFileResource? {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:35:53: error: 'AudioFileResource' is only available in tvOS 26.0 or newer
 19 |
 20 | /// Plays the system keyboard click sound
 21 | class KeyboardClickSound {
    |       `- note: add '@available' attribute to enclosing class
 22 |     enum File {
 23 |         case normal
    :
 33 |     private var pressModifierPlayer: AudioPlaybackController?
 34 |
 35 |     private func loadAudioResource(for url: URL) -> AudioFileResource? {
    |                  |                                  `- error: 'AudioFileResource' is only available in tvOS 26.0 or newer
    |                  `- note: add '@available' attribute to enclosing instance method
 36 |         let configuration = AudioFileResource.Configuration(calibration: .absolute(dBSPL: 58.0))
 37 |         return try? .load(contentsOf: url, configuration: configuration)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:61:24: error: 'appending(components:directoryHint:)' is only available in tvOS 16.0 or newer
 19 |
 20 | /// Plays the system keyboard click sound
 21 | class KeyboardClickSound {
    |       `- note: add '@available' attribute to enclosing class
 22 |     enum File {
 23 |         case normal
    :
 59 |         let fm = FileManager.default
 60 |         let library = fm.urls(for: .libraryDirectory, in: .systemDomainMask)[0]
 61 |         return library.appending(components: "Audio", "UISounds")
    |                        |- error: 'appending(components:directoryHint:)' is only available in tvOS 16.0 or newer
    |                        `- note: add 'if #available' version check
 62 |     }()
 63 |     #endif
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:107:33: error: 'AudioPlaybackController' is only available in tvOS 26.0 or newer
 19 |
 20 | /// Plays the system keyboard click sound
 21 | class KeyboardClickSound {
    |       `- note: add '@available' attribute to enclosing class
 22 |     enum File {
 23 |         case normal
    :
105 |
106 |     @MainActor
107 |     private func play(_ player: AudioPlaybackController?) {
    |                  |              `- error: 'AudioPlaybackController' is only available in tvOS 26.0 or newer
    |                  `- note: add '@available' attribute to enclosing instance method
108 |         guard let player = player else {
109 |             return
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardEvent.swift:220:39: error: 'OSAllocatedUnfairLock' is only available in tvOS 16.0 or newer
214 | /// their reference and so it is safe to clean up the map entry (which should be holding a box with a nil reference).
215 | /// We make sure all this is done in a thread safe manner by the use of `subjectsLock`.
216 | final class KeyboardEventSubject: Subject {
    |             `- note: add '@available' attribute to enclosing class
217 |     typealias Output = KeyboardEvent
218 |     typealias Failure = Never
219 |
220 |     private static var subjectsLock = OSAllocatedUnfairLock()
    |                        |              `- error: 'OSAllocatedUnfairLock' is only available in tvOS 16.0 or newer
    |                        `- note: add '@available' attribute to enclosing static property
221 |     private static var allSubjects: [KeyboardIdentifier: Weak<KeyboardEventSubject>] = [:]
222 |     private let id: KeyboardIdentifier
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardEvent.swift:220:39: error: 'init()' is only available in tvOS 16.0 or newer
214 | /// their reference and so it is safe to clean up the map entry (which should be holding a box with a nil reference).
215 | /// We make sure all this is done in a thread safe manner by the use of `subjectsLock`.
216 | final class KeyboardEventSubject: Subject {
    |             `- note: add '@available' attribute to enclosing class
217 |     typealias Output = KeyboardEvent
218 |     typealias Failure = Never
219 |
220 |     private static var subjectsLock = OSAllocatedUnfairLock()
    |                        |              `- error: 'init()' is only available in tvOS 16.0 or newer
    |                        `- note: add '@available' attribute to enclosing static property
221 |     private static var allSubjects: [KeyboardIdentifier: Weak<KeyboardEventSubject>] = [:]
222 |     private let id: KeyboardIdentifier
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardKeyView.swift:30:6: error: 'init(_:)' is only available in tvOS 17.0 or newer
17 | import SwiftUI
18 |
19 | struct KeyboardKeyView: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     let key: String
21 |     var shift: String?
   :
28 |     var action: () -> Void = {}
29 |
30 |     @Environment(KeyboardState.self) private var state
   |      `- error: 'init(_:)' is only available in tvOS 17.0 or newer
31 |
32 |     private var isShifted: Bool {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardKeyView.swift:56:6: error: 'init(_:)' is only available in tvOS 17.0 or newer
45 | }
46 |
47 | struct KeyboardToggleKeyView: View {
   |        `- note: add '@available' attribute to enclosing struct
48 |     let key: String
49 |     let code: KeyboardKeyCode
   :
54 |     var isDark: Bool = false
55 |
56 |     @Environment(KeyboardState.self) private var state
   |      `- error: 'init(_:)' is only available in tvOS 17.0 or newer
57 |
58 |     private var isOn: Bool {
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardState.swift:26:5: note: expanded code originates here
17 | import SwiftUI
18 |
19 | @Observable
   | `- note: in expansion of macro 'Observable' on property 'modifier' here
20 | class KeyboardState {
   |       `- note: add '@available' attribute to enclosing class
21 |     private let id: KeyboardIdentifier
22 |     private let subject: KeyboardEventSubject
   :
24 |     let clicker = KeyboardClickSound()
25 |
26 |     var modifier: KeyboardModifier = .none
   +--- macro expansion @Observable ------------------------------------
   |1 | @ObservationTracked
   |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
   +--------------------------------------------------------------------
27 |
28 |     init(for id: KeyboardIdentifier) {
macro expansion @Observable:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardState.swift:51:1: note: expanded code originates here
17 | import SwiftUI
18 |
19 | @Observable
   | `- note: in expansion of macro 'Observable' on class 'KeyboardState' here
20 | class KeyboardState {
   |       `- note: add '@available' attribute to enclosing class
21 |     private let id: KeyboardIdentifier
22 |     private let subject: KeyboardEventSubject
   :
49 |         }
50 |     }
51 | }
   +--- macro expansion @Observable ------------------------------------
   | 1 | @ObservationIgnored private let _$observationRegistrar = Observation.ObservationRegistrar()
   |   |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
   | 2 |
   | 3 | internal nonisolated func access<$s17VisionKeyboardKit0B5State10ObservablefMm_6MemberfMu_>(
   +--------------------------------------------------------------------
52 |
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardState.swift:26:43: note: expanded code originates here
18 |
19 | @Observable
20 | class KeyboardState {
   |       `- note: add '@available' attribute to enclosing class
21 |     private let id: KeyboardIdentifier
22 |     private let subject: KeyboardEventSubject
   :
24 |     let clicker = KeyboardClickSound()
25 |
26 |     var modifier: KeyboardModifier = .none
   +--- macro expansion @ObservationTracked ----------------------------
   |1 | @ObservationIgnored
   |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
   |2 | private  var _modifier: KeyboardModifier = .none
   +--------------------------------------------------------------------
27 |
28 |     init(for id: KeyboardIdentifier) {
macro expansion @Observable:1:70: error: 'ObservationRegistrar' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardState.swift:51:1: note: expanded code originates here
17 | import SwiftUI
18 |
19 | @Observable
   | `- note: in expansion of macro 'Observable' on class 'KeyboardState' here
20 | class KeyboardState {
   |       `- note: add '@available' attribute to enclosing class
21 |     private let id: KeyboardIdentifier
22 |     private let subject: KeyboardEventSubject
   :
49 |         }
50 |     }
51 | }
   +--- macro expansion @Observable ------------------------------------
   | 1 | @ObservationIgnored private let _$observationRegistrar = Observation.ObservationRegistrar()
   |   |                                                                      `- error: 'ObservationRegistrar' is only available in tvOS 17.0 or newer
   | 2 |
   | 3 | internal nonisolated func access<$s17VisionKeyboardKit0B5State10ObservablefMm_6MemberfMu_>(
   +--------------------------------------------------------------------
52 |
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardState.swift:19:2: error: 'Observable()' is only available in tvOS 17.0 or newer
17 | import SwiftUI
18 |
19 | @Observable
   |  `- error: 'Observable()' is only available in tvOS 17.0 or newer
20 | class KeyboardState {
   |       `- note: add '@available' attribute to enclosing class
21 |     private let id: KeyboardIdentifier
22 |     private let subject: KeyboardEventSubject
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardWindowGroup.swift:33:18: error: 'OpenWindowAction' is unavailable in tvOS
31 | }
32 |
33 | public extension OpenWindowAction {
   |                  `- error: 'OpenWindowAction' is unavailable in tvOS
34 |     /// Opens a keyboard window
35 |     /// - Parameter id: Any `Hashable` object that uniquely identifies this keyboard instance.
SwiftUI.OpenWindowAction:4:42: note: 'OpenWindowAction' has been explicitly marked unavailable here
 2 | @available(tvOS, unavailable)
 3 | @available(watchOS, unavailable)
 4 | @MainActor @preconcurrency public struct OpenWindowAction {
   |                                          `- note: 'OpenWindowAction' has been explicitly marked unavailable here
 5 |     @available(macOS 15.0, *)
 6 |     @available(iOS, unavailable)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardWindowGroup.swift:47:18: error: 'DismissWindowAction' is unavailable in tvOS
45 | }
46 |
47 | public extension DismissWindowAction {
   |                  `- error: 'DismissWindowAction' is unavailable in tvOS
48 |     /// Closes a keyboard window
49 |     /// - Parameter id: Any `Hashable` object that uniquely identifies this keyboard instance.
SwiftUI.DismissWindowAction:4:42: note: 'DismissWindowAction' has been explicitly marked unavailable here
2 | @available(tvOS, unavailable)
3 | @available(watchOS, unavailable)
4 | @MainActor @preconcurrency public struct DismissWindowAction {
  |                                          `- note: 'DismissWindowAction' has been explicitly marked unavailable here
5 |     @MainActor @preconcurrency public func callAsFunction()
6 |     @MainActor @preconcurrency public func callAsFunction(id: String)
Failed frontend command:
SwiftCompile normal arm64 (in target 'VisionKeyboardKit' from project 'VisionKeyboardKit')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift-frontend -frontend -emit-module -experimental-skip-non-inlinable-function-bodies-without-types /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardEvent.swift /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardEventPS2.swift /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardIdentifier.swift /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardKeyView.swift /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutANSI.swift /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutType.swift /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardSettingsViewModifier.swift /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardState.swift /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardView.swift /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardWindowGroup.swift -target arm64-apple-tvos15.0 -disable-cross-import-overlay-search -swift-module-cross-import RealityKit /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS27.0.sdk/System/Library/Frameworks/RealityKit.framework/Modules/RealityKit.swiftcrossimport/ComputeGraph.swiftoverlay -swift-module-cross-import RealityKit /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS27.0.sdk/System/Library/Frameworks/RealityKit.framework/Modules/RealityKit.swiftcrossimport/SwiftUI.swiftoverlay -load-resolved-plugin /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/usr/lib/swift/host/plugins/libFoundationMacros.dylib\#/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/usr/bin/swift-plugin-server\#FoundationMacros -load-resolved-plugin /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/usr/lib/swift/host/plugins/libObservationMacros.dylib\#/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/usr/bin/swift-plugin-server\#ObservationMacros -load-resolved-plugin /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/usr/lib/swift/host/plugins/libPreviewsMacros.dylib\#/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/usr/bin/swift-plugin-server\#PreviewsMacros -load-resolved-plugin /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/usr/lib/swift/host/plugins/libSwiftMacros.dylib\#/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/usr/bin/swift-plugin-server\#SwiftMacros -load-resolved-plugin /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/usr/lib/swift/host/plugins/libSwiftUIMacros.dylib\#/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/usr/bin/swift-plugin-server\#SwiftUIMacros -disable-implicit-swift-modules -Xcc -fno-implicit-modules -Xcc -fno-implicit-module-maps -explicit-swift-module-map-file /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/VisionKeyboardKit.build/Debug-appletvos/VisionKeyboardKit-t.build/Objects-normal/arm64/VisionKeyboardKit-dependencies-1.json -Xllvm -aarch64-use-tbi -enable-objc-interop -stack-check -sdk /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS27.0.sdk -I /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-appletvos -Isystem /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/usr/lib -F /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-appletvos -F /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/Library/Frameworks -F /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS27.0.sdk/Developer/Library/Frameworks -module-cache-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SwiftExplicitPrecompiledModules -no-color-diagnostics -Xcc -fno-color-diagnostics -enable-testing -g -debug-info-format\=dwarf -dwarf-version\=4 -profile-generate -profile-coverage-mapping -swift-version 5 -Onone -D SWIFT_PACKAGE -D DEBUG -D SWIFT_MODULE_RESOURCE_BUNDLE_UNAVAILABLE -D Xcode -serialize-debugging-options -enable-experimental-feature DebugDescriptionMacro -empty-abi-descriptor -validate-clang-modules-once -clang-build-session-file /Users/admin/builder/spi-builder-workspace/.derivedData/ModuleCache.noindex/Session.modulevalidation -Xcc -working-directory -Xcc /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode -enable-anonymous-context-mangled-names -file-compilation-dir /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode -Xcc -D_LIBCPP_HARDENING_MODE\=_LIBCPP_HARDENING_MODE_DEBUG -Xcc -ivfsstatcache -Xcc /Users/admin/builder/spi-builder-workspace/.derivedData/SDKStatCaches.noindex/appletvos27.0-24J360-e829b21a6f8c9b70876ba0858053c044b32bfd8d43560033f8d89884cdb90028.sdkstatcache -Xcc -fmodules-prune-interval\=86400 -Xcc -fmodules-prune-after\=345600 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-appletvos/include -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/VisionKeyboardKit.build/Debug-appletvos/VisionKeyboardKit-t.build/DerivedSources-normal/arm64 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/VisionKeyboardKit.build/Debug-appletvos/VisionKeyboardKit-t.build/DerivedSources/arm64 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/VisionKeyboardKit.build/Debug-appletvos/VisionKeyboardKit-t.build/DerivedSources -Xcc -DSWIFT_PACKAGE -Xcc -DDEBUG\=1 -no-auto-bridging-header-chaining -module-name VisionKeyboardKit -package-name spi_builder_workspace -const-gather-protocols-file /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/VisionKeyboardKit.build/Debug-appletvos/VisionKeyboardKit-t.build/Objects-normal/arm64/VisionKeyboardKit_const_extract_protocols.json -disable-clang-spi -clang-target arm64-apple-tvos27.0 -target-sdk-version 27.0 -target-sdk-name appletvos27.0 -in-process-plugin-server-path /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/host/libSwiftInProcPluginServer.dylib -emit-module-doc-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/VisionKeyboardKit.build/Debug-appletvos/VisionKeyboardKit-t.build/Objects-normal/arm64/VisionKeyboardKit.swiftdoc -emit-module-source-info-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/VisionKeyboardKit.build/Debug-appletvos/VisionKeyboardKit-t.build/Objects-normal/arm64/VisionKeyboardKit.swiftsourceinfo -emit-objc-header-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/VisionKeyboardKit.build/Debug-appletvos/VisionKeyboardKit-t.build/Objects-normal/arm64/VisionKeyboardKit-Swift.h -serialize-diagnostics-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/VisionKeyboardKit.build/Debug-appletvos/VisionKeyboardKit-t.build/Objects-normal/arm64/VisionKeyboardKit-primary-emit-module.dia -emit-dependencies-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/VisionKeyboardKit.build/Debug-appletvos/VisionKeyboardKit-t.build/Objects-normal/arm64/VisionKeyboardKit-primary-emit-module.d -parse-as-library -o /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/VisionKeyboardKit.build/Debug-appletvos/VisionKeyboardKit-t.build/Objects-normal/arm64/VisionKeyboardKit.swiftmodule -emit-abi-descriptor-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/VisionKeyboardKit.build/Debug-appletvos/VisionKeyboardKit-t.build/Objects-normal/arm64/VisionKeyboardKit.abi.json
SwiftCompile normal arm64 Compiling\ KeyboardView.swift /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardView.swift (in target 'VisionKeyboardKit' from project 'VisionKeyboardKit')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardView.swift (in target 'VisionKeyboardKit' from project 'VisionKeyboardKit')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile KeyboardView.swift
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardState.swift:19:2: error: 'Observable()' is only available in tvOS 17.0 or newer
17 | import SwiftUI
18 |
19 | @Observable
   |  `- error: 'Observable()' is only available in tvOS 17.0 or newer
20 | class KeyboardState {
21 |     private let id: KeyboardIdentifier
SwiftCompile normal arm64 Compiling\ KeyboardSettingsViewModifier.swift /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardSettingsViewModifier.swift (in target 'VisionKeyboardKit' from project 'VisionKeyboardKit')
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardSettingsViewModifier.swift:24:17: error: 'ornament(visibility:attachmentAnchor:contentAlignment:ornament:)' is unavailable in tvOS
22 |
23 |     func body(content: Content) -> some View {
24 |         content.ornament(attachmentAnchor: .scene(.topLeading)) {
   |                 `- error: 'ornament(visibility:attachmentAnchor:contentAlignment:ornament:)' is unavailable in tvOS
25 |             Menu {
26 |                 ForEach(KeyboardLayoutType.allCases) { option in
SwiftUI.View.ornament:7:51: note: 'ornament(visibility:attachmentAnchor:contentAlignment:ornament:)' has been explicitly marked unavailable here
5 |   @available(watchOS, unavailable)
6 |   @available(tvOS, unavailable)
7 |   @export(implementation) nonisolated public func ornament<Content>(visibility: Visibility = .automatic, attachmentAnchor: OrnamentAttachmentAnchor, contentAlignment: Alignment3D = .back, @ContentBuilder ornament: () -> Content) -> some View where Content : View
  |                                                   `- note: 'ornament(visibility:attachmentAnchor:contentAlignment:ornament:)' has been explicitly marked unavailable here
8 |   }
9 |
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardSettingsViewModifier.swift:25:13: error: 'Menu' is only available in tvOS 17.0 or newer
17 | import SwiftUI
18 |
19 | struct KeyboardSettingsViewModifier: ViewModifier {
   |        `- note: add '@available' attribute to enclosing struct
20 |     @AppStorage("IsExpanded") private var isExpanded: Bool = false
21 |     @AppStorage("Layout") private var layout: KeyboardLayoutType = .ansi
22 |
23 |     func body(content: Content) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
24 |         content.ornament(attachmentAnchor: .scene(.topLeading)) {
25 |             Menu {
   |             |- error: 'Menu' is only available in tvOS 17.0 or newer
   |             `- note: add 'if #available' version check
26 |                 ForEach(KeyboardLayoutType.allCases) { option in
27 |                     Toggle(option.label, isOn: Binding {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardSettingsViewModifier.swift:25:13: error: 'init(content:label:)' is only available in tvOS 17.0 or newer
17 | import SwiftUI
18 |
19 | struct KeyboardSettingsViewModifier: ViewModifier {
   |        `- note: add '@available' attribute to enclosing struct
20 |     @AppStorage("IsExpanded") private var isExpanded: Bool = false
21 |     @AppStorage("Layout") private var layout: KeyboardLayoutType = .ansi
22 |
23 |     func body(content: Content) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
24 |         content.ornament(attachmentAnchor: .scene(.topLeading)) {
25 |             Menu {
   |             |- error: 'init(content:label:)' is only available in tvOS 17.0 or newer
   |             `- note: add 'if #available' version check
26 |                 ForEach(KeyboardLayoutType.allCases) { option in
27 |                     Toggle(option.label, isOn: Binding {
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardSettingsViewModifier.swift (in target 'VisionKeyboardKit' from project 'VisionKeyboardKit')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile KeyboardSettingsViewModifier.swift
SwiftCompile normal arm64 Compiling\ KeyboardState.swift /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardState.swift (in target 'VisionKeyboardKit' from project 'VisionKeyboardKit')
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardState.swift:19:2: error: 'Observable()' is only available in tvOS 17.0 or newer
17 | import SwiftUI
18 |
19 | @Observable
   |  `- error: 'Observable()' is only available in tvOS 17.0 or newer
20 | class KeyboardState {
21 |     private let id: KeyboardIdentifier
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardState.swift:26:5: note: expanded code originates here
17 | import SwiftUI
18 |
19 | @Observable
   | `- note: in expansion of macro 'Observable' on property 'modifier' here
20 | class KeyboardState {
   |       `- note: add '@available' attribute to enclosing class
21 |     private let id: KeyboardIdentifier
22 |     private let subject: KeyboardEventSubject
   :
24 |     let clicker = KeyboardClickSound()
25 |
26 |     var modifier: KeyboardModifier = .none
   +--- macro expansion @Observable ------------------------------------
   |1 | @ObservationTracked
   |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
   +--------------------------------------------------------------------
27 |
28 |     init(for id: KeyboardIdentifier) {
macro expansion @Observable:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardState.swift:51:1: note: expanded code originates here
17 | import SwiftUI
18 |
19 | @Observable
   | `- note: in expansion of macro 'Observable' on class 'KeyboardState' here
20 | class KeyboardState {
   |       `- note: add '@available' attribute to enclosing class
21 |     private let id: KeyboardIdentifier
22 |     private let subject: KeyboardEventSubject
   :
49 |         }
50 |     }
51 | }
   +--- macro expansion @Observable ------------------------------------
   | 1 | @ObservationIgnored private let _$observationRegistrar = Observation.ObservationRegistrar()
   |   |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
   | 2 |
   | 3 | internal nonisolated func access<$s17VisionKeyboardKit0B5State10ObservablefMm_6MemberfMu_>(
   +--------------------------------------------------------------------
52 |
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardState.swift:26:43: note: expanded code originates here
18 |
19 | @Observable
20 | class KeyboardState {
   |       `- note: add '@available' attribute to enclosing class
21 |     private let id: KeyboardIdentifier
22 |     private let subject: KeyboardEventSubject
   :
24 |     let clicker = KeyboardClickSound()
25 |
26 |     var modifier: KeyboardModifier = .none
   +--- macro expansion @ObservationTracked ----------------------------
   |1 | @ObservationIgnored
   |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
   |2 | private  var _modifier: KeyboardModifier = .none
   +--------------------------------------------------------------------
27 |
28 |     init(for id: KeyboardIdentifier) {
macro expansion @Observable:1:70: error: 'ObservationRegistrar' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardState.swift:51:1: note: expanded code originates here
17 | import SwiftUI
18 |
19 | @Observable
   | `- note: in expansion of macro 'Observable' on class 'KeyboardState' here
20 | class KeyboardState {
   |       `- note: add '@available' attribute to enclosing class
21 |     private let id: KeyboardIdentifier
22 |     private let subject: KeyboardEventSubject
   :
49 |         }
50 |     }
51 | }
   +--- macro expansion @Observable ------------------------------------
   | 1 | @ObservationIgnored private let _$observationRegistrar = Observation.ObservationRegistrar()
   |   |                                                                      `- error: 'ObservationRegistrar' is only available in tvOS 17.0 or newer
   | 2 |
   | 3 | internal nonisolated func access<$s17VisionKeyboardKit0B5State10ObservablefMm_6MemberfMu_>(
   +--------------------------------------------------------------------
52 |
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardState.swift (in target 'VisionKeyboardKit' from project 'VisionKeyboardKit')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile KeyboardState.swift
SwiftCompile normal arm64 Compiling\ KeyboardIdentifier.swift,\ KeyboardKeyView.swift /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardIdentifier.swift /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardKeyView.swift (in target 'VisionKeyboardKit' from project 'VisionKeyboardKit')
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardState.swift:19:2: error: 'Observable()' is only available in tvOS 17.0 or newer
17 | import SwiftUI
18 |
19 | @Observable
   |  `- error: 'Observable()' is only available in tvOS 17.0 or newer
20 | class KeyboardState {
21 |     private let id: KeyboardIdentifier
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardKeyView.swift:30:6: error: 'init(_:)' is only available in tvOS 17.0 or newer
17 | import SwiftUI
18 |
19 | struct KeyboardKeyView: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     let key: String
21 |     var shift: String?
   :
28 |     var action: () -> Void = {}
29 |
30 |     @Environment(KeyboardState.self) private var state
   |      `- error: 'init(_:)' is only available in tvOS 17.0 or newer
31 |
32 |     private var isShifted: Bool {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardKeyView.swift:56:6: error: 'init(_:)' is only available in tvOS 17.0 or newer
45 | }
46 |
47 | struct KeyboardToggleKeyView: View {
   |        `- note: add '@available' attribute to enclosing struct
48 |     let key: String
49 |     let code: KeyboardKeyCode
   :
54 |     var isDark: Bool = false
55 |
56 |     @Environment(KeyboardState.self) private var state
   |      `- error: 'init(_:)' is only available in tvOS 17.0 or newer
57 |
58 |     private var isOn: Bool {
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardIdentifier.swift (in target 'VisionKeyboardKit' from project 'VisionKeyboardKit')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile KeyboardIdentifier.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardKeyView.swift (in target 'VisionKeyboardKit' from project 'VisionKeyboardKit')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile KeyboardKeyView.swift
SwiftCompile normal arm64 Compiling\ KeyboardLayoutTenkeys.swift /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift (in target 'VisionKeyboardKit' from project 'VisionKeyboardKit')
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift:21:9: error: 'Grid' is only available in tvOS 16.0 or newer
17 | import SwiftUI
18 |
19 | struct KeyboardLayoutTenKeys: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
21 |         Grid {
   |         |- error: 'Grid' is only available in tvOS 16.0 or newer
   |         `- note: add 'if #available' version check
22 |             GridRow {
23 |                 KeyboardKeyView(key: "PrSn", code: .keyPrintScreen)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift:22:13: error: 'GridRow' is only available in tvOS 16.0 or newer
17 | import SwiftUI
18 |
19 | struct KeyboardLayoutTenKeys: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
21 |         Grid {
22 |             GridRow {
   |             |- error: 'GridRow' is only available in tvOS 16.0 or newer
   |             `- note: add 'if #available' version check
23 |                 KeyboardKeyView(key: "PrSn", code: .keyPrintScreen)
24 |                 KeyboardToggleKeyView(key: "ScLk", code: .keyScrollLock, modifier: .scrollLock)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift:27:29: error: 'gridCellUnsizedAxes' is only available in tvOS 16.0 or newer
17 | import SwiftUI
18 |
19 | struct KeyboardLayoutTenKeys: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
21 |         Grid {
22 |             GridRow {
   :
25 |                 KeyboardKeyView(key: "Pause", code: .keyPause)
26 |                 Color.clear.frame(width: 20, height: 0)
27 |                 Color.clear.gridCellUnsizedAxes([.horizontal, .vertical])
   |                             |- error: 'gridCellUnsizedAxes' is only available in tvOS 16.0 or newer
   |                             `- note: add 'if #available' version check
28 |                     .gridCellColumns(4)
29 |             }
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift:28:22: error: 'gridCellColumns' is only available in tvOS 16.0 or newer
17 | import SwiftUI
18 |
19 | struct KeyboardLayoutTenKeys: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
21 |         Grid {
22 |             GridRow {
   :
26 |                 Color.clear.frame(width: 20, height: 0)
27 |                 Color.clear.gridCellUnsizedAxes([.horizontal, .vertical])
28 |                     .gridCellColumns(4)
   |                      |- error: 'gridCellColumns' is only available in tvOS 16.0 or newer
   |                      `- note: add 'if #available' version check
29 |             }
30 |             GridRow {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift:30:13: error: 'GridRow' is only available in tvOS 16.0 or newer
17 | import SwiftUI
18 |
19 | struct KeyboardLayoutTenKeys: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
21 |         Grid {
22 |             GridRow {
   :
28 |                     .gridCellColumns(4)
29 |             }
30 |             GridRow {
   |             |- error: 'GridRow' is only available in tvOS 16.0 or newer
   |             `- note: add 'if #available' version check
31 |                 KeyboardKeyView(key: "Ins", code: .keyInsert)
32 |                 KeyboardKeyView(key: "Home", code: .keyHome)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift:34:29: error: 'gridCellUnsizedAxes' is only available in tvOS 16.0 or newer
17 | import SwiftUI
18 |
19 | struct KeyboardLayoutTenKeys: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
21 |         Grid {
22 |             GridRow {
   :
32 |                 KeyboardKeyView(key: "Home", code: .keyHome)
33 |                 KeyboardKeyView(key: "PgUp", code: .keyPageUp)
34 |                 Color.clear.gridCellUnsizedAxes([.horizontal, .vertical])
   |                             |- error: 'gridCellUnsizedAxes' is only available in tvOS 16.0 or newer
   |                             `- note: add 'if #available' version check
35 |                 KeyboardToggleKeyView(key: "NmLk", code: .keyNumLock, modifier: .numLock)
36 |                 KeyboardKeyView(key: "/", code: .keyKeypadDivide)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift:40:13: error: 'GridRow' is only available in tvOS 16.0 or newer
17 | import SwiftUI
18 |
19 | struct KeyboardLayoutTenKeys: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
21 |         Grid {
22 |             GridRow {
   :
38 |                 KeyboardKeyView(key: "-", code: .keyKeypadMinus)
39 |             }
40 |             GridRow {
   |             |- error: 'GridRow' is only available in tvOS 16.0 or newer
   |             `- note: add 'if #available' version check
41 |                 KeyboardKeyView(key: "Del", code: .keyDelete, clickSound: .delete)
42 |                 KeyboardKeyView(key: "End", code: .keyEnd)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift:44:29: error: 'gridCellUnsizedAxes' is only available in tvOS 16.0 or newer
17 | import SwiftUI
18 |
19 | struct KeyboardLayoutTenKeys: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
21 |         Grid {
22 |             GridRow {
   :
42 |                 KeyboardKeyView(key: "End", code: .keyEnd)
43 |                 KeyboardKeyView(key: "PgDn", code: .keyPageDown)
44 |                 Color.clear.gridCellUnsizedAxes([.horizontal, .vertical])
   |                             |- error: 'gridCellUnsizedAxes' is only available in tvOS 16.0 or newer
   |                             `- note: add 'if #available' version check
45 |                 KeyboardKeyView(key: "7", code: .keyKeypad7)
46 |                 KeyboardKeyView(key: "8", code: .keyKeypad8)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift:50:19: error: 'gridCellUnsizedAxes' is only available in tvOS 16.0 or newer
17 | import SwiftUI
18 |
19 | struct KeyboardLayoutTenKeys: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
21 |         Grid {
22 |             GridRow {
   :
48 |                 GeometryReader { geo in
49 |                     KeyboardKeyView(key: "+", code: .keyKeypadPlus, height: 110)
50 |                 }.gridCellUnsizedAxes([.horizontal, .vertical])
   |                   |- error: 'gridCellUnsizedAxes' is only available in tvOS 16.0 or newer
   |                   `- note: add 'if #available' version check
51 |             }
52 |             GridRow {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift:52:13: error: 'GridRow' is only available in tvOS 16.0 or newer
17 | import SwiftUI
18 |
19 | struct KeyboardLayoutTenKeys: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
21 |         Grid {
22 |             GridRow {
   :
50 |                 }.gridCellUnsizedAxes([.horizontal, .vertical])
51 |             }
52 |             GridRow {
   |             |- error: 'GridRow' is only available in tvOS 16.0 or newer
   |             `- note: add 'if #available' version check
53 |                 Color.clear.gridCellUnsizedAxes([.horizontal, .vertical])
54 |                     .gridCellColumns(4)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift:53:29: error: 'gridCellUnsizedAxes' is only available in tvOS 16.0 or newer
17 | import SwiftUI
18 |
19 | struct KeyboardLayoutTenKeys: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
21 |         Grid {
22 |             GridRow {
   :
51 |             }
52 |             GridRow {
53 |                 Color.clear.gridCellUnsizedAxes([.horizontal, .vertical])
   |                             |- error: 'gridCellUnsizedAxes' is only available in tvOS 16.0 or newer
   |                             `- note: add 'if #available' version check
54 |                     .gridCellColumns(4)
55 |                 KeyboardKeyView(key: "4", code: .keyKeypad4)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift:54:22: error: 'gridCellColumns' is only available in tvOS 16.0 or newer
17 | import SwiftUI
18 |
19 | struct KeyboardLayoutTenKeys: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
21 |         Grid {
22 |             GridRow {
   :
52 |             GridRow {
53 |                 Color.clear.gridCellUnsizedAxes([.horizontal, .vertical])
54 |                     .gridCellColumns(4)
   |                      |- error: 'gridCellColumns' is only available in tvOS 16.0 or newer
   |                      `- note: add 'if #available' version check
55 |                 KeyboardKeyView(key: "4", code: .keyKeypad4)
56 |                 KeyboardKeyView(key: "5", code: .keyKeypad5)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift:58:29: error: 'gridCellUnsizedAxes' is only available in tvOS 16.0 or newer
17 | import SwiftUI
18 |
19 | struct KeyboardLayoutTenKeys: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
21 |         Grid {
22 |             GridRow {
   :
56 |                 KeyboardKeyView(key: "5", code: .keyKeypad5)
57 |                 KeyboardKeyView(key: "6", code: .keyKeypad6)
58 |                 Color.clear.gridCellUnsizedAxes([.horizontal, .vertical])
   |                             |- error: 'gridCellUnsizedAxes' is only available in tvOS 16.0 or newer
   |                             `- note: add 'if #available' version check
59 |             }
60 |             GridRow {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift:60:13: error: 'GridRow' is only available in tvOS 16.0 or newer
17 | import SwiftUI
18 |
19 | struct KeyboardLayoutTenKeys: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
21 |         Grid {
22 |             GridRow {
   :
58 |                 Color.clear.gridCellUnsizedAxes([.horizontal, .vertical])
59 |             }
60 |             GridRow {
   |             |- error: 'GridRow' is only available in tvOS 16.0 or newer
   |             `- note: add 'if #available' version check
61 |                 Color.clear.gridCellUnsizedAxes([.horizontal, .vertical])
62 |                 KeyboardKeyView(key: "↑", code: .keyUpArrow, isDark: true)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift:61:29: error: 'gridCellUnsizedAxes' is only available in tvOS 16.0 or newer
17 | import SwiftUI
18 |
19 | struct KeyboardLayoutTenKeys: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
21 |         Grid {
22 |             GridRow {
   :
59 |             }
60 |             GridRow {
61 |                 Color.clear.gridCellUnsizedAxes([.horizontal, .vertical])
   |                             |- error: 'gridCellUnsizedAxes' is only available in tvOS 16.0 or newer
   |                             `- note: add 'if #available' version check
62 |                 KeyboardKeyView(key: "↑", code: .keyUpArrow, isDark: true)
63 |                 Color.clear.gridCellUnsizedAxes([.horizontal, .vertical])
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift:63:29: error: 'gridCellUnsizedAxes' is only available in tvOS 16.0 or newer
17 | import SwiftUI
18 |
19 | struct KeyboardLayoutTenKeys: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
21 |         Grid {
22 |             GridRow {
   :
61 |                 Color.clear.gridCellUnsizedAxes([.horizontal, .vertical])
62 |                 KeyboardKeyView(key: "↑", code: .keyUpArrow, isDark: true)
63 |                 Color.clear.gridCellUnsizedAxes([.horizontal, .vertical])
   |                             |- error: 'gridCellUnsizedAxes' is only available in tvOS 16.0 or newer
   |                             `- note: add 'if #available' version check
64 |                     .gridCellColumns(2)
65 |                 KeyboardKeyView(key: "1", code: .keyKeypad1)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift:64:22: error: 'gridCellColumns' is only available in tvOS 16.0 or newer
17 | import SwiftUI
18 |
19 | struct KeyboardLayoutTenKeys: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
21 |         Grid {
22 |             GridRow {
   :
62 |                 KeyboardKeyView(key: "↑", code: .keyUpArrow, isDark: true)
63 |                 Color.clear.gridCellUnsizedAxes([.horizontal, .vertical])
64 |                     .gridCellColumns(2)
   |                      |- error: 'gridCellColumns' is only available in tvOS 16.0 or newer
   |                      `- note: add 'if #available' version check
65 |                 KeyboardKeyView(key: "1", code: .keyKeypad1)
66 |                 KeyboardKeyView(key: "2", code: .keyKeypad2)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift:70:19: error: 'gridCellUnsizedAxes' is only available in tvOS 16.0 or newer
17 | import SwiftUI
18 |
19 | struct KeyboardLayoutTenKeys: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
21 |         Grid {
22 |             GridRow {
   :
68 |                 GeometryReader { geo in
69 |                     KeyboardKeyView(key: "↵", code: .keyKeypadEnter, height: 110, isDark: true)
70 |                 }.gridCellUnsizedAxes([.horizontal, .vertical])
   |                   |- error: 'gridCellUnsizedAxes' is only available in tvOS 16.0 or newer
   |                   `- note: add 'if #available' version check
71 |             }
72 |             GridRow {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift:72:13: error: 'GridRow' is only available in tvOS 16.0 or newer
17 | import SwiftUI
18 |
19 | struct KeyboardLayoutTenKeys: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
21 |         Grid {
22 |             GridRow {
   :
70 |                 }.gridCellUnsizedAxes([.horizontal, .vertical])
71 |             }
72 |             GridRow {
   |             |- error: 'GridRow' is only available in tvOS 16.0 or newer
   |             `- note: add 'if #available' version check
73 |                 KeyboardKeyView(key: "←", code: .keyLeftArrow, isDark: true)
74 |                 KeyboardKeyView(key: "↓", code: .keyDownArrow, isDark: true)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift:76:29: error: 'gridCellUnsizedAxes' is only available in tvOS 16.0 or newer
17 | import SwiftUI
18 |
19 | struct KeyboardLayoutTenKeys: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
21 |         Grid {
22 |             GridRow {
   :
74 |                 KeyboardKeyView(key: "↓", code: .keyDownArrow, isDark: true)
75 |                 KeyboardKeyView(key: "→", code: .keyRightArrow, isDark: true)
76 |                 Color.clear.gridCellUnsizedAxes([.horizontal, .vertical])
   |                             |- error: 'gridCellUnsizedAxes' is only available in tvOS 16.0 or newer
   |                             `- note: add 'if #available' version check
77 |                 KeyboardKeyView(key: "0", code: .keyKeypad0, width: 110)
78 |                     .gridCellColumns(2)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift:78:22: error: 'gridCellColumns' is only available in tvOS 16.0 or newer
17 | import SwiftUI
18 |
19 | struct KeyboardLayoutTenKeys: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
21 |         Grid {
22 |             GridRow {
   :
76 |                 Color.clear.gridCellUnsizedAxes([.horizontal, .vertical])
77 |                 KeyboardKeyView(key: "0", code: .keyKeypad0, width: 110)
78 |                     .gridCellColumns(2)
   |                      |- error: 'gridCellColumns' is only available in tvOS 16.0 or newer
   |                      `- note: add 'if #available' version check
79 |                 KeyboardKeyView(key: ".", code: .keyKeypadDecimal)
80 |                 Color.clear.gridCellUnsizedAxes([.horizontal, .vertical])
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift:80:29: error: 'gridCellUnsizedAxes' is only available in tvOS 16.0 or newer
17 | import SwiftUI
18 |
19 | struct KeyboardLayoutTenKeys: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
21 |         Grid {
22 |             GridRow {
   :
78 |                     .gridCellColumns(2)
79 |                 KeyboardKeyView(key: ".", code: .keyKeypadDecimal)
80 |                 Color.clear.gridCellUnsizedAxes([.horizontal, .vertical])
   |                             |- error: 'gridCellUnsizedAxes' is only available in tvOS 16.0 or newer
   |                             `- note: add 'if #available' version check
81 |             }
82 |         }
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift:21:14: warning: conformance of 'GridRow<Content>' to 'View' is only available in tvOS 16.0 or newer; this is an error in the Swift 6 language mode
17 | import SwiftUI
18 |
19 | struct KeyboardLayoutTenKeys: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
21 |         Grid {
   |              |- warning: conformance of 'GridRow<Content>' to 'View' is only available in tvOS 16.0 or newer; this is an error in the Swift 6 language mode
   |              `- note: add 'if #available' version check
22 |             GridRow {
23 |                 KeyboardKeyView(key: "PrSn", code: .keyPrintScreen)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift:21:14: warning: conformance of 'GridRow<Content>' to 'View' is only available in tvOS 16.0 or newer; this is an error in the Swift 6 language mode
17 | import SwiftUI
18 |
19 | struct KeyboardLayoutTenKeys: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
21 |         Grid {
   |              |- warning: conformance of 'GridRow<Content>' to 'View' is only available in tvOS 16.0 or newer; this is an error in the Swift 6 language mode
   |              `- note: add 'if #available' version check
22 |             GridRow {
23 |                 KeyboardKeyView(key: "PrSn", code: .keyPrintScreen)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift:21:14: warning: conformance of 'GridRow<Content>' to 'View' is only available in tvOS 16.0 or newer; this is an error in the Swift 6 language mode
17 | import SwiftUI
18 |
19 | struct KeyboardLayoutTenKeys: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
21 |         Grid {
   |              |- warning: conformance of 'GridRow<Content>' to 'View' is only available in tvOS 16.0 or newer; this is an error in the Swift 6 language mode
   |              `- note: add 'if #available' version check
22 |             GridRow {
23 |                 KeyboardKeyView(key: "PrSn", code: .keyPrintScreen)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift:21:14: warning: conformance of 'GridRow<Content>' to 'View' is only available in tvOS 16.0 or newer; this is an error in the Swift 6 language mode
17 | import SwiftUI
18 |
19 | struct KeyboardLayoutTenKeys: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
21 |         Grid {
   |              |- warning: conformance of 'GridRow<Content>' to 'View' is only available in tvOS 16.0 or newer; this is an error in the Swift 6 language mode
   |              `- note: add 'if #available' version check
22 |             GridRow {
23 |                 KeyboardKeyView(key: "PrSn", code: .keyPrintScreen)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift:21:14: warning: conformance of 'GridRow<Content>' to 'View' is only available in tvOS 16.0 or newer; this is an error in the Swift 6 language mode
17 | import SwiftUI
18 |
19 | struct KeyboardLayoutTenKeys: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
21 |         Grid {
   |              |- warning: conformance of 'GridRow<Content>' to 'View' is only available in tvOS 16.0 or newer; this is an error in the Swift 6 language mode
   |              `- note: add 'if #available' version check
22 |             GridRow {
23 |                 KeyboardKeyView(key: "PrSn", code: .keyPrintScreen)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift:21:14: warning: conformance of 'GridRow<Content>' to 'View' is only available in tvOS 16.0 or newer; this is an error in the Swift 6 language mode
17 | import SwiftUI
18 |
19 | struct KeyboardLayoutTenKeys: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
21 |         Grid {
   |              |- warning: conformance of 'GridRow<Content>' to 'View' is only available in tvOS 16.0 or newer; this is an error in the Swift 6 language mode
   |              `- note: add 'if #available' version check
22 |             GridRow {
23 |                 KeyboardKeyView(key: "PrSn", code: .keyPrintScreen)
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift (in target 'VisionKeyboardKit' from project 'VisionKeyboardKit')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile KeyboardLayoutTenkeys.swift
SwiftCompile normal arm64 Compiling\ KeyboardLayoutANSI.swift /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutANSI.swift (in target 'VisionKeyboardKit' from project 'VisionKeyboardKit')
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardState.swift:19:2: error: 'Observable()' is only available in tvOS 17.0 or newer
17 | import SwiftUI
18 |
19 | @Observable
   |  `- error: 'Observable()' is only available in tvOS 17.0 or newer
20 | class KeyboardState {
21 |     private let id: KeyboardIdentifier
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardKeyView.swift:30:6: error: 'init(_:)' is only available in tvOS 17.0 or newer
17 | import SwiftUI
18 |
19 | struct KeyboardKeyView: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     let key: String
21 |     var shift: String?
   :
28 |     var action: () -> Void = {}
29 |
30 |     @Environment(KeyboardState.self) private var state
   |      `- error: 'init(_:)' is only available in tvOS 17.0 or newer
31 |
32 |     private var isShifted: Bool {
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutANSI.swift (in target 'VisionKeyboardKit' from project 'VisionKeyboardKit')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile KeyboardLayoutANSI.swift
SwiftCompile normal arm64 Compiling\ KeyboardEvent.swift,\ KeyboardEventPS2.swift /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardEvent.swift /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardEventPS2.swift (in target 'VisionKeyboardKit' from project 'VisionKeyboardKit')
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardEvent.swift:220:39: error: 'OSAllocatedUnfairLock' is only available in tvOS 16.0 or newer
214 | /// their reference and so it is safe to clean up the map entry (which should be holding a box with a nil reference).
215 | /// We make sure all this is done in a thread safe manner by the use of `subjectsLock`.
216 | final class KeyboardEventSubject: Subject {
    |             `- note: add '@available' attribute to enclosing class
217 |     typealias Output = KeyboardEvent
218 |     typealias Failure = Never
219 |
220 |     private static var subjectsLock = OSAllocatedUnfairLock()
    |                        |              `- error: 'OSAllocatedUnfairLock' is only available in tvOS 16.0 or newer
    |                        `- note: add '@available' attribute to enclosing static property
221 |     private static var allSubjects: [KeyboardIdentifier: Weak<KeyboardEventSubject>] = [:]
222 |     private let id: KeyboardIdentifier
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardEvent.swift:220:39: error: 'init()' is only available in tvOS 16.0 or newer
214 | /// their reference and so it is safe to clean up the map entry (which should be holding a box with a nil reference).
215 | /// We make sure all this is done in a thread safe manner by the use of `subjectsLock`.
216 | final class KeyboardEventSubject: Subject {
    |             `- note: add '@available' attribute to enclosing class
217 |     typealias Output = KeyboardEvent
218 |     typealias Failure = Never
219 |
220 |     private static var subjectsLock = OSAllocatedUnfairLock()
    |                        |              `- error: 'init()' is only available in tvOS 16.0 or newer
    |                        `- note: add '@available' attribute to enclosing static property
221 |     private static var allSubjects: [KeyboardIdentifier: Weak<KeyboardEventSubject>] = [:]
222 |     private let id: KeyboardIdentifier
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardEvent.swift:230:22: error: 'withLock' is only available in tvOS 16.0 or newer
214 | /// their reference and so it is safe to clean up the map entry (which should be holding a box with a nil reference).
215 | /// We make sure all this is done in a thread safe manner by the use of `subjectsLock`.
216 | final class KeyboardEventSubject: Subject {
    |             `- note: add '@available' attribute to enclosing class
217 |     typealias Output = KeyboardEvent
218 |     typealias Failure = Never
    :
227 |     }
228 |
229 |     static func `for`(_ id: KeyboardIdentifier) -> KeyboardEventSubject {
    |                 `- note: add '@available' attribute to enclosing static method
230 |         subjectsLock.withLock {
    |                      |- error: 'withLock' is only available in tvOS 16.0 or newer
    |                      `- note: add 'if #available' version check
231 |             if let w = allSubjects[id], let s = w.ref {
232 |                 return s
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardEvent.swift (in target 'VisionKeyboardKit' from project 'VisionKeyboardKit')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile KeyboardEvent.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardEventPS2.swift (in target 'VisionKeyboardKit' from project 'VisionKeyboardKit')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile KeyboardEventPS2.swift
SwiftCompile normal arm64 Compiling\ KeyboardWindowGroup.swift /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardWindowGroup.swift (in target 'VisionKeyboardKit' from project 'VisionKeyboardKit')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardWindowGroup.swift (in target 'VisionKeyboardKit' from project 'VisionKeyboardKit')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile KeyboardWindowGroup.swift
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardWindowGroup.swift:33:18: error: 'OpenWindowAction' is unavailable in tvOS
31 | }
32 |
33 | public extension OpenWindowAction {
   |                  `- error: 'OpenWindowAction' is unavailable in tvOS
34 |     /// Opens a keyboard window
35 |     /// - Parameter id: Any `Hashable` object that uniquely identifies this keyboard instance.
SwiftUI.OpenWindowAction:4:42: note: 'OpenWindowAction' has been explicitly marked unavailable here
 2 | @available(tvOS, unavailable)
 3 | @available(watchOS, unavailable)
 4 | @MainActor @preconcurrency public struct OpenWindowAction {
   |                                          `- note: 'OpenWindowAction' has been explicitly marked unavailable here
 5 |     @available(macOS 15.0, *)
 6 |     @available(iOS, unavailable)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardWindowGroup.swift:47:18: error: 'DismissWindowAction' is unavailable in tvOS
45 | }
46 |
47 | public extension DismissWindowAction {
   |                  `- error: 'DismissWindowAction' is unavailable in tvOS
48 |     /// Closes a keyboard window
49 |     /// - Parameter id: Any `Hashable` object that uniquely identifies this keyboard instance.
SwiftUI.DismissWindowAction:4:42: note: 'DismissWindowAction' has been explicitly marked unavailable here
2 | @available(tvOS, unavailable)
3 | @available(watchOS, unavailable)
4 | @MainActor @preconcurrency public struct DismissWindowAction {
  |                                          `- note: 'DismissWindowAction' has been explicitly marked unavailable here
5 |     @MainActor @preconcurrency public func callAsFunction()
6 |     @MainActor @preconcurrency public func callAsFunction(id: String)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardWindowGroup.swift:26:9: error: 'init(for:content:)' is unavailable in tvOS
24 |
25 |     public var body: some Scene {
26 |         WindowGroup(for: KeyboardIdentifier.self) { $id in
   |         `- error: 'init(for:content:)' is unavailable in tvOS
27 |             KeyboardView(for: id ?? .global)
28 |         }
SwiftUI.WindowGroup.init:2:20: note: 'init(for:content:)' has been explicitly marked unavailable here
1 | generic struct WindowGroup {
2 | nonisolated public init<D, C>(for type: D.Type, @ContentBuilder content: @escaping (Binding<D?>) -> C) where Content == PresentedWindowContent<D, C>, D : Decodable, D : Encodable, D : Hashable, C : View}
  |                    `- note: 'init(for:content:)' has been explicitly marked unavailable here
3 |
SwiftCompile normal arm64 Compiling\ KeyboardButtonStyle.swift,\ KeyboardClickSound.swift /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift (in target 'VisionKeyboardKit' from project 'VisionKeyboardKit')
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:20:28: error: 'Duration' is only available in tvOS 16.0 or newer
 18 | import RealityKit
 19 |
 20 | private let kDebounceTime: Duration = .milliseconds(25)
    |             |              `- error: 'Duration' is only available in tvOS 16.0 or newer
    |             `- note: add '@available' attribute to enclosing let
 21 |
 22 | struct KeyboardButtonStyle: PrimitiveButtonStyle {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:20:40: error: 'milliseconds' is only available in tvOS 16.0 or newer
 18 | import RealityKit
 19 |
 20 | private let kDebounceTime: Duration = .milliseconds(25)
    |             |                          `- error: 'milliseconds' is only available in tvOS 16.0 or newer
    |             `- note: add '@available' attribute to enclosing let
 21 |
 22 | struct KeyboardButtonStyle: PrimitiveButtonStyle {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardState.swift:19:2: error: 'Observable()' is only available in tvOS 17.0 or newer
17 | import SwiftUI
18 |
19 | @Observable
   |  `- error: 'Observable()' is only available in tvOS 17.0 or newer
20 | class KeyboardState {
21 |     private let id: KeyboardIdentifier
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:34:6: error: 'init(_:)' is only available in tvOS 17.0 or newer
 20 | private let kDebounceTime: Duration = .milliseconds(25)
 21 |
 22 | struct KeyboardButtonStyle: PrimitiveButtonStyle {
    |        `- note: add '@available' attribute to enclosing struct
 23 |     let isDark: Bool
 24 |     let isToggled: Bool
    :
 32 |     @State private var isPressed: Bool = false
 33 |     @State private var debounceTask: Task<Void, Never>?
 34 |     @Environment(KeyboardState.self) private var state
    |      `- error: 'init(_:)' is only available in tvOS 17.0 or newer
 35 |
 36 |     private func spatialGesture(configuration: Configuration) -> some Gesture {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:38:14: error: referencing instance method 'onChanged' on 'Gesture' requires that 'SpatialEventGesture.Value' (aka 'SpatialEventCollection') conform to 'Equatable'
 36 |     private func spatialGesture(configuration: Configuration) -> some Gesture {
 37 |         SpatialEventGesture()
 38 |             .onChanged { events in
    |              `- error: referencing instance method 'onChanged' on 'Gesture' requires that 'SpatialEventGesture.Value' (aka 'SpatialEventCollection') conform to 'Equatable'
 39 |                 for event in events {
 40 |                     switch event.kind {
SwiftUI.Gesture:2:11: note: where 'Self.Value' = 'SpatialEventGesture.Value' (aka 'SpatialEventCollection')
1 | @available(iOS 13.0, macOS 10.15, tvOS 13.0, watchOS 6.0, *)
2 | extension Gesture where Self.Value : Equatable {
  |           `- note: where 'Self.Value' = 'SpatialEventGesture.Value' (aka 'SpatialEventCollection')
3 |     nonisolated public func onChanged(_ action: @escaping (Self.Value) -> Void) -> _ChangedGesture<Self>
4 | }
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:29:18: error: 'Entity' is only available in tvOS 26.0 or newer
 19 |
 20 | /// Plays the system keyboard click sound
 21 | class KeyboardClickSound {
    |       `- note: add '@available' attribute to enclosing class
 22 |     enum File {
 23 |         case normal
    :
 27 |
 28 |     /// The RK entity where the sound will originate
 29 |     let entity = Entity()
    |                  `- error: 'Entity' is only available in tvOS 26.0 or newer
 30 |
 31 |     private var pressNormalPlayer: AudioPlaybackController?
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:121:33: error: argument passed to call that takes no arguments
119 |         .frame(width: width + 4, height: height + 4)
120 |         .hoverEffect()
121 |         .frame(depth: isPressed ? 0 : 12)
    |                                 `- error: argument passed to call that takes no arguments
122 |         .gesture(spatialGesture(configuration: configuration))
123 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:31:36: error: 'AudioPlaybackController' is only available in tvOS 26.0 or newer
 19 |
 20 | /// Plays the system keyboard click sound
 21 | class KeyboardClickSound {
    |       `- note: add '@available' attribute to enclosing class
 22 |     enum File {
 23 |         case normal
    :
 29 |     let entity = Entity()
 30 |
 31 |     private var pressNormalPlayer: AudioPlaybackController?
    |                                    `- error: 'AudioPlaybackController' is only available in tvOS 26.0 or newer
 32 |     private var pressDeletePlayer: AudioPlaybackController?
 33 |     private var pressModifierPlayer: AudioPlaybackController?
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:32:36: error: 'AudioPlaybackController' is only available in tvOS 26.0 or newer
 19 |
 20 | /// Plays the system keyboard click sound
 21 | class KeyboardClickSound {
    |       `- note: add '@available' attribute to enclosing class
 22 |     enum File {
 23 |         case normal
    :
 30 |
 31 |     private var pressNormalPlayer: AudioPlaybackController?
 32 |     private var pressDeletePlayer: AudioPlaybackController?
    |                                    `- error: 'AudioPlaybackController' is only available in tvOS 26.0 or newer
 33 |     private var pressModifierPlayer: AudioPlaybackController?
 34 |
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:33:38: error: 'AudioPlaybackController' is only available in tvOS 26.0 or newer
 19 |
 20 | /// Plays the system keyboard click sound
 21 | class KeyboardClickSound {
    |       `- note: add '@available' attribute to enclosing class
 22 |     enum File {
 23 |         case normal
    :
 31 |     private var pressNormalPlayer: AudioPlaybackController?
 32 |     private var pressDeletePlayer: AudioPlaybackController?
 33 |     private var pressModifierPlayer: AudioPlaybackController?
    |                                      `- error: 'AudioPlaybackController' is only available in tvOS 26.0 or newer
 34 |
 35 |     private func loadAudioResource(for url: URL) -> AudioFileResource? {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:35:53: error: 'AudioFileResource' is only available in tvOS 26.0 or newer
 19 |
 20 | /// Plays the system keyboard click sound
 21 | class KeyboardClickSound {
    |       `- note: add '@available' attribute to enclosing class
 22 |     enum File {
 23 |         case normal
    :
 33 |     private var pressModifierPlayer: AudioPlaybackController?
 34 |
 35 |     private func loadAudioResource(for url: URL) -> AudioFileResource? {
    |                  |                                  `- error: 'AudioFileResource' is only available in tvOS 26.0 or newer
    |                  `- note: add '@available' attribute to enclosing instance method
 36 |         let configuration = AudioFileResource.Configuration(calibration: .absolute(dBSPL: 58.0))
 37 |         return try? .load(contentsOf: url, configuration: configuration)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:61:24: error: 'appending(components:directoryHint:)' is only available in tvOS 16.0 or newer
 19 |
 20 | /// Plays the system keyboard click sound
 21 | class KeyboardClickSound {
    |       `- note: add '@available' attribute to enclosing class
 22 |     enum File {
 23 |         case normal
    :
 59 |         let fm = FileManager.default
 60 |         let library = fm.urls(for: .libraryDirectory, in: .systemDomainMask)[0]
 61 |         return library.appending(components: "Audio", "UISounds")
    |                        |- error: 'appending(components:directoryHint:)' is only available in tvOS 16.0 or newer
    |                        `- note: add 'if #available' version check
 62 |     }()
 63 |     #endif
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:107:33: error: 'AudioPlaybackController' is only available in tvOS 26.0 or newer
 19 |
 20 | /// Plays the system keyboard click sound
 21 | class KeyboardClickSound {
    |       `- note: add '@available' attribute to enclosing class
 22 |     enum File {
 23 |         case normal
    :
105 |
106 |     @MainActor
107 |     private func play(_ player: AudioPlaybackController?) {
    |                  |              `- error: 'AudioPlaybackController' is only available in tvOS 26.0 or newer
    |                  `- note: add '@available' attribute to enclosing instance method
108 |         guard let player = player else {
109 |             return
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:36:29: error: 'AudioFileResource' is only available in tvOS 26.0 or newer
 19 |
 20 | /// Plays the system keyboard click sound
 21 | class KeyboardClickSound {
    |       `- note: add '@available' attribute to enclosing class
 22 |     enum File {
 23 |         case normal
    :
 33 |     private var pressModifierPlayer: AudioPlaybackController?
 34 |
 35 |     private func loadAudioResource(for url: URL) -> AudioFileResource? {
    |                  `- note: add '@available' attribute to enclosing instance method
 36 |         let configuration = AudioFileResource.Configuration(calibration: .absolute(dBSPL: 58.0))
    |                             |- error: 'AudioFileResource' is only available in tvOS 26.0 or newer
    |                             `- note: add 'if #available' version check
 37 |         return try? .load(contentsOf: url, configuration: configuration)
 38 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:37:22: error: 'load(contentsOf:withName:configuration:)' is only available in tvOS 26.0 or newer
 19 |
 20 | /// Plays the system keyboard click sound
 21 | class KeyboardClickSound {
    |       `- note: add '@available' attribute to enclosing class
 22 |     enum File {
 23 |         case normal
    :
 33 |     private var pressModifierPlayer: AudioPlaybackController?
 34 |
 35 |     private func loadAudioResource(for url: URL) -> AudioFileResource? {
    |                  `- note: add '@available' attribute to enclosing instance method
 36 |         let configuration = AudioFileResource.Configuration(calibration: .absolute(dBSPL: 58.0))
 37 |         return try? .load(contentsOf: url, configuration: configuration)
    |                      |- error: 'load(contentsOf:withName:configuration:)' is only available in tvOS 26.0 or newer
    |                      `- note: add 'if #available' version check
 38 |     }
 39 |
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:77:42: error: 'appending(component:directoryHint:)' is only available in tvOS 16.0 or newer
 19 |
 20 | /// Plays the system keyboard click sound
 21 | class KeyboardClickSound {
    |       `- note: add '@available' attribute to enclosing class
 22 |     enum File {
 23 |         case normal
    :
 70 |     }()
 71 |
 72 |     init() {
    |     `- note: add '@available' attribute to enclosing initializer
 73 |         // if we disabled system sounds then do not create the players
 74 |         guard isEnabled else {
 75 |             return
 76 |         }
 77 |         let pressNormalUrl = uiSoundsUrl.appending(component: "key_press_click.caf")
    |                                          |- error: 'appending(component:directoryHint:)' is only available in tvOS 16.0 or newer
    |                                          `- note: add 'if #available' version check
 78 |         let pressDeleteUrl = uiSoundsUrl.appending(component: "key_press_delete.caf")
 79 |         let pressModifierUrl = uiSoundsUrl.appending(component: "key_press_modifier.caf")
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:78:42: error: 'appending(component:directoryHint:)' is only available in tvOS 16.0 or newer
 19 |
 20 | /// Plays the system keyboard click sound
 21 | class KeyboardClickSound {
    |       `- note: add '@available' attribute to enclosing class
 22 |     enum File {
 23 |         case normal
    :
 70 |     }()
 71 |
 72 |     init() {
    |     `- note: add '@available' attribute to enclosing initializer
 73 |         // if we disabled system sounds then do not create the players
 74 |         guard isEnabled else {
    :
 76 |         }
 77 |         let pressNormalUrl = uiSoundsUrl.appending(component: "key_press_click.caf")
 78 |         let pressDeleteUrl = uiSoundsUrl.appending(component: "key_press_delete.caf")
    |                                          |- error: 'appending(component:directoryHint:)' is only available in tvOS 16.0 or newer
    |                                          `- note: add 'if #available' version check
 79 |         let pressModifierUrl = uiSoundsUrl.appending(component: "key_press_modifier.caf")
 80 |         if let resource = loadAudioResource(for: pressNormalUrl) {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:79:44: error: 'appending(component:directoryHint:)' is only available in tvOS 16.0 or newer
 19 |
 20 | /// Plays the system keyboard click sound
 21 | class KeyboardClickSound {
    |       `- note: add '@available' attribute to enclosing class
 22 |     enum File {
 23 |         case normal
    :
 70 |     }()
 71 |
 72 |     init() {
    |     `- note: add '@available' attribute to enclosing initializer
 73 |         // if we disabled system sounds then do not create the players
 74 |         guard isEnabled else {
    :
 77 |         let pressNormalUrl = uiSoundsUrl.appending(component: "key_press_click.caf")
 78 |         let pressDeleteUrl = uiSoundsUrl.appending(component: "key_press_delete.caf")
 79 |         let pressModifierUrl = uiSoundsUrl.appending(component: "key_press_modifier.caf")
    |                                            |- error: 'appending(component:directoryHint:)' is only available in tvOS 16.0 or newer
    |                                            `- note: add 'if #available' version check
 80 |         if let resource = loadAudioResource(for: pressNormalUrl) {
 81 |             pressNormalPlayer = entity.prepareAudio(resource)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:81:40: error: 'prepareAudio' is only available in tvOS 26.0 or newer
 19 |
 20 | /// Plays the system keyboard click sound
 21 | class KeyboardClickSound {
    |       `- note: add '@available' attribute to enclosing class
 22 |     enum File {
 23 |         case normal
    :
 70 |     }()
 71 |
 72 |     init() {
    |     `- note: add '@available' attribute to enclosing initializer
 73 |         // if we disabled system sounds then do not create the players
 74 |         guard isEnabled else {
    :
 79 |         let pressModifierUrl = uiSoundsUrl.appending(component: "key_press_modifier.caf")
 80 |         if let resource = loadAudioResource(for: pressNormalUrl) {
 81 |             pressNormalPlayer = entity.prepareAudio(resource)
    |                                        |- error: 'prepareAudio' is only available in tvOS 26.0 or newer
    |                                        `- note: add 'if #available' version check
 82 |         }
 83 |         if let resource = loadAudioResource(for: pressDeleteUrl) {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:84:40: error: 'prepareAudio' is only available in tvOS 26.0 or newer
 19 |
 20 | /// Plays the system keyboard click sound
 21 | class KeyboardClickSound {
    |       `- note: add '@available' attribute to enclosing class
 22 |     enum File {
 23 |         case normal
    :
 70 |     }()
 71 |
 72 |     init() {
    |     `- note: add '@available' attribute to enclosing initializer
 73 |         // if we disabled system sounds then do not create the players
 74 |         guard isEnabled else {
    :
 82 |         }
 83 |         if let resource = loadAudioResource(for: pressDeleteUrl) {
 84 |             pressDeletePlayer = entity.prepareAudio(resource)
    |                                        |- error: 'prepareAudio' is only available in tvOS 26.0 or newer
    |                                        `- note: add 'if #available' version check
 85 |         }
 86 |         if let resource = loadAudioResource(for: pressModifierUrl) {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:87:42: error: 'prepareAudio' is only available in tvOS 26.0 or newer
 19 |
 20 | /// Plays the system keyboard click sound
 21 | class KeyboardClickSound {
    |       `- note: add '@available' attribute to enclosing class
 22 |     enum File {
 23 |         case normal
    :
 70 |     }()
 71 |
 72 |     init() {
    |     `- note: add '@available' attribute to enclosing initializer
 73 |         // if we disabled system sounds then do not create the players
 74 |         guard isEnabled else {
    :
 85 |         }
 86 |         if let resource = loadAudioResource(for: pressModifierUrl) {
 87 |             pressModifierPlayer = entity.prepareAudio(resource)
    |                                          |- error: 'prepareAudio' is only available in tvOS 26.0 or newer
    |                                          `- note: add 'if #available' version check
 88 |         }
 89 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:112:23: error: 'isPlaying' is only available in tvOS 26.0 or newer
 19 |
 20 | /// Plays the system keyboard click sound
 21 | class KeyboardClickSound {
    |       `- note: add '@available' attribute to enclosing class
 22 |     enum File {
 23 |         case normal
    :
105 |
106 |     @MainActor
107 |     private func play(_ player: AudioPlaybackController?) {
    |                  `- note: add '@available' attribute to enclosing instance method
108 |         guard let player = player else {
109 |             return
110 |         }
111 |         withAmbientSession {
112 |             if player.isPlaying {
    |                       |- error: 'isPlaying' is only available in tvOS 26.0 or newer
    |                       `- note: add 'if #available' version check
113 |                 player.seek(to: .zero)
114 |             }
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:113:24: error: 'seek(to:)' is only available in tvOS 26.0 or newer
 19 |
 20 | /// Plays the system keyboard click sound
 21 | class KeyboardClickSound {
    |       `- note: add '@available' attribute to enclosing class
 22 |     enum File {
 23 |         case normal
    :
105 |
106 |     @MainActor
107 |     private func play(_ player: AudioPlaybackController?) {
    |                  `- note: add '@available' attribute to enclosing instance method
108 |         guard let player = player else {
109 |             return
    :
111 |         withAmbientSession {
112 |             if player.isPlaying {
113 |                 player.seek(to: .zero)
    |                        |- error: 'seek(to:)' is only available in tvOS 26.0 or newer
    |                        `- note: add 'if #available' version check
114 |             }
115 |             player.play()
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:113:34: error: 'zero' is only available in tvOS 16.0 or newer
 19 |
 20 | /// Plays the system keyboard click sound
 21 | class KeyboardClickSound {
    |       `- note: add '@available' attribute to enclosing class
 22 |     enum File {
 23 |         case normal
    :
105 |
106 |     @MainActor
107 |     private func play(_ player: AudioPlaybackController?) {
    |                  `- note: add '@available' attribute to enclosing instance method
108 |         guard let player = player else {
109 |             return
    :
111 |         withAmbientSession {
112 |             if player.isPlaying {
113 |                 player.seek(to: .zero)
    |                                  |- error: 'zero' is only available in tvOS 16.0 or newer
    |                                  `- note: add 'if #available' version check
114 |             }
115 |             player.play()
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift (in target 'VisionKeyboardKit' from project 'VisionKeyboardKit')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile KeyboardButtonStyle.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift (in target 'VisionKeyboardKit' from project 'VisionKeyboardKit')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile KeyboardClickSound.swift
SwiftCompile normal arm64 Compiling\ KeyboardLayoutType.swift /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutType.swift (in target 'VisionKeyboardKit' from project 'VisionKeyboardKit')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutType.swift (in target 'VisionKeyboardKit' from project 'VisionKeyboardKit')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile KeyboardLayoutType.swift
PruneExplicitPrecompiledModules /Users/admin/builder/spi-builder-workspace/.derivedData/SDKExplicitPrecompiledModules
PruneExplicitPrecompiledModules /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SwiftExplicitPrecompiledModules
PruneExplicitPrecompiledModules /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/ExplicitPrecompiledModules
2026-09-19 17:16:54.353 xcodebuild[627:3890] [MT] IDERunDestination: Supported platforms for the buildables in the current scheme is empty.
** BUILD FAILED **
The following build commands failed:
	SwiftCompile normal arm64 (in target 'VisionKeyboardKit' from project 'VisionKeyboardKit')
	SwiftEmitModule normal arm64 Emitting\ module\ for\ VisionKeyboardKit (in target 'VisionKeyboardKit' from project 'VisionKeyboardKit')
	Building workspace VisionKeyboardKit with scheme VisionKeyboardKit
(3 failures)
Command line invocation:
    /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/usr/bin/xcodebuild -IDEClonedSourcePackagesDirPathOverride=/Users/admin/builder/spi-builder-workspace/.dependencies -resolvePackageDependencies
Resolve Package Graph
Resolved source packages:
  VisionKeyboardKit: /Users/admin/builder/spi-builder-workspace
resolved source packages: VisionKeyboardKit
2026-09-19 17:17:01.151 xcodebuild[760:4510] [MT] IDERunDestination: Supported platforms for the buildables in the current scheme is empty.
{
  "dependencies" : [
  ],
  "manifest_display_name" : "VisionKeyboardKit",
  "name" : "VisionKeyboardKit",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "visionos",
      "version" : "1.0"
    }
  ],
  "products" : [
    {
      "name" : "VisionKeyboardKit",
      "targets" : [
        "VisionKeyboardKit"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "VisionKeyboardKitTests",
      "module_type" : "SwiftTarget",
      "name" : "VisionKeyboardKitTests",
      "path" : "Tests/VisionKeyboardKitTests",
      "sources" : [
        "VisionKeyboardKitTests.swift"
      ],
      "target_dependencies" : [
        "VisionKeyboardKit"
      ],
      "type" : "test"
    },
    {
      "c99name" : "VisionKeyboardKit",
      "module_type" : "SwiftTarget",
      "name" : "VisionKeyboardKit",
      "path" : "Sources/VisionKeyboardKit",
      "product_memberships" : [
        "VisionKeyboardKit"
      ],
      "sources" : [
        "KeyboardButtonStyle.swift",
        "KeyboardClickSound.swift",
        "KeyboardEvent.swift",
        "KeyboardEventPS2.swift",
        "KeyboardIdentifier.swift",
        "KeyboardKeyView.swift",
        "KeyboardLayoutANSI.swift",
        "KeyboardLayoutTenkeys.swift",
        "KeyboardLayoutType.swift",
        "KeyboardSettingsViewModifier.swift",
        "KeyboardState.swift",
        "KeyboardView.swift",
        "KeyboardWindowGroup.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.9"
}
{
  "workspace" : {
    "name" : "VisionKeyboardKit",
    "schemes" : [
      "VisionKeyboardKit"
    ]
  }
}
2026-09-19 17:17:02.462 xcodebuild[768:4577] [MT] IDERunDestination: Supported platforms for the buildables in the current scheme is empty.
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-27.0.0-Release.Candidate.app xcrun xcodebuild -IDEClonedSourcePackagesDirPathOverride=$PWD/.dependencies -skipMacroValidation -skipPackagePluginValidation -derivedDataPath $PWD/.derivedData build -scheme VisionKeyboardKit -destination generic/platform=tvOS
Command line invocation:
    /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/usr/bin/xcodebuild -IDEClonedSourcePackagesDirPathOverride=/Users/admin/builder/spi-builder-workspace/.dependencies -skipMacroValidation -skipPackagePluginValidation -derivedDataPath /Users/admin/builder/spi-builder-workspace/.derivedData build -scheme VisionKeyboardKit -destination generic/platform=tvOS
Resolve Package Graph
Resolved source packages:
  VisionKeyboardKit: /Users/admin/builder/spi-builder-workspace
ComputePackagePrebuildTargetDependencyGraph
Prepare packages
CreateBuildRequest
SendProjectDescription
CreateBuildOperation
ComputeTargetDependencyGraph
note: Building targets in dependency order
note: Target dependency graph (2 targets)
    Target 'VisionKeyboardKit-product' in project 'VisionKeyboardKit'
        ➜ Explicit dependency on target 'VisionKeyboardKit' in project 'VisionKeyboardKit'
    Target 'VisionKeyboardKit' in project 'VisionKeyboardKit' (no dependencies)
GatherProvisioningInputs
CreateBuildDescription
ClangStatCache /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang-stat-cache /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS27.0.sdk /Users/admin/builder/spi-builder-workspace/.derivedData/SDKStatCaches.noindex/appletvos27.0-24J360-e829b21a6f8c9b70876ba0858053c044b32bfd8d43560033f8d89884cdb90028.sdkstatcache
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang-stat-cache /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS27.0.sdk -o /Users/admin/builder/spi-builder-workspace/.derivedData/SDKStatCaches.noindex/appletvos27.0-24J360-e829b21a6f8c9b70876ba0858053c044b32bfd8d43560033f8d89884cdb90028.sdkstatcache
SwiftDriver VisionKeyboardKit normal arm64 com.apple.xcode.tools.swift.compiler (in target 'VisionKeyboardKit' from project 'VisionKeyboardKit')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftDriver -- /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swiftc -parse-as-library -module-name VisionKeyboardKit -Onone @/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/VisionKeyboardKit.build/Debug-appletvos/VisionKeyboardKit-t.build/Objects-normal/arm64/VisionKeyboardKit.SwiftFileList -DSWIFT_PACKAGE -DDEBUG -DSWIFT_MODULE_RESOURCE_BUNDLE_UNAVAILABLE -DXcode -plugin-path /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/host/plugins/testing -enable-experimental-feature DebugDescriptionMacro -sdk /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS27.0.sdk -target arm64-apple-tvos15.0 -g -module-cache-path /Users/admin/builder/spi-builder-workspace/.derivedData/ModuleCache.noindex -Xfrontend -serialize-debugging-options -profile-coverage-mapping -profile-generate -enable-testing -index-store-path /Users/admin/builder/spi-builder-workspace/.derivedData/Index.noindex/DataStore -Xcc -D_LIBCPP_HARDENING_MODE\=_LIBCPP_HARDENING_MODE_DEBUG -swift-version 5 -I /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-appletvos -Isystem /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/usr/lib -F /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-appletvos -F /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/Library/Frameworks -F /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS27.0.sdk/Developer/Library/Frameworks -c -j10 -enable-batch-mode -incremental -Xcc -ivfsstatcache -Xcc /Users/admin/builder/spi-builder-workspace/.derivedData/SDKStatCaches.noindex/appletvos27.0-24J360-e829b21a6f8c9b70876ba0858053c044b32bfd8d43560033f8d89884cdb90028.sdkstatcache -output-file-map /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/VisionKeyboardKit.build/Debug-appletvos/VisionKeyboardKit-t.build/Objects-normal/arm64/VisionKeyboardKit-OutputFileMap.json -save-temps -no-color-diagnostics -explicit-module-build -module-cache-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SwiftExplicitPrecompiledModules -clang-scanner-module-cache-path /Users/admin/builder/spi-builder-workspace/.derivedData/ModuleCache.noindex -sdk-module-cache-path /Users/admin/builder/spi-builder-workspace/.derivedData/SDKExplicitPrecompiledModules -emit-dependencies -emit-module -emit-module-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/VisionKeyboardKit.build/Debug-appletvos/VisionKeyboardKit-t.build/Objects-normal/arm64/VisionKeyboardKit.swiftmodule -serialize-diagnostics -dependency-scan-serialize-diagnostics-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/VisionKeyboardKit.build/Debug-appletvos/VisionKeyboardKit-t.build/Objects-normal/arm64/VisionKeyboardKit-dependency-scan.dia -validate-clang-modules-once -clang-build-session-file /Users/admin/builder/spi-builder-workspace/.derivedData/ModuleCache.noindex/Session.modulevalidation -Xcc -fmodules-prune-interval\=86400 -Xcc -fmodules-prune-after\=345600 -package-name spi_builder_workspace -emit-const-values -const-gather-protocols-list /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/VisionKeyboardKit.build/Debug-appletvos/VisionKeyboardKit-t.build/Objects-normal/arm64/VisionKeyboardKit_const_extract_protocols.json -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-appletvos/include -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/VisionKeyboardKit.build/Debug-appletvos/VisionKeyboardKit-t.build/DerivedSources-normal/arm64 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/VisionKeyboardKit.build/Debug-appletvos/VisionKeyboardKit-t.build/DerivedSources/arm64 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/VisionKeyboardKit.build/Debug-appletvos/VisionKeyboardKit-t.build/DerivedSources -Xcc -DSWIFT_PACKAGE -Xcc -DDEBUG\=1 -emit-objc-header -emit-objc-header-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/VisionKeyboardKit.build/Debug-appletvos/VisionKeyboardKit-t.build/Objects-normal/arm64/VisionKeyboardKit-Swift.h -working-directory /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode -experimental-emit-module-separately -disable-cmo
SwiftCompile normal arm64 Compiling\ KeyboardLayoutTenkeys.swift /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift (in target 'VisionKeyboardKit' from project 'VisionKeyboardKit')
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift:21:9: error: 'Grid' is only available in tvOS 16.0 or newer
17 | import SwiftUI
18 |
19 | struct KeyboardLayoutTenKeys: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
21 |         Grid {
   |         |- error: 'Grid' is only available in tvOS 16.0 or newer
   |         `- note: add 'if #available' version check
22 |             GridRow {
23 |                 KeyboardKeyView(key: "PrSn", code: .keyPrintScreen)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift:22:13: error: 'GridRow' is only available in tvOS 16.0 or newer
17 | import SwiftUI
18 |
19 | struct KeyboardLayoutTenKeys: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
21 |         Grid {
22 |             GridRow {
   |             |- error: 'GridRow' is only available in tvOS 16.0 or newer
   |             `- note: add 'if #available' version check
23 |                 KeyboardKeyView(key: "PrSn", code: .keyPrintScreen)
24 |                 KeyboardToggleKeyView(key: "ScLk", code: .keyScrollLock, modifier: .scrollLock)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift:27:29: error: 'gridCellUnsizedAxes' is only available in tvOS 16.0 or newer
17 | import SwiftUI
18 |
19 | struct KeyboardLayoutTenKeys: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
21 |         Grid {
22 |             GridRow {
   :
25 |                 KeyboardKeyView(key: "Pause", code: .keyPause)
26 |                 Color.clear.frame(width: 20, height: 0)
27 |                 Color.clear.gridCellUnsizedAxes([.horizontal, .vertical])
   |                             |- error: 'gridCellUnsizedAxes' is only available in tvOS 16.0 or newer
   |                             `- note: add 'if #available' version check
28 |                     .gridCellColumns(4)
29 |             }
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift:28:22: error: 'gridCellColumns' is only available in tvOS 16.0 or newer
17 | import SwiftUI
18 |
19 | struct KeyboardLayoutTenKeys: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
21 |         Grid {
22 |             GridRow {
   :
26 |                 Color.clear.frame(width: 20, height: 0)
27 |                 Color.clear.gridCellUnsizedAxes([.horizontal, .vertical])
28 |                     .gridCellColumns(4)
   |                      |- error: 'gridCellColumns' is only available in tvOS 16.0 or newer
   |                      `- note: add 'if #available' version check
29 |             }
30 |             GridRow {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift:30:13: error: 'GridRow' is only available in tvOS 16.0 or newer
17 | import SwiftUI
18 |
19 | struct KeyboardLayoutTenKeys: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
21 |         Grid {
22 |             GridRow {
   :
28 |                     .gridCellColumns(4)
29 |             }
30 |             GridRow {
   |             |- error: 'GridRow' is only available in tvOS 16.0 or newer
   |             `- note: add 'if #available' version check
31 |                 KeyboardKeyView(key: "Ins", code: .keyInsert)
32 |                 KeyboardKeyView(key: "Home", code: .keyHome)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift:34:29: error: 'gridCellUnsizedAxes' is only available in tvOS 16.0 or newer
17 | import SwiftUI
18 |
19 | struct KeyboardLayoutTenKeys: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
21 |         Grid {
22 |             GridRow {
   :
32 |                 KeyboardKeyView(key: "Home", code: .keyHome)
33 |                 KeyboardKeyView(key: "PgUp", code: .keyPageUp)
34 |                 Color.clear.gridCellUnsizedAxes([.horizontal, .vertical])
   |                             |- error: 'gridCellUnsizedAxes' is only available in tvOS 16.0 or newer
   |                             `- note: add 'if #available' version check
35 |                 KeyboardToggleKeyView(key: "NmLk", code: .keyNumLock, modifier: .numLock)
36 |                 KeyboardKeyView(key: "/", code: .keyKeypadDivide)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift:40:13: error: 'GridRow' is only available in tvOS 16.0 or newer
17 | import SwiftUI
18 |
19 | struct KeyboardLayoutTenKeys: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
21 |         Grid {
22 |             GridRow {
   :
38 |                 KeyboardKeyView(key: "-", code: .keyKeypadMinus)
39 |             }
40 |             GridRow {
   |             |- error: 'GridRow' is only available in tvOS 16.0 or newer
   |             `- note: add 'if #available' version check
41 |                 KeyboardKeyView(key: "Del", code: .keyDelete, clickSound: .delete)
42 |                 KeyboardKeyView(key: "End", code: .keyEnd)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift:44:29: error: 'gridCellUnsizedAxes' is only available in tvOS 16.0 or newer
17 | import SwiftUI
18 |
19 | struct KeyboardLayoutTenKeys: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
21 |         Grid {
22 |             GridRow {
   :
42 |                 KeyboardKeyView(key: "End", code: .keyEnd)
43 |                 KeyboardKeyView(key: "PgDn", code: .keyPageDown)
44 |                 Color.clear.gridCellUnsizedAxes([.horizontal, .vertical])
   |                             |- error: 'gridCellUnsizedAxes' is only available in tvOS 16.0 or newer
   |                             `- note: add 'if #available' version check
45 |                 KeyboardKeyView(key: "7", code: .keyKeypad7)
46 |                 KeyboardKeyView(key: "8", code: .keyKeypad8)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift:50:19: error: 'gridCellUnsizedAxes' is only available in tvOS 16.0 or newer
17 | import SwiftUI
18 |
19 | struct KeyboardLayoutTenKeys: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
21 |         Grid {
22 |             GridRow {
   :
48 |                 GeometryReader { geo in
49 |                     KeyboardKeyView(key: "+", code: .keyKeypadPlus, height: 110)
50 |                 }.gridCellUnsizedAxes([.horizontal, .vertical])
   |                   |- error: 'gridCellUnsizedAxes' is only available in tvOS 16.0 or newer
   |                   `- note: add 'if #available' version check
51 |             }
52 |             GridRow {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift:52:13: error: 'GridRow' is only available in tvOS 16.0 or newer
17 | import SwiftUI
18 |
19 | struct KeyboardLayoutTenKeys: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
21 |         Grid {
22 |             GridRow {
   :
50 |                 }.gridCellUnsizedAxes([.horizontal, .vertical])
51 |             }
52 |             GridRow {
   |             |- error: 'GridRow' is only available in tvOS 16.0 or newer
   |             `- note: add 'if #available' version check
53 |                 Color.clear.gridCellUnsizedAxes([.horizontal, .vertical])
54 |                     .gridCellColumns(4)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift:53:29: error: 'gridCellUnsizedAxes' is only available in tvOS 16.0 or newer
17 | import SwiftUI
18 |
19 | struct KeyboardLayoutTenKeys: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
21 |         Grid {
22 |             GridRow {
   :
51 |             }
52 |             GridRow {
53 |                 Color.clear.gridCellUnsizedAxes([.horizontal, .vertical])
   |                             |- error: 'gridCellUnsizedAxes' is only available in tvOS 16.0 or newer
   |                             `- note: add 'if #available' version check
54 |                     .gridCellColumns(4)
55 |                 KeyboardKeyView(key: "4", code: .keyKeypad4)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift:54:22: error: 'gridCellColumns' is only available in tvOS 16.0 or newer
17 | import SwiftUI
18 |
19 | struct KeyboardLayoutTenKeys: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
21 |         Grid {
22 |             GridRow {
   :
52 |             GridRow {
53 |                 Color.clear.gridCellUnsizedAxes([.horizontal, .vertical])
54 |                     .gridCellColumns(4)
   |                      |- error: 'gridCellColumns' is only available in tvOS 16.0 or newer
   |                      `- note: add 'if #available' version check
55 |                 KeyboardKeyView(key: "4", code: .keyKeypad4)
56 |                 KeyboardKeyView(key: "5", code: .keyKeypad5)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift:58:29: error: 'gridCellUnsizedAxes' is only available in tvOS 16.0 or newer
17 | import SwiftUI
18 |
19 | struct KeyboardLayoutTenKeys: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
21 |         Grid {
22 |             GridRow {
   :
56 |                 KeyboardKeyView(key: "5", code: .keyKeypad5)
57 |                 KeyboardKeyView(key: "6", code: .keyKeypad6)
58 |                 Color.clear.gridCellUnsizedAxes([.horizontal, .vertical])
   |                             |- error: 'gridCellUnsizedAxes' is only available in tvOS 16.0 or newer
   |                             `- note: add 'if #available' version check
59 |             }
60 |             GridRow {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift:60:13: error: 'GridRow' is only available in tvOS 16.0 or newer
17 | import SwiftUI
18 |
19 | struct KeyboardLayoutTenKeys: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
21 |         Grid {
22 |             GridRow {
   :
58 |                 Color.clear.gridCellUnsizedAxes([.horizontal, .vertical])
59 |             }
60 |             GridRow {
   |             |- error: 'GridRow' is only available in tvOS 16.0 or newer
   |             `- note: add 'if #available' version check
61 |                 Color.clear.gridCellUnsizedAxes([.horizontal, .vertical])
62 |                 KeyboardKeyView(key: "↑", code: .keyUpArrow, isDark: true)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift:61:29: error: 'gridCellUnsizedAxes' is only available in tvOS 16.0 or newer
17 | import SwiftUI
18 |
19 | struct KeyboardLayoutTenKeys: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
21 |         Grid {
22 |             GridRow {
   :
59 |             }
60 |             GridRow {
61 |                 Color.clear.gridCellUnsizedAxes([.horizontal, .vertical])
   |                             |- error: 'gridCellUnsizedAxes' is only available in tvOS 16.0 or newer
   |                             `- note: add 'if #available' version check
62 |                 KeyboardKeyView(key: "↑", code: .keyUpArrow, isDark: true)
63 |                 Color.clear.gridCellUnsizedAxes([.horizontal, .vertical])
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift:63:29: error: 'gridCellUnsizedAxes' is only available in tvOS 16.0 or newer
17 | import SwiftUI
18 |
19 | struct KeyboardLayoutTenKeys: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
21 |         Grid {
22 |             GridRow {
   :
61 |                 Color.clear.gridCellUnsizedAxes([.horizontal, .vertical])
62 |                 KeyboardKeyView(key: "↑", code: .keyUpArrow, isDark: true)
63 |                 Color.clear.gridCellUnsizedAxes([.horizontal, .vertical])
   |                             |- error: 'gridCellUnsizedAxes' is only available in tvOS 16.0 or newer
   |                             `- note: add 'if #available' version check
64 |                     .gridCellColumns(2)
65 |                 KeyboardKeyView(key: "1", code: .keyKeypad1)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift:64:22: error: 'gridCellColumns' is only available in tvOS 16.0 or newer
17 | import SwiftUI
18 |
19 | struct KeyboardLayoutTenKeys: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
21 |         Grid {
22 |             GridRow {
   :
62 |                 KeyboardKeyView(key: "↑", code: .keyUpArrow, isDark: true)
63 |                 Color.clear.gridCellUnsizedAxes([.horizontal, .vertical])
64 |                     .gridCellColumns(2)
   |                      |- error: 'gridCellColumns' is only available in tvOS 16.0 or newer
   |                      `- note: add 'if #available' version check
65 |                 KeyboardKeyView(key: "1", code: .keyKeypad1)
66 |                 KeyboardKeyView(key: "2", code: .keyKeypad2)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift:70:19: error: 'gridCellUnsizedAxes' is only available in tvOS 16.0 or newer
17 | import SwiftUI
18 |
19 | struct KeyboardLayoutTenKeys: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
21 |         Grid {
22 |             GridRow {
   :
68 |                 GeometryReader { geo in
69 |                     KeyboardKeyView(key: "↵", code: .keyKeypadEnter, height: 110, isDark: true)
70 |                 }.gridCellUnsizedAxes([.horizontal, .vertical])
   |                   |- error: 'gridCellUnsizedAxes' is only available in tvOS 16.0 or newer
   |                   `- note: add 'if #available' version check
71 |             }
72 |             GridRow {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift:72:13: error: 'GridRow' is only available in tvOS 16.0 or newer
17 | import SwiftUI
18 |
19 | struct KeyboardLayoutTenKeys: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
21 |         Grid {
22 |             GridRow {
   :
70 |                 }.gridCellUnsizedAxes([.horizontal, .vertical])
71 |             }
72 |             GridRow {
   |             |- error: 'GridRow' is only available in tvOS 16.0 or newer
   |             `- note: add 'if #available' version check
73 |                 KeyboardKeyView(key: "←", code: .keyLeftArrow, isDark: true)
74 |                 KeyboardKeyView(key: "↓", code: .keyDownArrow, isDark: true)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift:76:29: error: 'gridCellUnsizedAxes' is only available in tvOS 16.0 or newer
17 | import SwiftUI
18 |
19 | struct KeyboardLayoutTenKeys: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
21 |         Grid {
22 |             GridRow {
   :
74 |                 KeyboardKeyView(key: "↓", code: .keyDownArrow, isDark: true)
75 |                 KeyboardKeyView(key: "→", code: .keyRightArrow, isDark: true)
76 |                 Color.clear.gridCellUnsizedAxes([.horizontal, .vertical])
   |                             |- error: 'gridCellUnsizedAxes' is only available in tvOS 16.0 or newer
   |                             `- note: add 'if #available' version check
77 |                 KeyboardKeyView(key: "0", code: .keyKeypad0, width: 110)
78 |                     .gridCellColumns(2)
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift (in target 'VisionKeyboardKit' from project 'VisionKeyboardKit')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile KeyboardLayoutTenkeys.swift
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift:78:22: error: 'gridCellColumns' is only available in tvOS 16.0 or newer
17 | import SwiftUI
18 |
19 | struct KeyboardLayoutTenKeys: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
21 |         Grid {
22 |             GridRow {
   :
76 |                 Color.clear.gridCellUnsizedAxes([.horizontal, .vertical])
77 |                 KeyboardKeyView(key: "0", code: .keyKeypad0, width: 110)
78 |                     .gridCellColumns(2)
   |                      |- error: 'gridCellColumns' is only available in tvOS 16.0 or newer
   |                      `- note: add 'if #available' version check
79 |                 KeyboardKeyView(key: ".", code: .keyKeypadDecimal)
80 |                 Color.clear.gridCellUnsizedAxes([.horizontal, .vertical])
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift:80:29: error: 'gridCellUnsizedAxes' is only available in tvOS 16.0 or newer
17 | import SwiftUI
18 |
19 | struct KeyboardLayoutTenKeys: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
21 |         Grid {
22 |             GridRow {
   :
78 |                     .gridCellColumns(2)
79 |                 KeyboardKeyView(key: ".", code: .keyKeypadDecimal)
80 |                 Color.clear.gridCellUnsizedAxes([.horizontal, .vertical])
   |                             |- error: 'gridCellUnsizedAxes' is only available in tvOS 16.0 or newer
   |                             `- note: add 'if #available' version check
81 |             }
82 |         }
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift:21:14: warning: conformance of 'GridRow<Content>' to 'View' is only available in tvOS 16.0 or newer; this is an error in the Swift 6 language mode
17 | import SwiftUI
18 |
19 | struct KeyboardLayoutTenKeys: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
21 |         Grid {
   |              |- warning: conformance of 'GridRow<Content>' to 'View' is only available in tvOS 16.0 or newer; this is an error in the Swift 6 language mode
   |              `- note: add 'if #available' version check
22 |             GridRow {
23 |                 KeyboardKeyView(key: "PrSn", code: .keyPrintScreen)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift:21:14: warning: conformance of 'GridRow<Content>' to 'View' is only available in tvOS 16.0 or newer; this is an error in the Swift 6 language mode
17 | import SwiftUI
18 |
19 | struct KeyboardLayoutTenKeys: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
21 |         Grid {
   |              |- warning: conformance of 'GridRow<Content>' to 'View' is only available in tvOS 16.0 or newer; this is an error in the Swift 6 language mode
   |              `- note: add 'if #available' version check
22 |             GridRow {
23 |                 KeyboardKeyView(key: "PrSn", code: .keyPrintScreen)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift:21:14: warning: conformance of 'GridRow<Content>' to 'View' is only available in tvOS 16.0 or newer; this is an error in the Swift 6 language mode
17 | import SwiftUI
18 |
19 | struct KeyboardLayoutTenKeys: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
21 |         Grid {
   |              |- warning: conformance of 'GridRow<Content>' to 'View' is only available in tvOS 16.0 or newer; this is an error in the Swift 6 language mode
   |              `- note: add 'if #available' version check
22 |             GridRow {
23 |                 KeyboardKeyView(key: "PrSn", code: .keyPrintScreen)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift:21:14: warning: conformance of 'GridRow<Content>' to 'View' is only available in tvOS 16.0 or newer; this is an error in the Swift 6 language mode
17 | import SwiftUI
18 |
19 | struct KeyboardLayoutTenKeys: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
21 |         Grid {
   |              |- warning: conformance of 'GridRow<Content>' to 'View' is only available in tvOS 16.0 or newer; this is an error in the Swift 6 language mode
   |              `- note: add 'if #available' version check
22 |             GridRow {
23 |                 KeyboardKeyView(key: "PrSn", code: .keyPrintScreen)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift:21:14: warning: conformance of 'GridRow<Content>' to 'View' is only available in tvOS 16.0 or newer; this is an error in the Swift 6 language mode
17 | import SwiftUI
18 |
19 | struct KeyboardLayoutTenKeys: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
21 |         Grid {
   |              |- warning: conformance of 'GridRow<Content>' to 'View' is only available in tvOS 16.0 or newer; this is an error in the Swift 6 language mode
   |              `- note: add 'if #available' version check
22 |             GridRow {
23 |                 KeyboardKeyView(key: "PrSn", code: .keyPrintScreen)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift:21:14: warning: conformance of 'GridRow<Content>' to 'View' is only available in tvOS 16.0 or newer; this is an error in the Swift 6 language mode
17 | import SwiftUI
18 |
19 | struct KeyboardLayoutTenKeys: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
21 |         Grid {
   |              |- warning: conformance of 'GridRow<Content>' to 'View' is only available in tvOS 16.0 or newer; this is an error in the Swift 6 language mode
   |              `- note: add 'if #available' version check
22 |             GridRow {
23 |                 KeyboardKeyView(key: "PrSn", code: .keyPrintScreen)
SwiftCompile normal arm64 Compiling\ KeyboardLayoutANSI.swift /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutANSI.swift (in target 'VisionKeyboardKit' from project 'VisionKeyboardKit')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutANSI.swift (in target 'VisionKeyboardKit' from project 'VisionKeyboardKit')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile KeyboardLayoutANSI.swift
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardState.swift:19:2: error: 'Observable()' is only available in tvOS 17.0 or newer
17 | import SwiftUI
18 |
19 | @Observable
   |  `- error: 'Observable()' is only available in tvOS 17.0 or newer
20 | class KeyboardState {
21 |     private let id: KeyboardIdentifier
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardKeyView.swift:30:6: error: 'init(_:)' is only available in tvOS 17.0 or newer
17 | import SwiftUI
18 |
19 | struct KeyboardKeyView: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     let key: String
21 |     var shift: String?
   :
28 |     var action: () -> Void = {}
29 |
30 |     @Environment(KeyboardState.self) private var state
   |      `- error: 'init(_:)' is only available in tvOS 17.0 or newer
31 |
32 |     private var isShifted: Bool {
SwiftCompile normal arm64 Compiling\ KeyboardSettingsViewModifier.swift /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardSettingsViewModifier.swift (in target 'VisionKeyboardKit' from project 'VisionKeyboardKit')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardSettingsViewModifier.swift (in target 'VisionKeyboardKit' from project 'VisionKeyboardKit')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile KeyboardSettingsViewModifier.swift
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardSettingsViewModifier.swift:24:17: error: 'ornament(visibility:attachmentAnchor:contentAlignment:ornament:)' is unavailable in tvOS
22 |
23 |     func body(content: Content) -> some View {
24 |         content.ornament(attachmentAnchor: .scene(.topLeading)) {
   |                 `- error: 'ornament(visibility:attachmentAnchor:contentAlignment:ornament:)' is unavailable in tvOS
25 |             Menu {
26 |                 ForEach(KeyboardLayoutType.allCases) { option in
SwiftUI.View.ornament:7:51: note: 'ornament(visibility:attachmentAnchor:contentAlignment:ornament:)' has been explicitly marked unavailable here
5 |   @available(watchOS, unavailable)
6 |   @available(tvOS, unavailable)
7 |   @export(implementation) nonisolated public func ornament<Content>(visibility: Visibility = .automatic, attachmentAnchor: OrnamentAttachmentAnchor, contentAlignment: Alignment3D = .back, @ContentBuilder ornament: () -> Content) -> some View where Content : View
  |                                                   `- note: 'ornament(visibility:attachmentAnchor:contentAlignment:ornament:)' has been explicitly marked unavailable here
8 |   }
9 |
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardSettingsViewModifier.swift:25:13: error: 'Menu' is only available in tvOS 17.0 or newer
17 | import SwiftUI
18 |
19 | struct KeyboardSettingsViewModifier: ViewModifier {
   |        `- note: add '@available' attribute to enclosing struct
20 |     @AppStorage("IsExpanded") private var isExpanded: Bool = false
21 |     @AppStorage("Layout") private var layout: KeyboardLayoutType = .ansi
22 |
23 |     func body(content: Content) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
24 |         content.ornament(attachmentAnchor: .scene(.topLeading)) {
25 |             Menu {
   |             |- error: 'Menu' is only available in tvOS 17.0 or newer
   |             `- note: add 'if #available' version check
26 |                 ForEach(KeyboardLayoutType.allCases) { option in
27 |                     Toggle(option.label, isOn: Binding {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardSettingsViewModifier.swift:25:13: error: 'init(content:label:)' is only available in tvOS 17.0 or newer
17 | import SwiftUI
18 |
19 | struct KeyboardSettingsViewModifier: ViewModifier {
   |        `- note: add '@available' attribute to enclosing struct
20 |     @AppStorage("IsExpanded") private var isExpanded: Bool = false
21 |     @AppStorage("Layout") private var layout: KeyboardLayoutType = .ansi
22 |
23 |     func body(content: Content) -> some View {
   |          `- note: add '@available' attribute to enclosing instance method
24 |         content.ornament(attachmentAnchor: .scene(.topLeading)) {
25 |             Menu {
   |             |- error: 'init(content:label:)' is only available in tvOS 17.0 or newer
   |             `- note: add 'if #available' version check
26 |                 ForEach(KeyboardLayoutType.allCases) { option in
27 |                     Toggle(option.label, isOn: Binding {
SwiftCompile normal arm64 Compiling\ KeyboardLayoutType.swift /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutType.swift (in target 'VisionKeyboardKit' from project 'VisionKeyboardKit')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutType.swift (in target 'VisionKeyboardKit' from project 'VisionKeyboardKit')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile KeyboardLayoutType.swift
SwiftCompile normal arm64 Compiling\ KeyboardEvent.swift,\ KeyboardEventPS2.swift /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardEvent.swift /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardEventPS2.swift (in target 'VisionKeyboardKit' from project 'VisionKeyboardKit')
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardEvent.swift:220:39: error: 'OSAllocatedUnfairLock' is only available in tvOS 16.0 or newer
214 | /// their reference and so it is safe to clean up the map entry (which should be holding a box with a nil reference).
215 | /// We make sure all this is done in a thread safe manner by the use of `subjectsLock`.
216 | final class KeyboardEventSubject: Subject {
    |             `- note: add '@available' attribute to enclosing class
217 |     typealias Output = KeyboardEvent
218 |     typealias Failure = Never
219 |
220 |     private static var subjectsLock = OSAllocatedUnfairLock()
    |                        |              `- error: 'OSAllocatedUnfairLock' is only available in tvOS 16.0 or newer
    |                        `- note: add '@available' attribute to enclosing static property
221 |     private static var allSubjects: [KeyboardIdentifier: Weak<KeyboardEventSubject>] = [:]
222 |     private let id: KeyboardIdentifier
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardEvent.swift:220:39: error: 'init()' is only available in tvOS 16.0 or newer
214 | /// their reference and so it is safe to clean up the map entry (which should be holding a box with a nil reference).
215 | /// We make sure all this is done in a thread safe manner by the use of `subjectsLock`.
216 | final class KeyboardEventSubject: Subject {
    |             `- note: add '@available' attribute to enclosing class
217 |     typealias Output = KeyboardEvent
218 |     typealias Failure = Never
219 |
220 |     private static var subjectsLock = OSAllocatedUnfairLock()
    |                        |              `- error: 'init()' is only available in tvOS 16.0 or newer
    |                        `- note: add '@available' attribute to enclosing static property
221 |     private static var allSubjects: [KeyboardIdentifier: Weak<KeyboardEventSubject>] = [:]
222 |     private let id: KeyboardIdentifier
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardEvent.swift:230:22: error: 'withLock' is only available in tvOS 16.0 or newer
214 | /// their reference and so it is safe to clean up the map entry (which should be holding a box with a nil reference).
215 | /// We make sure all this is done in a thread safe manner by the use of `subjectsLock`.
216 | final class KeyboardEventSubject: Subject {
    |             `- note: add '@available' attribute to enclosing class
217 |     typealias Output = KeyboardEvent
218 |     typealias Failure = Never
    :
227 |     }
228 |
229 |     static func `for`(_ id: KeyboardIdentifier) -> KeyboardEventSubject {
    |                 `- note: add '@available' attribute to enclosing static method
230 |         subjectsLock.withLock {
    |                      |- error: 'withLock' is only available in tvOS 16.0 or newer
    |                      `- note: add 'if #available' version check
231 |             if let w = allSubjects[id], let s = w.ref {
232 |                 return s
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardEvent.swift (in target 'VisionKeyboardKit' from project 'VisionKeyboardKit')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile KeyboardEvent.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardEventPS2.swift (in target 'VisionKeyboardKit' from project 'VisionKeyboardKit')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile KeyboardEventPS2.swift
SwiftCompile normal arm64 Compiling\ KeyboardView.swift /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardView.swift (in target 'VisionKeyboardKit' from project 'VisionKeyboardKit')
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardState.swift:19:2: error: 'Observable()' is only available in tvOS 17.0 or newer
17 | import SwiftUI
18 |
19 | @Observable
   |  `- error: 'Observable()' is only available in tvOS 17.0 or newer
20 | class KeyboardState {
21 |     private let id: KeyboardIdentifier
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardView.swift (in target 'VisionKeyboardKit' from project 'VisionKeyboardKit')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile KeyboardView.swift
SwiftEmitModule normal arm64 Emitting\ module\ for\ VisionKeyboardKit (in target 'VisionKeyboardKit' from project 'VisionKeyboardKit')
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:20:28: error: 'Duration' is only available in tvOS 16.0 or newer
 18 | import RealityKit
 19 |
 20 | private let kDebounceTime: Duration = .milliseconds(25)
    |             |              `- error: 'Duration' is only available in tvOS 16.0 or newer
    |             `- note: add '@available' attribute to enclosing let
 21 |
 22 | struct KeyboardButtonStyle: PrimitiveButtonStyle {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:20:40: error: 'milliseconds' is only available in tvOS 16.0 or newer
 18 | import RealityKit
 19 |
 20 | private let kDebounceTime: Duration = .milliseconds(25)
    |             |                          `- error: 'milliseconds' is only available in tvOS 16.0 or newer
    |             `- note: add '@available' attribute to enclosing let
 21 |
 22 | struct KeyboardButtonStyle: PrimitiveButtonStyle {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardState.swift:19:2: error: 'Observable()' is only available in tvOS 17.0 or newer
17 | import SwiftUI
18 |
19 | @Observable
   |  `- error: 'Observable()' is only available in tvOS 17.0 or newer
20 | class KeyboardState {
21 |     private let id: KeyboardIdentifier
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:34:6: error: 'init(_:)' is only available in tvOS 17.0 or newer
 20 | private let kDebounceTime: Duration = .milliseconds(25)
 21 |
 22 | struct KeyboardButtonStyle: PrimitiveButtonStyle {
    |        `- note: add '@available' attribute to enclosing struct
 23 |     let isDark: Bool
 24 |     let isToggled: Bool
    :
 32 |     @State private var isPressed: Bool = false
 33 |     @State private var debounceTask: Task<Void, Never>?
 34 |     @Environment(KeyboardState.self) private var state
    |      `- error: 'init(_:)' is only available in tvOS 17.0 or newer
 35 |
 36 |     private func spatialGesture(configuration: Configuration) -> some Gesture {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:29:18: error: 'Entity' is only available in tvOS 26.0 or newer
 19 |
 20 | /// Plays the system keyboard click sound
 21 | class KeyboardClickSound {
    |       `- note: add '@available' attribute to enclosing class
 22 |     enum File {
 23 |         case normal
    :
 27 |
 28 |     /// The RK entity where the sound will originate
 29 |     let entity = Entity()
    |                  `- error: 'Entity' is only available in tvOS 26.0 or newer
 30 |
 31 |     private var pressNormalPlayer: AudioPlaybackController?
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:31:36: error: 'AudioPlaybackController' is only available in tvOS 26.0 or newer
 19 |
 20 | /// Plays the system keyboard click sound
 21 | class KeyboardClickSound {
    |       `- note: add '@available' attribute to enclosing class
 22 |     enum File {
 23 |         case normal
    :
 29 |     let entity = Entity()
 30 |
 31 |     private var pressNormalPlayer: AudioPlaybackController?
    |                                    `- error: 'AudioPlaybackController' is only available in tvOS 26.0 or newer
 32 |     private var pressDeletePlayer: AudioPlaybackController?
 33 |     private var pressModifierPlayer: AudioPlaybackController?
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:32:36: error: 'AudioPlaybackController' is only available in tvOS 26.0 or newer
 19 |
 20 | /// Plays the system keyboard click sound
 21 | class KeyboardClickSound {
    |       `- note: add '@available' attribute to enclosing class
 22 |     enum File {
 23 |         case normal
    :
 30 |
 31 |     private var pressNormalPlayer: AudioPlaybackController?
 32 |     private var pressDeletePlayer: AudioPlaybackController?
    |                                    `- error: 'AudioPlaybackController' is only available in tvOS 26.0 or newer
 33 |     private var pressModifierPlayer: AudioPlaybackController?
 34 |
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:33:38: error: 'AudioPlaybackController' is only available in tvOS 26.0 or newer
 19 |
 20 | /// Plays the system keyboard click sound
 21 | class KeyboardClickSound {
    |       `- note: add '@available' attribute to enclosing class
 22 |     enum File {
 23 |         case normal
    :
 31 |     private var pressNormalPlayer: AudioPlaybackController?
 32 |     private var pressDeletePlayer: AudioPlaybackController?
 33 |     private var pressModifierPlayer: AudioPlaybackController?
    |                                      `- error: 'AudioPlaybackController' is only available in tvOS 26.0 or newer
 34 |
 35 |     private func loadAudioResource(for url: URL) -> AudioFileResource? {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:35:53: error: 'AudioFileResource' is only available in tvOS 26.0 or newer
 19 |
 20 | /// Plays the system keyboard click sound
 21 | class KeyboardClickSound {
    |       `- note: add '@available' attribute to enclosing class
 22 |     enum File {
 23 |         case normal
    :
 33 |     private var pressModifierPlayer: AudioPlaybackController?
 34 |
 35 |     private func loadAudioResource(for url: URL) -> AudioFileResource? {
    |                  |                                  `- error: 'AudioFileResource' is only available in tvOS 26.0 or newer
    |                  `- note: add '@available' attribute to enclosing instance method
 36 |         let configuration = AudioFileResource.Configuration(calibration: .absolute(dBSPL: 58.0))
 37 |         return try? .load(contentsOf: url, configuration: configuration)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:61:24: error: 'appending(components:directoryHint:)' is only available in tvOS 16.0 or newer
 19 |
 20 | /// Plays the system keyboard click sound
 21 | class KeyboardClickSound {
    |       `- note: add '@available' attribute to enclosing class
 22 |     enum File {
 23 |         case normal
    :
 59 |         let fm = FileManager.default
 60 |         let library = fm.urls(for: .libraryDirectory, in: .systemDomainMask)[0]
 61 |         return library.appending(components: "Audio", "UISounds")
    |                        |- error: 'appending(components:directoryHint:)' is only available in tvOS 16.0 or newer
    |                        `- note: add 'if #available' version check
 62 |     }()
 63 |     #endif
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:107:33: error: 'AudioPlaybackController' is only available in tvOS 26.0 or newer
 19 |
 20 | /// Plays the system keyboard click sound
 21 | class KeyboardClickSound {
    |       `- note: add '@available' attribute to enclosing class
 22 |     enum File {
 23 |         case normal
    :
105 |
106 |     @MainActor
107 |     private func play(_ player: AudioPlaybackController?) {
    |                  |              `- error: 'AudioPlaybackController' is only available in tvOS 26.0 or newer
    |                  `- note: add '@available' attribute to enclosing instance method
108 |         guard let player = player else {
109 |             return
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardEvent.swift:220:39: error: 'OSAllocatedUnfairLock' is only available in tvOS 16.0 or newer
214 | /// their reference and so it is safe to clean up the map entry (which should be holding a box with a nil reference).
215 | /// We make sure all this is done in a thread safe manner by the use of `subjectsLock`.
216 | final class KeyboardEventSubject: Subject {
    |             `- note: add '@available' attribute to enclosing class
217 |     typealias Output = KeyboardEvent
218 |     typealias Failure = Never
219 |
220 |     private static var subjectsLock = OSAllocatedUnfairLock()
    |                        |              `- error: 'OSAllocatedUnfairLock' is only available in tvOS 16.0 or newer
    |                        `- note: add '@available' attribute to enclosing static property
221 |     private static var allSubjects: [KeyboardIdentifier: Weak<KeyboardEventSubject>] = [:]
222 |     private let id: KeyboardIdentifier
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardEvent.swift:220:39: error: 'init()' is only available in tvOS 16.0 or newer
214 | /// their reference and so it is safe to clean up the map entry (which should be holding a box with a nil reference).
215 | /// We make sure all this is done in a thread safe manner by the use of `subjectsLock`.
216 | final class KeyboardEventSubject: Subject {
    |             `- note: add '@available' attribute to enclosing class
217 |     typealias Output = KeyboardEvent
218 |     typealias Failure = Never
219 |
220 |     private static var subjectsLock = OSAllocatedUnfairLock()
    |                        |              `- error: 'init()' is only available in tvOS 16.0 or newer
    |                        `- note: add '@available' attribute to enclosing static property
221 |     private static var allSubjects: [KeyboardIdentifier: Weak<KeyboardEventSubject>] = [:]
222 |     private let id: KeyboardIdentifier
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardKeyView.swift:30:6: error: 'init(_:)' is only available in tvOS 17.0 or newer
17 | import SwiftUI
18 |
19 | struct KeyboardKeyView: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     let key: String
21 |     var shift: String?
   :
28 |     var action: () -> Void = {}
29 |
30 |     @Environment(KeyboardState.self) private var state
   |      `- error: 'init(_:)' is only available in tvOS 17.0 or newer
31 |
32 |     private var isShifted: Bool {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardKeyView.swift:56:6: error: 'init(_:)' is only available in tvOS 17.0 or newer
45 | }
46 |
47 | struct KeyboardToggleKeyView: View {
   |        `- note: add '@available' attribute to enclosing struct
48 |     let key: String
49 |     let code: KeyboardKeyCode
   :
54 |     var isDark: Bool = false
55 |
56 |     @Environment(KeyboardState.self) private var state
   |      `- error: 'init(_:)' is only available in tvOS 17.0 or newer
57 |
58 |     private var isOn: Bool {
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardState.swift:26:5: note: expanded code originates here
17 | import SwiftUI
18 |
19 | @Observable
   | `- note: in expansion of macro 'Observable' on property 'modifier' here
20 | class KeyboardState {
   |       `- note: add '@available' attribute to enclosing class
21 |     private let id: KeyboardIdentifier
22 |     private let subject: KeyboardEventSubject
   :
24 |     let clicker = KeyboardClickSound()
25 |
26 |     var modifier: KeyboardModifier = .none
   +--- macro expansion @Observable ------------------------------------
   |1 | @ObservationTracked
   |  |  `- error: 'ObservationTracked()' is only available in tvOS 17.0 or newer
   +--------------------------------------------------------------------
27 |
28 |     init(for id: KeyboardIdentifier) {
macro expansion @Observable:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardState.swift:51:1: note: expanded code originates here
17 | import SwiftUI
18 |
19 | @Observable
   | `- note: in expansion of macro 'Observable' on class 'KeyboardState' here
20 | class KeyboardState {
   |       `- note: add '@available' attribute to enclosing class
21 |     private let id: KeyboardIdentifier
22 |     private let subject: KeyboardEventSubject
   :
49 |         }
50 |     }
51 | }
   +--- macro expansion @Observable ------------------------------------
   | 1 | @ObservationIgnored private let _$observationRegistrar = Observation.ObservationRegistrar()
   |   |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
   | 2 |
   | 3 | internal nonisolated func access<$s17VisionKeyboardKit0B5State10ObservablefMm_6MemberfMu_>(
   +--------------------------------------------------------------------
52 |
macro expansion @ObservationTracked:1:2: error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardState.swift:26:43: note: expanded code originates here
18 |
19 | @Observable
20 | class KeyboardState {
   |       `- note: add '@available' attribute to enclosing class
21 |     private let id: KeyboardIdentifier
22 |     private let subject: KeyboardEventSubject
   :
24 |     let clicker = KeyboardClickSound()
25 |
26 |     var modifier: KeyboardModifier = .none
   +--- macro expansion @ObservationTracked ----------------------------
   |1 | @ObservationIgnored
   |  |  `- error: 'ObservationIgnored()' is only available in tvOS 17.0 or newer
   |2 | private  var _modifier: KeyboardModifier = .none
   +--------------------------------------------------------------------
27 |
28 |     init(for id: KeyboardIdentifier) {
macro expansion @Observable:1:70: error: 'ObservationRegistrar' is only available in tvOS 17.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardState.swift:51:1: note: expanded code originates here
17 | import SwiftUI
18 |
19 | @Observable
   | `- note: in expansion of macro 'Observable' on class 'KeyboardState' here
20 | class KeyboardState {
   |       `- note: add '@available' attribute to enclosing class
21 |     private let id: KeyboardIdentifier
22 |     private let subject: KeyboardEventSubject
   :
49 |         }
50 |     }
51 | }
   +--- macro expansion @Observable ------------------------------------
   | 1 | @ObservationIgnored private let _$observationRegistrar = Observation.ObservationRegistrar()
   |   |                                                                      `- error: 'ObservationRegistrar' is only available in tvOS 17.0 or newer
   | 2 |
   | 3 | internal nonisolated func access<$s17VisionKeyboardKit0B5State10ObservablefMm_6MemberfMu_>(
   +--------------------------------------------------------------------
52 |
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardState.swift:19:2: error: 'Observable()' is only available in tvOS 17.0 or newer
17 | import SwiftUI
18 |
19 | @Observable
   |  `- error: 'Observable()' is only available in tvOS 17.0 or newer
20 | class KeyboardState {
   |       `- note: add '@available' attribute to enclosing class
21 |     private let id: KeyboardIdentifier
22 |     private let subject: KeyboardEventSubject
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardWindowGroup.swift:33:18: error: 'OpenWindowAction' is unavailable in tvOS
31 | }
32 |
33 | public extension OpenWindowAction {
   |                  `- error: 'OpenWindowAction' is unavailable in tvOS
34 |     /// Opens a keyboard window
35 |     /// - Parameter id: Any `Hashable` object that uniquely identifies this keyboard instance.
SwiftUI.OpenWindowAction:4:42: note: 'OpenWindowAction' has been explicitly marked unavailable here
 2 | @available(tvOS, unavailable)
 3 | @available(watchOS, unavailable)
 4 | @MainActor @preconcurrency public struct OpenWindowAction {
   |                                          `- note: 'OpenWindowAction' has been explicitly marked unavailable here
 5 |     @available(macOS 15.0, *)
 6 |     @available(iOS, unavailable)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardWindowGroup.swift:47:18: error: 'DismissWindowAction' is unavailable in tvOS
45 | }
46 |
47 | public extension DismissWindowAction {
   |                  `- error: 'DismissWindowAction' is unavailable in tvOS
48 |     /// Closes a keyboard window
49 |     /// - Parameter id: Any `Hashable` object that uniquely identifies this keyboard instance.
SwiftUI.DismissWindowAction:4:42: note: 'DismissWindowAction' has been explicitly marked unavailable here
2 | @available(tvOS, unavailable)
3 | @available(watchOS, unavailable)
4 | @MainActor @preconcurrency public struct DismissWindowAction {
  |                                          `- note: 'DismissWindowAction' has been explicitly marked unavailable here
5 |     @MainActor @preconcurrency public func callAsFunction()
6 |     @MainActor @preconcurrency public func callAsFunction(id: String)
Failed frontend command:
/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift-frontend -frontend -emit-module -experimental-skip-non-inlinable-function-bodies-without-types /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardEvent.swift /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardEventPS2.swift /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardIdentifier.swift /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardKeyView.swift /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutANSI.swift /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutType.swift /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardSettingsViewModifier.swift /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardState.swift /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardView.swift /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardWindowGroup.swift -target arm64-apple-tvos15.0 -disable-cross-import-overlay-search -swift-module-cross-import RealityKit /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS27.0.sdk/System/Library/Frameworks/RealityKit.framework/Modules/RealityKit.swiftcrossimport/ComputeGraph.swiftoverlay -swift-module-cross-import RealityKit /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS27.0.sdk/System/Library/Frameworks/RealityKit.framework/Modules/RealityKit.swiftcrossimport/SwiftUI.swiftoverlay -load-resolved-plugin /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/usr/lib/swift/host/plugins/libFoundationMacros.dylib\#/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/usr/bin/swift-plugin-server\#FoundationMacros -load-resolved-plugin /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/usr/lib/swift/host/plugins/libObservationMacros.dylib\#/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/usr/bin/swift-plugin-server\#ObservationMacros -load-resolved-plugin /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/usr/lib/swift/host/plugins/libPreviewsMacros.dylib\#/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/usr/bin/swift-plugin-server\#PreviewsMacros -load-resolved-plugin /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/usr/lib/swift/host/plugins/libSwiftMacros.dylib\#/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/usr/bin/swift-plugin-server\#SwiftMacros -load-resolved-plugin /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/usr/lib/swift/host/plugins/libSwiftUIMacros.dylib\#/Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/usr/bin/swift-plugin-server\#SwiftUIMacros -disable-implicit-swift-modules -Xcc -fno-implicit-modules -Xcc -fno-implicit-module-maps -explicit-swift-module-map-file /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/VisionKeyboardKit.build/Debug-appletvos/VisionKeyboardKit-t.build/Objects-normal/arm64/VisionKeyboardKit-dependencies-1.json -Xllvm -aarch64-use-tbi -enable-objc-interop -stack-check -sdk /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS27.0.sdk -I /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-appletvos -Isystem /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/usr/lib -F /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-appletvos -F /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/Library/Frameworks -F /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS27.0.sdk/Developer/Library/Frameworks -module-cache-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SwiftExplicitPrecompiledModules -no-color-diagnostics -Xcc -fno-color-diagnostics -enable-testing -g -debug-info-format\=dwarf -dwarf-version\=4 -profile-generate -profile-coverage-mapping -swift-version 5 -Onone -D SWIFT_PACKAGE -D DEBUG -D SWIFT_MODULE_RESOURCE_BUNDLE_UNAVAILABLE -D Xcode -serialize-debugging-options -enable-experimental-feature DebugDescriptionMacro -empty-abi-descriptor -validate-clang-modules-once -clang-build-session-file /Users/admin/builder/spi-builder-workspace/.derivedData/ModuleCache.noindex/Session.modulevalidation -Xcc -working-directory -Xcc /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode -enable-anonymous-context-mangled-names -file-compilation-dir /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode -Xcc -D_LIBCPP_HARDENING_MODE\=_LIBCPP_HARDENING_MODE_DEBUG -Xcc -ivfsstatcache -Xcc /Users/admin/builder/spi-builder-workspace/.derivedData/SDKStatCaches.noindex/appletvos27.0-24J360-e829b21a6f8c9b70876ba0858053c044b32bfd8d43560033f8d89884cdb90028.sdkstatcache -Xcc -fmodules-prune-interval\=86400 -Xcc -fmodules-prune-after\=345600 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Products/Debug-appletvos/include -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/VisionKeyboardKit.build/Debug-appletvos/VisionKeyboardKit-t.build/DerivedSources-normal/arm64 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/VisionKeyboardKit.build/Debug-appletvos/VisionKeyboardKit-t.build/DerivedSources/arm64 -Xcc -I/Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/VisionKeyboardKit.build/Debug-appletvos/VisionKeyboardKit-t.build/DerivedSources -Xcc -DSWIFT_PACKAGE -Xcc -DDEBUG\=1 -no-auto-bridging-header-chaining -module-name VisionKeyboardKit -package-name spi_builder_workspace -const-gather-protocols-file /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/VisionKeyboardKit.build/Debug-appletvos/VisionKeyboardKit-t.build/Objects-normal/arm64/VisionKeyboardKit_const_extract_protocols.json -disable-clang-spi -clang-target arm64-apple-tvos27.0 -target-sdk-version 27.0 -target-sdk-name appletvos27.0 -in-process-plugin-server-path /Applications/Xcode-27.0.0-Release.Candidate.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/host/libSwiftInProcPluginServer.dylib -emit-module-doc-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/VisionKeyboardKit.build/Debug-appletvos/VisionKeyboardKit-t.build/Objects-normal/arm64/VisionKeyboardKit.swiftdoc -emit-module-source-info-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/VisionKeyboardKit.build/Debug-appletvos/VisionKeyboardKit-t.build/Objects-normal/arm64/VisionKeyboardKit.swiftsourceinfo -emit-objc-header-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/VisionKeyboardKit.build/Debug-appletvos/VisionKeyboardKit-t.build/Objects-normal/arm64/VisionKeyboardKit-Swift.h -serialize-diagnostics-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/VisionKeyboardKit.build/Debug-appletvos/VisionKeyboardKit-t.build/Objects-normal/arm64/VisionKeyboardKit-primary-emit-module.dia -emit-dependencies-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/VisionKeyboardKit.build/Debug-appletvos/VisionKeyboardKit-t.build/Objects-normal/arm64/VisionKeyboardKit-primary-emit-module.d -parse-as-library -o /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/VisionKeyboardKit.build/Debug-appletvos/VisionKeyboardKit-t.build/Objects-normal/arm64/VisionKeyboardKit.swiftmodule -emit-abi-descriptor-path /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/VisionKeyboardKit.build/Debug-appletvos/VisionKeyboardKit-t.build/Objects-normal/arm64/VisionKeyboardKit.abi.json
SwiftCompile normal arm64 (in target 'VisionKeyboardKit' from project 'VisionKeyboardKit')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode

SwiftCompile normal arm64 Compiling\ KeyboardWindowGroup.swift /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardWindowGroup.swift (in target 'VisionKeyboardKit' from project 'VisionKeyboardKit')
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardWindowGroup.swift:33:18: error: 'OpenWindowAction' is unavailable in tvOS
31 | }
32 |
33 | public extension OpenWindowAction {
   |                  `- error: 'OpenWindowAction' is unavailable in tvOS
34 |     /// Opens a keyboard window
35 |     /// - Parameter id: Any `Hashable` object that uniquely identifies this keyboard instance.
SwiftUI.OpenWindowAction:4:42: note: 'OpenWindowAction' has been explicitly marked unavailable here
 2 | @available(tvOS, unavailable)
 3 | @available(watchOS, unavailable)
 4 | @MainActor @preconcurrency public struct OpenWindowAction {
   |                                          `- note: 'OpenWindowAction' has been explicitly marked unavailable here
 5 |     @available(macOS 15.0, *)
 6 |     @available(iOS, unavailable)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardWindowGroup.swift:47:18: error: 'DismissWindowAction' is unavailable in tvOS
45 | }
46 |
47 | public extension DismissWindowAction {
   |                  `- error: 'DismissWindowAction' is unavailable in tvOS
48 |     /// Closes a keyboard window
49 |     /// - Parameter id: Any `Hashable` object that uniquely identifies this keyboard instance.
SwiftUI.DismissWindowAction:4:42: note: 'DismissWindowAction' has been explicitly marked unavailable here
2 | @available(tvOS, unavailable)
3 | @available(watchOS, unavailable)
4 | @MainActor @preconcurrency public struct DismissWindowAction {
  |                                          `- note: 'DismissWindowAction' has been explicitly marked unavailable here
5 |     @MainActor @preconcurrency public func callAsFunction()
6 |     @MainActor @preconcurrency public func callAsFunction(id: String)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardWindowGroup.swift:26:9: error: 'init(for:content:)' is unavailable in tvOS
24 |
25 |     public var body: some Scene {
26 |         WindowGroup(for: KeyboardIdentifier.self) { $id in
   |         `- error: 'init(for:content:)' is unavailable in tvOS
27 |             KeyboardView(for: id ?? .global)
28 |         }
SwiftUI.WindowGroup.init:2:20: note: 'init(for:content:)' has been explicitly marked unavailable here
1 | generic struct WindowGroup {
2 | nonisolated public init<D, C>(for type: D.Type, @ContentBuilder content: @escaping (Binding<D?>) -> C) where Content == PresentedWindowContent<D, C>, D : Decodable, D : Encodable, D : Hashable, C : View}
  |                    `- note: 'init(for:content:)' has been explicitly marked unavailable here
3 |
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardWindowGroup.swift (in target 'VisionKeyboardKit' from project 'VisionKeyboardKit')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile KeyboardWindowGroup.swift
SwiftCompile normal arm64 Compiling\ KeyboardIdentifier.swift,\ KeyboardKeyView.swift /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardIdentifier.swift /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardKeyView.swift (in target 'VisionKeyboardKit' from project 'VisionKeyboardKit')
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardState.swift:19:2: error: 'Observable()' is only available in tvOS 17.0 or newer
17 | import SwiftUI
18 |
19 | @Observable
   |  `- error: 'Observable()' is only available in tvOS 17.0 or newer
20 | class KeyboardState {
21 |     private let id: KeyboardIdentifier
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardKeyView.swift:30:6: error: 'init(_:)' is only available in tvOS 17.0 or newer
17 | import SwiftUI
18 |
19 | struct KeyboardKeyView: View {
   |        `- note: add '@available' attribute to enclosing struct
20 |     let key: String
21 |     var shift: String?
   :
28 |     var action: () -> Void = {}
29 |
30 |     @Environment(KeyboardState.self) private var state
   |      `- error: 'init(_:)' is only available in tvOS 17.0 or newer
31 |
32 |     private var isShifted: Bool {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardKeyView.swift:56:6: error: 'init(_:)' is only available in tvOS 17.0 or newer
45 | }
46 |
47 | struct KeyboardToggleKeyView: View {
   |        `- note: add '@available' attribute to enclosing struct
48 |     let key: String
49 |     let code: KeyboardKeyCode
   :
54 |     var isDark: Bool = false
55 |
56 |     @Environment(KeyboardState.self) private var state
   |      `- error: 'init(_:)' is only available in tvOS 17.0 or newer
57 |
58 |     private var isOn: Bool {
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardIdentifier.swift (in target 'VisionKeyboardKit' from project 'VisionKeyboardKit')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile KeyboardIdentifier.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardKeyView.swift (in target 'VisionKeyboardKit' from project 'VisionKeyboardKit')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile KeyboardKeyView.swift
SwiftCompile normal arm64 Compiling\ KeyboardButtonStyle.swift,\ KeyboardClickSound.swift /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift (in target 'VisionKeyboardKit' from project 'VisionKeyboardKit')
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:20:28: error: 'Duration' is only available in tvOS 16.0 or newer
 18 | import RealityKit
 19 |
 20 | private let kDebounceTime: Duration = .milliseconds(25)
    |             |              `- error: 'Duration' is only available in tvOS 16.0 or newer
    |             `- note: add '@available' attribute to enclosing let
 21 |
 22 | struct KeyboardButtonStyle: PrimitiveButtonStyle {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:20:40: error: 'milliseconds' is only available in tvOS 16.0 or newer
 18 | import RealityKit
 19 |
 20 | private let kDebounceTime: Duration = .milliseconds(25)
    |             |                          `- error: 'milliseconds' is only available in tvOS 16.0 or newer
    |             `- note: add '@available' attribute to enclosing let
 21 |
 22 | struct KeyboardButtonStyle: PrimitiveButtonStyle {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardState.swift:19:2: error: 'Observable()' is only available in tvOS 17.0 or newer
17 | import SwiftUI
18 |
19 | @Observable
   |  `- error: 'Observable()' is only available in tvOS 17.0 or newer
20 | class KeyboardState {
21 |     private let id: KeyboardIdentifier
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:34:6: error: 'init(_:)' is only available in tvOS 17.0 or newer
 20 | private let kDebounceTime: Duration = .milliseconds(25)
 21 |
 22 | struct KeyboardButtonStyle: PrimitiveButtonStyle {
    |        `- note: add '@available' attribute to enclosing struct
 23 |     let isDark: Bool
 24 |     let isToggled: Bool
    :
 32 |     @State private var isPressed: Bool = false
 33 |     @State private var debounceTask: Task<Void, Never>?
 34 |     @Environment(KeyboardState.self) private var state
    |      `- error: 'init(_:)' is only available in tvOS 17.0 or newer
 35 |
 36 |     private func spatialGesture(configuration: Configuration) -> some Gesture {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:38:14: error: referencing instance method 'onChanged' on 'Gesture' requires that 'SpatialEventGesture.Value' (aka 'SpatialEventCollection') conform to 'Equatable'
 36 |     private func spatialGesture(configuration: Configuration) -> some Gesture {
 37 |         SpatialEventGesture()
 38 |             .onChanged { events in
    |              `- error: referencing instance method 'onChanged' on 'Gesture' requires that 'SpatialEventGesture.Value' (aka 'SpatialEventCollection') conform to 'Equatable'
 39 |                 for event in events {
 40 |                     switch event.kind {
SwiftUI.Gesture:2:11: note: where 'Self.Value' = 'SpatialEventGesture.Value' (aka 'SpatialEventCollection')
1 | @available(iOS 13.0, macOS 10.15, tvOS 13.0, watchOS 6.0, *)
2 | extension Gesture where Self.Value : Equatable {
  |           `- note: where 'Self.Value' = 'SpatialEventGesture.Value' (aka 'SpatialEventCollection')
3 |     nonisolated public func onChanged(_ action: @escaping (Self.Value) -> Void) -> _ChangedGesture<Self>
4 | }
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:29:18: error: 'Entity' is only available in tvOS 26.0 or newer
 19 |
 20 | /// Plays the system keyboard click sound
 21 | class KeyboardClickSound {
    |       `- note: add '@available' attribute to enclosing class
 22 |     enum File {
 23 |         case normal
    :
 27 |
 28 |     /// The RK entity where the sound will originate
 29 |     let entity = Entity()
    |                  `- error: 'Entity' is only available in tvOS 26.0 or newer
 30 |
 31 |     private var pressNormalPlayer: AudioPlaybackController?
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:121:33: error: argument passed to call that takes no arguments
119 |         .frame(width: width + 4, height: height + 4)
120 |         .hoverEffect()
121 |         .frame(depth: isPressed ? 0 : 12)
    |                                 `- error: argument passed to call that takes no arguments
122 |         .gesture(spatialGesture(configuration: configuration))
123 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:31:36: error: 'AudioPlaybackController' is only available in tvOS 26.0 or newer
 19 |
 20 | /// Plays the system keyboard click sound
 21 | class KeyboardClickSound {
    |       `- note: add '@available' attribute to enclosing class
 22 |     enum File {
 23 |         case normal
    :
 29 |     let entity = Entity()
 30 |
 31 |     private var pressNormalPlayer: AudioPlaybackController?
    |                                    `- error: 'AudioPlaybackController' is only available in tvOS 26.0 or newer
 32 |     private var pressDeletePlayer: AudioPlaybackController?
 33 |     private var pressModifierPlayer: AudioPlaybackController?
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:32:36: error: 'AudioPlaybackController' is only available in tvOS 26.0 or newer
 19 |
 20 | /// Plays the system keyboard click sound
 21 | class KeyboardClickSound {
    |       `- note: add '@available' attribute to enclosing class
 22 |     enum File {
 23 |         case normal
    :
 30 |
 31 |     private var pressNormalPlayer: AudioPlaybackController?
 32 |     private var pressDeletePlayer: AudioPlaybackController?
    |                                    `- error: 'AudioPlaybackController' is only available in tvOS 26.0 or newer
 33 |     private var pressModifierPlayer: AudioPlaybackController?
 34 |
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:33:38: error: 'AudioPlaybackController' is only available in tvOS 26.0 or newer
 19 |
 20 | /// Plays the system keyboard click sound
 21 | class KeyboardClickSound {
    |       `- note: add '@available' attribute to enclosing class
 22 |     enum File {
 23 |         case normal
    :
 31 |     private var pressNormalPlayer: AudioPlaybackController?
 32 |     private var pressDeletePlayer: AudioPlaybackController?
 33 |     private var pressModifierPlayer: AudioPlaybackController?
    |                                      `- error: 'AudioPlaybackController' is only available in tvOS 26.0 or newer
 34 |
 35 |     private func loadAudioResource(for url: URL) -> AudioFileResource? {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:35:53: error: 'AudioFileResource' is only available in tvOS 26.0 or newer
 19 |
 20 | /// Plays the system keyboard click sound
 21 | class KeyboardClickSound {
    |       `- note: add '@available' attribute to enclosing class
 22 |     enum File {
 23 |         case normal
    :
 33 |     private var pressModifierPlayer: AudioPlaybackController?
 34 |
 35 |     private func loadAudioResource(for url: URL) -> AudioFileResource? {
    |                  |                                  `- error: 'AudioFileResource' is only available in tvOS 26.0 or newer
    |                  `- note: add '@available' attribute to enclosing instance method
 36 |         let configuration = AudioFileResource.Configuration(calibration: .absolute(dBSPL: 58.0))
 37 |         return try? .load(contentsOf: url, configuration: configuration)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:61:24: error: 'appending(components:directoryHint:)' is only available in tvOS 16.0 or newer
 19 |
 20 | /// Plays the system keyboard click sound
 21 | class KeyboardClickSound {
    |       `- note: add '@available' attribute to enclosing class
 22 |     enum File {
 23 |         case normal
    :
 59 |         let fm = FileManager.default
 60 |         let library = fm.urls(for: .libraryDirectory, in: .systemDomainMask)[0]
 61 |         return library.appending(components: "Audio", "UISounds")
    |                        |- error: 'appending(components:directoryHint:)' is only available in tvOS 16.0 or newer
    |                        `- note: add 'if #available' version check
 62 |     }()
 63 |     #endif
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:107:33: error: 'AudioPlaybackController' is only available in tvOS 26.0 or newer
 19 |
 20 | /// Plays the system keyboard click sound
 21 | class KeyboardClickSound {
    |       `- note: add '@available' attribute to enclosing class
 22 |     enum File {
 23 |         case normal
    :
105 |
106 |     @MainActor
107 |     private func play(_ player: AudioPlaybackController?) {
    |                  |              `- error: 'AudioPlaybackController' is only available in tvOS 26.0 or newer
    |                  `- note: add '@available' attribute to enclosing instance method
108 |         guard let player = player else {
109 |             return
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:36:29: error: 'AudioFileResource' is only available in tvOS 26.0 or newer
 19 |
 20 | /// Plays the system keyboard click sound
 21 | class KeyboardClickSound {
    |       `- note: add '@available' attribute to enclosing class
 22 |     enum File {
 23 |         case normal
    :
 33 |     private var pressModifierPlayer: AudioPlaybackController?
 34 |
 35 |     private func loadAudioResource(for url: URL) -> AudioFileResource? {
    |                  `- note: add '@available' attribute to enclosing instance method
 36 |         let configuration = AudioFileResource.Configuration(calibration: .absolute(dBSPL: 58.0))
    |                             |- error: 'AudioFileResource' is only available in tvOS 26.0 or newer
    |                             `- note: add 'if #available' version check
 37 |         return try? .load(contentsOf: url, configuration: configuration)
 38 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:37:22: error: 'load(contentsOf:withName:configuration:)' is only available in tvOS 26.0 or newer
 19 |
 20 | /// Plays the system keyboard click sound
 21 | class KeyboardClickSound {
    |       `- note: add '@available' attribute to enclosing class
 22 |     enum File {
 23 |         case normal
    :
 33 |     private var pressModifierPlayer: AudioPlaybackController?
 34 |
 35 |     private func loadAudioResource(for url: URL) -> AudioFileResource? {
    |                  `- note: add '@available' attribute to enclosing instance method
 36 |         let configuration = AudioFileResource.Configuration(calibration: .absolute(dBSPL: 58.0))
 37 |         return try? .load(contentsOf: url, configuration: configuration)
    |                      |- error: 'load(contentsOf:withName:configuration:)' is only available in tvOS 26.0 or newer
    |                      `- note: add 'if #available' version check
 38 |     }
 39 |
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:77:42: error: 'appending(component:directoryHint:)' is only available in tvOS 16.0 or newer
 19 |
 20 | /// Plays the system keyboard click sound
 21 | class KeyboardClickSound {
    |       `- note: add '@available' attribute to enclosing class
 22 |     enum File {
 23 |         case normal
    :
 70 |     }()
 71 |
 72 |     init() {
    |     `- note: add '@available' attribute to enclosing initializer
 73 |         // if we disabled system sounds then do not create the players
 74 |         guard isEnabled else {
 75 |             return
 76 |         }
 77 |         let pressNormalUrl = uiSoundsUrl.appending(component: "key_press_click.caf")
    |                                          |- error: 'appending(component:directoryHint:)' is only available in tvOS 16.0 or newer
    |                                          `- note: add 'if #available' version check
 78 |         let pressDeleteUrl = uiSoundsUrl.appending(component: "key_press_delete.caf")
 79 |         let pressModifierUrl = uiSoundsUrl.appending(component: "key_press_modifier.caf")
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:78:42: error: 'appending(component:directoryHint:)' is only available in tvOS 16.0 or newer
 19 |
 20 | /// Plays the system keyboard click sound
 21 | class KeyboardClickSound {
    |       `- note: add '@available' attribute to enclosing class
 22 |     enum File {
 23 |         case normal
    :
 70 |     }()
 71 |
 72 |     init() {
    |     `- note: add '@available' attribute to enclosing initializer
 73 |         // if we disabled system sounds then do not create the players
 74 |         guard isEnabled else {
    :
 76 |         }
 77 |         let pressNormalUrl = uiSoundsUrl.appending(component: "key_press_click.caf")
 78 |         let pressDeleteUrl = uiSoundsUrl.appending(component: "key_press_delete.caf")
    |                                          |- error: 'appending(component:directoryHint:)' is only available in tvOS 16.0 or newer
    |                                          `- note: add 'if #available' version check
 79 |         let pressModifierUrl = uiSoundsUrl.appending(component: "key_press_modifier.caf")
 80 |         if let resource = loadAudioResource(for: pressNormalUrl) {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:79:44: error: 'appending(component:directoryHint:)' is only available in tvOS 16.0 or newer
 19 |
 20 | /// Plays the system keyboard click sound
 21 | class KeyboardClickSound {
    |       `- note: add '@available' attribute to enclosing class
 22 |     enum File {
 23 |         case normal
    :
 70 |     }()
 71 |
 72 |     init() {
    |     `- note: add '@available' attribute to enclosing initializer
 73 |         // if we disabled system sounds then do not create the players
 74 |         guard isEnabled else {
    :
 77 |         let pressNormalUrl = uiSoundsUrl.appending(component: "key_press_click.caf")
 78 |         let pressDeleteUrl = uiSoundsUrl.appending(component: "key_press_delete.caf")
 79 |         let pressModifierUrl = uiSoundsUrl.appending(component: "key_press_modifier.caf")
    |                                            |- error: 'appending(component:directoryHint:)' is only available in tvOS 16.0 or newer
    |                                            `- note: add 'if #available' version check
 80 |         if let resource = loadAudioResource(for: pressNormalUrl) {
 81 |             pressNormalPlayer = entity.prepareAudio(resource)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:81:40: error: 'prepareAudio' is only available in tvOS 26.0 or newer
 19 |
 20 | /// Plays the system keyboard click sound
 21 | class KeyboardClickSound {
    |       `- note: add '@available' attribute to enclosing class
 22 |     enum File {
 23 |         case normal
    :
 70 |     }()
 71 |
 72 |     init() {
    |     `- note: add '@available' attribute to enclosing initializer
 73 |         // if we disabled system sounds then do not create the players
 74 |         guard isEnabled else {
    :
 79 |         let pressModifierUrl = uiSoundsUrl.appending(component: "key_press_modifier.caf")
 80 |         if let resource = loadAudioResource(for: pressNormalUrl) {
 81 |             pressNormalPlayer = entity.prepareAudio(resource)
    |                                        |- error: 'prepareAudio' is only available in tvOS 26.0 or newer
    |                                        `- note: add 'if #available' version check
 82 |         }
 83 |         if let resource = loadAudioResource(for: pressDeleteUrl) {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:84:40: error: 'prepareAudio' is only available in tvOS 26.0 or newer
 19 |
 20 | /// Plays the system keyboard click sound
 21 | class KeyboardClickSound {
    |       `- note: add '@available' attribute to enclosing class
 22 |     enum File {
 23 |         case normal
    :
 70 |     }()
 71 |
 72 |     init() {
    |     `- note: add '@available' attribute to enclosing initializer
 73 |         // if we disabled system sounds then do not create the players
 74 |         guard isEnabled else {
    :
 82 |         }
 83 |         if let resource = loadAudioResource(for: pressDeleteUrl) {
 84 |             pressDeletePlayer = entity.prepareAudio(resource)
    |                                        |- error: 'prepareAudio' is only available in tvOS 26.0 or newer
    |                                        `- note: add 'if #available' version check
 85 |         }
 86 |         if let resource = loadAudioResource(for: pressModifierUrl) {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:87:42: error: 'prepareAudio' is only available in tvOS 26.0 or newer
 19 |
 20 | /// Plays the system keyboard click sound
 21 | class KeyboardClickSound {
    |       `- note: add '@available' attribute to enclosing class
 22 |     enum File {
 23 |         case normal
    :
 70 |     }()
 71 |
 72 |     init() {
    |     `- note: add '@available' attribute to enclosing initializer
 73 |         // if we disabled system sounds then do not create the players
 74 |         guard isEnabled else {
    :
 85 |         }
 86 |         if let resource = loadAudioResource(for: pressModifierUrl) {
 87 |             pressModifierPlayer = entity.prepareAudio(resource)
    |                                          |- error: 'prepareAudio' is only available in tvOS 26.0 or newer
    |                                          `- note: add 'if #available' version check
 88 |         }
 89 |     }
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:112:23: error: 'isPlaying' is only available in tvOS 26.0 or newer
 19 |
 20 | /// Plays the system keyboard click sound
 21 | class KeyboardClickSound {
    |       `- note: add '@available' attribute to enclosing class
 22 |     enum File {
 23 |         case normal
    :
105 |
106 |     @MainActor
107 |     private func play(_ player: AudioPlaybackController?) {
    |                  `- note: add '@available' attribute to enclosing instance method
108 |         guard let player = player else {
109 |             return
110 |         }
111 |         withAmbientSession {
112 |             if player.isPlaying {
    |                       |- error: 'isPlaying' is only available in tvOS 26.0 or newer
    |                       `- note: add 'if #available' version check
113 |                 player.seek(to: .zero)
114 |             }
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:113:24: error: 'seek(to:)' is only available in tvOS 26.0 or newer
 19 |
 20 | /// Plays the system keyboard click sound
 21 | class KeyboardClickSound {
    |       `- note: add '@available' attribute to enclosing class
 22 |     enum File {
 23 |         case normal
    :
105 |
106 |     @MainActor
107 |     private func play(_ player: AudioPlaybackController?) {
    |                  `- note: add '@available' attribute to enclosing instance method
108 |         guard let player = player else {
109 |             return
    :
111 |         withAmbientSession {
112 |             if player.isPlaying {
113 |                 player.seek(to: .zero)
    |                        |- error: 'seek(to:)' is only available in tvOS 26.0 or newer
    |                        `- note: add 'if #available' version check
114 |             }
115 |             player.play()
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:113:34: error: 'zero' is only available in tvOS 16.0 or newer
 19 |
 20 | /// Plays the system keyboard click sound
 21 | class KeyboardClickSound {
    |       `- note: add '@available' attribute to enclosing class
 22 |     enum File {
 23 |         case normal
    :
105 |
106 |     @MainActor
107 |     private func play(_ player: AudioPlaybackController?) {
    |                  `- note: add '@available' attribute to enclosing instance method
108 |         guard let player = player else {
109 |             return
    :
111 |         withAmbientSession {
112 |             if player.isPlaying {
113 |                 player.seek(to: .zero)
    |                                  |- error: 'zero' is only available in tvOS 16.0 or newer
    |                                  `- note: add 'if #available' version check
114 |             }
115 |             player.play()
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift (in target 'VisionKeyboardKit' from project 'VisionKeyboardKit')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile KeyboardButtonStyle.swift
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift (in target 'VisionKeyboardKit' from project 'VisionKeyboardKit')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile KeyboardClickSound.swift
SwiftCompile normal arm64 Compiling\ KeyboardState.swift /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardState.swift (in target 'VisionKeyboardKit' from project 'VisionKeyboardKit')
SwiftCompile normal arm64 /Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardState.swift (in target 'VisionKeyboardKit' from project 'VisionKeyboardKit')
    cd /Users/admin/builder/spi-builder-workspace/.swiftpm/xcode
    builtin-SwiftPerFileCompile KeyboardState.swift
PruneExplicitPrecompiledModules /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/SwiftExplicitPrecompiledModules
PruneExplicitPrecompiledModules /Users/admin/builder/spi-builder-workspace/.derivedData/SDKExplicitPrecompiledModules
PruneExplicitPrecompiledModules /Users/admin/builder/spi-builder-workspace/.derivedData/Build/Intermediates.noindex/ExplicitPrecompiledModules
2026-09-19 17:17:03.441 xcodebuild[769:4603] [MT] IDERunDestination: Supported platforms for the buildables in the current scheme is empty.
** BUILD FAILED **
The following build commands failed:
	SwiftEmitModule normal arm64 Emitting\ module\ for\ VisionKeyboardKit (in target 'VisionKeyboardKit' from project 'VisionKeyboardKit')
	SwiftCompile normal arm64 (in target 'VisionKeyboardKit' from project 'VisionKeyboardKit')
	Building workspace VisionKeyboardKit with scheme VisionKeyboardKit
(3 failures)
BUILD FAILURE 6.4 tvOS