The Swift Package Index logo.Swift Package Index

Build Information

Failed to build SwiftUI-DetectGestureUtil, reference main (472f03), with Swift 6.3 for macOS (SPM) on 18 Apr 2026 16:49:34 UTC.

Build Command

env DEVELOPER_DIR=/Applications/Xcode-26.4.0.app xcrun swift build --arch arm64

Build Log

========================================
RunAll
========================================
Builder version: 4.70.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/Saw-000/SwiftUI-DetectGestureUtil.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/Saw-000/SwiftUI-DetectGestureUtil
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
HEAD is now at 472f034 Rename args. (#35)
Cloned https://github.com/Saw-000/SwiftUI-DetectGestureUtil.git
Revision (git rev-parse @):
472f034dd971803c1a8446b41fc5761ed0c4be3c
SUCCESS checkout https://github.com/Saw-000/SwiftUI-DetectGestureUtil.git at main
========================================
ResolveProductDependencies
========================================
Resolving dependencies ...
{
  "identity": ".resolve-product-dependencies",
  "name": "resolve-dependencies",
  "url": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
  "version": "unspecified",
  "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
  "traits": [
    "default"
  ],
  "dependencies": [
    {
      "identity": "swiftui-detectgestureutil",
      "name": "SwiftUI-DetectGestureUtil",
      "url": "https://github.com/Saw-000/SwiftUI-DetectGestureUtil.git",
      "version": "unspecified",
      "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/SwiftUI-DetectGestureUtil",
      "traits": [
        "default"
      ],
      "dependencies": [
      ]
    }
  ]
}
Fetching https://github.com/Saw-000/SwiftUI-DetectGestureUtil.git
[1/719] Fetching swiftui-detectgestureutil
Fetched https://github.com/Saw-000/SwiftUI-DetectGestureUtil.git from cache (1.01s)
Creating working copy for https://github.com/Saw-000/SwiftUI-DetectGestureUtil.git
Working copy of https://github.com/Saw-000/SwiftUI-DetectGestureUtil.git resolved at main (472f034)
warning: '.resolve-product-dependencies': dependency 'swiftui-detectgestureutil' is not used by any target
Found 0 product dependencies
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.3
Building package at path:  $PWD
https://github.com/Saw-000/SwiftUI-DetectGestureUtil.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-26.4.0.app xcrun swift build --arch arm64
Building for debugging...
[0/4] Write sources
[3/4] Write swift-version--6988338F2F200930.txt
[5/7] Compiling MyModuleCore CGSize+Extension.swift
[6/7] Emitting module MyModuleCore
[7/7] Compiling MyModuleCore Sequence+Extension.swift
error: emit-module command failed with exit code 1 (use -v to see invocation)
[8/16] Compiling MyModuleFeatureDetectGesture TouchPeriod.swift
[9/16] Compiling MyModuleFeatureDetectGesture DetectGesturePinchValue.swift
[10/16] Compiling MyModuleFeatureDetectGesture DefaultDetectGesture.swift
[11/16] Emitting module MyModuleFeatureDetectGesture
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/DetectGestureViewModifier.swift:6:6: error: 'State' is only available in macOS 10.15 or newer
  2 |
  3 | /// View modifier for detecting custom gestures
  4 | struct DetectGestureViewModifier<GestureDetection: Equatable>: ViewModifier {
    |        `- note: add '@available' attribute to enclosing generic struct
  5 |     /// Gesture state binding
  6 |     @State private var state = DetectGestureState<GestureDetection>()
    |      `- error: 'State' is only available in macOS 10.15 or newer
  7 |
  8 |     @State private var geometry: GeometryProxy? = nil
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/DetectGestureViewModifier.swift:8:34: error: 'GeometryProxy' is only available in macOS 10.15 or newer
  2 |
  3 | /// View modifier for detecting custom gestures
  4 | struct DetectGestureViewModifier<GestureDetection: Equatable>: ViewModifier {
    |        `- note: add '@available' attribute to enclosing generic struct
  5 |     /// Gesture state binding
  6 |     @State private var state = DetectGestureState<GestureDetection>()
  7 |
  8 |     @State private var geometry: GeometryProxy? = nil
    |                                  `- error: 'GeometryProxy' is only available in macOS 10.15 or newer
  9 |
 10 |     /// Coordinate space for gesture tracking
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/DetectGestureViewModifier.swift:8:6: error: 'State' is only available in macOS 10.15 or newer
  2 |
  3 | /// View modifier for detecting custom gestures
  4 | struct DetectGestureViewModifier<GestureDetection: Equatable>: ViewModifier {
    |        `- note: add '@available' attribute to enclosing generic struct
  5 |     /// Gesture state binding
  6 |     @State private var state = DetectGestureState<GestureDetection>()
  7 |
  8 |     @State private var geometry: GeometryProxy? = nil
    |      `- error: 'State' is only available in macOS 10.15 or newer
  9 |
 10 |     /// Coordinate space for gesture tracking
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/DetectGestureViewModifier.swift:11:34: error: 'CoordinateSpaceProtocol' is only available in macOS 14.0 or newer
  2 |
  3 | /// View modifier for detecting custom gestures
  4 | struct DetectGestureViewModifier<GestureDetection: Equatable>: ViewModifier {
    |        `- note: add '@available' attribute to enclosing generic struct
  5 |     /// Gesture state binding
  6 |     @State private var state = DetectGestureState<GestureDetection>()
    :
  9 |
 10 |     /// Coordinate space for gesture tracking
 11 |     private let coordinateSpace: CoordinateSpaceProtocol = .local
    |                                  `- error: 'CoordinateSpaceProtocol' is only available in macOS 14.0 or newer
 12 |
 13 |     /// Closure to detect gesture from state
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/DetectGestureViewModifier.swift:11:61: error: 'local' is only available in macOS 14.0 or newer
  2 |
  3 | /// View modifier for detecting custom gestures
  4 | struct DetectGestureViewModifier<GestureDetection: Equatable>: ViewModifier {
    |        `- note: add '@available' attribute to enclosing generic struct
  5 |     /// Gesture state binding
  6 |     @State private var state = DetectGestureState<GestureDetection>()
    :
  9 |
 10 |     /// Coordinate space for gesture tracking
 11 |     private let coordinateSpace: CoordinateSpaceProtocol = .local
    |                                                             `- error: 'local' is only available in macOS 14.0 or newer
 12 |
 13 |     /// Closure to detect gesture from state
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/DetectGestureViewModifier.swift:23:40: error: 'publish(every:tolerance:on:in:options:)' is only available in macOS 10.15 or newer
  2 |
  3 | /// View modifier for detecting custom gestures
  4 | struct DetectGestureViewModifier<GestureDetection: Equatable>: ViewModifier {
    |        `- note: add '@available' attribute to enclosing generic struct
  5 |     /// Gesture state binding
  6 |     @State private var state = DetectGestureState<GestureDetection>()
    :
 21 |
 22 |     /// Timer for periodic gesture state updates
 23 |     private let heartbeatTimer = Timer.publish(every: 0.1, on: .main, in: .common).autoconnect()
    |                                        `- error: 'publish(every:tolerance:on:in:options:)' is only available in macOS 10.15 or newer
 24 |
 25 |     init(
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/DetectGestureViewModifier.swift:23:84: error: 'autoconnect()' is only available in macOS 10.15 or newer
  2 |
  3 | /// View modifier for detecting custom gestures
  4 | struct DetectGestureViewModifier<GestureDetection: Equatable>: ViewModifier {
    |        `- note: add '@available' attribute to enclosing generic struct
  5 |     /// Gesture state binding
  6 |     @State private var state = DetectGestureState<GestureDetection>()
    :
 21 |
 22 |     /// Timer for periodic gesture state updates
 23 |     private let heartbeatTimer = Timer.publish(every: 0.1, on: .main, in: .common).autoconnect()
    |                                                                                    `- error: 'autoconnect()' is only available in macOS 10.15 or newer
 24 |
 25 |     init(
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/DetectGestureViewModifier.swift:35:41: error: 'View' is only available in macOS 10.15 or newer
  2 |
  3 | /// View modifier for detecting custom gestures
  4 | struct DetectGestureViewModifier<GestureDetection: Equatable>: ViewModifier {
    |        `- note: add '@available' attribute to enclosing generic struct
  5 |     /// Gesture state binding
  6 |     @State private var state = DetectGestureState<GestureDetection>()
    :
 33 |     }
 34 |
 35 |     func body(content: Content) -> some View {
    |          |                              `- error: 'View' is only available in macOS 10.15 or newer
    |          `- note: add '@available' attribute to enclosing instance method
 36 |         content
 37 |             .background(
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/DetectGestureViewModifier.swift:71:33: error: 'SpatialEventCollection' is only available in macOS 15.0 or newer
  2 |
  3 | /// View modifier for detecting custom gestures
  4 | struct DetectGestureViewModifier<GestureDetection: Equatable>: ViewModifier {
    |        `- note: add '@available' attribute to enclosing generic struct
  5 |     /// Gesture state binding
  6 |     @State private var state = DetectGestureState<GestureDetection>()
    :
 68 |
 69 |     /// Update state and perform gesture detection and handling.
 70 |     private func processGesture(
    |                  `- note: add '@available' attribute to enclosing instance method
 71 |         spatialEventCollection: SpatialEventCollection,
    |                                 `- error: 'SpatialEventCollection' is only available in macOS 15.0 or newer
 72 |         geo: GeometryProxy?,
 73 |         timing: DetectGestureTouchSequence.Value.Timing
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/DetectGestureViewModifier.swift:72:14: error: 'GeometryProxy' is only available in macOS 10.15 or newer
  2 |
  3 | /// View modifier for detecting custom gestures
  4 | struct DetectGestureViewModifier<GestureDetection: Equatable>: ViewModifier {
    |        `- note: add '@available' attribute to enclosing generic struct
  5 |     /// Gesture state binding
  6 |     @State private var state = DetectGestureState<GestureDetection>()
    :
 68 |
 69 |     /// Update state and perform gesture detection and handling.
 70 |     private func processGesture(
    |                  `- note: add '@available' attribute to enclosing instance method
 71 |         spatialEventCollection: SpatialEventCollection,
 72 |         geo: GeometryProxy?,
    |              `- error: 'GeometryProxy' is only available in macOS 10.15 or newer
 73 |         timing: DetectGestureTouchSequence.Value.Timing
 74 |     ) {
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/DetectGestureViewModifier.swift:195:15: error: 'View' is only available in macOS 10.15 or newer
178 | }
179 |
180 | public extension View {
    |        `- note: add '@available' attribute to enclosing extension
181 |     /// Set multiple custom gestures simultaneously and detect only one of them.
182 |     ///
    :
188 |     ///   - handleGesture: Closure that processes the detected gesture. This is called after the detectGesture phase completes. It receives the GestureDetection type returned by detectGesture. It returns a HandleGestureReturn enum to indicate whether handling is finished. If it returns .finished, it will not be called again, and all gesture processing is completely finished and reset. As long as it returns .yet, it continues to be called when the gesture state is updated (timing is the same as Gesture.changed()). It can also handle across multiple taps.
189 |     ///   - gestureEnded: Optional closure called immediately after handleGesture returns .finished, indicating gesture handling has completed. Useful for cleanup or state reset operations.
190 |     func detectGesture<GestureDetection: Equatable>(
    |          `- note: add '@available' attribute to enclosing instance method
191 |         _: GestureDetection.Type,
192 |         detect: @escaping (DetectGestureState<GestureDetection>) -> GestureDetection?,
193 |         handle: @escaping (_ detection: GestureDetection, DetectGestureState<GestureDetection>) -> HandleGestureReturn,
194 |         gestureEnded: ((_ detection: GestureDetection, DetectGestureState<GestureDetection>) -> Void)? = nil
195 |     ) -> some View {
    |               `- error: 'View' is only available in macOS 10.15 or newer
196 |         modifier(DetectGestureViewModifier<GestureDetection>(detect: detect, handle: handle, gestureEnded: gestureEnded))
197 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/DetectGestureViewModifier.swift:180:18: error: 'View' is only available in macOS 10.15 or newer
178 | }
179 |
180 | public extension View {
    |        |         `- error: 'View' is only available in macOS 10.15 or newer
    |        `- note: add '@available' attribute to enclosing extension
181 |     /// Set multiple custom gestures simultaneously and detect only one of them.
182 |     ///
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/State/DetectGestureState.swift:465:23: error: 'SpatialEventCollection' is only available in macOS 15.0 or newer
 70 | // MARK: - Default Gesture Detection
 71 |
 72 | public extension DetectGestureState {
    |        `- note: add '@available' attribute to enclosing extension
 73 |     /// Whether the specified default gesture has already been detected
 74 |     func detected(
    :
462 |
463 |     /// Determine if the pinch gesture has ended
464 |     private func isPinchEnded(
    |                  `- note: add '@available' attribute to enclosing instance method
465 |         eventIDs: Set<SpatialEventCollection.Event.ID>?,
    |                       `- error: 'SpatialEventCollection' is only available in macOS 15.0 or newer
466 |         lastGestureValue: DetectGestureTouchSequence.Value?
467 |     ) -> Bool {
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/State/GesutureValue/DetectGestureFingerSequence.swift:12:53: error: 'SpatialEventCollection' is only available in macOS 15.0 or newer
  8 |     public struct Finger {
  9 |         /// DetectGestureTouchSequence.Value formatted to focus on a single finger event
 10 |         public struct Event {
    |                       `- note: add '@available' attribute to enclosing struct
 11 |             /// event of one finger.
 12 |             public let spatialEventCollectionEvent: SpatialEventCollection.Event
    |                                                     `- error: 'SpatialEventCollection' is only available in macOS 15.0 or newer
 13 |             /// attachment information (DetectGestureTouchSequence.Value)
 14 |             public let relatedGestureValue: DetectGestureTouchSequence.Value
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/State/GesutureValue/DetectGestureFingerSequence.swift:18:51: error: 'SpatialEventCollection' is only available in macOS 15.0 or newer
  6 | public struct DetectGestureFingerSequence {
  7 |     /// Collection of events for a single finger
  8 |     public struct Finger {
    |                   `- note: add '@available' attribute to enclosing struct
  9 |         /// DetectGestureTouchSequence.Value formatted to focus on a single finger event
 10 |         public struct Event {
    :
 16 |
 17 |         /// Unique identifier for the finger event
 18 |         public let spatialEventCollectionEventID: SpatialEventCollection.Event.ID
    |                                                   `- error: 'SpatialEventCollection' is only available in macOS 15.0 or newer
 19 |         /// Array of values for this finger's touch
 20 |         public let events: [Event]
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/State/GesutureValue/DetectGestureFingerSequence.swift:22:30: error: 'SpatialEventCollection' is only available in macOS 15.0 or newer
  6 | public struct DetectGestureFingerSequence {
  7 |     /// Collection of events for a single finger
  8 |     public struct Finger {
    |                   `- note: add '@available' attribute to enclosing struct
  9 |         /// DetectGestureTouchSequence.Value formatted to focus on a single finger event
 10 |         public struct Event {
    :
 20 |         public let events: [Event]
 21 |
 22 |         public init(eventID: SpatialEventCollection.Event.ID, values: [Event]) {
    |                |             `- error: 'SpatialEventCollection' is only available in macOS 15.0 or newer
    |                `- note: add '@available' attribute to enclosing initializer
 23 |             spatialEventCollectionEventID = eventID
 24 |             events = values.sortedByTimestamp
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/State/GesutureValue/DetectGestureTouchSequence.swift:21:44: error: 'SpatialEventCollection' is only available in macOS 15.0 or newer
 4 | public struct DetectGestureTouchSequence: Identifiable {
 5 |     /// Value containing gesture state information (like DragGesture.Value)
 6 |     public struct Value: Identifiable {
   |                   `- note: add '@available' attribute to enclosing struct
 7 |         /// Timing of gesture state update
 8 |         public enum Timing {
   :
19 |
20 |         /// Spatial event collection from SwiftUI
21 |         public let spatialEventCollection: SpatialEventCollection
   |                                            `- error: 'SpatialEventCollection' is only available in macOS 15.0 or newer
22 |         /// Geometry proxy for view bounds
23 |         public let geometryProxy: GeometryProxy
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/State/GesutureValue/DetectGestureTouchSequence.swift:23:35: error: 'GeometryProxy' is only available in macOS 10.15 or newer
 4 | public struct DetectGestureTouchSequence: Identifiable {
 5 |     /// Value containing gesture state information (like DragGesture.Value)
 6 |     public struct Value: Identifiable {
   |                   `- note: add '@available' attribute to enclosing struct
 7 |         /// Timing of gesture state update
 8 |         public enum Timing {
   :
21 |         public let spatialEventCollection: SpatialEventCollection
22 |         /// Geometry proxy for view bounds
23 |         public let geometryProxy: GeometryProxy
   |                                   `- error: 'GeometryProxy' is only available in macOS 10.15 or newer
24 |         /// Timing of this state update
25 |         public var timing: Timing
[12/16] Compiling MyModuleFeatureDetectGesture Convert+Extention.swift
[13/16] Compiling MyModuleFeatureDetectGesture DetectGestureViewModifier.swift
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/DetectGestureViewModifier.swift:6:6: error: 'State' is only available in macOS 10.15 or newer
  2 |
  3 | /// View modifier for detecting custom gestures
  4 | struct DetectGestureViewModifier<GestureDetection: Equatable>: ViewModifier {
    |        `- note: add '@available' attribute to enclosing generic struct
  5 |     /// Gesture state binding
  6 |     @State private var state = DetectGestureState<GestureDetection>()
    |      `- error: 'State' is only available in macOS 10.15 or newer
  7 |
  8 |     @State private var geometry: GeometryProxy? = nil
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/DetectGestureViewModifier.swift:8:34: error: 'GeometryProxy' is only available in macOS 10.15 or newer
  2 |
  3 | /// View modifier for detecting custom gestures
  4 | struct DetectGestureViewModifier<GestureDetection: Equatable>: ViewModifier {
    |        `- note: add '@available' attribute to enclosing generic struct
  5 |     /// Gesture state binding
  6 |     @State private var state = DetectGestureState<GestureDetection>()
  7 |
  8 |     @State private var geometry: GeometryProxy? = nil
    |                                  `- error: 'GeometryProxy' is only available in macOS 10.15 or newer
  9 |
 10 |     /// Coordinate space for gesture tracking
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/DetectGestureViewModifier.swift:8:6: error: 'State' is only available in macOS 10.15 or newer
  2 |
  3 | /// View modifier for detecting custom gestures
  4 | struct DetectGestureViewModifier<GestureDetection: Equatable>: ViewModifier {
    |        `- note: add '@available' attribute to enclosing generic struct
  5 |     /// Gesture state binding
  6 |     @State private var state = DetectGestureState<GestureDetection>()
  7 |
  8 |     @State private var geometry: GeometryProxy? = nil
    |      `- error: 'State' is only available in macOS 10.15 or newer
  9 |
 10 |     /// Coordinate space for gesture tracking
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/DetectGestureViewModifier.swift:11:34: error: 'CoordinateSpaceProtocol' is only available in macOS 14.0 or newer
  2 |
  3 | /// View modifier for detecting custom gestures
  4 | struct DetectGestureViewModifier<GestureDetection: Equatable>: ViewModifier {
    |        `- note: add '@available' attribute to enclosing generic struct
  5 |     /// Gesture state binding
  6 |     @State private var state = DetectGestureState<GestureDetection>()
    :
  9 |
 10 |     /// Coordinate space for gesture tracking
 11 |     private let coordinateSpace: CoordinateSpaceProtocol = .local
    |                                  `- error: 'CoordinateSpaceProtocol' is only available in macOS 14.0 or newer
 12 |
 13 |     /// Closure to detect gesture from state
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/DetectGestureViewModifier.swift:11:61: error: 'local' is only available in macOS 14.0 or newer
  2 |
  3 | /// View modifier for detecting custom gestures
  4 | struct DetectGestureViewModifier<GestureDetection: Equatable>: ViewModifier {
    |        `- note: add '@available' attribute to enclosing generic struct
  5 |     /// Gesture state binding
  6 |     @State private var state = DetectGestureState<GestureDetection>()
    :
  9 |
 10 |     /// Coordinate space for gesture tracking
 11 |     private let coordinateSpace: CoordinateSpaceProtocol = .local
    |                                                             `- error: 'local' is only available in macOS 14.0 or newer
 12 |
 13 |     /// Closure to detect gesture from state
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/DetectGestureViewModifier.swift:23:40: error: 'publish(every:tolerance:on:in:options:)' is only available in macOS 10.15 or newer
  2 |
  3 | /// View modifier for detecting custom gestures
  4 | struct DetectGestureViewModifier<GestureDetection: Equatable>: ViewModifier {
    |        `- note: add '@available' attribute to enclosing generic struct
  5 |     /// Gesture state binding
  6 |     @State private var state = DetectGestureState<GestureDetection>()
    :
 21 |
 22 |     /// Timer for periodic gesture state updates
 23 |     private let heartbeatTimer = Timer.publish(every: 0.1, on: .main, in: .common).autoconnect()
    |                                        `- error: 'publish(every:tolerance:on:in:options:)' is only available in macOS 10.15 or newer
 24 |
 25 |     init(
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/DetectGestureViewModifier.swift:23:84: error: 'autoconnect()' is only available in macOS 10.15 or newer
  2 |
  3 | /// View modifier for detecting custom gestures
  4 | struct DetectGestureViewModifier<GestureDetection: Equatable>: ViewModifier {
    |        `- note: add '@available' attribute to enclosing generic struct
  5 |     /// Gesture state binding
  6 |     @State private var state = DetectGestureState<GestureDetection>()
    :
 21 |
 22 |     /// Timer for periodic gesture state updates
 23 |     private let heartbeatTimer = Timer.publish(every: 0.1, on: .main, in: .common).autoconnect()
    |                                                                                    `- error: 'autoconnect()' is only available in macOS 10.15 or newer
 24 |
 25 |     init(
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/DetectGestureViewModifier.swift:35:41: error: 'View' is only available in macOS 10.15 or newer
  2 |
  3 | /// View modifier for detecting custom gestures
  4 | struct DetectGestureViewModifier<GestureDetection: Equatable>: ViewModifier {
    |        `- note: add '@available' attribute to enclosing generic struct
  5 |     /// Gesture state binding
  6 |     @State private var state = DetectGestureState<GestureDetection>()
    :
 33 |     }
 34 |
 35 |     func body(content: Content) -> some View {
    |          |                              `- error: 'View' is only available in macOS 10.15 or newer
    |          `- note: add '@available' attribute to enclosing instance method
 36 |         content
 37 |             .background(
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/DetectGestureViewModifier.swift:71:33: error: 'SpatialEventCollection' is only available in macOS 15.0 or newer
  2 |
  3 | /// View modifier for detecting custom gestures
  4 | struct DetectGestureViewModifier<GestureDetection: Equatable>: ViewModifier {
    |        `- note: add '@available' attribute to enclosing generic struct
  5 |     /// Gesture state binding
  6 |     @State private var state = DetectGestureState<GestureDetection>()
    :
 68 |
 69 |     /// Update state and perform gesture detection and handling.
 70 |     private func processGesture(
    |                  `- note: add '@available' attribute to enclosing instance method
 71 |         spatialEventCollection: SpatialEventCollection,
    |                                 `- error: 'SpatialEventCollection' is only available in macOS 15.0 or newer
 72 |         geo: GeometryProxy?,
 73 |         timing: DetectGestureTouchSequence.Value.Timing
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/DetectGestureViewModifier.swift:72:14: error: 'GeometryProxy' is only available in macOS 10.15 or newer
  2 |
  3 | /// View modifier for detecting custom gestures
  4 | struct DetectGestureViewModifier<GestureDetection: Equatable>: ViewModifier {
    |        `- note: add '@available' attribute to enclosing generic struct
  5 |     /// Gesture state binding
  6 |     @State private var state = DetectGestureState<GestureDetection>()
    :
 68 |
 69 |     /// Update state and perform gesture detection and handling.
 70 |     private func processGesture(
    |                  `- note: add '@available' attribute to enclosing instance method
 71 |         spatialEventCollection: SpatialEventCollection,
 72 |         geo: GeometryProxy?,
    |              `- error: 'GeometryProxy' is only available in macOS 10.15 or newer
 73 |         timing: DetectGestureTouchSequence.Value.Timing
 74 |     ) {
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/DetectGestureViewModifier.swift:195:15: error: 'View' is only available in macOS 10.15 or newer
178 | }
179 |
180 | public extension View {
    |        `- note: add '@available' attribute to enclosing extension
181 |     /// Set multiple custom gestures simultaneously and detect only one of them.
182 |     ///
    :
188 |     ///   - handleGesture: Closure that processes the detected gesture. This is called after the detectGesture phase completes. It receives the GestureDetection type returned by detectGesture. It returns a HandleGestureReturn enum to indicate whether handling is finished. If it returns .finished, it will not be called again, and all gesture processing is completely finished and reset. As long as it returns .yet, it continues to be called when the gesture state is updated (timing is the same as Gesture.changed()). It can also handle across multiple taps.
189 |     ///   - gestureEnded: Optional closure called immediately after handleGesture returns .finished, indicating gesture handling has completed. Useful for cleanup or state reset operations.
190 |     func detectGesture<GestureDetection: Equatable>(
    |          `- note: add '@available' attribute to enclosing instance method
191 |         _: GestureDetection.Type,
192 |         detect: @escaping (DetectGestureState<GestureDetection>) -> GestureDetection?,
193 |         handle: @escaping (_ detection: GestureDetection, DetectGestureState<GestureDetection>) -> HandleGestureReturn,
194 |         gestureEnded: ((_ detection: GestureDetection, DetectGestureState<GestureDetection>) -> Void)? = nil
195 |     ) -> some View {
    |               `- error: 'View' is only available in macOS 10.15 or newer
196 |         modifier(DetectGestureViewModifier<GestureDetection>(detect: detect, handle: handle, gestureEnded: gestureEnded))
197 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/DetectGestureViewModifier.swift:180:18: error: 'View' is only available in macOS 10.15 or newer
178 | }
179 |
180 | public extension View {
    |        |         `- error: 'View' is only available in macOS 10.15 or newer
    |        `- note: add '@available' attribute to enclosing extension
181 |     /// Set multiple custom gestures simultaneously and detect only one of them.
182 |     ///
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/DetectGestureViewModifier.swift:37:14: error: 'background(_:alignment:)' is only available in macOS 10.15 or newer
  2 |
  3 | /// View modifier for detecting custom gestures
  4 | struct DetectGestureViewModifier<GestureDetection: Equatable>: ViewModifier {
    |        `- note: add '@available' attribute to enclosing generic struct
  5 |     /// Gesture state binding
  6 |     @State private var state = DetectGestureState<GestureDetection>()
    :
 33 |     }
 34 |
 35 |     func body(content: Content) -> some View {
    |          `- note: add '@available' attribute to enclosing instance method
 36 |         content
 37 |             .background(
    |              |- error: 'background(_:alignment:)' is only available in macOS 10.15 or newer
    |              `- note: add 'if #available' version check
 38 |                 // Place GeometryReader in background
 39 |                 GeometryReader { geo in
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/DetectGestureViewModifier.swift:39:17: error: 'GeometryReader' is only available in macOS 10.15 or newer
  2 |
  3 | /// View modifier for detecting custom gestures
  4 | struct DetectGestureViewModifier<GestureDetection: Equatable>: ViewModifier {
    |        `- note: add '@available' attribute to enclosing generic struct
  5 |     /// Gesture state binding
  6 |     @State private var state = DetectGestureState<GestureDetection>()
    :
 33 |     }
 34 |
 35 |     func body(content: Content) -> some View {
    |          `- note: add '@available' attribute to enclosing instance method
 36 |         content
 37 |             .background(
 38 |                 // Place GeometryReader in background
 39 |                 GeometryReader { geo in
    |                 |- error: 'GeometryReader' is only available in macOS 10.15 or newer
    |                 `- note: add 'if #available' version check
 40 |                     Color.clear
 41 |                         .onAppear {
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/DetectGestureViewModifier.swift:40:21: error: 'Color' is only available in macOS 10.15 or newer
  2 |
  3 | /// View modifier for detecting custom gestures
  4 | struct DetectGestureViewModifier<GestureDetection: Equatable>: ViewModifier {
    |        `- note: add '@available' attribute to enclosing generic struct
  5 |     /// Gesture state binding
  6 |     @State private var state = DetectGestureState<GestureDetection>()
    :
 33 |     }
 34 |
 35 |     func body(content: Content) -> some View {
    |          `- note: add '@available' attribute to enclosing instance method
 36 |         content
 37 |             .background(
 38 |                 // Place GeometryReader in background
 39 |                 GeometryReader { geo in
 40 |                     Color.clear
    |                     |- error: 'Color' is only available in macOS 10.15 or newer
    |                     `- note: add 'if #available' version check
 41 |                         .onAppear {
 42 |                             geometry = geo
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/DetectGestureViewModifier.swift:40:27: error: 'clear' is only available in macOS 10.15 or newer
  2 |
  3 | /// View modifier for detecting custom gestures
  4 | struct DetectGestureViewModifier<GestureDetection: Equatable>: ViewModifier {
    |        `- note: add '@available' attribute to enclosing generic struct
  5 |     /// Gesture state binding
  6 |     @State private var state = DetectGestureState<GestureDetection>()
    :
 33 |     }
 34 |
 35 |     func body(content: Content) -> some View {
    |          `- note: add '@available' attribute to enclosing instance method
 36 |         content
 37 |             .background(
 38 |                 // Place GeometryReader in background
 39 |                 GeometryReader { geo in
 40 |                     Color.clear
    |                           |- error: 'clear' is only available in macOS 10.15 or newer
    |                           `- note: add 'if #available' version check
 41 |                         .onAppear {
 42 |                             geometry = geo
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/DetectGestureViewModifier.swift:41:26: error: 'onAppear(perform:)' is only available in macOS 10.15 or newer
  2 |
  3 | /// View modifier for detecting custom gestures
  4 | struct DetectGestureViewModifier<GestureDetection: Equatable>: ViewModifier {
    |        `- note: add '@available' attribute to enclosing generic struct
  5 |     /// Gesture state binding
  6 |     @State private var state = DetectGestureState<GestureDetection>()
    :
 33 |     }
 34 |
 35 |     func body(content: Content) -> some View {
    |          `- note: add '@available' attribute to enclosing instance method
 36 |         content
 37 |             .background(
    :
 39 |                 GeometryReader { geo in
 40 |                     Color.clear
 41 |                         .onAppear {
    |                          |- error: 'onAppear(perform:)' is only available in macOS 10.15 or newer
    |                          `- note: add 'if #available' version check
 42 |                             geometry = geo
 43 |                         }
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/DetectGestureViewModifier.swift:42:29: error: setter for 'geometry' is only available in macOS 10.15 or newer
  2 |
  3 | /// View modifier for detecting custom gestures
  4 | struct DetectGestureViewModifier<GestureDetection: Equatable>: ViewModifier {
    |        `- note: add '@available' attribute to enclosing generic struct
  5 |     /// Gesture state binding
  6 |     @State private var state = DetectGestureState<GestureDetection>()
    :
 33 |     }
 34 |
 35 |     func body(content: Content) -> some View {
    |          `- note: add '@available' attribute to enclosing instance method
 36 |         content
 37 |             .background(
    :
 40 |                     Color.clear
 41 |                         .onAppear {
 42 |                             geometry = geo
    |                             |- error: setter for 'geometry' is only available in macOS 10.15 or newer
    |                             `- note: add 'if #available' version check
 43 |                         }
 44 |                         .onChange(of: geo.size) { _ in
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/DetectGestureViewModifier.swift:44:26: error: 'onChange(of:perform:)' is only available in macOS 11.0 or newer
  2 |
  3 | /// View modifier for detecting custom gestures
  4 | struct DetectGestureViewModifier<GestureDetection: Equatable>: ViewModifier {
    |        `- note: add '@available' attribute to enclosing generic struct
  5 |     /// Gesture state binding
  6 |     @State private var state = DetectGestureState<GestureDetection>()
    :
 33 |     }
 34 |
 35 |     func body(content: Content) -> some View {
    |          `- note: add '@available' attribute to enclosing instance method
 36 |         content
 37 |             .background(
    :
 42 |                             geometry = geo
 43 |                         }
 44 |                         .onChange(of: geo.size) { _ in
    |                          |- error: 'onChange(of:perform:)' is only available in macOS 11.0 or newer
    |                          `- note: add 'if #available' version check
 45 |                             geometry = geo
 46 |                         }
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/DetectGestureViewModifier.swift:45:29: error: setter for 'geometry' is only available in macOS 10.15 or newer
  2 |
  3 | /// View modifier for detecting custom gestures
  4 | struct DetectGestureViewModifier<GestureDetection: Equatable>: ViewModifier {
    |        `- note: add '@available' attribute to enclosing generic struct
  5 |     /// Gesture state binding
  6 |     @State private var state = DetectGestureState<GestureDetection>()
    :
 33 |     }
 34 |
 35 |     func body(content: Content) -> some View {
    |          `- note: add '@available' attribute to enclosing instance method
 36 |         content
 37 |             .background(
    :
 43 |                         }
 44 |                         .onChange(of: geo.size) { _ in
 45 |                             geometry = geo
    |                             |- error: setter for 'geometry' is only available in macOS 10.15 or newer
    |                             `- note: add 'if #available' version check
 46 |                         }
 47 |                 }
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/DetectGestureViewModifier.swift:49:14: error: 'gesture(_:including:)' is only available in macOS 10.15 or newer
  2 |
  3 | /// View modifier for detecting custom gestures
  4 | struct DetectGestureViewModifier<GestureDetection: Equatable>: ViewModifier {
    |        `- note: add '@available' attribute to enclosing generic struct
  5 |     /// Gesture state binding
  6 |     @State private var state = DetectGestureState<GestureDetection>()
    :
 33 |     }
 34 |
 35 |     func body(content: Content) -> some View {
    |          `- note: add '@available' attribute to enclosing instance method
 36 |         content
 37 |             .background(
    :
 47 |                 }
 48 |             )
 49 |             .gesture(
    |              |- error: 'gesture(_:including:)' is only available in macOS 10.15 or newer
    |              `- note: add 'if #available' version check
 50 |                 SpatialEventGesture(coordinateSpace: coordinateSpace)
 51 |                     .onChanged { events in
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/DetectGestureViewModifier.swift:50:17: error: 'SpatialEventGesture' is only available in macOS 15.0 or newer
  2 |
  3 | /// View modifier for detecting custom gestures
  4 | struct DetectGestureViewModifier<GestureDetection: Equatable>: ViewModifier {
    |        `- note: add '@available' attribute to enclosing generic struct
  5 |     /// Gesture state binding
  6 |     @State private var state = DetectGestureState<GestureDetection>()
    :
 33 |     }
 34 |
 35 |     func body(content: Content) -> some View {
    |          `- note: add '@available' attribute to enclosing instance method
 36 |         content
 37 |             .background(
    :
 48 |             )
 49 |             .gesture(
 50 |                 SpatialEventGesture(coordinateSpace: coordinateSpace)
    |                 |- error: 'SpatialEventGesture' is only available in macOS 15.0 or newer
    |                 `- note: add 'if #available' version check
 51 |                     .onChanged { events in
 52 |                         processGesture(spatialEventCollection: events, geo: geometry, timing: .changed)
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/DetectGestureViewModifier.swift:51:22: error: 'onChanged' is only available in macOS 10.15 or newer
  2 |
  3 | /// View modifier for detecting custom gestures
  4 | struct DetectGestureViewModifier<GestureDetection: Equatable>: ViewModifier {
    |        `- note: add '@available' attribute to enclosing generic struct
  5 |     /// Gesture state binding
  6 |     @State private var state = DetectGestureState<GestureDetection>()
    :
 33 |     }
 34 |
 35 |     func body(content: Content) -> some View {
    |          `- note: add '@available' attribute to enclosing instance method
 36 |         content
 37 |             .background(
    :
 49 |             .gesture(
 50 |                 SpatialEventGesture(coordinateSpace: coordinateSpace)
 51 |                     .onChanged { events in
    |                      |- error: 'onChanged' is only available in macOS 10.15 or newer
    |                      `- note: add 'if #available' version check
 52 |                         processGesture(spatialEventCollection: events, geo: geometry, timing: .changed)
 53 |                     }
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/DetectGestureViewModifier.swift:54:22: error: 'onEnded' is only available in macOS 10.15 or newer
  2 |
  3 | /// View modifier for detecting custom gestures
  4 | struct DetectGestureViewModifier<GestureDetection: Equatable>: ViewModifier {
    |        `- note: add '@available' attribute to enclosing generic struct
  5 |     /// Gesture state binding
  6 |     @State private var state = DetectGestureState<GestureDetection>()
    :
 33 |     }
 34 |
 35 |     func body(content: Content) -> some View {
    |          `- note: add '@available' attribute to enclosing instance method
 36 |         content
 37 |             .background(
    :
 52 |                         processGesture(spatialEventCollection: events, geo: geometry, timing: .changed)
 53 |                     }
 54 |                     .onEnded { events in
    |                      |- error: 'onEnded' is only available in macOS 10.15 or newer
    |                      `- note: add 'if #available' version check
 55 |                         processGesture(spatialEventCollection: events, geo: geometry, timing: .ended)
 56 |
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/DetectGestureViewModifier.swift:54:30: error: conformance of 'SpatialEventCollection' to 'Equatable' is only available in macOS 15.0 or newer
  2 |
  3 | /// View modifier for detecting custom gestures
  4 | struct DetectGestureViewModifier<GestureDetection: Equatable>: ViewModifier {
    |        `- note: add '@available' attribute to enclosing generic struct
  5 |     /// Gesture state binding
  6 |     @State private var state = DetectGestureState<GestureDetection>()
    :
 33 |     }
 34 |
 35 |     func body(content: Content) -> some View {
    |          `- note: add '@available' attribute to enclosing instance method
 36 |         content
 37 |             .background(
    :
 52 |                         processGesture(spatialEventCollection: events, geo: geometry, timing: .changed)
 53 |                     }
 54 |                     .onEnded { events in
    |                              |- error: conformance of 'SpatialEventCollection' to 'Equatable' is only available in macOS 15.0 or newer
    |                              `- note: add 'if #available' version check
 55 |                         processGesture(spatialEventCollection: events, geo: geometry, timing: .ended)
 56 |
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/DetectGestureViewModifier.swift:54:30: error: conformance of 'SpatialEventCollection' to 'Equatable' is only available in macOS 15.0 or newer
  2 |
  3 | /// View modifier for detecting custom gestures
  4 | struct DetectGestureViewModifier<GestureDetection: Equatable>: ViewModifier {
    |        `- note: add '@available' attribute to enclosing generic struct
  5 |     /// Gesture state binding
  6 |     @State private var state = DetectGestureState<GestureDetection>()
    :
 33 |     }
 34 |
 35 |     func body(content: Content) -> some View {
    |          `- note: add '@available' attribute to enclosing instance method
 36 |         content
 37 |             .background(
    :
 52 |                         processGesture(spatialEventCollection: events, geo: geometry, timing: .changed)
 53 |                     }
 54 |                     .onEnded { events in
    |                              |- error: conformance of 'SpatialEventCollection' to 'Equatable' is only available in macOS 15.0 or newer
    |                              `- note: add 'if #available' version check
 55 |                         processGesture(spatialEventCollection: events, geo: geometry, timing: .ended)
 56 |
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/DetectGestureViewModifier.swift:60:29: error: setter for 'state' is only available in macOS 10.15 or newer
  2 |
  3 | /// View modifier for detecting custom gestures
  4 | struct DetectGestureViewModifier<GestureDetection: Equatable>: ViewModifier {
    |        `- note: add '@available' attribute to enclosing generic struct
  5 |     /// Gesture state binding
  6 |     @State private var state = DetectGestureState<GestureDetection>()
    :
 33 |     }
 34 |
 35 |     func body(content: Content) -> some View {
    |          `- note: add '@available' attribute to enclosing instance method
 36 |         content
 37 |             .background(
    :
 58 |                         // In other words, gesture detection and handling can span multiple taps.
 59 |                         if state.handleFinished {
 60 |                             state = DetectGestureState<GestureDetection>()
    |                             |- error: setter for 'state' is only available in macOS 10.15 or newer
    |                             `- note: add 'if #available' version check
 61 |                         }
 62 |                     }
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/DetectGestureViewModifier.swift:64:14: error: 'onReceive(_:perform:)' is only available in macOS 10.15 or newer
  2 |
  3 | /// View modifier for detecting custom gestures
  4 | struct DetectGestureViewModifier<GestureDetection: Equatable>: ViewModifier {
    |        `- note: add '@available' attribute to enclosing generic struct
  5 |     /// Gesture state binding
  6 |     @State private var state = DetectGestureState<GestureDetection>()
    :
 33 |     }
 34 |
 35 |     func body(content: Content) -> some View {
    |          `- note: add '@available' attribute to enclosing instance method
 36 |         content
 37 |             .background(
    :
 62 |                     }
 63 |             )
 64 |             .onReceive(heartbeatTimer) { _ in
    |              |- error: 'onReceive(_:perform:)' is only available in macOS 10.15 or newer
    |              `- note: add 'if #available' version check
 65 |                 processGestureWithHeartBeat()
 66 |             }
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/DetectGestureViewModifier.swift:90:9: error: cannot pass as inout because setter for 'state' is only available in macOS 10.15 or newer
  2 |
  3 | /// View modifier for detecting custom gestures
  4 | struct DetectGestureViewModifier<GestureDetection: Equatable>: ViewModifier {
    |        `- note: add '@available' attribute to enclosing generic struct
  5 |     /// Gesture state binding
  6 |     @State private var state = DetectGestureState<GestureDetection>()
    :
 68 |
 69 |     /// Update state and perform gesture detection and handling.
 70 |     private func processGesture(
    |                  `- note: add '@available' attribute to enclosing instance method
 71 |         spatialEventCollection: SpatialEventCollection,
 72 |         geo: GeometryProxy?,
    :
 88 |             time: Date()
 89 |         )
 90 |         state.gestureValues.append(value)
    |         |- error: cannot pass as inout because setter for 'state' is only available in macOS 10.15 or newer
    |         `- note: add 'if #available' version check
 91 |
 92 |         // Detect and handle gesture
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/DetectGestureViewModifier.swift:125:9: error: cannot pass as inout because setter for 'state' is only available in macOS 10.15 or newer
  2 |
  3 | /// View modifier for detecting custom gestures
  4 | struct DetectGestureViewModifier<GestureDetection: Equatable>: ViewModifier {
    |        `- note: add '@available' attribute to enclosing generic struct
  5 |     /// Gesture state binding
  6 |     @State private var state = DetectGestureState<GestureDetection>()
    :
 95 |
 96 |     /// Perform gesture detection and handling with heartbeat.
 97 |     private func processGestureWithHeartBeat() {
    |                  `- note: add '@available' attribute to enclosing instance method
 98 |         // Exit if processing after gesture detection is finished.
 99 |         guard !state.handleFinished else {
    :
123 |         )
124 |
125 |         state.gestureValues.append(value)
    |         |- error: cannot pass as inout because setter for 'state' is only available in macOS 10.15 or newer
    |         `- note: add 'if #available' version check
126 |
127 |         // Detect and handle gesture
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/DetectGestureViewModifier.swift:145:17: error: setter for 'state' is only available in macOS 10.15 or newer
  2 |
  3 | /// View modifier for detecting custom gestures
  4 | struct DetectGestureViewModifier<GestureDetection: Equatable>: ViewModifier {
    |        `- note: add '@available' attribute to enclosing generic struct
  5 |     /// Gesture state binding
  6 |     @State private var state = DetectGestureState<GestureDetection>()
    :
130 |
131 |     /// Gesture detection and handling
132 |     private func processGesture() {
    |                  `- note: add '@available' attribute to enclosing instance method
133 |         guard !state.handleFinished else {
134 |             return
    :
143 |             // Record
144 |             if let detection {
145 |                 state.detection = detection
    |                 |- error: setter for 'state' is only available in macOS 10.15 or newer
    |                 `- note: add 'if #available' version check
146 |             }
147 |         }
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/DetectGestureViewModifier.swift:157:17: error: setter for 'state' is only available in macOS 10.15 or newer
  2 |
  3 | /// View modifier for detecting custom gestures
  4 | struct DetectGestureViewModifier<GestureDetection: Equatable>: ViewModifier {
    |        `- note: add '@available' attribute to enclosing generic struct
  5 |     /// Gesture state binding
  6 |     @State private var state = DetectGestureState<GestureDetection>()
    :
130 |
131 |     /// Gesture detection and handling
132 |     private func processGesture() {
    |                  `- note: add '@available' attribute to enclosing instance method
133 |         guard !state.handleFinished else {
134 |             return
    :
155 |
156 |             case .finished:
157 |                 state.handleFinished = handleResult == .finished
    |                 |- error: setter for 'state' is only available in macOS 10.15 or newer
    |                 `- note: add 'if #available' version check
158 |
159 |             case .cancel:
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/DetectGestureViewModifier.swift:160:17: error: setter for 'state' is only available in macOS 10.15 or newer
  2 |
  3 | /// View modifier for detecting custom gestures
  4 | struct DetectGestureViewModifier<GestureDetection: Equatable>: ViewModifier {
    |        `- note: add '@available' attribute to enclosing generic struct
  5 |     /// Gesture state binding
  6 |     @State private var state = DetectGestureState<GestureDetection>()
    :
130 |
131 |     /// Gesture detection and handling
132 |     private func processGesture() {
    |                  `- note: add '@available' attribute to enclosing instance method
133 |         guard !state.handleFinished else {
134 |             return
    :
158 |
159 |             case .cancel:
160 |                 state.detection = nil
    |                 |- error: setter for 'state' is only available in macOS 10.15 or newer
    |                 `- note: add 'if #available' version check
161 |             }
162 |
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/DetectGestureViewModifier.swift:196:9: error: conformance of 'ModifiedContent<Content, Modifier>' to 'View' is only available in macOS 10.15 or newer
178 | }
179 |
180 | public extension View {
    |        `- note: add '@available' attribute to enclosing extension
181 |     /// Set multiple custom gestures simultaneously and detect only one of them.
182 |     ///
    :
188 |     ///   - handleGesture: Closure that processes the detected gesture. This is called after the detectGesture phase completes. It receives the GestureDetection type returned by detectGesture. It returns a HandleGestureReturn enum to indicate whether handling is finished. If it returns .finished, it will not be called again, and all gesture processing is completely finished and reset. As long as it returns .yet, it continues to be called when the gesture state is updated (timing is the same as Gesture.changed()). It can also handle across multiple taps.
189 |     ///   - gestureEnded: Optional closure called immediately after handleGesture returns .finished, indicating gesture handling has completed. Useful for cleanup or state reset operations.
190 |     func detectGesture<GestureDetection: Equatable>(
    |          `- note: add '@available' attribute to enclosing instance method
191 |         _: GestureDetection.Type,
192 |         detect: @escaping (DetectGestureState<GestureDetection>) -> GestureDetection?,
    :
194 |         gestureEnded: ((_ detection: GestureDetection, DetectGestureState<GestureDetection>) -> Void)? = nil
195 |     ) -> some View {
196 |         modifier(DetectGestureViewModifier<GestureDetection>(detect: detect, handle: handle, gestureEnded: gestureEnded))
    |         |- error: conformance of 'ModifiedContent<Content, Modifier>' to 'View' is only available in macOS 10.15 or newer
    |         `- note: add 'if #available' version check
197 |     }
198 | }
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/DetectGestureViewModifier.swift:196:9: error: 'modifier' is only available in macOS 10.15 or newer
178 | }
179 |
180 | public extension View {
    |        `- note: add '@available' attribute to enclosing extension
181 |     /// Set multiple custom gestures simultaneously and detect only one of them.
182 |     ///
    :
188 |     ///   - handleGesture: Closure that processes the detected gesture. This is called after the detectGesture phase completes. It receives the GestureDetection type returned by detectGesture. It returns a HandleGestureReturn enum to indicate whether handling is finished. If it returns .finished, it will not be called again, and all gesture processing is completely finished and reset. As long as it returns .yet, it continues to be called when the gesture state is updated (timing is the same as Gesture.changed()). It can also handle across multiple taps.
189 |     ///   - gestureEnded: Optional closure called immediately after handleGesture returns .finished, indicating gesture handling has completed. Useful for cleanup or state reset operations.
190 |     func detectGesture<GestureDetection: Equatable>(
    |          `- note: add '@available' attribute to enclosing instance method
191 |         _: GestureDetection.Type,
192 |         detect: @escaping (DetectGestureState<GestureDetection>) -> GestureDetection?,
    :
194 |         gestureEnded: ((_ detection: GestureDetection, DetectGestureState<GestureDetection>) -> Void)? = nil
195 |     ) -> some View {
196 |         modifier(DetectGestureViewModifier<GestureDetection>(detect: detect, handle: handle, gestureEnded: gestureEnded))
    |         |- error: 'modifier' is only available in macOS 10.15 or newer
    |         `- note: add 'if #available' version check
197 |     }
198 | }
[14/16] Compiling MyModuleFeatureDetectGesture DetectGestureTouchSequence.swift
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/State/GesutureValue/DetectGestureTouchSequence.swift:21:44: error: 'SpatialEventCollection' is only available in macOS 15.0 or newer
 4 | public struct DetectGestureTouchSequence: Identifiable {
 5 |     /// Value containing gesture state information (like DragGesture.Value)
 6 |     public struct Value: Identifiable {
   |                   `- note: add '@available' attribute to enclosing struct
 7 |         /// Timing of gesture state update
 8 |         public enum Timing {
   :
19 |
20 |         /// Spatial event collection from SwiftUI
21 |         public let spatialEventCollection: SpatialEventCollection
   |                                            `- error: 'SpatialEventCollection' is only available in macOS 15.0 or newer
22 |         /// Geometry proxy for view bounds
23 |         public let geometryProxy: GeometryProxy
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/State/GesutureValue/DetectGestureTouchSequence.swift:23:35: error: 'GeometryProxy' is only available in macOS 10.15 or newer
 4 | public struct DetectGestureTouchSequence: Identifiable {
 5 |     /// Value containing gesture state information (like DragGesture.Value)
 6 |     public struct Value: Identifiable {
   |                   `- note: add '@available' attribute to enclosing struct
 7 |         /// Timing of gesture state update
 8 |         public enum Timing {
   :
21 |         public let spatialEventCollection: SpatialEventCollection
22 |         /// Geometry proxy for view bounds
23 |         public let geometryProxy: GeometryProxy
   |                                   `- error: 'GeometryProxy' is only available in macOS 10.15 or newer
24 |         /// Timing of this state update
25 |         public var timing: Timing
[15/16] Compiling MyModuleFeatureDetectGesture DetectGestureFingerSequence.swift
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/State/GesutureValue/DetectGestureFingerSequence.swift:12:53: error: 'SpatialEventCollection' is only available in macOS 15.0 or newer
  8 |     public struct Finger {
  9 |         /// DetectGestureTouchSequence.Value formatted to focus on a single finger event
 10 |         public struct Event {
    |                       `- note: add '@available' attribute to enclosing struct
 11 |             /// event of one finger.
 12 |             public let spatialEventCollectionEvent: SpatialEventCollection.Event
    |                                                     `- error: 'SpatialEventCollection' is only available in macOS 15.0 or newer
 13 |             /// attachment information (DetectGestureTouchSequence.Value)
 14 |             public let relatedGestureValue: DetectGestureTouchSequence.Value
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/State/GesutureValue/DetectGestureFingerSequence.swift:18:51: error: 'SpatialEventCollection' is only available in macOS 15.0 or newer
  6 | public struct DetectGestureFingerSequence {
  7 |     /// Collection of events for a single finger
  8 |     public struct Finger {
    |                   `- note: add '@available' attribute to enclosing struct
  9 |         /// DetectGestureTouchSequence.Value formatted to focus on a single finger event
 10 |         public struct Event {
    :
 16 |
 17 |         /// Unique identifier for the finger event
 18 |         public let spatialEventCollectionEventID: SpatialEventCollection.Event.ID
    |                                                   `- error: 'SpatialEventCollection' is only available in macOS 15.0 or newer
 19 |         /// Array of values for this finger's touch
 20 |         public let events: [Event]
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/State/GesutureValue/DetectGestureFingerSequence.swift:22:30: error: 'SpatialEventCollection' is only available in macOS 15.0 or newer
  6 | public struct DetectGestureFingerSequence {
  7 |     /// Collection of events for a single finger
  8 |     public struct Finger {
    |                   `- note: add '@available' attribute to enclosing struct
  9 |         /// DetectGestureTouchSequence.Value formatted to focus on a single finger event
 10 |         public struct Event {
    :
 20 |         public let events: [Event]
 21 |
 22 |         public init(eventID: SpatialEventCollection.Event.ID, values: [Event]) {
    |                |             `- error: 'SpatialEventCollection' is only available in macOS 15.0 or newer
    |                `- note: add '@available' attribute to enclosing initializer
 23 |             spatialEventCollectionEventID = eventID
 24 |             events = values.sortedByTimestamp
[16/16] Compiling MyModuleFeatureDetectGesture DetectGestureState.swift
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/State/DetectGestureState.swift:465:23: error: 'SpatialEventCollection' is only available in macOS 15.0 or newer
 70 | // MARK: - Default Gesture Detection
 71 |
 72 | public extension DetectGestureState {
    |        `- note: add '@available' attribute to enclosing extension
 73 |     /// Whether the specified default gesture has already been detected
 74 |     func detected(
    :
462 |
463 |     /// Determine if the pinch gesture has ended
464 |     private func isPinchEnded(
    |                  `- note: add '@available' attribute to enclosing instance method
465 |         eventIDs: Set<SpatialEventCollection.Event.ID>?,
    |                       `- error: 'SpatialEventCollection' is only available in macOS 15.0 or newer
466 |         lastGestureValue: DetectGestureTouchSequence.Value?
467 |     ) -> Bool {
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/State/DetectGestureState.swift:414:34: error: 'SpatialEventCollection' is only available in macOS 15.0 or newer
 70 | // MARK: - Default Gesture Detection
 71 |
 72 | public extension DetectGestureState {
    |        `- note: add '@available' attribute to enclosing extension
 73 |     /// Whether the specified default gesture has already been detected
 74 |     func detected(
    :
409 |
410 |     /// Calculate pinch state from gesture values
411 |     private func pinchValues(from gestureValues: [DetectGestureTouchSequence.Value]) -> [DetectGesturePinch] {
    |                  `- note: add '@available' attribute to enclosing instance method
412 |         var pinches: [DetectGesturePinch] = []
413 |         var currentPinchValues: [DetectGesturePinchValue] = []
414 |         var currentEventIDs: Set<SpatialEventCollection.Event.ID>? = nil
    |                                  |- error: 'SpatialEventCollection' is only available in macOS 15.0 or newer
    |                                  `- note: add 'if #available' version check
415 |
416 |         for gestureValue in gestureValues {
/Users/admin/builder/spi-builder-workspace/Sources/Feature/DetectGesture/State/DetectGestureState.swift:420:35: error: 'SpatialEventCollection' is only available in macOS 15.0 or newer
 70 | // MARK: - Default Gesture Detection
 71 |
 72 | public extension DetectGestureState {
    |        `- note: add '@available' attribute to enclosing extension
 73 |     /// Whether the specified default gesture has already been detected
 74 |     func detected(
    :
409 |
410 |     /// Calculate pinch state from gesture values
411 |     private func pinchValues(from gestureValues: [DetectGestureTouchSequence.Value]) -> [DetectGesturePinch] {
    |                  `- note: add '@available' attribute to enclosing instance method
412 |         var pinches: [DetectGesturePinch] = []
413 |         var currentPinchValues: [DetectGesturePinchValue] = []
    :
418 |             if gestureValue.fingerCount == 2 {
419 |                 let fingerValues = gestureValue.asFingerEvents()
420 |                 var eventIDs: Set<SpatialEventCollection.Event.ID> {
    |                                   |- error: 'SpatialEventCollection' is only available in macOS 15.0 or newer
    |                                   `- note: add 'if #available' version check
421 |                     Set(fingerValues.map { $0.spatialEventCollectionEvent.id })
422 |                 }
BUILD FAILURE 6.3 macosSpm