Build Information
Failed to build VisionKeyboardKit, reference main (0804e4), with Swift 6.3 for macOS (SPM) on 14 Apr 2026 01:12:57 UTC.
Build Command
env DEVELOPER_DIR=/Applications/Xcode-26.4.0.app xcrun swift build --arch arm64Build Log
43 | }.labelStyle(.iconOnly)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardSettingsViewModifier.swift:42:21: warning: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
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 {
:
40 | isExpanded = false
41 | } label: {
42 | Label("Contract", systemImage: "chevron.left")
| |- warning: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
| `- note: add 'if #available' version check
43 | }.labelStyle(.iconOnly)
44 | } else {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardSettingsViewModifier.swift:42:21: warning: conformance of 'Image' to 'View' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
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 {
:
40 | isExpanded = false
41 | } label: {
42 | Label("Contract", systemImage: "chevron.left")
| |- warning: conformance of 'Image' to 'View' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
| `- note: add 'if #available' version check
43 | }.labelStyle(.iconOnly)
44 | } else {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardSettingsViewModifier.swift:42:21: error: 'Label' is only available in macOS 11.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 {
:
40 | isExpanded = false
41 | } label: {
42 | Label("Contract", systemImage: "chevron.left")
| |- error: 'Label' is only available in macOS 11.0 or newer
| `- note: add 'if #available' version check
43 | }.labelStyle(.iconOnly)
44 | } else {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardSettingsViewModifier.swift:42:21: error: 'init(_:systemImage:)' is only available in macOS 11.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 {
:
40 | isExpanded = false
41 | } label: {
42 | Label("Contract", systemImage: "chevron.left")
| |- error: 'init(_:systemImage:)' is only available in macOS 11.0 or newer
| `- note: add 'if #available' version check
43 | }.labelStyle(.iconOnly)
44 | } else {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardSettingsViewModifier.swift:42:27: error: 'LocalizedStringKey' is only available in macOS 10.15 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 {
:
40 | isExpanded = false
41 | } label: {
42 | Label("Contract", systemImage: "chevron.left")
| |- error: 'LocalizedStringKey' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
43 | }.labelStyle(.iconOnly)
44 | } else {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardSettingsViewModifier.swift:41:26: warning: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
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 {
:
39 | Button {
40 | isExpanded = false
41 | } label: {
| |- warning: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
| `- note: add 'if #available' version check
42 | Label("Contract", systemImage: "chevron.left")
43 | }.labelStyle(.iconOnly)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardSettingsViewModifier.swift:41:26: warning: conformance of 'Image' to 'View' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
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 {
:
39 | Button {
40 | isExpanded = false
41 | } label: {
| |- warning: conformance of 'Image' to 'View' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
| `- note: add 'if #available' version check
42 | Label("Contract", systemImage: "chevron.left")
43 | }.labelStyle(.iconOnly)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardSettingsViewModifier.swift:43:19: error: 'labelStyle' is only available in macOS 11.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 {
:
41 | } label: {
42 | Label("Contract", systemImage: "chevron.left")
43 | }.labelStyle(.iconOnly)
| |- error: 'labelStyle' is only available in macOS 11.0 or newer
| `- note: add 'if #available' version check
44 | } else {
45 | Button {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardSettingsViewModifier.swift:43:31: error: 'iconOnly' is only available in macOS 11.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 {
:
41 | } label: {
42 | Label("Contract", systemImage: "chevron.left")
43 | }.labelStyle(.iconOnly)
| |- error: 'iconOnly' is only available in macOS 11.0 or newer
| `- note: add 'if #available' version check
44 | } else {
45 | Button {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardSettingsViewModifier.swift:38:27: error: 'buildEither(first:)' is only available in macOS 10.15 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 {
:
36 | }
37 | .ornament(attachmentAnchor: .scene(.topTrailing)) {
38 | if isExpanded {
| |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
39 | Button {
40 | isExpanded = false
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardSettingsViewModifier.swift:45:17: error: 'Button' is only available in macOS 10.15 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 {
:
43 | }.labelStyle(.iconOnly)
44 | } else {
45 | Button {
| |- error: 'Button' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
46 | isExpanded = true
47 | } label: {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardSettingsViewModifier.swift:45:17: warning: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
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 {
:
43 | }.labelStyle(.iconOnly)
44 | } else {
45 | Button {
| |- warning: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
| `- note: add 'if #available' version check
46 | isExpanded = true
47 | } label: {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardSettingsViewModifier.swift:45:17: warning: conformance of 'Image' to 'View' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
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 {
:
43 | }.labelStyle(.iconOnly)
44 | } else {
45 | Button {
| |- warning: conformance of 'Image' to 'View' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
| `- note: add 'if #available' version check
46 | isExpanded = true
47 | } label: {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardSettingsViewModifier.swift:46:21: error: setter for 'isExpanded' is only available in macOS 11.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 {
:
44 | } else {
45 | Button {
46 | isExpanded = true
| |- error: setter for 'isExpanded' is only available in macOS 11.0 or newer
| `- note: add 'if #available' version check
47 | } label: {
48 | Label("Expand", systemImage: "chevron.right")
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardSettingsViewModifier.swift:47:26: warning: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
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 {
:
45 | Button {
46 | isExpanded = true
47 | } label: {
| |- warning: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
| `- note: add 'if #available' version check
48 | Label("Expand", systemImage: "chevron.right")
49 | }.labelStyle(.iconOnly)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardSettingsViewModifier.swift:47:26: warning: conformance of 'Image' to 'View' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
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 {
:
45 | Button {
46 | isExpanded = true
47 | } label: {
| |- warning: conformance of 'Image' to 'View' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
| `- note: add 'if #available' version check
48 | Label("Expand", systemImage: "chevron.right")
49 | }.labelStyle(.iconOnly)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardSettingsViewModifier.swift:47:26: warning: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
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 {
:
45 | Button {
46 | isExpanded = true
47 | } label: {
| |- warning: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
| `- note: add 'if #available' version check
48 | Label("Expand", systemImage: "chevron.right")
49 | }.labelStyle(.iconOnly)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardSettingsViewModifier.swift:47:26: warning: conformance of 'Image' to 'View' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
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 {
:
45 | Button {
46 | isExpanded = true
47 | } label: {
| |- warning: conformance of 'Image' to 'View' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
| `- note: add 'if #available' version check
48 | Label("Expand", systemImage: "chevron.right")
49 | }.labelStyle(.iconOnly)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardSettingsViewModifier.swift:48:21: warning: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
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 {
:
46 | isExpanded = true
47 | } label: {
48 | Label("Expand", systemImage: "chevron.right")
| |- warning: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
| `- note: add 'if #available' version check
49 | }.labelStyle(.iconOnly)
50 | }
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardSettingsViewModifier.swift:48:21: warning: conformance of 'Image' to 'View' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
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 {
:
46 | isExpanded = true
47 | } label: {
48 | Label("Expand", systemImage: "chevron.right")
| |- warning: conformance of 'Image' to 'View' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
| `- note: add 'if #available' version check
49 | }.labelStyle(.iconOnly)
50 | }
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardSettingsViewModifier.swift:48:21: error: 'Label' is only available in macOS 11.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 {
:
46 | isExpanded = true
47 | } label: {
48 | Label("Expand", systemImage: "chevron.right")
| |- error: 'Label' is only available in macOS 11.0 or newer
| `- note: add 'if #available' version check
49 | }.labelStyle(.iconOnly)
50 | }
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardSettingsViewModifier.swift:48:21: error: 'init(_:systemImage:)' is only available in macOS 11.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 {
:
46 | isExpanded = true
47 | } label: {
48 | Label("Expand", systemImage: "chevron.right")
| |- error: 'init(_:systemImage:)' is only available in macOS 11.0 or newer
| `- note: add 'if #available' version check
49 | }.labelStyle(.iconOnly)
50 | }
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardSettingsViewModifier.swift:48:27: error: 'LocalizedStringKey' is only available in macOS 10.15 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 {
:
46 | isExpanded = true
47 | } label: {
48 | Label("Expand", systemImage: "chevron.right")
| |- error: 'LocalizedStringKey' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
49 | }.labelStyle(.iconOnly)
50 | }
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardSettingsViewModifier.swift:47:26: warning: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
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 {
:
45 | Button {
46 | isExpanded = true
47 | } label: {
| |- warning: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
| `- note: add 'if #available' version check
48 | Label("Expand", systemImage: "chevron.right")
49 | }.labelStyle(.iconOnly)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardSettingsViewModifier.swift:47:26: warning: conformance of 'Image' to 'View' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
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 {
:
45 | Button {
46 | isExpanded = true
47 | } label: {
| |- warning: conformance of 'Image' to 'View' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
| `- note: add 'if #available' version check
48 | Label("Expand", systemImage: "chevron.right")
49 | }.labelStyle(.iconOnly)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardSettingsViewModifier.swift:49:19: error: 'labelStyle' is only available in macOS 11.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 {
:
47 | } label: {
48 | Label("Expand", systemImage: "chevron.right")
49 | }.labelStyle(.iconOnly)
| |- error: 'labelStyle' is only available in macOS 11.0 or newer
| `- note: add 'if #available' version check
50 | }
51 | }
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardSettingsViewModifier.swift:49:31: error: 'iconOnly' is only available in macOS 11.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 {
:
47 | } label: {
48 | Label("Expand", systemImage: "chevron.right")
49 | }.labelStyle(.iconOnly)
| |- error: 'iconOnly' is only available in macOS 11.0 or newer
| `- note: add 'if #available' version check
50 | }
51 | }
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardSettingsViewModifier.swift:44:20: error: 'buildEither(second:)' is only available in macOS 10.15 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 {
:
42 | Label("Contract", systemImage: "chevron.left")
43 | }.labelStyle(.iconOnly)
44 | } else {
| |- error: 'buildEither(second:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
45 | Button {
46 | isExpanded = true
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardSettingsViewModifier.swift:37:59: warning: conformance of '_ConditionalContent<TrueContent, FalseContent>' to 'View' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
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 {
:
35 | }.labelStyle(.iconOnly)
36 | }
37 | .ornament(attachmentAnchor: .scene(.topTrailing)) {
| |- warning: conformance of '_ConditionalContent<TrueContent, FalseContent>' to 'View' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
| `- note: add 'if #available' version check
38 | if isExpanded {
39 | Button {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardSettingsViewModifier.swift:57:14: warning: conformance of 'ModifiedContent<Content, Modifier>' to 'View' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
53 | }
54 |
55 | extension View {
| `- note: add '@available' attribute to enclosing extension
56 | func keyboardOrnament() -> some View {
| `- note: add '@available' attribute to enclosing instance method
57 | self.modifier(KeyboardSettingsViewModifier())
| |- warning: conformance of 'ModifiedContent<Content, Modifier>' to 'View' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
| `- note: add 'if #available' version check
58 | }
59 | }
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardSettingsViewModifier.swift:57:14: error: 'modifier' is only available in macOS 10.15 or newer
53 | }
54 |
55 | extension View {
| `- note: add '@available' attribute to enclosing extension
56 | func keyboardOrnament() -> some View {
| `- note: add '@available' attribute to enclosing instance method
57 | self.modifier(KeyboardSettingsViewModifier())
| |- error: 'modifier' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
58 | }
59 | }
[11/16] Compiling VisionKeyboardKit KeyboardIdentifier.swift
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardState.swift:19:2: error: 'Observable()' is only available in macOS 14.0 or newer
17 | import SwiftUI
18 |
19 | @Observable
| `- error: 'Observable()' is only available in macOS 14.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 macOS 14.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 macOS 14.0 or newer
31 |
32 | private var isShifted: Bool {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardKeyView.swift:30:6: error: 'Environment' is only available in macOS 10.15 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: 'Environment' is only available in macOS 10.15 or newer
31 |
32 | private var isShifted: Bool {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardKeyView.swift:36:20: error: 'View' is only available in macOS 10.15 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?
:
34 | }
35 |
36 | var body: some View {
| | `- error: 'View' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing property
37 | Button(action: action) {
38 | Text(isShifted ? shift ?? key : key)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardKeyView.swift:56:6: error: 'init(_:)' is only available in macOS 14.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 macOS 14.0 or newer
57 |
58 | private var isOn: Bool {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardKeyView.swift:56:6: error: 'Environment' is only available in macOS 10.15 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: 'Environment' is only available in macOS 10.15 or newer
57 |
58 | private var isOn: Bool {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardKeyView.swift:66:20: error: 'View' is only available in macOS 10.15 or newer
45 | }
46 |
47 | struct KeyboardToggleKeyView: View {
| `- note: add '@available' attribute to enclosing struct
48 | let key: String
49 | let code: KeyboardKeyCode
:
64 | }
65 |
66 | var body: some View {
| | `- error: 'View' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing property
67 | KeyboardKeyView(key: key, code: code, width: width, height: height, isDark: isDark, isToggled: isOn, clickSound: .modifier) {
68 | if isOn {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardKeyView.swift:83:2: error: 'Preview(_:body:)' is only available in macOS 10.15 or newer
81 | }
82 |
83 | #Preview {
| `- error: 'Preview(_:body:)' is only available in macOS 10.15 or newer
84 | VStack {
85 | KeyboardKeyView(key: "a", code: .keyA)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardKeyView.swift:84:5: error: 'VStack' is only available in macOS 10.15 or newer
82 |
83 | #Preview {
84 | VStack {
| |- error: 'VStack' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
85 | KeyboardKeyView(key: "a", code: .keyA)
86 | KeyboardKeyView(key: "a", code: .keyA, isDark: true)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutANSI.swift:112:2: error: 'Preview(_:body:)' is only available in macOS 10.15 or newer
110 | }
111 |
112 | #Preview {
| `- error: 'Preview(_:body:)' is only available in macOS 10.15 or newer
113 | KeyboardLayoutANSI()
114 | }
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift:86:2: error: 'Preview(_:body:)' is only available in macOS 10.15 or newer
84 | }
85 |
86 | #Preview {
| `- error: 'Preview(_:body:)' is only available in macOS 10.15 or newer
87 | KeyboardLayoutTenKeys()
88 | }
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardView.swift:51:2: error: 'Preview(_:body:)' is only available in macOS 10.15 or newer
49 | }
50 |
51 | #Preview {
| `- error: 'Preview(_:body:)' is only available in macOS 10.15 or newer
52 | KeyboardView(for: .global)
53 | }
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in macOS 14.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 macOS 14.0 or newer
+--------------------------------------------------------------------
27 |
28 | init(for id: KeyboardIdentifier) {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardKeyView.swift:37:9: error: 'Button' is only available in macOS 10.15 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?
:
34 | }
35 |
36 | var body: some View {
| `- note: add '@available' attribute to enclosing property
37 | Button(action: action) {
| |- error: 'Button' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
38 | Text(isShifted ? shift ?? key : key)
39 | }.buttonStyle(.keyboardButton(isDark: isDark, isToggled: isToggled, fontSize: width > 50 && key.count > 1 ? 20 : key.count > 1 ? 16 : 24, width: width, height: height, clickSound: clickSound, onTouchDown: {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardKeyView.swift:37:9: warning: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
17 | import SwiftUI
18 |
19 | struct KeyboardKeyView: View {
| `- note: add '@available' attribute to enclosing struct
20 | let key: String
21 | var shift: String?
:
34 | }
35 |
36 | var body: some View {
| `- note: add '@available' attribute to enclosing property
37 | Button(action: action) {
| |- warning: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
| `- note: add 'if #available' version check
38 | Text(isShifted ? shift ?? key : key)
39 | }.buttonStyle(.keyboardButton(isDark: isDark, isToggled: isToggled, fontSize: width > 50 && key.count > 1 ? 20 : key.count > 1 ? 16 : 24, width: width, height: height, clickSound: clickSound, onTouchDown: {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardKeyView.swift:38:13: warning: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
17 | import SwiftUI
18 |
19 | struct KeyboardKeyView: View {
| `- note: add '@available' attribute to enclosing struct
20 | let key: String
21 | var shift: String?
:
34 | }
35 |
36 | var body: some View {
| `- note: add '@available' attribute to enclosing property
37 | Button(action: action) {
38 | Text(isShifted ? shift ?? key : key)
| |- warning: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
| `- note: add 'if #available' version check
39 | }.buttonStyle(.keyboardButton(isDark: isDark, isToggled: isToggled, fontSize: width > 50 && key.count > 1 ? 20 : key.count > 1 ? 16 : 24, width: width, height: height, clickSound: clickSound, onTouchDown: {
40 | state.keyDown(code)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardKeyView.swift:38:13: error: 'Text' is only available in macOS 10.15 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?
:
34 | }
35 |
36 | var body: some View {
| `- note: add '@available' attribute to enclosing property
37 | Button(action: action) {
38 | Text(isShifted ? shift ?? key : key)
| |- error: 'Text' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
39 | }.buttonStyle(.keyboardButton(isDark: isDark, isToggled: isToggled, fontSize: width > 50 && key.count > 1 ? 20 : key.count > 1 ? 16 : 24, width: width, height: height, clickSound: clickSound, onTouchDown: {
40 | state.keyDown(code)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardKeyView.swift:37:32: warning: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
17 | import SwiftUI
18 |
19 | struct KeyboardKeyView: View {
| `- note: add '@available' attribute to enclosing struct
20 | let key: String
21 | var shift: String?
:
34 | }
35 |
36 | var body: some View {
| `- note: add '@available' attribute to enclosing property
37 | Button(action: action) {
| |- warning: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
| `- note: add 'if #available' version check
38 | Text(isShifted ? shift ?? key : key)
39 | }.buttonStyle(.keyboardButton(isDark: isDark, isToggled: isToggled, fontSize: width > 50 && key.count > 1 ? 20 : key.count > 1 ? 16 : 24, width: width, height: height, clickSound: clickSound, onTouchDown: {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardKeyView.swift:39:11: error: 'buttonStyle' is only available in macOS 10.15 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?
:
34 | }
35 |
36 | var body: some View {
| `- note: add '@available' attribute to enclosing property
37 | Button(action: action) {
38 | Text(isShifted ? shift ?? key : key)
39 | }.buttonStyle(.keyboardButton(isDark: isDark, isToggled: isToggled, fontSize: width > 50 && key.count > 1 ? 20 : key.count > 1 ? 16 : 24, width: width, height: height, clickSound: clickSound, onTouchDown: {
| |- error: 'buttonStyle' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
40 | state.keyDown(code)
41 | }, onTouchUp: {
[12/16] Compiling VisionKeyboardKit KeyboardKeyView.swift
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardState.swift:19:2: error: 'Observable()' is only available in macOS 14.0 or newer
17 | import SwiftUI
18 |
19 | @Observable
| `- error: 'Observable()' is only available in macOS 14.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 macOS 14.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 macOS 14.0 or newer
31 |
32 | private var isShifted: Bool {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardKeyView.swift:30:6: error: 'Environment' is only available in macOS 10.15 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: 'Environment' is only available in macOS 10.15 or newer
31 |
32 | private var isShifted: Bool {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardKeyView.swift:36:20: error: 'View' is only available in macOS 10.15 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?
:
34 | }
35 |
36 | var body: some View {
| | `- error: 'View' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing property
37 | Button(action: action) {
38 | Text(isShifted ? shift ?? key : key)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardKeyView.swift:56:6: error: 'init(_:)' is only available in macOS 14.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 macOS 14.0 or newer
57 |
58 | private var isOn: Bool {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardKeyView.swift:56:6: error: 'Environment' is only available in macOS 10.15 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: 'Environment' is only available in macOS 10.15 or newer
57 |
58 | private var isOn: Bool {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardKeyView.swift:66:20: error: 'View' is only available in macOS 10.15 or newer
45 | }
46 |
47 | struct KeyboardToggleKeyView: View {
| `- note: add '@available' attribute to enclosing struct
48 | let key: String
49 | let code: KeyboardKeyCode
:
64 | }
65 |
66 | var body: some View {
| | `- error: 'View' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing property
67 | KeyboardKeyView(key: key, code: code, width: width, height: height, isDark: isDark, isToggled: isOn, clickSound: .modifier) {
68 | if isOn {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardKeyView.swift:83:2: error: 'Preview(_:body:)' is only available in macOS 10.15 or newer
81 | }
82 |
83 | #Preview {
| `- error: 'Preview(_:body:)' is only available in macOS 10.15 or newer
84 | VStack {
85 | KeyboardKeyView(key: "a", code: .keyA)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardKeyView.swift:84:5: error: 'VStack' is only available in macOS 10.15 or newer
82 |
83 | #Preview {
84 | VStack {
| |- error: 'VStack' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
85 | KeyboardKeyView(key: "a", code: .keyA)
86 | KeyboardKeyView(key: "a", code: .keyA, isDark: true)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutANSI.swift:112:2: error: 'Preview(_:body:)' is only available in macOS 10.15 or newer
110 | }
111 |
112 | #Preview {
| `- error: 'Preview(_:body:)' is only available in macOS 10.15 or newer
113 | KeyboardLayoutANSI()
114 | }
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardLayoutTenkeys.swift:86:2: error: 'Preview(_:body:)' is only available in macOS 10.15 or newer
84 | }
85 |
86 | #Preview {
| `- error: 'Preview(_:body:)' is only available in macOS 10.15 or newer
87 | KeyboardLayoutTenKeys()
88 | }
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardView.swift:51:2: error: 'Preview(_:body:)' is only available in macOS 10.15 or newer
49 | }
50 |
51 | #Preview {
| `- error: 'Preview(_:body:)' is only available in macOS 10.15 or newer
52 | KeyboardView(for: .global)
53 | }
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in macOS 14.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 macOS 14.0 or newer
+--------------------------------------------------------------------
27 |
28 | init(for id: KeyboardIdentifier) {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardKeyView.swift:37:9: error: 'Button' is only available in macOS 10.15 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?
:
34 | }
35 |
36 | var body: some View {
| `- note: add '@available' attribute to enclosing property
37 | Button(action: action) {
| |- error: 'Button' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
38 | Text(isShifted ? shift ?? key : key)
39 | }.buttonStyle(.keyboardButton(isDark: isDark, isToggled: isToggled, fontSize: width > 50 && key.count > 1 ? 20 : key.count > 1 ? 16 : 24, width: width, height: height, clickSound: clickSound, onTouchDown: {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardKeyView.swift:37:9: warning: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
17 | import SwiftUI
18 |
19 | struct KeyboardKeyView: View {
| `- note: add '@available' attribute to enclosing struct
20 | let key: String
21 | var shift: String?
:
34 | }
35 |
36 | var body: some View {
| `- note: add '@available' attribute to enclosing property
37 | Button(action: action) {
| |- warning: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
| `- note: add 'if #available' version check
38 | Text(isShifted ? shift ?? key : key)
39 | }.buttonStyle(.keyboardButton(isDark: isDark, isToggled: isToggled, fontSize: width > 50 && key.count > 1 ? 20 : key.count > 1 ? 16 : 24, width: width, height: height, clickSound: clickSound, onTouchDown: {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardKeyView.swift:38:13: warning: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
17 | import SwiftUI
18 |
19 | struct KeyboardKeyView: View {
| `- note: add '@available' attribute to enclosing struct
20 | let key: String
21 | var shift: String?
:
34 | }
35 |
36 | var body: some View {
| `- note: add '@available' attribute to enclosing property
37 | Button(action: action) {
38 | Text(isShifted ? shift ?? key : key)
| |- warning: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
| `- note: add 'if #available' version check
39 | }.buttonStyle(.keyboardButton(isDark: isDark, isToggled: isToggled, fontSize: width > 50 && key.count > 1 ? 20 : key.count > 1 ? 16 : 24, width: width, height: height, clickSound: clickSound, onTouchDown: {
40 | state.keyDown(code)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardKeyView.swift:38:13: error: 'Text' is only available in macOS 10.15 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?
:
34 | }
35 |
36 | var body: some View {
| `- note: add '@available' attribute to enclosing property
37 | Button(action: action) {
38 | Text(isShifted ? shift ?? key : key)
| |- error: 'Text' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
39 | }.buttonStyle(.keyboardButton(isDark: isDark, isToggled: isToggled, fontSize: width > 50 && key.count > 1 ? 20 : key.count > 1 ? 16 : 24, width: width, height: height, clickSound: clickSound, onTouchDown: {
40 | state.keyDown(code)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardKeyView.swift:37:32: warning: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
17 | import SwiftUI
18 |
19 | struct KeyboardKeyView: View {
| `- note: add '@available' attribute to enclosing struct
20 | let key: String
21 | var shift: String?
:
34 | }
35 |
36 | var body: some View {
| `- note: add '@available' attribute to enclosing property
37 | Button(action: action) {
| |- warning: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
| `- note: add 'if #available' version check
38 | Text(isShifted ? shift ?? key : key)
39 | }.buttonStyle(.keyboardButton(isDark: isDark, isToggled: isToggled, fontSize: width > 50 && key.count > 1 ? 20 : key.count > 1 ? 16 : 24, width: width, height: height, clickSound: clickSound, onTouchDown: {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardKeyView.swift:39:11: error: 'buttonStyle' is only available in macOS 10.15 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?
:
34 | }
35 |
36 | var body: some View {
| `- note: add '@available' attribute to enclosing property
37 | Button(action: action) {
38 | Text(isShifted ? shift ?? key : key)
39 | }.buttonStyle(.keyboardButton(isDark: isDark, isToggled: isToggled, fontSize: width > 50 && key.count > 1 ? 20 : key.count > 1 ? 16 : 24, width: width, height: height, clickSound: clickSound, onTouchDown: {
| |- error: 'buttonStyle' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
40 | state.keyDown(code)
41 | }, onTouchUp: {
[13/16] Compiling VisionKeyboardKit KeyboardButtonStyle.swift
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:20:28: error: 'Duration' is only available in macOS 13.0 or newer
18 | import RealityKit
19 |
20 | private let kDebounceTime: Duration = .milliseconds(25)
| | `- error: 'Duration' is only available in macOS 13.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 macOS 13.0 or newer
18 | import RealityKit
19 |
20 | private let kDebounceTime: Duration = .milliseconds(25)
| | `- error: 'milliseconds' is only available in macOS 13.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 macOS 14.0 or newer
17 | import SwiftUI
18 |
19 | @Observable
| `- error: 'Observable()' is only available in macOS 14.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 macOS 14.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 macOS 14.0 or newer
35 |
36 | private func spatialGesture(configuration: Configuration) -> some Gesture {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:32:6: error: 'State' is only available in macOS 10.15 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
:
30 | let onTouchUp: () -> Void
31 |
32 | @State private var isPressed: Bool = false
| `- error: 'State' is only available in macOS 10.15 or newer
33 | @State private var debounceTask: Task<Void, Never>?
34 | @Environment(KeyboardState.self) private var state
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:33:38: error: 'Task' is only available in macOS 10.15 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
:
31 |
32 | @State private var isPressed: Bool = false
33 | @State private var debounceTask: Task<Void, Never>?
| `- error: 'Task' is only available in macOS 10.15 or newer
34 | @Environment(KeyboardState.self) private var state
35 |
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:33:6: error: 'State' is only available in macOS 10.15 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
:
31 |
32 | @State private var isPressed: Bool = false
33 | @State private var debounceTask: Task<Void, Never>?
| `- error: 'State' is only available in macOS 10.15 or newer
34 | @Environment(KeyboardState.self) private var state
35 |
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:34:6: error: 'Environment' is only available in macOS 10.15 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: 'Environment' is only available in macOS 10.15 or newer
35 |
36 | private func spatialGesture(configuration: Configuration) -> some Gesture {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:36:71: error: 'Gesture' is only available in macOS 10.15 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
:
34 | @Environment(KeyboardState.self) private var state
35 |
36 | private func spatialGesture(configuration: Configuration) -> some Gesture {
| | `- error: 'Gesture' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing instance method
37 | SpatialEventGesture()
38 | .onChanged { events in
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:79:57: error: 'View' is only available in macOS 10.15 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
:
77 | }
78 |
79 | func makeBody(configuration: Configuration) -> some View {
| | `- error: 'View' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing instance method
80 | ZStack {
81 | if isPressed {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:126:11: error: 'PrimitiveButtonStyle' is only available in macOS 10.15 or newer
124 | }
125 |
126 | extension PrimitiveButtonStyle where Self == KeyboardButtonStyle {
| | `- error: 'PrimitiveButtonStyle' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing extension
127 | static func keyboardButton(isDark: Bool = false, isToggled: Bool = false, fontSize: CGFloat = 24, width: CGFloat = 50, height: CGFloat = 50, clickSound: KeyboardClickSound.File = .normal, onTouchDown: @escaping () -> Void = {}, onTouchUp: @escaping () -> Void = {}) -> KeyboardButtonStyle {
128 | KeyboardButtonStyle(isDark: isDark, isToggled: isToggled, fontSize: fontSize, width: width, height: height, clickSound: clickSound, onTouchDown: onTouchDown, onTouchUp: onTouchUp)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:55:14: warning: conformance of '_EndedGesture<Content>' to 'Gesture' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
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
:
34 | @Environment(KeyboardState.self) private var state
35 |
36 | private func spatialGesture(configuration: Configuration) -> some Gesture {
| `- note: add '@available' attribute to enclosing instance method
37 | SpatialEventGesture()
38 | .onChanged { events in
:
53 | }
54 | }
55 | .onEnded { events in
| |- warning: conformance of '_EndedGesture<Content>' to 'Gesture' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
| `- note: add 'if #available' version check
56 | for event in events {
57 | switch event.kind {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:37:9: error: 'SpatialEventGesture' is only available in macOS 15.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
:
34 | @Environment(KeyboardState.self) private var state
35 |
36 | private func spatialGesture(configuration: Configuration) -> some Gesture {
| `- note: add '@available' attribute to enclosing instance method
37 | SpatialEventGesture()
| |- error: 'SpatialEventGesture' is only available in macOS 15.0 or newer
| `- note: add 'if #available' version check
38 | .onChanged { events in
39 | for event in events {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:38:14: error: 'onChanged' is only available in macOS 10.15 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
:
34 | @Environment(KeyboardState.self) private var state
35 |
36 | private func spatialGesture(configuration: Configuration) -> some Gesture {
| `- note: add '@available' attribute to enclosing instance method
37 | SpatialEventGesture()
38 | .onChanged { events in
| |- error: 'onChanged' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
39 | for event in events {
40 | switch event.kind {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:43:29: error: setter for 'isPressed' is only available in macOS 10.15 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
:
34 | @Environment(KeyboardState.self) private var state
35 |
36 | private func spatialGesture(configuration: Configuration) -> some Gesture {
| `- note: add '@available' attribute to enclosing instance method
37 | SpatialEventGesture()
38 | .onChanged { events in
:
41 | case .indirectPinch, .pointer, .touch:
42 | if !isPressed {
43 | isPressed = true
| |- error: setter for 'isPressed' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
44 | onTouchDown()
45 | }
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:48:43: error: 'cancel()' is only available in macOS 10.15 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
:
34 | @Environment(KeyboardState.self) private var state
35 |
36 | private func spatialGesture(configuration: Configuration) -> some Gesture {
| `- note: add '@available' attribute to enclosing instance method
37 | SpatialEventGesture()
38 | .onChanged { events in
:
46 | // touch events require debouncing
47 | if event.kind == .touch {
48 | debounceTask?.cancel()
| |- error: 'cancel()' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
49 | debounceTask = nil
50 | }
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:49:29: error: setter for 'debounceTask' is only available in macOS 10.15 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
:
34 | @Environment(KeyboardState.self) private var state
35 |
36 | private func spatialGesture(configuration: Configuration) -> some Gesture {
| `- note: add '@available' attribute to enclosing instance method
37 | SpatialEventGesture()
38 | .onChanged { events in
:
47 | if event.kind == .touch {
48 | debounceTask?.cancel()
49 | debounceTask = nil
| |- error: setter for 'debounceTask' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
50 | }
51 | default: break
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:55:14: error: 'onEnded' is only available in macOS 10.15 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
:
34 | @Environment(KeyboardState.self) private var state
35 |
36 | private func spatialGesture(configuration: Configuration) -> some Gesture {
| `- note: add '@available' attribute to enclosing instance method
37 | SpatialEventGesture()
38 | .onChanged { events in
:
53 | }
54 | }
55 | .onEnded { events in
| |- error: 'onEnded' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
56 | for event in events {
57 | switch event.kind {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:55:22: warning: conformance of 'SpatialEventCollection' to 'Equatable' is only available in macOS 15.0 or newer; this is an error in the Swift 6 language mode
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
:
34 | @Environment(KeyboardState.self) private var state
35 |
36 | private func spatialGesture(configuration: Configuration) -> some Gesture {
| `- note: add '@available' attribute to enclosing instance method
37 | SpatialEventGesture()
38 | .onChanged { events in
:
53 | }
54 | }
55 | .onEnded { events in
| |- warning: conformance of 'SpatialEventCollection' to 'Equatable' is only available in macOS 15.0 or newer; this is an error in the Swift 6 language mode
| `- note: add 'if #available' version check
56 | for event in events {
57 | switch event.kind {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:55:22: warning: conformance of 'SpatialEventCollection' to 'Equatable' is only available in macOS 15.0 or newer; this is an error in the Swift 6 language mode
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
:
34 | @Environment(KeyboardState.self) private var state
35 |
36 | private func spatialGesture(configuration: Configuration) -> some Gesture {
| `- note: add '@available' attribute to enclosing instance method
37 | SpatialEventGesture()
38 | .onChanged { events in
:
53 | }
54 | }
55 | .onEnded { events in
| |- warning: conformance of 'SpatialEventCollection' to 'Equatable' is only available in macOS 15.0 or newer; this is an error in the Swift 6 language mode
| `- note: add 'if #available' version check
56 | for event in events {
57 | switch event.kind {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:59:25: error: setter for 'isPressed' is only available in macOS 10.15 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
:
34 | @Environment(KeyboardState.self) private var state
35 |
36 | private func spatialGesture(configuration: Configuration) -> some Gesture {
| `- note: add '@available' attribute to enclosing instance method
37 | SpatialEventGesture()
38 | .onChanged { events in
:
57 | switch event.kind {
58 | case .indirectPinch, .pointer:
59 | isPressed = false
| |- error: setter for 'isPressed' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
60 | onTouchUp()
61 | configuration.trigger()
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:65:25: error: setter for 'debounceTask' is only available in macOS 10.15 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
:
34 | @Environment(KeyboardState.self) private var state
35 |
36 | private func spatialGesture(configuration: Configuration) -> some Gesture {
| `- note: add '@available' attribute to enclosing instance method
37 | SpatialEventGesture()
38 | .onChanged { events in
:
63 | // ignore any .ended phase followed immediately by an .active phase
64 | let trigger = configuration.trigger
65 | debounceTask = Task { @MainActor in
| |- error: setter for 'debounceTask' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
66 | try? await Task.sleep(for: kDebounceTime)
67 | if !Task.isCancelled {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:65:40: error: 'Task' is only available in macOS 10.15 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
:
34 | @Environment(KeyboardState.self) private var state
35 |
36 | private func spatialGesture(configuration: Configuration) -> some Gesture {
| `- note: add '@available' attribute to enclosing instance method
37 | SpatialEventGesture()
38 | .onChanged { events in
:
63 | // ignore any .ended phase followed immediately by an .active phase
64 | let trigger = configuration.trigger
65 | debounceTask = Task { @MainActor in
| |- error: 'Task' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
66 | try? await Task.sleep(for: kDebounceTime)
67 | if !Task.isCancelled {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:65:40: error: 'init(name:priority:operation:)' is only available in macOS 10.15 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
:
34 | @Environment(KeyboardState.self) private var state
35 |
36 | private func spatialGesture(configuration: Configuration) -> some Gesture {
| `- note: add '@available' attribute to enclosing instance method
37 | SpatialEventGesture()
38 | .onChanged { events in
:
63 | // ignore any .ended phase followed immediately by an .active phase
64 | let trigger = configuration.trigger
65 | debounceTask = Task { @MainActor in
| |- error: 'init(name:priority:operation:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
66 | try? await Task.sleep(for: kDebounceTime)
67 | if !Task.isCancelled {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:66:40: error: 'Task' is only available in macOS 10.15 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
:
34 | @Environment(KeyboardState.self) private var state
35 |
36 | private func spatialGesture(configuration: Configuration) -> some Gesture {
| `- note: add '@available' attribute to enclosing instance method
37 | SpatialEventGesture()
38 | .onChanged { events in
:
64 | let trigger = configuration.trigger
65 | debounceTask = Task { @MainActor in
66 | try? await Task.sleep(for: kDebounceTime)
| |- error: 'Task' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
67 | if !Task.isCancelled {
68 | isPressed = false
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:66:45: error: 'sleep(for:tolerance:clock:)' is only available in macOS 13.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
:
34 | @Environment(KeyboardState.self) private var state
35 |
36 | private func spatialGesture(configuration: Configuration) -> some Gesture {
| `- note: add '@available' attribute to enclosing instance method
37 | SpatialEventGesture()
38 | .onChanged { events in
:
64 | let trigger = configuration.trigger
65 | debounceTask = Task { @MainActor in
66 | try? await Task.sleep(for: kDebounceTime)
| |- error: 'sleep(for:tolerance:clock:)' is only available in macOS 13.0 or newer
| `- note: add 'if #available' version check
67 | if !Task.isCancelled {
68 | isPressed = false
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:67:33: error: 'Task' is only available in macOS 10.15 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
:
34 | @Environment(KeyboardState.self) private var state
35 |
36 | private func spatialGesture(configuration: Configuration) -> some Gesture {
| `- note: add '@available' attribute to enclosing instance method
37 | SpatialEventGesture()
38 | .onChanged { events in
:
65 | debounceTask = Task { @MainActor in
66 | try? await Task.sleep(for: kDebounceTime)
67 | if !Task.isCancelled {
| |- error: 'Task' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
68 | isPressed = false
69 | onTouchUp()
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:67:38: error: 'isCancelled' is only available in macOS 10.15 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
:
34 | @Environment(KeyboardState.self) private var state
35 |
36 | private func spatialGesture(configuration: Configuration) -> some Gesture {
| `- note: add '@available' attribute to enclosing instance method
37 | SpatialEventGesture()
38 | .onChanged { events in
:
65 | debounceTask = Task { @MainActor in
66 | try? await Task.sleep(for: kDebounceTime)
67 | if !Task.isCancelled {
| |- error: 'isCancelled' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
68 | isPressed = false
69 | onTouchUp()
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:68:33: error: setter for 'isPressed' is only available in macOS 10.15 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
:
34 | @Environment(KeyboardState.self) private var state
35 |
36 | private func spatialGesture(configuration: Configuration) -> some Gesture {
| `- note: add '@available' attribute to enclosing instance method
37 | SpatialEventGesture()
38 | .onChanged { events in
:
66 | try? await Task.sleep(for: kDebounceTime)
67 | if !Task.isCancelled {
68 | isPressed = false
| |- error: setter for 'isPressed' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
69 | onTouchUp()
70 | trigger()
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:29:18: error: 'Entity' is only available in macOS 10.15 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 macOS 10.15 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 macOS 10.15 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 macOS 10.15 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 macOS 10.15 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 macOS 10.15 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 macOS 10.15 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 macOS 10.15 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 macOS 10.15 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 macOS 10.15 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 macOS 13.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 macOS 13.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 macOS 10.15 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 macOS 10.15 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 macOS 10.15 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 macOS 10.15 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 macOS 15.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 macOS 15.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 macOS 13.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 macOS 13.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 macOS 13.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 macOS 13.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 macOS 13.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 macOS 13.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 macOS 10.15 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 macOS 10.15 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 macOS 10.15 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 macOS 10.15 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 macOS 10.15 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 macOS 10.15 or newer
| `- note: add 'if #available' version check
88 | }
89 | }
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:92:23: error: 'AVAudioSession' is unavailable in macOS
90 |
91 | private func withAmbientSession(_ callback: () -> Void) {
92 | let session = AVAudioSession.sharedInstance()
| `- error: 'AVAudioSession' is unavailable in macOS
93 | let oldCategory = session.category
94 | let oldMode = session.mode
/Applications/Xcode-26.4.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX26.4.sdk/System/Library/Frameworks/AVFAudio.framework/Headers/AVAudioSession.h:29:12: note: 'AVAudioSession' has been explicitly marked unavailable here
27 | NS_SWIFT_SENDABLE
28 | API_AVAILABLE(ios(3.0), watchos(2.0), tvos(9.0)) API_UNAVAILABLE(macos)
29 | @interface AVAudioSession : NSObject {
| `- note: 'AVAudioSession' has been explicitly marked unavailable here
30 | @private
31 | void *_impl;
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:92:38: error: 'sharedInstance()' is unavailable in macOS
90 |
91 | private func withAmbientSession(_ callback: () -> Void) {
92 | let session = AVAudioSession.sharedInstance()
| `- error: 'sharedInstance()' is unavailable in macOS
93 | let oldCategory = session.category
94 | let oldMode = session.mode
AVFAudio.AVAudioSession.sharedInstance:3:19: note: 'sharedInstance()' has been explicitly marked unavailable here
1 | class AVAudioSession {
2 | @available(macOS, unavailable)
3 | open class func sharedInstance() -> AVAudioSession}
| `- note: 'sharedInstance()' has been explicitly marked unavailable here
4 |
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:93:35: error: 'category' is unavailable in macOS
91 | private func withAmbientSession(_ callback: () -> Void) {
92 | let session = AVAudioSession.sharedInstance()
93 | let oldCategory = session.category
| `- error: 'category' is unavailable in macOS
94 | let oldMode = session.mode
95 | let oldPolicy = session.routeSharingPolicy
/Applications/Xcode-26.4.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX26.4.sdk/System/Library/Frameworks/AVFAudio.framework/Headers/AVAudioSession.h:78:45: note: 'category' has been explicitly marked unavailable here
76 | /// Get session category.
77 | /// Examples: AVAudioSessionCategoryRecord, AVAudioSessionCategoryPlayAndRecord, etc.
78 | @property (readonly) AVAudioSessionCategory category API_AVAILABLE(ios(3.0), watchos(2.0), tvos(9.0)) API_UNAVAILABLE(macos);
| `- note: 'category' has been explicitly marked unavailable here
79 |
80 | /// Get the current set of AVAudioSessionCategoryOptions.
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:94:31: error: 'mode' is unavailable in macOS
92 | let session = AVAudioSession.sharedInstance()
93 | let oldCategory = session.category
94 | let oldMode = session.mode
| `- error: 'mode' is unavailable in macOS
95 | let oldPolicy = session.routeSharingPolicy
96 | let oldOptions = session.categoryOptions
/Applications/Xcode-26.4.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX26.4.sdk/System/Library/Frameworks/AVFAudio.framework/Headers/AVAudioSession.h:109:21: note: 'mode' has been explicitly marked unavailable here
107 | /// Get the session's mode.
108 | @property (readonly)
109 | AVAudioSessionMode mode API_AVAILABLE(ios(5.0), watchos(2.0), tvos(9.0)) API_UNAVAILABLE(macos);
| `- note: 'mode' has been explicitly marked unavailable here
110 |
111 | /// Set allowHapticsAndSystemSoundsDuringRecording to YES in order to allow system sounds and haptics to play while the session is actively using audio input.
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:95:33: error: 'routeSharingPolicy' is unavailable in macOS
93 | let oldCategory = session.category
94 | let oldMode = session.mode
95 | let oldPolicy = session.routeSharingPolicy
| `- error: 'routeSharingPolicy' is unavailable in macOS
96 | let oldOptions = session.categoryOptions
97 | do {
/Applications/Xcode-26.4.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX26.4.sdk/System/Library/Frameworks/AVFAudio.framework/Headers/AVAudioSession.h:89:55: note: 'routeSharingPolicy' has been explicitly marked unavailable here
87 | See setCategory:mode:routeSharingPolicy:options:error: for additional discussion.
88 | */
89 | @property (readonly) AVAudioSessionRouteSharingPolicy routeSharingPolicy API_AVAILABLE(ios(11.0), tvos(11.0), watchos(5.0)) API_UNAVAILABLE(macos);
| `- note: 'routeSharingPolicy' has been explicitly marked unavailable here
90 |
91 | /// Get the list of modes available on the device. Certain modes may be unavailable on particular
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:96:34: error: 'categoryOptions' is unavailable in macOS
94 | let oldMode = session.mode
95 | let oldPolicy = session.routeSharingPolicy
96 | let oldOptions = session.categoryOptions
| `- error: 'categoryOptions' is unavailable in macOS
97 | do {
98 | try session.setCategory(.ambient, mode: .default, policy: .default, options: .mixWithOthers)
/Applications/Xcode-26.4.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX26.4.sdk/System/Library/Frameworks/AVFAudio.framework/Headers/AVAudioSession.h:81:52: note: 'categoryOptions' has been explicitly marked unavailable here
79 |
80 | /// Get the current set of AVAudioSessionCategoryOptions.
81 | @property (readonly) AVAudioSessionCategoryOptions categoryOptions API_AVAILABLE(ios(6.0), watchos(2.0), tvos(9.0)) API_UNAVAILABLE(macos);
| `- note: 'categoryOptions' has been explicitly marked unavailable here
82 |
83 | /*!
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:98:25: error: 'setCategory(_:mode:policy:options:)' is unavailable in macOS
96 | let oldOptions = session.categoryOptions
97 | do {
98 | try session.setCategory(.ambient, mode: .default, policy: .default, options: .mixWithOthers)
| `- error: 'setCategory(_:mode:policy:options:)' is unavailable in macOS
99 | callback()
100 | try session.setCategory(oldCategory, mode: oldMode, policy: oldPolicy, options: oldOptions)
AVFAudio.AVAudioSession.setCategory:3:13: note: 'setCategory(_:mode:policy:options:)' has been explicitly marked unavailable here
1 | class AVAudioSession {
2 | @available(macOS, unavailable)
3 | open func setCategory(_ category: AVAudioSession.Category, mode: AVAudioSession.Mode, policy: AVAudioSession.RouteSharingPolicy, options: AVAudioSession.CategoryOptions = []) throws}
| `- note: 'setCategory(_:mode:policy:options:)' has been explicitly marked unavailable here
4 |
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:98:38: error: 'ambient' is unavailable in macOS
96 | let oldOptions = session.categoryOptions
97 | do {
98 | try session.setCategory(.ambient, mode: .default, policy: .default, options: .mixWithOthers)
| `- error: 'ambient' is unavailable in macOS
99 | callback()
100 | try session.setCategory(oldCategory, mode: oldMode, policy: oldPolicy, options: oldOptions)
/Applications/Xcode-26.4.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX26.4.sdk/System/Library/Frameworks/AVFAudio.framework/Headers/AVAudioSessionTypes.h:94:40: note: 'ambient' has been explicitly marked unavailable here
92 | /*! Use this category for background sounds such as rain, car engine noise, etc.
93 | Mixes with other music. */
94 | OS_EXPORT AVAudioSessionCategory const AVAudioSessionCategoryAmbient API_AVAILABLE(ios(3.0), watchos(2.0), tvos(9.0)) API_UNAVAILABLE(macos);
| `- note: 'ambient' has been explicitly marked unavailable here
95 |
96 | /*! Use this category for background sounds. Other music will stop playing. */
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:98:54: error: 'default' is unavailable in macOS
96 | let oldOptions = session.categoryOptions
97 | do {
98 | try session.setCategory(.ambient, mode: .default, policy: .default, options: .mixWithOthers)
| `- error: 'default' is unavailable in macOS
99 | callback()
100 | try session.setCategory(oldCategory, mode: oldMode, policy: oldPolicy, options: oldOptions)
/Applications/Xcode-26.4.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX26.4.sdk/System/Library/Frameworks/AVFAudio.framework/Headers/AVAudioSessionTypes.h:136:36: note: 'default' has been explicitly marked unavailable here
134 |
135 | /*! The default mode */
136 | OS_EXPORT AVAudioSessionMode const AVAudioSessionModeDefault API_AVAILABLE(ios(5.0), watchos(2.0), tvos(9.0)) API_UNAVAILABLE(macos);
| `- note: 'default' has been explicitly marked unavailable here
137 |
138 | /*! Only valid with AVAudioSessionCategoryPlayAndRecord. Appropriate for Voice over IP
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:100:25: error: 'setCategory(_:mode:policy:options:)' is unavailable in macOS
98 | try session.setCategory(.ambient, mode: .default, policy: .default, options: .mixWithOthers)
99 | callback()
100 | try session.setCategory(oldCategory, mode: oldMode, policy: oldPolicy, options: oldOptions)
| `- error: 'setCategory(_:mode:policy:options:)' is unavailable in macOS
101 | } catch {
102 | print(error)
AVFAudio.AVAudioSession.setCategory:3:13: note: 'setCategory(_:mode:policy:options:)' has been explicitly marked unavailable here
1 | class AVAudioSession {
2 | @available(macOS, unavailable)
3 | open func setCategory(_ category: AVAudioSession.Category, mode: AVAudioSession.Mode, policy: AVAudioSession.RouteSharingPolicy, options: AVAudioSession.CategoryOptions = []) throws}
| `- note: 'setCategory(_:mode:policy:options:)' has been explicitly marked unavailable here
4 |
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:112:23: error: 'isPlaying' is only available in macOS 10.15 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 macOS 10.15 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 macOS 15.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 macOS 15.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 macOS 13.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 macOS 13.0 or newer
| `- note: add 'if #available' version check
114 | }
115 | player.play()
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:115:20: error: 'play()' is only available in macOS 10.15 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
:
113 | player.seek(to: .zero)
114 | }
115 | player.play()
| |- error: 'play()' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
116 | }
117 | }
[14/16] Compiling VisionKeyboardKit KeyboardClickSound.swift
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:20:28: error: 'Duration' is only available in macOS 13.0 or newer
18 | import RealityKit
19 |
20 | private let kDebounceTime: Duration = .milliseconds(25)
| | `- error: 'Duration' is only available in macOS 13.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 macOS 13.0 or newer
18 | import RealityKit
19 |
20 | private let kDebounceTime: Duration = .milliseconds(25)
| | `- error: 'milliseconds' is only available in macOS 13.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 macOS 14.0 or newer
17 | import SwiftUI
18 |
19 | @Observable
| `- error: 'Observable()' is only available in macOS 14.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 macOS 14.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 macOS 14.0 or newer
35 |
36 | private func spatialGesture(configuration: Configuration) -> some Gesture {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:32:6: error: 'State' is only available in macOS 10.15 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
:
30 | let onTouchUp: () -> Void
31 |
32 | @State private var isPressed: Bool = false
| `- error: 'State' is only available in macOS 10.15 or newer
33 | @State private var debounceTask: Task<Void, Never>?
34 | @Environment(KeyboardState.self) private var state
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:33:38: error: 'Task' is only available in macOS 10.15 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
:
31 |
32 | @State private var isPressed: Bool = false
33 | @State private var debounceTask: Task<Void, Never>?
| `- error: 'Task' is only available in macOS 10.15 or newer
34 | @Environment(KeyboardState.self) private var state
35 |
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:33:6: error: 'State' is only available in macOS 10.15 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
:
31 |
32 | @State private var isPressed: Bool = false
33 | @State private var debounceTask: Task<Void, Never>?
| `- error: 'State' is only available in macOS 10.15 or newer
34 | @Environment(KeyboardState.self) private var state
35 |
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:34:6: error: 'Environment' is only available in macOS 10.15 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: 'Environment' is only available in macOS 10.15 or newer
35 |
36 | private func spatialGesture(configuration: Configuration) -> some Gesture {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:36:71: error: 'Gesture' is only available in macOS 10.15 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
:
34 | @Environment(KeyboardState.self) private var state
35 |
36 | private func spatialGesture(configuration: Configuration) -> some Gesture {
| | `- error: 'Gesture' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing instance method
37 | SpatialEventGesture()
38 | .onChanged { events in
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:79:57: error: 'View' is only available in macOS 10.15 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
:
77 | }
78 |
79 | func makeBody(configuration: Configuration) -> some View {
| | `- error: 'View' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing instance method
80 | ZStack {
81 | if isPressed {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:126:11: error: 'PrimitiveButtonStyle' is only available in macOS 10.15 or newer
124 | }
125 |
126 | extension PrimitiveButtonStyle where Self == KeyboardButtonStyle {
| | `- error: 'PrimitiveButtonStyle' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing extension
127 | static func keyboardButton(isDark: Bool = false, isToggled: Bool = false, fontSize: CGFloat = 24, width: CGFloat = 50, height: CGFloat = 50, clickSound: KeyboardClickSound.File = .normal, onTouchDown: @escaping () -> Void = {}, onTouchUp: @escaping () -> Void = {}) -> KeyboardButtonStyle {
128 | KeyboardButtonStyle(isDark: isDark, isToggled: isToggled, fontSize: fontSize, width: width, height: height, clickSound: clickSound, onTouchDown: onTouchDown, onTouchUp: onTouchUp)
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:55:14: warning: conformance of '_EndedGesture<Content>' to 'Gesture' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
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
:
34 | @Environment(KeyboardState.self) private var state
35 |
36 | private func spatialGesture(configuration: Configuration) -> some Gesture {
| `- note: add '@available' attribute to enclosing instance method
37 | SpatialEventGesture()
38 | .onChanged { events in
:
53 | }
54 | }
55 | .onEnded { events in
| |- warning: conformance of '_EndedGesture<Content>' to 'Gesture' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
| `- note: add 'if #available' version check
56 | for event in events {
57 | switch event.kind {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:37:9: error: 'SpatialEventGesture' is only available in macOS 15.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
:
34 | @Environment(KeyboardState.self) private var state
35 |
36 | private func spatialGesture(configuration: Configuration) -> some Gesture {
| `- note: add '@available' attribute to enclosing instance method
37 | SpatialEventGesture()
| |- error: 'SpatialEventGesture' is only available in macOS 15.0 or newer
| `- note: add 'if #available' version check
38 | .onChanged { events in
39 | for event in events {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:38:14: error: 'onChanged' is only available in macOS 10.15 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
:
34 | @Environment(KeyboardState.self) private var state
35 |
36 | private func spatialGesture(configuration: Configuration) -> some Gesture {
| `- note: add '@available' attribute to enclosing instance method
37 | SpatialEventGesture()
38 | .onChanged { events in
| |- error: 'onChanged' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
39 | for event in events {
40 | switch event.kind {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:43:29: error: setter for 'isPressed' is only available in macOS 10.15 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
:
34 | @Environment(KeyboardState.self) private var state
35 |
36 | private func spatialGesture(configuration: Configuration) -> some Gesture {
| `- note: add '@available' attribute to enclosing instance method
37 | SpatialEventGesture()
38 | .onChanged { events in
:
41 | case .indirectPinch, .pointer, .touch:
42 | if !isPressed {
43 | isPressed = true
| |- error: setter for 'isPressed' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
44 | onTouchDown()
45 | }
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:48:43: error: 'cancel()' is only available in macOS 10.15 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
:
34 | @Environment(KeyboardState.self) private var state
35 |
36 | private func spatialGesture(configuration: Configuration) -> some Gesture {
| `- note: add '@available' attribute to enclosing instance method
37 | SpatialEventGesture()
38 | .onChanged { events in
:
46 | // touch events require debouncing
47 | if event.kind == .touch {
48 | debounceTask?.cancel()
| |- error: 'cancel()' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
49 | debounceTask = nil
50 | }
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:49:29: error: setter for 'debounceTask' is only available in macOS 10.15 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
:
34 | @Environment(KeyboardState.self) private var state
35 |
36 | private func spatialGesture(configuration: Configuration) -> some Gesture {
| `- note: add '@available' attribute to enclosing instance method
37 | SpatialEventGesture()
38 | .onChanged { events in
:
47 | if event.kind == .touch {
48 | debounceTask?.cancel()
49 | debounceTask = nil
| |- error: setter for 'debounceTask' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
50 | }
51 | default: break
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:55:14: error: 'onEnded' is only available in macOS 10.15 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
:
34 | @Environment(KeyboardState.self) private var state
35 |
36 | private func spatialGesture(configuration: Configuration) -> some Gesture {
| `- note: add '@available' attribute to enclosing instance method
37 | SpatialEventGesture()
38 | .onChanged { events in
:
53 | }
54 | }
55 | .onEnded { events in
| |- error: 'onEnded' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
56 | for event in events {
57 | switch event.kind {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:55:22: warning: conformance of 'SpatialEventCollection' to 'Equatable' is only available in macOS 15.0 or newer; this is an error in the Swift 6 language mode
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
:
34 | @Environment(KeyboardState.self) private var state
35 |
36 | private func spatialGesture(configuration: Configuration) -> some Gesture {
| `- note: add '@available' attribute to enclosing instance method
37 | SpatialEventGesture()
38 | .onChanged { events in
:
53 | }
54 | }
55 | .onEnded { events in
| |- warning: conformance of 'SpatialEventCollection' to 'Equatable' is only available in macOS 15.0 or newer; this is an error in the Swift 6 language mode
| `- note: add 'if #available' version check
56 | for event in events {
57 | switch event.kind {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:55:22: warning: conformance of 'SpatialEventCollection' to 'Equatable' is only available in macOS 15.0 or newer; this is an error in the Swift 6 language mode
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
:
34 | @Environment(KeyboardState.self) private var state
35 |
36 | private func spatialGesture(configuration: Configuration) -> some Gesture {
| `- note: add '@available' attribute to enclosing instance method
37 | SpatialEventGesture()
38 | .onChanged { events in
:
53 | }
54 | }
55 | .onEnded { events in
| |- warning: conformance of 'SpatialEventCollection' to 'Equatable' is only available in macOS 15.0 or newer; this is an error in the Swift 6 language mode
| `- note: add 'if #available' version check
56 | for event in events {
57 | switch event.kind {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:59:25: error: setter for 'isPressed' is only available in macOS 10.15 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
:
34 | @Environment(KeyboardState.self) private var state
35 |
36 | private func spatialGesture(configuration: Configuration) -> some Gesture {
| `- note: add '@available' attribute to enclosing instance method
37 | SpatialEventGesture()
38 | .onChanged { events in
:
57 | switch event.kind {
58 | case .indirectPinch, .pointer:
59 | isPressed = false
| |- error: setter for 'isPressed' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
60 | onTouchUp()
61 | configuration.trigger()
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:65:25: error: setter for 'debounceTask' is only available in macOS 10.15 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
:
34 | @Environment(KeyboardState.self) private var state
35 |
36 | private func spatialGesture(configuration: Configuration) -> some Gesture {
| `- note: add '@available' attribute to enclosing instance method
37 | SpatialEventGesture()
38 | .onChanged { events in
:
63 | // ignore any .ended phase followed immediately by an .active phase
64 | let trigger = configuration.trigger
65 | debounceTask = Task { @MainActor in
| |- error: setter for 'debounceTask' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
66 | try? await Task.sleep(for: kDebounceTime)
67 | if !Task.isCancelled {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:65:40: error: 'Task' is only available in macOS 10.15 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
:
34 | @Environment(KeyboardState.self) private var state
35 |
36 | private func spatialGesture(configuration: Configuration) -> some Gesture {
| `- note: add '@available' attribute to enclosing instance method
37 | SpatialEventGesture()
38 | .onChanged { events in
:
63 | // ignore any .ended phase followed immediately by an .active phase
64 | let trigger = configuration.trigger
65 | debounceTask = Task { @MainActor in
| |- error: 'Task' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
66 | try? await Task.sleep(for: kDebounceTime)
67 | if !Task.isCancelled {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:65:40: error: 'init(name:priority:operation:)' is only available in macOS 10.15 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
:
34 | @Environment(KeyboardState.self) private var state
35 |
36 | private func spatialGesture(configuration: Configuration) -> some Gesture {
| `- note: add '@available' attribute to enclosing instance method
37 | SpatialEventGesture()
38 | .onChanged { events in
:
63 | // ignore any .ended phase followed immediately by an .active phase
64 | let trigger = configuration.trigger
65 | debounceTask = Task { @MainActor in
| |- error: 'init(name:priority:operation:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
66 | try? await Task.sleep(for: kDebounceTime)
67 | if !Task.isCancelled {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:66:40: error: 'Task' is only available in macOS 10.15 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
:
34 | @Environment(KeyboardState.self) private var state
35 |
36 | private func spatialGesture(configuration: Configuration) -> some Gesture {
| `- note: add '@available' attribute to enclosing instance method
37 | SpatialEventGesture()
38 | .onChanged { events in
:
64 | let trigger = configuration.trigger
65 | debounceTask = Task { @MainActor in
66 | try? await Task.sleep(for: kDebounceTime)
| |- error: 'Task' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
67 | if !Task.isCancelled {
68 | isPressed = false
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:66:45: error: 'sleep(for:tolerance:clock:)' is only available in macOS 13.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
:
34 | @Environment(KeyboardState.self) private var state
35 |
36 | private func spatialGesture(configuration: Configuration) -> some Gesture {
| `- note: add '@available' attribute to enclosing instance method
37 | SpatialEventGesture()
38 | .onChanged { events in
:
64 | let trigger = configuration.trigger
65 | debounceTask = Task { @MainActor in
66 | try? await Task.sleep(for: kDebounceTime)
| |- error: 'sleep(for:tolerance:clock:)' is only available in macOS 13.0 or newer
| `- note: add 'if #available' version check
67 | if !Task.isCancelled {
68 | isPressed = false
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:67:33: error: 'Task' is only available in macOS 10.15 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
:
34 | @Environment(KeyboardState.self) private var state
35 |
36 | private func spatialGesture(configuration: Configuration) -> some Gesture {
| `- note: add '@available' attribute to enclosing instance method
37 | SpatialEventGesture()
38 | .onChanged { events in
:
65 | debounceTask = Task { @MainActor in
66 | try? await Task.sleep(for: kDebounceTime)
67 | if !Task.isCancelled {
| |- error: 'Task' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
68 | isPressed = false
69 | onTouchUp()
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:67:38: error: 'isCancelled' is only available in macOS 10.15 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
:
34 | @Environment(KeyboardState.self) private var state
35 |
36 | private func spatialGesture(configuration: Configuration) -> some Gesture {
| `- note: add '@available' attribute to enclosing instance method
37 | SpatialEventGesture()
38 | .onChanged { events in
:
65 | debounceTask = Task { @MainActor in
66 | try? await Task.sleep(for: kDebounceTime)
67 | if !Task.isCancelled {
| |- error: 'isCancelled' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
68 | isPressed = false
69 | onTouchUp()
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardButtonStyle.swift:68:33: error: setter for 'isPressed' is only available in macOS 10.15 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
:
34 | @Environment(KeyboardState.self) private var state
35 |
36 | private func spatialGesture(configuration: Configuration) -> some Gesture {
| `- note: add '@available' attribute to enclosing instance method
37 | SpatialEventGesture()
38 | .onChanged { events in
:
66 | try? await Task.sleep(for: kDebounceTime)
67 | if !Task.isCancelled {
68 | isPressed = false
| |- error: setter for 'isPressed' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
69 | onTouchUp()
70 | trigger()
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:29:18: error: 'Entity' is only available in macOS 10.15 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 macOS 10.15 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 macOS 10.15 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 macOS 10.15 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 macOS 10.15 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 macOS 10.15 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 macOS 10.15 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 macOS 10.15 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 macOS 10.15 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 macOS 10.15 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 macOS 13.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 macOS 13.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 macOS 10.15 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 macOS 10.15 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 macOS 10.15 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 macOS 10.15 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 macOS 15.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 macOS 15.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 macOS 13.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 macOS 13.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 macOS 13.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 macOS 13.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 macOS 13.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 macOS 13.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 macOS 10.15 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 macOS 10.15 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 macOS 10.15 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 macOS 10.15 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 macOS 10.15 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 macOS 10.15 or newer
| `- note: add 'if #available' version check
88 | }
89 | }
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:92:23: error: 'AVAudioSession' is unavailable in macOS
90 |
91 | private func withAmbientSession(_ callback: () -> Void) {
92 | let session = AVAudioSession.sharedInstance()
| `- error: 'AVAudioSession' is unavailable in macOS
93 | let oldCategory = session.category
94 | let oldMode = session.mode
/Applications/Xcode-26.4.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX26.4.sdk/System/Library/Frameworks/AVFAudio.framework/Headers/AVAudioSession.h:29:12: note: 'AVAudioSession' has been explicitly marked unavailable here
27 | NS_SWIFT_SENDABLE
28 | API_AVAILABLE(ios(3.0), watchos(2.0), tvos(9.0)) API_UNAVAILABLE(macos)
29 | @interface AVAudioSession : NSObject {
| `- note: 'AVAudioSession' has been explicitly marked unavailable here
30 | @private
31 | void *_impl;
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:92:38: error: 'sharedInstance()' is unavailable in macOS
90 |
91 | private func withAmbientSession(_ callback: () -> Void) {
92 | let session = AVAudioSession.sharedInstance()
| `- error: 'sharedInstance()' is unavailable in macOS
93 | let oldCategory = session.category
94 | let oldMode = session.mode
AVFAudio.AVAudioSession.sharedInstance:3:19: note: 'sharedInstance()' has been explicitly marked unavailable here
1 | class AVAudioSession {
2 | @available(macOS, unavailable)
3 | open class func sharedInstance() -> AVAudioSession}
| `- note: 'sharedInstance()' has been explicitly marked unavailable here
4 |
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:93:35: error: 'category' is unavailable in macOS
91 | private func withAmbientSession(_ callback: () -> Void) {
92 | let session = AVAudioSession.sharedInstance()
93 | let oldCategory = session.category
| `- error: 'category' is unavailable in macOS
94 | let oldMode = session.mode
95 | let oldPolicy = session.routeSharingPolicy
/Applications/Xcode-26.4.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX26.4.sdk/System/Library/Frameworks/AVFAudio.framework/Headers/AVAudioSession.h:78:45: note: 'category' has been explicitly marked unavailable here
76 | /// Get session category.
77 | /// Examples: AVAudioSessionCategoryRecord, AVAudioSessionCategoryPlayAndRecord, etc.
78 | @property (readonly) AVAudioSessionCategory category API_AVAILABLE(ios(3.0), watchos(2.0), tvos(9.0)) API_UNAVAILABLE(macos);
| `- note: 'category' has been explicitly marked unavailable here
79 |
80 | /// Get the current set of AVAudioSessionCategoryOptions.
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:94:31: error: 'mode' is unavailable in macOS
92 | let session = AVAudioSession.sharedInstance()
93 | let oldCategory = session.category
94 | let oldMode = session.mode
| `- error: 'mode' is unavailable in macOS
95 | let oldPolicy = session.routeSharingPolicy
96 | let oldOptions = session.categoryOptions
/Applications/Xcode-26.4.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX26.4.sdk/System/Library/Frameworks/AVFAudio.framework/Headers/AVAudioSession.h:109:21: note: 'mode' has been explicitly marked unavailable here
107 | /// Get the session's mode.
108 | @property (readonly)
109 | AVAudioSessionMode mode API_AVAILABLE(ios(5.0), watchos(2.0), tvos(9.0)) API_UNAVAILABLE(macos);
| `- note: 'mode' has been explicitly marked unavailable here
110 |
111 | /// Set allowHapticsAndSystemSoundsDuringRecording to YES in order to allow system sounds and haptics to play while the session is actively using audio input.
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:95:33: error: 'routeSharingPolicy' is unavailable in macOS
93 | let oldCategory = session.category
94 | let oldMode = session.mode
95 | let oldPolicy = session.routeSharingPolicy
| `- error: 'routeSharingPolicy' is unavailable in macOS
96 | let oldOptions = session.categoryOptions
97 | do {
/Applications/Xcode-26.4.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX26.4.sdk/System/Library/Frameworks/AVFAudio.framework/Headers/AVAudioSession.h:89:55: note: 'routeSharingPolicy' has been explicitly marked unavailable here
87 | See setCategory:mode:routeSharingPolicy:options:error: for additional discussion.
88 | */
89 | @property (readonly) AVAudioSessionRouteSharingPolicy routeSharingPolicy API_AVAILABLE(ios(11.0), tvos(11.0), watchos(5.0)) API_UNAVAILABLE(macos);
| `- note: 'routeSharingPolicy' has been explicitly marked unavailable here
90 |
91 | /// Get the list of modes available on the device. Certain modes may be unavailable on particular
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:96:34: error: 'categoryOptions' is unavailable in macOS
94 | let oldMode = session.mode
95 | let oldPolicy = session.routeSharingPolicy
96 | let oldOptions = session.categoryOptions
| `- error: 'categoryOptions' is unavailable in macOS
97 | do {
98 | try session.setCategory(.ambient, mode: .default, policy: .default, options: .mixWithOthers)
/Applications/Xcode-26.4.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX26.4.sdk/System/Library/Frameworks/AVFAudio.framework/Headers/AVAudioSession.h:81:52: note: 'categoryOptions' has been explicitly marked unavailable here
79 |
80 | /// Get the current set of AVAudioSessionCategoryOptions.
81 | @property (readonly) AVAudioSessionCategoryOptions categoryOptions API_AVAILABLE(ios(6.0), watchos(2.0), tvos(9.0)) API_UNAVAILABLE(macos);
| `- note: 'categoryOptions' has been explicitly marked unavailable here
82 |
83 | /*!
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:98:25: error: 'setCategory(_:mode:policy:options:)' is unavailable in macOS
96 | let oldOptions = session.categoryOptions
97 | do {
98 | try session.setCategory(.ambient, mode: .default, policy: .default, options: .mixWithOthers)
| `- error: 'setCategory(_:mode:policy:options:)' is unavailable in macOS
99 | callback()
100 | try session.setCategory(oldCategory, mode: oldMode, policy: oldPolicy, options: oldOptions)
AVFAudio.AVAudioSession.setCategory:3:13: note: 'setCategory(_:mode:policy:options:)' has been explicitly marked unavailable here
1 | class AVAudioSession {
2 | @available(macOS, unavailable)
3 | open func setCategory(_ category: AVAudioSession.Category, mode: AVAudioSession.Mode, policy: AVAudioSession.RouteSharingPolicy, options: AVAudioSession.CategoryOptions = []) throws}
| `- note: 'setCategory(_:mode:policy:options:)' has been explicitly marked unavailable here
4 |
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:98:38: error: 'ambient' is unavailable in macOS
96 | let oldOptions = session.categoryOptions
97 | do {
98 | try session.setCategory(.ambient, mode: .default, policy: .default, options: .mixWithOthers)
| `- error: 'ambient' is unavailable in macOS
99 | callback()
100 | try session.setCategory(oldCategory, mode: oldMode, policy: oldPolicy, options: oldOptions)
/Applications/Xcode-26.4.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX26.4.sdk/System/Library/Frameworks/AVFAudio.framework/Headers/AVAudioSessionTypes.h:94:40: note: 'ambient' has been explicitly marked unavailable here
92 | /*! Use this category for background sounds such as rain, car engine noise, etc.
93 | Mixes with other music. */
94 | OS_EXPORT AVAudioSessionCategory const AVAudioSessionCategoryAmbient API_AVAILABLE(ios(3.0), watchos(2.0), tvos(9.0)) API_UNAVAILABLE(macos);
| `- note: 'ambient' has been explicitly marked unavailable here
95 |
96 | /*! Use this category for background sounds. Other music will stop playing. */
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:98:54: error: 'default' is unavailable in macOS
96 | let oldOptions = session.categoryOptions
97 | do {
98 | try session.setCategory(.ambient, mode: .default, policy: .default, options: .mixWithOthers)
| `- error: 'default' is unavailable in macOS
99 | callback()
100 | try session.setCategory(oldCategory, mode: oldMode, policy: oldPolicy, options: oldOptions)
/Applications/Xcode-26.4.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX26.4.sdk/System/Library/Frameworks/AVFAudio.framework/Headers/AVAudioSessionTypes.h:136:36: note: 'default' has been explicitly marked unavailable here
134 |
135 | /*! The default mode */
136 | OS_EXPORT AVAudioSessionMode const AVAudioSessionModeDefault API_AVAILABLE(ios(5.0), watchos(2.0), tvos(9.0)) API_UNAVAILABLE(macos);
| `- note: 'default' has been explicitly marked unavailable here
137 |
138 | /*! Only valid with AVAudioSessionCategoryPlayAndRecord. Appropriate for Voice over IP
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:100:25: error: 'setCategory(_:mode:policy:options:)' is unavailable in macOS
98 | try session.setCategory(.ambient, mode: .default, policy: .default, options: .mixWithOthers)
99 | callback()
100 | try session.setCategory(oldCategory, mode: oldMode, policy: oldPolicy, options: oldOptions)
| `- error: 'setCategory(_:mode:policy:options:)' is unavailable in macOS
101 | } catch {
102 | print(error)
AVFAudio.AVAudioSession.setCategory:3:13: note: 'setCategory(_:mode:policy:options:)' has been explicitly marked unavailable here
1 | class AVAudioSession {
2 | @available(macOS, unavailable)
3 | open func setCategory(_ category: AVAudioSession.Category, mode: AVAudioSession.Mode, policy: AVAudioSession.RouteSharingPolicy, options: AVAudioSession.CategoryOptions = []) throws}
| `- note: 'setCategory(_:mode:policy:options:)' has been explicitly marked unavailable here
4 |
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:112:23: error: 'isPlaying' is only available in macOS 10.15 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 macOS 10.15 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 macOS 15.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 macOS 15.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 macOS 13.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 macOS 13.0 or newer
| `- note: add 'if #available' version check
114 | }
115 | player.play()
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardClickSound.swift:115:20: error: 'play()' is only available in macOS 10.15 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
:
113 | player.seek(to: .zero)
114 | }
115 | player.play()
| |- error: 'play()' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
116 | }
117 | }
[15/16] Compiling VisionKeyboardKit KeyboardEvent.swift
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardEvent.swift:38:65: error: 'AnyPublisher' is only available in macOS 10.15 or newer
19 |
20 | /// Events posted by the keyboard
21 | public enum KeyboardEvent {
| `- note: add '@available' attribute to enclosing enum
22 | /// Sent from the keyboard view's `onAppear()`
23 | case keyboardDidAppear
:
36 | /// - Parameter id: A `KeyboardIdentifier` that uniquely identifies this keyboard instance.
37 | /// - Returns: A `Publisher` that emits events from the keyboard.
38 | public static func publisher(for id: KeyboardIdentifier) -> AnyPublisher<KeyboardEvent, Never> {
| | `- error: 'AnyPublisher' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing static method
39 | KeyboardEventSubject.for(id).eraseToAnyPublisher()
40 | }
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardEvent.swift:45:61: error: 'AnyPublisher' is only available in macOS 10.15 or newer
19 |
20 | /// Events posted by the keyboard
21 | public enum KeyboardEvent {
| `- note: add '@available' attribute to enclosing enum
22 | /// Sent from the keyboard view's `onAppear()`
23 | case keyboardDidAppear
:
43 | /// - Parameter id: Unique identifier for the keyboard to handle events from.
44 | /// - Returns: A `Publisher` that emits events from the keyboard.
45 | public static func publisher<H: Hashable>(for id: H) -> AnyPublisher<KeyboardEvent, Never> {
| | `- error: 'AnyPublisher' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing static method
46 | publisher(for: KeyboardIdentifier(for: id))
47 | }
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardEvent.swift:220:39: error: 'OSAllocatedUnfairLock' is only available in macOS 13.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 macOS 13.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 macOS 13.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 macOS 13.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:223:37: error: 'PassthroughSubject' is only available in macOS 10.15 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
:
221 | private static var allSubjects: [KeyboardIdentifier: Weak<KeyboardEventSubject>] = [:]
222 | private let id: KeyboardIdentifier
223 | private let underlyingSubject = PassthroughSubject<Output, Failure>()
| `- error: 'PassthroughSubject' is only available in macOS 10.15 or newer
224 |
225 | private init(for id: KeyboardIdentifier) {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardEvent.swift:247:29: error: 'Subscription' is only available in macOS 10.15 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
:
245 | }
246 |
247 | func send(subscription: Subscription) {
| | `- error: 'Subscription' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing instance method
248 | underlyingSubject.send(subscription: subscription)
249 | }
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardEvent.swift:251:92: error: 'Subscriber' is only available in macOS 10.15 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
:
249 | }
250 |
251 | func receive<S>(subscriber: S) where KeyboardEvent == S.Input, Never == S.Failure, S : Subscriber {
| | `- error: 'Subscriber' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing instance method
252 | underlyingSubject.receive(subscriber: subscriber)
253 | }
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardEvent.swift:259:27: error: 'Subscribers' is only available in macOS 10.15 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
:
257 | }
258 |
259 | func send(completion: Subscribers.Completion<Never>) {
| | `- error: 'Subscribers' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing instance method
260 | underlyingSubject.send(completion: completion)
261 | }
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardEvent.swift:39:38: error: 'eraseToAnyPublisher()' is only available in macOS 10.15 or newer
19 |
20 | /// Events posted by the keyboard
21 | public enum KeyboardEvent {
| `- note: add '@available' attribute to enclosing enum
22 | /// Sent from the keyboard view's `onAppear()`
23 | case keyboardDidAppear
:
36 | /// - Parameter id: A `KeyboardIdentifier` that uniquely identifies this keyboard instance.
37 | /// - Returns: A `Publisher` that emits events from the keyboard.
38 | public static func publisher(for id: KeyboardIdentifier) -> AnyPublisher<KeyboardEvent, Never> {
| `- note: add '@available' attribute to enclosing static method
39 | KeyboardEventSubject.for(id).eraseToAnyPublisher()
| |- error: 'eraseToAnyPublisher()' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
40 | }
41 |
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardEvent.swift:230:22: error: 'withLock' is only available in macOS 13.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 macOS 13.0 or newer
| `- note: add 'if #available' version check
231 | if let w = allSubjects[id], let s = w.ref {
232 | return s
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardEvent.swift:242:27: error: 'withLock' is only available in macOS 13.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
:
240 |
241 | deinit {
242 | Self.subjectsLock.withLock {
| |- error: 'withLock' is only available in macOS 13.0 or newer
| `- note: add 'if #available' version check
243 | _ = Self.allSubjects.removeValue(forKey: id)
244 | }
[16/16] Compiling VisionKeyboardKit KeyboardEventPS2.swift
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardEvent.swift:38:65: error: 'AnyPublisher' is only available in macOS 10.15 or newer
19 |
20 | /// Events posted by the keyboard
21 | public enum KeyboardEvent {
| `- note: add '@available' attribute to enclosing enum
22 | /// Sent from the keyboard view's `onAppear()`
23 | case keyboardDidAppear
:
36 | /// - Parameter id: A `KeyboardIdentifier` that uniquely identifies this keyboard instance.
37 | /// - Returns: A `Publisher` that emits events from the keyboard.
38 | public static func publisher(for id: KeyboardIdentifier) -> AnyPublisher<KeyboardEvent, Never> {
| | `- error: 'AnyPublisher' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing static method
39 | KeyboardEventSubject.for(id).eraseToAnyPublisher()
40 | }
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardEvent.swift:45:61: error: 'AnyPublisher' is only available in macOS 10.15 or newer
19 |
20 | /// Events posted by the keyboard
21 | public enum KeyboardEvent {
| `- note: add '@available' attribute to enclosing enum
22 | /// Sent from the keyboard view's `onAppear()`
23 | case keyboardDidAppear
:
43 | /// - Parameter id: Unique identifier for the keyboard to handle events from.
44 | /// - Returns: A `Publisher` that emits events from the keyboard.
45 | public static func publisher<H: Hashable>(for id: H) -> AnyPublisher<KeyboardEvent, Never> {
| | `- error: 'AnyPublisher' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing static method
46 | publisher(for: KeyboardIdentifier(for: id))
47 | }
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardEvent.swift:220:39: error: 'OSAllocatedUnfairLock' is only available in macOS 13.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 macOS 13.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 macOS 13.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 macOS 13.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:223:37: error: 'PassthroughSubject' is only available in macOS 10.15 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
:
221 | private static var allSubjects: [KeyboardIdentifier: Weak<KeyboardEventSubject>] = [:]
222 | private let id: KeyboardIdentifier
223 | private let underlyingSubject = PassthroughSubject<Output, Failure>()
| `- error: 'PassthroughSubject' is only available in macOS 10.15 or newer
224 |
225 | private init(for id: KeyboardIdentifier) {
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardEvent.swift:247:29: error: 'Subscription' is only available in macOS 10.15 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
:
245 | }
246 |
247 | func send(subscription: Subscription) {
| | `- error: 'Subscription' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing instance method
248 | underlyingSubject.send(subscription: subscription)
249 | }
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardEvent.swift:251:92: error: 'Subscriber' is only available in macOS 10.15 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
:
249 | }
250 |
251 | func receive<S>(subscriber: S) where KeyboardEvent == S.Input, Never == S.Failure, S : Subscriber {
| | `- error: 'Subscriber' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing instance method
252 | underlyingSubject.receive(subscriber: subscriber)
253 | }
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardEvent.swift:259:27: error: 'Subscribers' is only available in macOS 10.15 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
:
257 | }
258 |
259 | func send(completion: Subscribers.Completion<Never>) {
| | `- error: 'Subscribers' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing instance method
260 | underlyingSubject.send(completion: completion)
261 | }
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardEvent.swift:39:38: error: 'eraseToAnyPublisher()' is only available in macOS 10.15 or newer
19 |
20 | /// Events posted by the keyboard
21 | public enum KeyboardEvent {
| `- note: add '@available' attribute to enclosing enum
22 | /// Sent from the keyboard view's `onAppear()`
23 | case keyboardDidAppear
:
36 | /// - Parameter id: A `KeyboardIdentifier` that uniquely identifies this keyboard instance.
37 | /// - Returns: A `Publisher` that emits events from the keyboard.
38 | public static func publisher(for id: KeyboardIdentifier) -> AnyPublisher<KeyboardEvent, Never> {
| `- note: add '@available' attribute to enclosing static method
39 | KeyboardEventSubject.for(id).eraseToAnyPublisher()
| |- error: 'eraseToAnyPublisher()' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
40 | }
41 |
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardEvent.swift:230:22: error: 'withLock' is only available in macOS 13.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 macOS 13.0 or newer
| `- note: add 'if #available' version check
231 | if let w = allSubjects[id], let s = w.ref {
232 | return s
/Users/admin/builder/spi-builder-workspace/Sources/VisionKeyboardKit/KeyboardEvent.swift:242:27: error: 'withLock' is only available in macOS 13.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
:
240 |
241 | deinit {
242 | Self.subjectsLock.withLock {
| |- error: 'withLock' is only available in macOS 13.0 or newer
| `- note: add 'if #available' version check
243 | _ = Self.allSubjects.removeValue(forKey: id)
244 | }
BUILD FAILURE 6.3 macosSpm