The Swift Package Index logo.Swift Package Index

Has it really been five years since Swift Package Index launched? Read our anniversary blog post!

Build Information

Failed to build GeoMonitor, reference main (37767d), with Swift 6.2 (beta) for macOS (SPM) on 20 Jun 2025 05:42:50 UTC.

Build Command

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

Build Log

========================================
RunAll
========================================
Builder version: 4.64.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/skedgo/GeoMonitor.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/skedgo/GeoMonitor
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
HEAD is now at 37767d6 Fix log messages
Cloned https://github.com/skedgo/GeoMonitor.git
Revision (git rev-parse @):
37767d625be8229f073ee2b7281848e2c6511e67
SUCCESS checkout https://github.com/skedgo/GeoMonitor.git at main
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.2
Building package at path:  $PWD
https://github.com/skedgo/GeoMonitor.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-26.0.0-Beta.app xcrun swift build --arch arm64
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version-1EA4D86E10B52AF.txt
error: emit-module command failed with exit code 1 (use -v to see invocation)
[3/5] Compiling GeoMonitor PrioritizedRegion.swift
[4/5] Emitting module GeoMonitor
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:80:28: error: 'Task' is only available in macOS 10.15 or newer
 20 | @available(iOS 14.0, *)
 21 | @MainActor
 22 | public class GeoMonitor: NSObject, ObservableObject {
    |              `- note: add @available attribute to enclosing class
 23 |   enum Constants {
 24 |     static var currentLocationRegionMaximumRadius: CLLocationDistance      = 2_500
    :
 78 |   private var recentlyReportedRegionIdentifiers: [(String, Date)] = []
 79 |
 80 |   private var monitorTask: Task<Void, Error>? = nil
    |                            `- error: 'Task' is only available in macOS 10.15 or newer
 81 |
 82 |   public var maxRegionsToMonitor = 20
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:127:4: error: 'Published' is only available in macOS 10.15 or newer
 20 | @available(iOS 14.0, *)
 21 | @MainActor
 22 | public class GeoMonitor: NSObject, ObservableObject {
    |              `- note: add @available attribute to enclosing class
 23 |   enum Constants {
 24 |     static var currentLocationRegionMaximumRadius: CLLocationDistance      = 2_500
    :
125 |
126 |   /// Whether user has granted any kind of access to the device's location, when-in-use or always
127 |   @Published public var hasAccess: Bool
    |    `- error: 'Published' is only available in macOS 10.15 or newer
128 |
129 |   private var askHandler: (Bool) -> Void = { _ in }
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:187:4: error: 'Published' is only available in macOS 10.15 or newer
 20 | @available(iOS 14.0, *)
 21 | @MainActor
 22 | public class GeoMonitor: NSObject, ObservableObject {
    |              `- note: add @available attribute to enclosing class
 23 |   enum Constants {
 24 |     static var currentLocationRegionMaximumRadius: CLLocationDistance      = 2_500
    :
185 |   // MARK: - Location tracking
186 |
187 |   @Published public var currentLocation: CLLocation?
    |    `- error: 'Published' is only available in macOS 10.15 or newer
188 |
189 |   @Published public var isTracking: Bool = false {
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:189:4: error: 'Published' is only available in macOS 10.15 or newer
 20 | @available(iOS 14.0, *)
 21 | @MainActor
 22 | public class GeoMonitor: NSObject, ObservableObject {
    |              `- note: add @available attribute to enclosing class
 23 |   enum Constants {
 24 |     static var currentLocationRegionMaximumRadius: CLLocationDistance      = 2_500
    :
187 |   @Published public var currentLocation: CLLocation?
188 |
189 |   @Published public var isTracking: Bool = false {
    |    `- error: 'Published' is only available in macOS 10.15 or newer
190 |     didSet {
191 |       if isTracking {
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:256:47: error: 'authorizationStatus' is only available in macOS 11.0 or newer
 20 | @available(iOS 14.0, *)
 21 | @MainActor
 22 | public class GeoMonitor: NSObject, ObservableObject {
    |              `- note: add @available attribute to enclosing class
 23 |   enum Constants {
 24 |     static var currentLocationRegionMaximumRadius: CLLocationDistance      = 2_500
    :
254 |     didSet {
255 |       guard enableInBackground != oldValue else { return }
256 |       if enableInBackground, (locationManager.authorizationStatus == .notDetermined || locationManager.authorizationStatus == .authorizedWhenInUse) {
    |                                               |- error: 'authorizationStatus' is only available in macOS 11.0 or newer
    |                                               `- note: add 'if #available' version check
257 |         ask(forBackground: true)
258 |       } else if enableInBackground {
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:256:104: error: 'authorizationStatus' is only available in macOS 11.0 or newer
 20 | @available(iOS 14.0, *)
 21 | @MainActor
 22 | public class GeoMonitor: NSObject, ObservableObject {
    |              `- note: add @available attribute to enclosing class
 23 |   enum Constants {
 24 |     static var currentLocationRegionMaximumRadius: CLLocationDistance      = 2_500
    :
254 |     didSet {
255 |       guard enableInBackground != oldValue else { return }
256 |       if enableInBackground, (locationManager.authorizationStatus == .notDetermined || locationManager.authorizationStatus == .authorizedWhenInUse) {
    |                                                                                                        |- error: 'authorizationStatus' is only available in macOS 11.0 or newer
    |                                                                                                        `- note: add 'if #available' version check
257 |         ask(forBackground: true)
258 |       } else if enableInBackground {
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:256:128: error: 'authorizedWhenInUse' is unavailable in macOS
254 |     didSet {
255 |       guard enableInBackground != oldValue else { return }
256 |       if enableInBackground, (locationManager.authorizationStatus == .notDetermined || locationManager.authorizationStatus == .authorizedWhenInUse) {
    |                                                                                                                                `- error: 'authorizedWhenInUse' is unavailable in macOS
257 |         ask(forBackground: true)
258 |       } else if enableInBackground {
CoreLocation.CLAuthorizationStatus.authorizedWhenInUse:3:8: note: 'authorizedWhenInUse' has been explicitly marked unavailable here
1 | enum CLAuthorizationStatus {
2 | @available(macOS, unavailable)
3 |   case authorizedWhenInUse}
  |        `- note: 'authorizedWhenInUse' has been explicitly marked unavailable here
4 |
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:253:4: error: 'Published' is only available in macOS 10.15 or newer
 20 | @available(iOS 14.0, *)
 21 | @MainActor
 22 | public class GeoMonitor: NSObject, ObservableObject {
    |              `- note: add @available attribute to enclosing class
 23 |   enum Constants {
 24 |     static var currentLocationRegionMaximumRadius: CLLocationDistance      = 2_500
    :
251 |   ///
252 |   /// - warning: Setting this will prompt for access to the user's location with always-on tracking.
253 |   @Published public var enableInBackground: Bool = false {
    |    `- error: 'Published' is only available in macOS 10.15 or newer
254 |     didSet {
255 |       guard enableInBackground != oldValue else { return }
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:277:27: error: 'startMonitoringVisits()' is only available in macOS 10.15 or newer
 20 | @available(iOS 14.0, *)
 21 | @MainActor
 22 | public class GeoMonitor: NSObject, ObservableObject {
    |              `- note: add @available attribute to enclosing class
 23 |   enum Constants {
 24 |     static var currentLocationRegionMaximumRadius: CLLocationDistance      = 2_500
    :
275 |       if isMonitoring {
276 |         if enableVisitMonitoring {
277 |           locationManager.startMonitoringVisits()
    |                           |- error: 'startMonitoringVisits()' is only available in macOS 10.15 or newer
    |                           `- note: add 'if #available' version check
278 |         } else {
279 |           locationManager.stopMonitoringVisits()
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:279:27: error: 'stopMonitoringVisits()' is only available in macOS 10.15 or newer
 20 | @available(iOS 14.0, *)
 21 | @MainActor
 22 | public class GeoMonitor: NSObject, ObservableObject {
    |              `- note: add @available attribute to enclosing class
 23 |   enum Constants {
 24 |     static var currentLocationRegionMaximumRadius: CLLocationDistance      = 2_500
    :
277 |           locationManager.startMonitoringVisits()
278 |         } else {
279 |           locationManager.stopMonitoringVisits()
    |                           |- error: 'stopMonitoringVisits()' is only available in macOS 10.15 or newer
    |                           `- note: add 'if #available' version check
280 |         }
281 |       }
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:22:36: error: 'ObservableObject' is only available in macOS 10.15 or newer
 20 | @available(iOS 14.0, *)
 21 | @MainActor
 22 | public class GeoMonitor: NSObject, ObservableObject {
    |              |                     `- error: 'ObservableObject' is only available in macOS 10.15 or newer
    |              `- note: add @available attribute to enclosing class
 23 |   enum Constants {
 24 |     static var currentLocationRegionMaximumRadius: CLLocationDistance      = 2_500
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:567:77: error: 'CLVisit' is only available in macOS 10.15 or newer
502 |
503 | @available(iOS 14.0, *)
504 | extension GeoMonitor: CLLocationManagerDelegate {
    | `- note: add @available attribute to enclosing extension
505 |
506 |   public func locationManager(_ manager: CLLocationManager, didEnterRegion region: CLRegion) {
    :
565 |   }
566 |
567 |   public func locationManager(_ manager: CLLocationManager, didVisit visit: CLVisit) {
    |               |                                                             `- error: 'CLVisit' is only available in macOS 10.15 or newer
    |               `- note: add @available attribute to enclosing instance method
568 |     dispatchPrecondition(condition: .onQueue(.main))
569 |
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:504:23: warning: conformance of 'GeoMonitor' to protocol 'CLLocationManagerDelegate' crosses into main actor-isolated code and can cause data races; this is an error in the Swift 6 language mode [#ConformanceIsolation]
502 |
503 | @available(iOS 14.0, *)
504 | extension GeoMonitor: CLLocationManagerDelegate {
    | |                     |- warning: conformance of 'GeoMonitor' to protocol 'CLLocationManagerDelegate' crosses into main actor-isolated code and can cause data races; this is an error in the Swift 6 language mode [#ConformanceIsolation]
    | |                     |- note: isolate this conformance to the main actor with '@MainActor'
    | |                     `- note: turn data races into runtime errors with '@preconcurrency'
    | `- note: mark all declarations used in the conformance 'nonisolated'
505 |
506 |   public func locationManager(_ manager: CLLocationManager, didEnterRegion region: CLRegion) {
    |               `- note: main actor-isolated instance method 'locationManager(_:didEnterRegion:)' cannot satisfy nonisolated requirement
507 |     dispatchPrecondition(condition: .onQueue(.main))
508 |
    :
547 |   }
548 |
549 |   public func locationManager(_ manager: CLLocationManager, didExitRegion region: CLRegion) {
    |               `- note: main actor-isolated instance method 'locationManager(_:didExitRegion:)' cannot satisfy nonisolated requirement
550 |     dispatchPrecondition(condition: .onQueue(.main))
551 |
    :
565 |   }
566 |
567 |   public func locationManager(_ manager: CLLocationManager, didVisit visit: CLVisit) {
    |               `- note: main actor-isolated instance method 'locationManager(_:didVisit:)' cannot satisfy nonisolated requirement
568 |     dispatchPrecondition(condition: .onQueue(.main))
569 |
    :
586 |   }
587 |
588 |   public func locationManager(_ manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) {
    |               `- note: main actor-isolated instance method 'locationManager(_:didUpdateLocations:)' cannot satisfy nonisolated requirement
589 | #if DEBUG
590 |     print("GeoMonitor updated locations -> \(locations)")
    :
608 |   }
609 |
610 |   public func locationManagerDidPauseLocationUpdates(_ manager: CLLocationManager) {
    |               `- note: main actor-isolated instance method 'locationManagerDidPauseLocationUpdates' cannot satisfy nonisolated requirement
611 |     eventHandler(.status("GeoMonitor paused updates -> \(manager == locationManager)", .stateChange))
612 |   }
613 |
614 |   public func locationManagerDidResumeLocationUpdates(_ manager: CLLocationManager) {
    |               `- note: main actor-isolated instance method 'locationManagerDidResumeLocationUpdates' cannot satisfy nonisolated requirement
615 |     eventHandler(.status("GeoMonitor resumed updates -> \(manager == locationManager)", .stateChange))
616 |   }
617 |
618 |   public func locationManager(_ manager: CLLocationManager, didFailWithError error: Error) {
    |               `- note: main actor-isolated instance method 'locationManager(_:didFailWithError:)' cannot satisfy nonisolated requirement
619 |     eventHandler(.status("GeoMonitor failed -> \(error) -- \(error.localizedDescription)", .failure))
620 |     notify(.failure(error))
621 |   }
622 |
623 |   public func locationManagerDidChangeAuthorization(_ manager: CLLocationManager) {
    |               `- note: main actor-isolated instance method 'locationManagerDidChangeAuthorization' cannot satisfy nonisolated requirement
624 |     dispatchPrecondition(condition: .onQueue(.main))
625 |
[#ConformanceIsolation]: <https://docs.swift.org/compiler/documentation/diagnostics/conformance-isolation>
[5/5] Compiling GeoMonitor GeoMonitor.swift
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:80:28: error: 'Task' is only available in macOS 10.15 or newer
 20 | @available(iOS 14.0, *)
 21 | @MainActor
 22 | public class GeoMonitor: NSObject, ObservableObject {
    |              `- note: add @available attribute to enclosing class
 23 |   enum Constants {
 24 |     static var currentLocationRegionMaximumRadius: CLLocationDistance      = 2_500
    :
 78 |   private var recentlyReportedRegionIdentifiers: [(String, Date)] = []
 79 |
 80 |   private var monitorTask: Task<Void, Error>? = nil
    |                            `- error: 'Task' is only available in macOS 10.15 or newer
 81 |
 82 |   public var maxRegionsToMonitor = 20
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:127:4: error: 'Published' is only available in macOS 10.15 or newer
 20 | @available(iOS 14.0, *)
 21 | @MainActor
 22 | public class GeoMonitor: NSObject, ObservableObject {
    |              `- note: add @available attribute to enclosing class
 23 |   enum Constants {
 24 |     static var currentLocationRegionMaximumRadius: CLLocationDistance      = 2_500
    :
125 |
126 |   /// Whether user has granted any kind of access to the device's location, when-in-use or always
127 |   @Published public var hasAccess: Bool
    |    `- error: 'Published' is only available in macOS 10.15 or newer
128 |
129 |   private var askHandler: (Bool) -> Void = { _ in }
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:187:4: error: 'Published' is only available in macOS 10.15 or newer
 20 | @available(iOS 14.0, *)
 21 | @MainActor
 22 | public class GeoMonitor: NSObject, ObservableObject {
    |              `- note: add @available attribute to enclosing class
 23 |   enum Constants {
 24 |     static var currentLocationRegionMaximumRadius: CLLocationDistance      = 2_500
    :
185 |   // MARK: - Location tracking
186 |
187 |   @Published public var currentLocation: CLLocation?
    |    `- error: 'Published' is only available in macOS 10.15 or newer
188 |
189 |   @Published public var isTracking: Bool = false {
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:189:4: error: 'Published' is only available in macOS 10.15 or newer
 20 | @available(iOS 14.0, *)
 21 | @MainActor
 22 | public class GeoMonitor: NSObject, ObservableObject {
    |              `- note: add @available attribute to enclosing class
 23 |   enum Constants {
 24 |     static var currentLocationRegionMaximumRadius: CLLocationDistance      = 2_500
    :
187 |   @Published public var currentLocation: CLLocation?
188 |
189 |   @Published public var isTracking: Bool = false {
    |    `- error: 'Published' is only available in macOS 10.15 or newer
190 |     didSet {
191 |       if isTracking {
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:256:47: error: 'authorizationStatus' is only available in macOS 11.0 or newer
 20 | @available(iOS 14.0, *)
 21 | @MainActor
 22 | public class GeoMonitor: NSObject, ObservableObject {
    |              `- note: add @available attribute to enclosing class
 23 |   enum Constants {
 24 |     static var currentLocationRegionMaximumRadius: CLLocationDistance      = 2_500
    :
254 |     didSet {
255 |       guard enableInBackground != oldValue else { return }
256 |       if enableInBackground, (locationManager.authorizationStatus == .notDetermined || locationManager.authorizationStatus == .authorizedWhenInUse) {
    |                                               |- error: 'authorizationStatus' is only available in macOS 11.0 or newer
    |                                               `- note: add 'if #available' version check
257 |         ask(forBackground: true)
258 |       } else if enableInBackground {
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:256:104: error: 'authorizationStatus' is only available in macOS 11.0 or newer
 20 | @available(iOS 14.0, *)
 21 | @MainActor
 22 | public class GeoMonitor: NSObject, ObservableObject {
    |              `- note: add @available attribute to enclosing class
 23 |   enum Constants {
 24 |     static var currentLocationRegionMaximumRadius: CLLocationDistance      = 2_500
    :
254 |     didSet {
255 |       guard enableInBackground != oldValue else { return }
256 |       if enableInBackground, (locationManager.authorizationStatus == .notDetermined || locationManager.authorizationStatus == .authorizedWhenInUse) {
    |                                                                                                        |- error: 'authorizationStatus' is only available in macOS 11.0 or newer
    |                                                                                                        `- note: add 'if #available' version check
257 |         ask(forBackground: true)
258 |       } else if enableInBackground {
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:256:128: error: 'authorizedWhenInUse' is unavailable in macOS
254 |     didSet {
255 |       guard enableInBackground != oldValue else { return }
256 |       if enableInBackground, (locationManager.authorizationStatus == .notDetermined || locationManager.authorizationStatus == .authorizedWhenInUse) {
    |                                                                                                                                `- error: 'authorizedWhenInUse' is unavailable in macOS
257 |         ask(forBackground: true)
258 |       } else if enableInBackground {
CoreLocation.CLAuthorizationStatus.authorizedWhenInUse:3:8: note: 'authorizedWhenInUse' has been explicitly marked unavailable here
1 | enum CLAuthorizationStatus {
2 | @available(macOS, unavailable)
3 |   case authorizedWhenInUse}
  |        `- note: 'authorizedWhenInUse' has been explicitly marked unavailable here
4 |
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:253:4: error: 'Published' is only available in macOS 10.15 or newer
 20 | @available(iOS 14.0, *)
 21 | @MainActor
 22 | public class GeoMonitor: NSObject, ObservableObject {
    |              `- note: add @available attribute to enclosing class
 23 |   enum Constants {
 24 |     static var currentLocationRegionMaximumRadius: CLLocationDistance      = 2_500
    :
251 |   ///
252 |   /// - warning: Setting this will prompt for access to the user's location with always-on tracking.
253 |   @Published public var enableInBackground: Bool = false {
    |    `- error: 'Published' is only available in macOS 10.15 or newer
254 |     didSet {
255 |       guard enableInBackground != oldValue else { return }
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:277:27: error: 'startMonitoringVisits()' is only available in macOS 10.15 or newer
 20 | @available(iOS 14.0, *)
 21 | @MainActor
 22 | public class GeoMonitor: NSObject, ObservableObject {
    |              `- note: add @available attribute to enclosing class
 23 |   enum Constants {
 24 |     static var currentLocationRegionMaximumRadius: CLLocationDistance      = 2_500
    :
275 |       if isMonitoring {
276 |         if enableVisitMonitoring {
277 |           locationManager.startMonitoringVisits()
    |                           |- error: 'startMonitoringVisits()' is only available in macOS 10.15 or newer
    |                           `- note: add 'if #available' version check
278 |         } else {
279 |           locationManager.stopMonitoringVisits()
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:279:27: error: 'stopMonitoringVisits()' is only available in macOS 10.15 or newer
 20 | @available(iOS 14.0, *)
 21 | @MainActor
 22 | public class GeoMonitor: NSObject, ObservableObject {
    |              `- note: add @available attribute to enclosing class
 23 |   enum Constants {
 24 |     static var currentLocationRegionMaximumRadius: CLLocationDistance      = 2_500
    :
277 |           locationManager.startMonitoringVisits()
278 |         } else {
279 |           locationManager.stopMonitoringVisits()
    |                           |- error: 'stopMonitoringVisits()' is only available in macOS 10.15 or newer
    |                           `- note: add 'if #available' version check
280 |         }
281 |       }
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:22:36: error: 'ObservableObject' is only available in macOS 10.15 or newer
 20 | @available(iOS 14.0, *)
 21 | @MainActor
 22 | public class GeoMonitor: NSObject, ObservableObject {
    |              |                     `- error: 'ObservableObject' is only available in macOS 10.15 or newer
    |              `- note: add @available attribute to enclosing class
 23 |   enum Constants {
 24 |     static var currentLocationRegionMaximumRadius: CLLocationDistance      = 2_500
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:567:77: error: 'CLVisit' is only available in macOS 10.15 or newer
502 |
503 | @available(iOS 14.0, *)
504 | extension GeoMonitor: CLLocationManagerDelegate {
    | `- note: add @available attribute to enclosing extension
505 |
506 |   public func locationManager(_ manager: CLLocationManager, didEnterRegion region: CLRegion) {
    :
565 |   }
566 |
567 |   public func locationManager(_ manager: CLLocationManager, didVisit visit: CLVisit) {
    |               |                                                             `- error: 'CLVisit' is only available in macOS 10.15 or newer
    |               `- note: add @available attribute to enclosing instance method
568 |     dispatchPrecondition(condition: .onQueue(.main))
569 |
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:504:23: warning: conformance of 'GeoMonitor' to protocol 'CLLocationManagerDelegate' crosses into main actor-isolated code and can cause data races; this is an error in the Swift 6 language mode [#ConformanceIsolation]
502 |
503 | @available(iOS 14.0, *)
504 | extension GeoMonitor: CLLocationManagerDelegate {
    | |                     |- warning: conformance of 'GeoMonitor' to protocol 'CLLocationManagerDelegate' crosses into main actor-isolated code and can cause data races; this is an error in the Swift 6 language mode [#ConformanceIsolation]
    | |                     |- note: isolate this conformance to the main actor with '@MainActor'
    | |                     `- note: turn data races into runtime errors with '@preconcurrency'
    | `- note: mark all declarations used in the conformance 'nonisolated'
505 |
506 |   public func locationManager(_ manager: CLLocationManager, didEnterRegion region: CLRegion) {
    |               `- note: main actor-isolated instance method 'locationManager(_:didEnterRegion:)' cannot satisfy nonisolated requirement
507 |     dispatchPrecondition(condition: .onQueue(.main))
508 |
    :
547 |   }
548 |
549 |   public func locationManager(_ manager: CLLocationManager, didExitRegion region: CLRegion) {
    |               `- note: main actor-isolated instance method 'locationManager(_:didExitRegion:)' cannot satisfy nonisolated requirement
550 |     dispatchPrecondition(condition: .onQueue(.main))
551 |
    :
565 |   }
566 |
567 |   public func locationManager(_ manager: CLLocationManager, didVisit visit: CLVisit) {
    |               `- note: main actor-isolated instance method 'locationManager(_:didVisit:)' cannot satisfy nonisolated requirement
568 |     dispatchPrecondition(condition: .onQueue(.main))
569 |
    :
586 |   }
587 |
588 |   public func locationManager(_ manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) {
    |               `- note: main actor-isolated instance method 'locationManager(_:didUpdateLocations:)' cannot satisfy nonisolated requirement
589 | #if DEBUG
590 |     print("GeoMonitor updated locations -> \(locations)")
    :
608 |   }
609 |
610 |   public func locationManagerDidPauseLocationUpdates(_ manager: CLLocationManager) {
    |               `- note: main actor-isolated instance method 'locationManagerDidPauseLocationUpdates' cannot satisfy nonisolated requirement
611 |     eventHandler(.status("GeoMonitor paused updates -> \(manager == locationManager)", .stateChange))
612 |   }
613 |
614 |   public func locationManagerDidResumeLocationUpdates(_ manager: CLLocationManager) {
    |               `- note: main actor-isolated instance method 'locationManagerDidResumeLocationUpdates' cannot satisfy nonisolated requirement
615 |     eventHandler(.status("GeoMonitor resumed updates -> \(manager == locationManager)", .stateChange))
616 |   }
617 |
618 |   public func locationManager(_ manager: CLLocationManager, didFailWithError error: Error) {
    |               `- note: main actor-isolated instance method 'locationManager(_:didFailWithError:)' cannot satisfy nonisolated requirement
619 |     eventHandler(.status("GeoMonitor failed -> \(error) -- \(error.localizedDescription)", .failure))
620 |     notify(.failure(error))
621 |   }
622 |
623 |   public func locationManagerDidChangeAuthorization(_ manager: CLLocationManager) {
    |               `- note: main actor-isolated instance method 'locationManagerDidChangeAuthorization' cannot satisfy nonisolated requirement
624 |     dispatchPrecondition(condition: .onQueue(.main))
625 |
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:106:5: error: setter for 'hasAccess' is only available in macOS 10.15 or newer
 20 | @available(iOS 14.0, *)
 21 | @MainActor
 22 | public class GeoMonitor: NSObject, ObservableObject {
    |              `- note: add @available attribute to enclosing class
 23 |   enum Constants {
 24 |     static var currentLocationRegionMaximumRadius: CLLocationDistance      = 2_500
    :
100 |   ///   - dataSource: Data source that provides regions. Will be maintained strongly.
101 |   ///   - onEvent: Handler that's called when a relevant event is happening, including when one of the monitored regions is entered.
102 |   public init(enabledKey: String? = nil, dataSource: GeoMonitorDataSource, onEvent: @escaping (Event) -> Void) {
    |          `- note: add @available attribute to enclosing initializer
103 |     fetchSource = dataSource
104 |     eventHandler = onEvent
105 |     locationManager = .init()
106 |     hasAccess = false
    |     |- error: setter for 'hasAccess' is only available in macOS 10.15 or newer
    |     `- note: add 'if #available' version check
107 |     self.enabledKey = enabledKey
108 |     if let enabledKey = enabledKey {
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:109:7: error: setter for 'enableInBackground' is only available in macOS 10.15 or newer
 20 | @available(iOS 14.0, *)
 21 | @MainActor
 22 | public class GeoMonitor: NSObject, ObservableObject {
    |              `- note: add @available attribute to enclosing class
 23 |   enum Constants {
 24 |     static var currentLocationRegionMaximumRadius: CLLocationDistance      = 2_500
    :
100 |   ///   - dataSource: Data source that provides regions. Will be maintained strongly.
101 |   ///   - onEvent: Handler that's called when a relevant event is happening, including when one of the monitored regions is entered.
102 |   public init(enabledKey: String? = nil, dataSource: GeoMonitorDataSource, onEvent: @escaping (Event) -> Void) {
    |          `- note: add @available attribute to enclosing initializer
103 |     fetchSource = dataSource
104 |     eventHandler = onEvent
    :
107 |     self.enabledKey = enabledKey
108 |     if let enabledKey = enabledKey {
109 |       enableInBackground = UserDefaults.standard.bool(forKey: enabledKey)
    |       |- error: setter for 'enableInBackground' is only available in macOS 10.15 or newer
    |       `- note: add 'if #available' version check
110 |     } else {
111 |       enableInBackground = false
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:111:7: error: setter for 'enableInBackground' is only available in macOS 10.15 or newer
 20 | @available(iOS 14.0, *)
 21 | @MainActor
 22 | public class GeoMonitor: NSObject, ObservableObject {
    |              `- note: add @available attribute to enclosing class
 23 |   enum Constants {
 24 |     static var currentLocationRegionMaximumRadius: CLLocationDistance      = 2_500
    :
100 |   ///   - dataSource: Data source that provides regions. Will be maintained strongly.
101 |   ///   - onEvent: Handler that's called when a relevant event is happening, including when one of the monitored regions is entered.
102 |   public init(enabledKey: String? = nil, dataSource: GeoMonitorDataSource, onEvent: @escaping (Event) -> Void) {
    |          `- note: add @available attribute to enclosing initializer
103 |     fetchSource = dataSource
104 |     eventHandler = onEvent
    :
109 |       enableInBackground = UserDefaults.standard.bool(forKey: enabledKey)
110 |     } else {
111 |       enableInBackground = false
    |       |- error: setter for 'enableInBackground' is only available in macOS 10.15 or newer
    |       `- note: add 'if #available' version check
112 |     }
113 |
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:117:21: error: 'allowsBackgroundLocationUpdates' is only available in macOS 10.15 or newer
 20 | @available(iOS 14.0, *)
 21 | @MainActor
 22 | public class GeoMonitor: NSObject, ObservableObject {
    |              `- note: add @available attribute to enclosing class
 23 |   enum Constants {
 24 |     static var currentLocationRegionMaximumRadius: CLLocationDistance      = 2_500
    :
100 |   ///   - dataSource: Data source that provides regions. Will be maintained strongly.
101 |   ///   - onEvent: Handler that's called when a relevant event is happening, including when one of the monitored regions is entered.
102 |   public init(enabledKey: String? = nil, dataSource: GeoMonitorDataSource, onEvent: @escaping (Event) -> Void) {
    |          `- note: add @available attribute to enclosing initializer
103 |     fetchSource = dataSource
104 |     eventHandler = onEvent
    :
115 |
116 |     locationManager.delegate = self
117 |     locationManager.allowsBackgroundLocationUpdates = true
    |                     |- error: 'allowsBackgroundLocationUpdates' is only available in macOS 10.15 or newer
    |                     `- note: add 'if #available' version check
118 |
119 | #if !DEBUG
<unknown>:0: error: cannot convert value of type 'KeyPath<GeoMonitor, Bool>' to expected argument type 'ReferenceWritableKeyPath<GeoMonitor, Bool>'
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:133:28: error: 'authorizationStatus' is only available in macOS 11.0 or newer
 20 | @available(iOS 14.0, *)
 21 | @MainActor
 22 | public class GeoMonitor: NSObject, ObservableObject {
    |              `- note: add @available attribute to enclosing class
 23 |   enum Constants {
 24 |     static var currentLocationRegionMaximumRadius: CLLocationDistance      = 2_500
    :
130 |
131 |   /// Whether it's possible to bring up the system prompt to ask for access to the device's location
132 |   public var canAsk: Bool {
    |              `- note: add @available attribute to enclosing property
133 |     switch locationManager.authorizationStatus {
    |                            |- error: 'authorizationStatus' is only available in macOS 11.0 or newer
    |                            `- note: add 'if #available' version check
134 |     case .notDetermined:
135 |       return true
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:144:28: error: 'authorizationStatus' is only available in macOS 11.0 or newer
 20 | @available(iOS 14.0, *)
 21 | @MainActor
 22 | public class GeoMonitor: NSObject, ObservableObject {
    |              `- note: add @available attribute to enclosing class
 23 |   enum Constants {
 24 |     static var currentLocationRegionMaximumRadius: CLLocationDistance      = 2_500
    :
141 |   }
142 |
143 |   private func updateAccess() {
    |                `- note: add @available attribute to enclosing instance method
144 |     switch locationManager.authorizationStatus {
    |                            |- error: 'authorizationStatus' is only available in macOS 11.0 or newer
    |                            `- note: add 'if #available' version check
145 |     case .authorizedAlways:
146 |       hasAccess = !needsFullAccuracy || locationManager.accuracyAuthorization == .fullAccuracy
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:146:7: error: setter for 'hasAccess' is only available in macOS 10.15 or newer
 20 | @available(iOS 14.0, *)
 21 | @MainActor
 22 | public class GeoMonitor: NSObject, ObservableObject {
    |              `- note: add @available attribute to enclosing class
 23 |   enum Constants {
 24 |     static var currentLocationRegionMaximumRadius: CLLocationDistance      = 2_500
    :
141 |   }
142 |
143 |   private func updateAccess() {
    |                `- note: add @available attribute to enclosing instance method
144 |     switch locationManager.authorizationStatus {
145 |     case .authorizedAlways:
146 |       hasAccess = !needsFullAccuracy || locationManager.accuracyAuthorization == .fullAccuracy
    |       |- error: setter for 'hasAccess' is only available in macOS 10.15 or newer
    |       `- note: add 'if #available' version check
147 |       // Note: We do NOT update `enableInBackground` here, as that's the user's
148 |       // setting, i.e., they might not want to have it enabled even though the
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:146:57: error: 'accuracyAuthorization' is only available in macOS 11.0 or newer
 20 | @available(iOS 14.0, *)
 21 | @MainActor
 22 | public class GeoMonitor: NSObject, ObservableObject {
    |              `- note: add @available attribute to enclosing class
 23 |   enum Constants {
 24 |     static var currentLocationRegionMaximumRadius: CLLocationDistance      = 2_500
    :
141 |   }
142 |
143 |   private func updateAccess() {
    |                `- note: add @available attribute to enclosing instance method
144 |     switch locationManager.authorizationStatus {
145 |     case .authorizedAlways:
146 |       hasAccess = !needsFullAccuracy || locationManager.accuracyAuthorization == .fullAccuracy
    |                                                         |- error: 'accuracyAuthorization' is only available in macOS 11.0 or newer
    |                                                         `- note: add 'if #available' version check
147 |       // Note: We do NOT update `enableInBackground` here, as that's the user's
148 |       // setting, i.e., they might not want to have it enabled even though the
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:151:7: error: setter for 'hasAccess' is only available in macOS 10.15 or newer
 20 | @available(iOS 14.0, *)
 21 | @MainActor
 22 | public class GeoMonitor: NSObject, ObservableObject {
    |              `- note: add @available attribute to enclosing class
 23 |   enum Constants {
 24 |     static var currentLocationRegionMaximumRadius: CLLocationDistance      = 2_500
    :
141 |   }
142 |
143 |   private func updateAccess() {
    |                `- note: add @available attribute to enclosing instance method
144 |     switch locationManager.authorizationStatus {
145 |     case .authorizedAlways:
    :
149 |       // app has permissions.
150 |     case .authorizedWhenInUse:
151 |       hasAccess = !needsFullAccuracy || locationManager.accuracyAuthorization == .fullAccuracy
    |       |- error: setter for 'hasAccess' is only available in macOS 10.15 or newer
    |       `- note: add 'if #available' version check
152 |       enableInBackground = false
153 |     case .denied, .notDetermined, .restricted:
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:151:57: error: 'accuracyAuthorization' is only available in macOS 11.0 or newer
 20 | @available(iOS 14.0, *)
 21 | @MainActor
 22 | public class GeoMonitor: NSObject, ObservableObject {
    |              `- note: add @available attribute to enclosing class
 23 |   enum Constants {
 24 |     static var currentLocationRegionMaximumRadius: CLLocationDistance      = 2_500
    :
141 |   }
142 |
143 |   private func updateAccess() {
    |                `- note: add @available attribute to enclosing instance method
144 |     switch locationManager.authorizationStatus {
145 |     case .authorizedAlways:
    :
149 |       // app has permissions.
150 |     case .authorizedWhenInUse:
151 |       hasAccess = !needsFullAccuracy || locationManager.accuracyAuthorization == .fullAccuracy
    |                                                         |- error: 'accuracyAuthorization' is only available in macOS 11.0 or newer
    |                                                         `- note: add 'if #available' version check
152 |       enableInBackground = false
153 |     case .denied, .notDetermined, .restricted:
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:152:7: error: setter for 'enableInBackground' is only available in macOS 10.15 or newer
 20 | @available(iOS 14.0, *)
 21 | @MainActor
 22 | public class GeoMonitor: NSObject, ObservableObject {
    |              `- note: add @available attribute to enclosing class
 23 |   enum Constants {
 24 |     static var currentLocationRegionMaximumRadius: CLLocationDistance      = 2_500
    :
141 |   }
142 |
143 |   private func updateAccess() {
    |                `- note: add @available attribute to enclosing instance method
144 |     switch locationManager.authorizationStatus {
145 |     case .authorizedAlways:
    :
150 |     case .authorizedWhenInUse:
151 |       hasAccess = !needsFullAccuracy || locationManager.accuracyAuthorization == .fullAccuracy
152 |       enableInBackground = false
    |       |- error: setter for 'enableInBackground' is only available in macOS 10.15 or newer
    |       `- note: add 'if #available' version check
153 |     case .denied, .notDetermined, .restricted:
154 |       hasAccess = false
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:154:7: error: setter for 'hasAccess' is only available in macOS 10.15 or newer
 20 | @available(iOS 14.0, *)
 21 | @MainActor
 22 | public class GeoMonitor: NSObject, ObservableObject {
    |              `- note: add @available attribute to enclosing class
 23 |   enum Constants {
 24 |     static var currentLocationRegionMaximumRadius: CLLocationDistance      = 2_500
    :
141 |   }
142 |
143 |   private func updateAccess() {
    |                `- note: add @available attribute to enclosing instance method
144 |     switch locationManager.authorizationStatus {
145 |     case .authorizedAlways:
    :
152 |       enableInBackground = false
153 |     case .denied, .notDetermined, .restricted:
154 |       hasAccess = false
    |       |- error: setter for 'hasAccess' is only available in macOS 10.15 or newer
    |       `- note: add 'if #available' version check
155 |       enableInBackground = false
156 |     @unknown default:
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:155:7: error: setter for 'enableInBackground' is only available in macOS 10.15 or newer
 20 | @available(iOS 14.0, *)
 21 | @MainActor
 22 | public class GeoMonitor: NSObject, ObservableObject {
    |              `- note: add @available attribute to enclosing class
 23 |   enum Constants {
 24 |     static var currentLocationRegionMaximumRadius: CLLocationDistance      = 2_500
    :
141 |   }
142 |
143 |   private func updateAccess() {
    |                `- note: add @available attribute to enclosing instance method
144 |     switch locationManager.authorizationStatus {
145 |     case .authorizedAlways:
    :
153 |     case .denied, .notDetermined, .restricted:
154 |       hasAccess = false
155 |       enableInBackground = false
    |       |- error: setter for 'enableInBackground' is only available in macOS 10.15 or newer
    |       `- note: add 'if #available' version check
156 |     @unknown default:
157 |       hasAccess = false
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:157:7: error: setter for 'hasAccess' is only available in macOS 10.15 or newer
 20 | @available(iOS 14.0, *)
 21 | @MainActor
 22 | public class GeoMonitor: NSObject, ObservableObject {
    |              `- note: add @available attribute to enclosing class
 23 |   enum Constants {
 24 |     static var currentLocationRegionMaximumRadius: CLLocationDistance      = 2_500
    :
141 |   }
142 |
143 |   private func updateAccess() {
    |                `- note: add @available attribute to enclosing instance method
144 |     switch locationManager.authorizationStatus {
145 |     case .authorizedAlways:
    :
155 |       enableInBackground = false
156 |     @unknown default:
157 |       hasAccess = false
    |       |- error: setter for 'hasAccess' is only available in macOS 10.15 or newer
    |       `- note: add 'if #available' version check
158 |       enableInBackground = false
159 |     }
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:158:7: error: setter for 'enableInBackground' is only available in macOS 10.15 or newer
 20 | @available(iOS 14.0, *)
 21 | @MainActor
 22 | public class GeoMonitor: NSObject, ObservableObject {
    |              `- note: add @available attribute to enclosing class
 23 |   enum Constants {
 24 |     static var currentLocationRegionMaximumRadius: CLLocationDistance      = 2_500
    :
141 |   }
142 |
143 |   private func updateAccess() {
    |                `- note: add @available attribute to enclosing instance method
144 |     switch locationManager.authorizationStatus {
145 |     case .authorizedAlways:
    :
156 |     @unknown default:
157 |       hasAccess = false
158 |       enableInBackground = false
    |       |- error: setter for 'enableInBackground' is only available in macOS 10.15 or newer
    |       `- note: add 'if #available' version check
159 |     }
160 |   }
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:164:26: error: 'authorizationStatus' is only available in macOS 11.0 or newer
 20 | @available(iOS 14.0, *)
 21 | @MainActor
 22 | public class GeoMonitor: NSObject, ObservableObject {
    |              `- note: add @available attribute to enclosing class
 23 |   enum Constants {
 24 |     static var currentLocationRegionMaximumRadius: CLLocationDistance      = 2_500
    :
160 |   }
161 |
162 |   public func ask(forBackground: Bool = false, _ handler: @escaping (Bool) -> Void = { _ in }) {
    |               `- note: add @available attribute to enclosing instance method
163 |     if forBackground {
164 |       if locationManager.authorizationStatus == .notDetermined {
    |                          |- error: 'authorizationStatus' is only available in macOS 11.0 or newer
    |                          `- note: add 'if #available' version check
165 |         // Need to *first* ask for when in use, and only for always if that
166 |         // is granted.
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:176:25: error: 'requestAlwaysAuthorization()' is only available in macOS 10.15 or newer
 20 | @available(iOS 14.0, *)
 21 | @MainActor
 22 | public class GeoMonitor: NSObject, ObservableObject {
    |              `- note: add @available attribute to enclosing class
 23 |   enum Constants {
 24 |     static var currentLocationRegionMaximumRadius: CLLocationDistance      = 2_500
    :
160 |   }
161 |
162 |   public func ask(forBackground: Bool = false, _ handler: @escaping (Bool) -> Void = { _ in }) {
    |               `- note: add @available attribute to enclosing instance method
163 |     if forBackground {
164 |       if locationManager.authorizationStatus == .notDetermined {
    :
174 |       } else {
175 |         self.askHandler = handler
176 |         locationManager.requestAlwaysAuthorization()
    |                         |- error: 'requestAlwaysAuthorization()' is only available in macOS 10.15 or newer
    |                         `- note: add 'if #available' version check
177 |       }
178 |     } else {
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:180:23: error: 'requestWhenInUseAuthorization()' is only available in macOS 10.15 or newer
 20 | @available(iOS 14.0, *)
 21 | @MainActor
 22 | public class GeoMonitor: NSObject, ObservableObject {
    |              `- note: add @available attribute to enclosing class
 23 |   enum Constants {
 24 |     static var currentLocationRegionMaximumRadius: CLLocationDistance      = 2_500
    :
160 |   }
161 |
162 |   public func ask(forBackground: Bool = false, _ handler: @escaping (Bool) -> Void = { _ in }) {
    |               `- note: add @available attribute to enclosing instance method
163 |     if forBackground {
164 |       if locationManager.authorizationStatus == .notDetermined {
    :
178 |     } else {
179 |       self.askHandler = handler
180 |       locationManager.requestWhenInUseAuthorization()
    |                       |- error: 'requestWhenInUseAuthorization()' is only available in macOS 10.15 or newer
    |                       `- note: add 'if #available' version check
181 |     }
182 |   }
<unknown>:0: error: cannot convert value of type 'KeyPath<GeoMonitor, CLLocation?>' to expected argument type 'ReferenceWritableKeyPath<GeoMonitor, CLLocation?>'
<unknown>:0: error: cannot convert value of type 'KeyPath<GeoMonitor, Bool>' to expected argument type 'ReferenceWritableKeyPath<GeoMonitor, Bool>'
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:222:21: error: 'requestLocation()' is only available in macOS 10.14 or newer
 20 | @available(iOS 14.0, *)
 21 | @MainActor
 22 | public class GeoMonitor: NSObject, ObservableObject {
    |              `- note: add @available attribute to enclosing class
 23 |   enum Constants {
 24 |     static var currentLocationRegionMaximumRadius: CLLocationDistance      = 2_500
    :
205 |   private var fetchTimer: Timer?
206 |
207 |   private func fetchCurrentLocation() async throws -> CLLocation {
    |                `- note: add @available attribute to enclosing instance method
208 |     guard hasAccess else {
209 |       throw LocationFetchError.accessNotProvided
    :
220 |     let originalAccuracy = locationManager.desiredAccuracy
221 |     locationManager.desiredAccuracy = desiredAccuracy
222 |     locationManager.requestLocation()
    |                     |- error: 'requestLocation()' is only available in macOS 10.14 or newer
    |                     `- note: add 'if #available' version check
223 |
224 |     fetchTimer = .scheduledTimer(withTimeInterval: Constants.currentLocationFetchTimeOut, repeats: false) { [weak self] _ in
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:225:7: error: 'Task' is only available in macOS 10.15 or newer
 20 | @available(iOS 14.0, *)
 21 | @MainActor
 22 | public class GeoMonitor: NSObject, ObservableObject {
    |              `- note: add @available attribute to enclosing class
 23 |   enum Constants {
 24 |     static var currentLocationRegionMaximumRadius: CLLocationDistance      = 2_500
    :
205 |   private var fetchTimer: Timer?
206 |
207 |   private func fetchCurrentLocation() async throws -> CLLocation {
    |                `- note: add @available attribute to enclosing instance method
208 |     guard hasAccess else {
209 |       throw LocationFetchError.accessNotProvided
    :
223 |
224 |     fetchTimer = .scheduledTimer(withTimeInterval: Constants.currentLocationFetchTimeOut, repeats: false) { [weak self] _ in
225 |       Task { [weak self] in
    |       |- error: 'Task' is only available in macOS 10.15 or newer
    |       `- note: add 'if #available' version check
226 |         await self?.notify(.failure(LocationFetchError.noLocationFetchedInTime))
227 |       }
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:225:7: error: 'init(priority:operation:)' is only available in macOS 10.15 or newer
 20 | @available(iOS 14.0, *)
 21 | @MainActor
 22 | public class GeoMonitor: NSObject, ObservableObject {
    |              `- note: add @available attribute to enclosing class
 23 |   enum Constants {
 24 |     static var currentLocationRegionMaximumRadius: CLLocationDistance      = 2_500
    :
205 |   private var fetchTimer: Timer?
206 |
207 |   private func fetchCurrentLocation() async throws -> CLLocation {
    |                `- note: add @available attribute to enclosing instance method
208 |     guard hasAccess else {
209 |       throw LocationFetchError.accessNotProvided
    :
223 |
224 |     fetchTimer = .scheduledTimer(withTimeInterval: Constants.currentLocationFetchTimeOut, repeats: false) { [weak self] _ in
225 |       Task { [weak self] in
    |       |- error: 'init(priority:operation:)' is only available in macOS 10.15 or newer
    |       `- note: add 'if #available' version check
226 |         await self?.notify(.failure(LocationFetchError.noLocationFetchedInTime))
227 |       }
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:230:22: error: 'withCheckedThrowingContinuation(isolation:function:_:)' is only available in macOS 10.15 or newer
 20 | @available(iOS 14.0, *)
 21 | @MainActor
 22 | public class GeoMonitor: NSObject, ObservableObject {
    |              `- note: add @available attribute to enclosing class
 23 |   enum Constants {
 24 |     static var currentLocationRegionMaximumRadius: CLLocationDistance      = 2_500
    :
205 |   private var fetchTimer: Timer?
206 |
207 |   private func fetchCurrentLocation() async throws -> CLLocation {
    |                `- note: add @available attribute to enclosing instance method
208 |     guard hasAccess else {
209 |       throw LocationFetchError.accessNotProvided
    :
228 |     }
229 |
230 |     return try await withCheckedThrowingContinuation { continuation in
    |                      |- error: 'withCheckedThrowingContinuation(isolation:function:_:)' is only available in macOS 10.15 or newer
    |                      `- note: add 'if #available' version check
231 |       withNextLocation.append({ [unowned self] result in
232 |         self.locationManager.desiredAccuracy = originalAccuracy
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:233:22: error: 'resume(with:)' is only available in macOS 10.15 or newer
 20 | @available(iOS 14.0, *)
 21 | @MainActor
 22 | public class GeoMonitor: NSObject, ObservableObject {
    |              `- note: add @available attribute to enclosing class
 23 |   enum Constants {
 24 |     static var currentLocationRegionMaximumRadius: CLLocationDistance      = 2_500
    :
205 |   private var fetchTimer: Timer?
206 |
207 |   private func fetchCurrentLocation() async throws -> CLLocation {
    |                `- note: add @available attribute to enclosing instance method
208 |     guard hasAccess else {
209 |       throw LocationFetchError.accessNotProvided
    :
231 |       withNextLocation.append({ [unowned self] result in
232 |         self.locationManager.desiredAccuracy = originalAccuracy
233 |         continuation.resume(with: result)
    |                      |- error: 'resume(with:)' is only available in macOS 10.15 or newer
    |                      `- note: add 'if #available' version check
234 |       })
235 |     }
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:230:55: error: 'isolation()' is only available in macOS 10.15 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:230:54: note: expanded code originates here
 20 | @available(iOS 14.0, *)
 21 | @MainActor
 22 | public class GeoMonitor: NSObject, ObservableObject {
    |              `- note: add @available attribute to enclosing class
 23 |   enum Constants {
 24 |     static var currentLocationRegionMaximumRadius: CLLocationDistance      = 2_500
    :
205 |   private var fetchTimer: Timer?
206 |
207 |   private func fetchCurrentLocation() async throws -> CLLocation {
    |                `- note: add @available attribute to enclosing instance method
208 |     guard hasAccess else {
209 |       throw LocationFetchError.accessNotProvided
    :
228 |     }
229 |
230 |     return try await withCheckedThrowingContinuation { continuation in
    +--- /Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift
    |228 |
    |229 |
    |230 |                                                      #isolation
    |    |                                                       `- error: 'isolation()' is only available in macOS 10.15 or newer
    +-----------------------------------------------------------------------------------
231 |       withNextLocation.append({ [unowned self] result in
232 |         self.locationManager.desiredAccuracy = originalAccuracy
<unknown>:0: error: cannot convert value of type 'KeyPath<GeoMonitor, Bool>' to expected argument type 'ReferenceWritableKeyPath<GeoMonitor, Bool>'
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:291:21: error: 'allowsBackgroundLocationUpdates' is only available in macOS 10.15 or newer
 20 | @available(iOS 14.0, *)
 21 | @MainActor
 22 | public class GeoMonitor: NSObject, ObservableObject {
    |              `- note: add @available attribute to enclosing class
 23 |   enum Constants {
 24 |     static var currentLocationRegionMaximumRadius: CLLocationDistance      = 2_500
    :
283 |   }
284 |
285 |   public func startMonitoring() {
    |               `- note: add @available attribute to enclosing instance method
286 |     dispatchPrecondition(condition: .onQueue(.main))
287 |
    :
289 |
290 |     isMonitoring = true
291 |     locationManager.allowsBackgroundLocationUpdates = true
    |                     |- error: 'allowsBackgroundLocationUpdates' is only available in macOS 10.15 or newer
    |                     `- note: add 'if #available' version check
292 |     locationManager.pausesLocationUpdatesAutomatically = enableInBackground // we can do that, as it implies "always on" permissions
293 |
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:292:21: error: 'pausesLocationUpdatesAutomatically' is only available in macOS 10.15 or newer
 20 | @available(iOS 14.0, *)
 21 | @MainActor
 22 | public class GeoMonitor: NSObject, ObservableObject {
    |              `- note: add @available attribute to enclosing class
 23 |   enum Constants {
 24 |     static var currentLocationRegionMaximumRadius: CLLocationDistance      = 2_500
    :
283 |   }
284 |
285 |   public func startMonitoring() {
    |               `- note: add @available attribute to enclosing instance method
286 |     dispatchPrecondition(condition: .onQueue(.main))
287 |
    :
290 |     isMonitoring = true
291 |     locationManager.allowsBackgroundLocationUpdates = true
292 |     locationManager.pausesLocationUpdatesAutomatically = enableInBackground // we can do that, as it implies "always on" permissions
    |                     |- error: 'pausesLocationUpdatesAutomatically' is only available in macOS 10.15 or newer
    |                     `- note: add 'if #available' version check
293 |
294 |     Task {
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:294:5: error: 'Task' is only available in macOS 10.15 or newer
 20 | @available(iOS 14.0, *)
 21 | @MainActor
 22 | public class GeoMonitor: NSObject, ObservableObject {
    |              `- note: add @available attribute to enclosing class
 23 |   enum Constants {
 24 |     static var currentLocationRegionMaximumRadius: CLLocationDistance      = 2_500
    :
283 |   }
284 |
285 |   public func startMonitoring() {
    |               `- note: add @available attribute to enclosing instance method
286 |     dispatchPrecondition(condition: .onQueue(.main))
287 |
    :
292 |     locationManager.pausesLocationUpdatesAutomatically = enableInBackground // we can do that, as it implies "always on" permissions
293 |
294 |     Task {
    |     |- error: 'Task' is only available in macOS 10.15 or newer
    |     `- note: add 'if #available' version check
295 |       // Check if in region, which will also re-monitor the current location
296 |       // and update the regions(!)
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:294:5: error: 'init(priority:operation:)' is only available in macOS 10.15 or newer
 20 | @available(iOS 14.0, *)
 21 | @MainActor
 22 | public class GeoMonitor: NSObject, ObservableObject {
    |              `- note: add @available attribute to enclosing class
 23 |   enum Constants {
 24 |     static var currentLocationRegionMaximumRadius: CLLocationDistance      = 2_500
    :
283 |   }
284 |
285 |   public func startMonitoring() {
    |               `- note: add @available attribute to enclosing instance method
286 |     dispatchPrecondition(condition: .onQueue(.main))
287 |
    :
292 |     locationManager.pausesLocationUpdatesAutomatically = enableInBackground // we can do that, as it implies "always on" permissions
293 |
294 |     Task {
    |     |- error: 'init(priority:operation:)' is only available in macOS 10.15 or newer
    |     `- note: add 'if #available' version check
295 |       // Check if in region, which will also re-monitor the current location
296 |       // and update the regions(!)
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:301:23: error: 'startMonitoringVisits()' is only available in macOS 10.15 or newer
 20 | @available(iOS 14.0, *)
 21 | @MainActor
 22 | public class GeoMonitor: NSObject, ObservableObject {
    |              `- note: add @available attribute to enclosing class
 23 |   enum Constants {
 24 |     static var currentLocationRegionMaximumRadius: CLLocationDistance      = 2_500
    :
283 |   }
284 |
285 |   public func startMonitoring() {
    |               `- note: add @available attribute to enclosing instance method
286 |     dispatchPrecondition(condition: .onQueue(.main))
287 |
    :
299 |
300 |     if enableVisitMonitoring {
301 |       locationManager.startMonitoringVisits()
    |                       |- error: 'startMonitoringVisits()' is only available in macOS 10.15 or newer
    |                       `- note: add 'if #available' version check
302 |     }
303 |   }
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:311:21: error: 'allowsBackgroundLocationUpdates' is only available in macOS 10.15 or newer
 20 | @available(iOS 14.0, *)
 21 | @MainActor
 22 | public class GeoMonitor: NSObject, ObservableObject {
    |              `- note: add @available attribute to enclosing class
 23 |   enum Constants {
 24 |     static var currentLocationRegionMaximumRadius: CLLocationDistance      = 2_500
    :
303 |   }
304 |
305 |   public func stopMonitoring() {
    |               `- note: add @available attribute to enclosing instance method
306 |     dispatchPrecondition(condition: .onQueue(.main))
307 |
    :
309 |
310 |     isMonitoring = false
311 |     locationManager.allowsBackgroundLocationUpdates = false
    |                     |- error: 'allowsBackgroundLocationUpdates' is only available in macOS 10.15 or newer
    |                     `- note: add 'if #available' version check
312 |     locationManager.pausesLocationUpdatesAutomatically = true
313 |
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:312:21: error: 'pausesLocationUpdatesAutomatically' is only available in macOS 10.15 or newer
 20 | @available(iOS 14.0, *)
 21 | @MainActor
 22 | public class GeoMonitor: NSObject, ObservableObject {
    |              `- note: add @available attribute to enclosing class
 23 |   enum Constants {
 24 |     static var currentLocationRegionMaximumRadius: CLLocationDistance      = 2_500
    :
303 |   }
304 |
305 |   public func stopMonitoring() {
    |               `- note: add @available attribute to enclosing instance method
306 |     dispatchPrecondition(condition: .onQueue(.main))
307 |
    :
310 |     isMonitoring = false
311 |     locationManager.allowsBackgroundLocationUpdates = false
312 |     locationManager.pausesLocationUpdatesAutomatically = true
    |                     |- error: 'pausesLocationUpdatesAutomatically' is only available in macOS 10.15 or newer
    |                     `- note: add 'if #available' version check
313 |
314 |     stopMonitoringCurrentArea()
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:315:21: error: 'stopMonitoringVisits()' is only available in macOS 10.15 or newer
 20 | @available(iOS 14.0, *)
 21 | @MainActor
 22 | public class GeoMonitor: NSObject, ObservableObject {
    |              `- note: add @available attribute to enclosing class
 23 |   enum Constants {
 24 |     static var currentLocationRegionMaximumRadius: CLLocationDistance      = 2_500
    :
303 |   }
304 |
305 |   public func stopMonitoring() {
    |               `- note: add @available attribute to enclosing instance method
306 |     dispatchPrecondition(condition: .onQueue(.main))
307 |
    :
313 |
314 |     stopMonitoringCurrentArea()
315 |     locationManager.stopMonitoringVisits()
    |                     |- error: 'stopMonitoringVisits()' is only available in macOS 10.15 or newer
    |                     `- note: add 'if #available' version check
316 |   }
317 |
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:417:18: error: 'cancel()' is only available in macOS 10.15 or newer
408 |
409 | @available(iOS 14.0, *)
410 | extension GeoMonitor {
    | `- note: add @available attribute to enclosing extension
411 |
412 |   private func monitorDebounced(_ regions: [CLCircularRegion], location: CLLocation?, delay: TimeInterval? = nil) {
    |                `- note: add @available attribute to enclosing instance method
413 |     dispatchPrecondition(condition: .onQueue(.main))
414 |
415 |     // When this fires in the background we end up with many of these somehow
416 |
417 |     monitorTask?.cancel()
    |                  |- error: 'cancel()' is only available in macOS 10.15 or newer
    |                  `- note: add 'if #available' version check
418 |     monitorTask = Task {
419 |       if let delay {
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:418:19: error: 'Task' is only available in macOS 10.15 or newer
408 |
409 | @available(iOS 14.0, *)
410 | extension GeoMonitor {
    | `- note: add @available attribute to enclosing extension
411 |
412 |   private func monitorDebounced(_ regions: [CLCircularRegion], location: CLLocation?, delay: TimeInterval? = nil) {
    |                `- note: add @available attribute to enclosing instance method
413 |     dispatchPrecondition(condition: .onQueue(.main))
414 |
    :
416 |
417 |     monitorTask?.cancel()
418 |     monitorTask = Task {
    |                   |- error: 'Task' is only available in macOS 10.15 or newer
    |                   `- note: add 'if #available' version check
419 |       if let delay {
420 |         try await Task.sleep(nanoseconds: UInt64(delay * 1_000_000_000))
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:418:19: error: 'init(priority:operation:)' is only available in macOS 10.15 or newer
408 |
409 | @available(iOS 14.0, *)
410 | extension GeoMonitor {
    | `- note: add @available attribute to enclosing extension
411 |
412 |   private func monitorDebounced(_ regions: [CLCircularRegion], location: CLLocation?, delay: TimeInterval? = nil) {
    |                `- note: add @available attribute to enclosing instance method
413 |     dispatchPrecondition(condition: .onQueue(.main))
414 |
    :
416 |
417 |     monitorTask?.cancel()
418 |     monitorTask = Task {
    |                   |- error: 'init(priority:operation:)' is only available in macOS 10.15 or newer
    |                   `- note: add 'if #available' version check
419 |       if let delay {
420 |         try await Task.sleep(nanoseconds: UInt64(delay * 1_000_000_000))
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:420:19: error: 'Task' is only available in macOS 10.15 or newer
408 |
409 | @available(iOS 14.0, *)
410 | extension GeoMonitor {
    | `- note: add @available attribute to enclosing extension
411 |
412 |   private func monitorDebounced(_ regions: [CLCircularRegion], location: CLLocation?, delay: TimeInterval? = nil) {
    |                `- note: add @available attribute to enclosing instance method
413 |     dispatchPrecondition(condition: .onQueue(.main))
414 |
    :
418 |     monitorTask = Task {
419 |       if let delay {
420 |         try await Task.sleep(nanoseconds: UInt64(delay * 1_000_000_000))
    |                   |- error: 'Task' is only available in macOS 10.15 or newer
    |                   `- note: add 'if #available' version check
421 |         try Task.checkCancellation()
422 |       }
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:420:24: error: 'sleep(nanoseconds:)' is only available in macOS 10.15 or newer
408 |
409 | @available(iOS 14.0, *)
410 | extension GeoMonitor {
    | `- note: add @available attribute to enclosing extension
411 |
412 |   private func monitorDebounced(_ regions: [CLCircularRegion], location: CLLocation?, delay: TimeInterval? = nil) {
    |                `- note: add @available attribute to enclosing instance method
413 |     dispatchPrecondition(condition: .onQueue(.main))
414 |
    :
418 |     monitorTask = Task {
419 |       if let delay {
420 |         try await Task.sleep(nanoseconds: UInt64(delay * 1_000_000_000))
    |                        |- error: 'sleep(nanoseconds:)' is only available in macOS 10.15 or newer
    |                        `- note: add 'if #available' version check
421 |         try Task.checkCancellation()
422 |       }
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:421:13: error: 'Task' is only available in macOS 10.15 or newer
408 |
409 | @available(iOS 14.0, *)
410 | extension GeoMonitor {
    | `- note: add @available attribute to enclosing extension
411 |
412 |   private func monitorDebounced(_ regions: [CLCircularRegion], location: CLLocation?, delay: TimeInterval? = nil) {
    |                `- note: add @available attribute to enclosing instance method
413 |     dispatchPrecondition(condition: .onQueue(.main))
414 |
    :
419 |       if let delay {
420 |         try await Task.sleep(nanoseconds: UInt64(delay * 1_000_000_000))
421 |         try Task.checkCancellation()
    |             |- error: 'Task' is only available in macOS 10.15 or newer
    |             `- note: add 'if #available' version check
422 |       }
423 |
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:421:18: error: 'checkCancellation()' is only available in macOS 10.15 or newer
408 |
409 | @available(iOS 14.0, *)
410 | extension GeoMonitor {
    | `- note: add @available attribute to enclosing extension
411 |
412 |   private func monitorDebounced(_ regions: [CLCircularRegion], location: CLLocation?, delay: TimeInterval? = nil) {
    |                `- note: add @available attribute to enclosing instance method
413 |     dispatchPrecondition(condition: .onQueue(.main))
414 |
    :
419 |       if let delay {
420 |         try await Task.sleep(nanoseconds: UInt64(delay * 1_000_000_000))
421 |         try Task.checkCancellation()
    |                  |- error: 'checkCancellation()' is only available in macOS 10.15 or newer
    |                  `- note: add 'if #available' version check
422 |       }
423 |
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:429:12: error: 'Task' is only available in macOS 10.15 or newer
408 |
409 | @available(iOS 14.0, *)
410 | extension GeoMonitor {
    | `- note: add @available attribute to enclosing extension
411 |
412 |   private func monitorDebounced(_ regions: [CLCircularRegion], location: CLLocation?, delay: TimeInterval? = nil) {
    :
426 |   }
427 |
428 |   private func monitorNow(_ regions: [CLCircularRegion], location: CLLocation?) {
    |                `- note: add @available attribute to enclosing instance method
429 |     guard !Task.isCancelled else { return }
    |            |- error: 'Task' is only available in macOS 10.15 or newer
    |            `- note: add 'if #available' version check
430 |
431 |     dispatchPrecondition(condition: .onQueue(.main))
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:429:17: error: 'isCancelled' is only available in macOS 10.15 or newer
408 |
409 | @available(iOS 14.0, *)
410 | extension GeoMonitor {
    | `- note: add @available attribute to enclosing extension
411 |
412 |   private func monitorDebounced(_ regions: [CLCircularRegion], location: CLLocation?, delay: TimeInterval? = nil) {
    :
426 |   }
427 |
428 |   private func monitorNow(_ regions: [CLCircularRegion], location: CLLocation?) {
    |                `- note: add @available attribute to enclosing instance method
429 |     guard !Task.isCancelled else { return }
    |                 |- error: 'isCancelled' is only available in macOS 10.15 or newer
    |                 `- note: add 'if #available' version check
430 |
431 |     dispatchPrecondition(condition: .onQueue(.main))
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:518:5: error: 'Task' is only available in macOS 10.15 or newer
502 |
503 | @available(iOS 14.0, *)
504 | extension GeoMonitor: CLLocationManagerDelegate {
    | `- note: add @available attribute to enclosing extension
505 |
506 |   public func locationManager(_ manager: CLLocationManager, didEnterRegion region: CLRegion) {
    |               `- note: add @available attribute to enclosing instance method
507 |     dispatchPrecondition(condition: .onQueue(.main))
508 |
    :
516 |     }
517 |
518 |     Task {
    |     |- error: 'Task' is only available in macOS 10.15 or newer
    |     `- note: add 'if #available' version check
519 |       // Make sure this is still a *current* region => update data
520 |       await runUpdateCycle(trigger: .regionMonitoring)
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:518:5: error: 'init(priority:operation:)' is only available in macOS 10.15 or newer
502 |
503 | @available(iOS 14.0, *)
504 | extension GeoMonitor: CLLocationManagerDelegate {
    | `- note: add @available attribute to enclosing extension
505 |
506 |   public func locationManager(_ manager: CLLocationManager, didEnterRegion region: CLRegion) {
    |               `- note: add @available attribute to enclosing instance method
507 |     dispatchPrecondition(condition: .onQueue(.main))
508 |
    :
516 |     }
517 |
518 |     Task {
    |     |- error: 'init(priority:operation:)' is only available in macOS 10.15 or newer
    |     `- note: add 'if #available' version check
519 |       // Make sure this is still a *current* region => update data
520 |       await runUpdateCycle(trigger: .regionMonitoring)
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:561:5: error: 'Task' is only available in macOS 10.15 or newer
502 |
503 | @available(iOS 14.0, *)
504 | extension GeoMonitor: CLLocationManagerDelegate {
    | `- note: add @available attribute to enclosing extension
505 |
506 |   public func locationManager(_ manager: CLLocationManager, didEnterRegion region: CLRegion) {
    :
547 |   }
548 |
549 |   public func locationManager(_ manager: CLLocationManager, didExitRegion region: CLRegion) {
    |               `- note: add @available attribute to enclosing instance method
550 |     dispatchPrecondition(condition: .onQueue(.main))
551 |
    :
559 |     }
560 |
561 |     Task {
    |     |- error: 'Task' is only available in macOS 10.15 or newer
    |     `- note: add 'if #available' version check
562 |       // 3. When leaving the current location, fetch...
563 |       await runUpdateCycle(trigger: .departedCurrentArea)
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:561:5: error: 'init(priority:operation:)' is only available in macOS 10.15 or newer
502 |
503 | @available(iOS 14.0, *)
504 | extension GeoMonitor: CLLocationManagerDelegate {
    | `- note: add @available attribute to enclosing extension
505 |
506 |   public func locationManager(_ manager: CLLocationManager, didEnterRegion region: CLRegion) {
    :
547 |   }
548 |
549 |   public func locationManager(_ manager: CLLocationManager, didExitRegion region: CLRegion) {
    |               `- note: add @available attribute to enclosing instance method
550 |     dispatchPrecondition(condition: .onQueue(.main))
551 |
    :
559 |     }
560 |
561 |     Task {
    |     |- error: 'init(priority:operation:)' is only available in macOS 10.15 or newer
    |     `- note: add 'if #available' version check
562 |       // 3. When leaving the current location, fetch...
563 |       await runUpdateCycle(trigger: .departedCurrentArea)
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:582:5: error: 'Task' is only available in macOS 10.15 or newer
502 |
503 | @available(iOS 14.0, *)
504 | extension GeoMonitor: CLLocationManagerDelegate {
    | `- note: add @available attribute to enclosing extension
505 |
506 |   public func locationManager(_ manager: CLLocationManager, didEnterRegion region: CLRegion) {
    :
565 |   }
566 |
567 |   public func locationManager(_ manager: CLLocationManager, didVisit visit: CLVisit) {
    |               `- note: add @available attribute to enclosing instance method
568 |     dispatchPrecondition(condition: .onQueue(.main))
569 |
    :
580 |     }
581 |
582 |     Task {
    |     |- error: 'Task' is only available in macOS 10.15 or newer
    |     `- note: add 'if #available' version check
583 |       // TODO: We could detect if it's an arrival at a new location, by checking `visit.departureTime == .distanceFuture`
584 |       await runUpdateCycle(trigger: .visitMonitoring)
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:582:5: error: 'init(priority:operation:)' is only available in macOS 10.15 or newer
502 |
503 | @available(iOS 14.0, *)
504 | extension GeoMonitor: CLLocationManagerDelegate {
    | `- note: add @available attribute to enclosing extension
505 |
506 |   public func locationManager(_ manager: CLLocationManager, didEnterRegion region: CLRegion) {
    :
565 |   }
566 |
567 |   public func locationManager(_ manager: CLLocationManager, didVisit visit: CLVisit) {
    |               `- note: add @available attribute to enclosing instance method
568 |     dispatchPrecondition(condition: .onQueue(.main))
569 |
    :
580 |     }
581 |
582 |     Task {
    |     |- error: 'init(priority:operation:)' is only available in macOS 10.15 or newer
    |     `- note: add 'if #available' version check
583 |       // TODO: We could detect if it's an arrival at a new location, by checking `visit.departureTime == .distanceFuture`
584 |       await runUpdateCycle(trigger: .visitMonitoring)
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:605:5: error: setter for 'currentLocation' is only available in macOS 10.15 or newer
502 |
503 | @available(iOS 14.0, *)
504 | extension GeoMonitor: CLLocationManagerDelegate {
    | `- note: add @available attribute to enclosing extension
505 |
506 |   public func locationManager(_ manager: CLLocationManager, didEnterRegion region: CLRegion) {
    :
586 |   }
587 |
588 |   public func locationManager(_ manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) {
    |               `- note: add @available attribute to enclosing instance method
589 | #if DEBUG
590 |     print("GeoMonitor updated locations -> \(locations)")
    :
603 |     }
604 |
605 |     self.currentLocation = latestAccurate
    |     |- error: setter for 'currentLocation' is only available in macOS 10.15 or newer
    |     `- note: add 'if #available' version check
606 |
607 |     notify(.success(latestAccurate))
/Users/admin/builder/spi-builder-workspace/Sources/GeoMonitor/GeoMonitor.swift:630:20: error: 'authorizationStatus' is only available in macOS 11.0 or newer
502 |
503 | @available(iOS 14.0, *)
504 | extension GeoMonitor: CLLocationManagerDelegate {
    | `- note: add @available attribute to enclosing extension
505 |
506 |   public func locationManager(_ manager: CLLocationManager, didEnterRegion region: CLRegion) {
    :
621 |   }
622 |
623 |   public func locationManagerDidChangeAuthorization(_ manager: CLLocationManager) {
    |               `- note: add @available attribute to enclosing instance method
624 |     dispatchPrecondition(condition: .onQueue(.main))
625 |
    :
628 |     askHandler = { _ in }
629 |
630 |     switch manager.authorizationStatus {
    |                    |- error: 'authorizationStatus' is only available in macOS 11.0 or newer
    |                    `- note: add 'if #available' version check
631 |     case .authorizedAlways, .authorizedWhenInUse:
632 |       if isMonitoring {
[#ConformanceIsolation]: <https://docs.swift.org/compiler/documentation/diagnostics/conformance-isolation>
BUILD FAILURE 6.2 macosSpm