Build Information
Failed to build Necessary, reference main (6a8e27), with Swift 6.2 for macOS (SPM) on 2 Nov 2026 23:14:15 UTC.
Build Command
env DEVELOPER_DIR=/Applications/Xcode-26.3.0.app xcrun swift build --arch arm64Build Log
========================================
RunAll
========================================
Builder version: 5.1.4
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/merajhasan88/necessary_swift.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/merajhasan88/necessary_swift
* branch main -> FETCH_HEAD
* [new branch] main -> origin/main
HEAD is now at 6a8e275 Necessary for iOS 0.1.5
Cloned https://github.com/merajhasan88/necessary_swift.git
Revision (git rev-parse @):
6a8e275b0cfba2cf67037fb4e34fb76669ce42ea
SUCCESS checkout https://github.com/merajhasan88/necessary_swift.git at main
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.2
Building package at path: $PWD
https://github.com/merajhasan88/necessary_swift.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-26.3.0.app xcrun swift build --arch arm64
Building for debugging...
[0/3] Write sources
[1/3] Copying PrivacyInfo.xcprivacy
[2/3] Write swift-version--3CB7CFEC50E0D141.txt
[4/22] Compiling Necessary ProtocolSteps.swift
[5/22] Compiling Necessary ReinstallHint.swift
[6/22] Compiling Necessary IntegrityProbeManager.swift
[7/22] Compiling Necessary JSON.swift
[8/22] Compiling Necessary SecureScreen.swift
[9/22] Compiling Necessary StepUpKey.swift
[10/22] Compiling Necessary Report.swift
[11/22] Compiling Necessary RequestProof.swift
[12/22] Compiling Necessary InstallationKeyManager.swift
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/InstallationStore.swift:25:43: error: 'Task' is only available in macOS 10.15 or newer
16 | /// on iOS in the Keychain, on this device only, readable after the first unlock, never synchronized.
17 | @MainActor
18 | open class InstallationStore {
| `- note: add '@available' attribute to enclosing class
19 | public let key: InstallationKeyProvider
20 | public let storage: SecureStorage
:
23 | static let stepUpReenrolKey = "recognition.stepup_reenrol_pending.v1"
24 |
25 | private var loading: (id: UUID, task: Task<InstallationIdentity, Error>)?
| `- error: 'Task' is only available in macOS 10.15 or newer
26 |
27 | /// `key` and `storage` replace the native ones in tests.
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/InstallationStore.swift:38:66: error: 'value' is only available in macOS 10.15 or newer
16 | /// on iOS in the Keychain, on this device only, readable after the first unlock, never synchronized.
17 | @MainActor
18 | open class InstallationStore {
| `- note: add '@available' attribute to enclosing class
19 | public let key: InstallationKeyProvider
20 | public let storage: SecureStorage
:
35 | /// one was stored: that ID belongs to the key that was lost, and a backend refuses a known ID under
36 | /// another key. Calls at once share one load, so that one key never gets two IDs.
37 | open func loadOrCreate() async throws -> InstallationIdentity {
| `- note: add '@available' attribute to enclosing instance method
38 | if let running = loading { return try await running.task.value }
| |- error: 'value' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
39 | let id = UUID()
40 | let task = Task<InstallationIdentity, Error> { @MainActor in
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/InstallationStore.swift:40:20: error: 'Task' is only available in macOS 10.15 or newer
16 | /// on iOS in the Keychain, on this device only, readable after the first unlock, never synchronized.
17 | @MainActor
18 | open class InstallationStore {
| `- note: add '@available' attribute to enclosing class
19 | public let key: InstallationKeyProvider
20 | public let storage: SecureStorage
:
35 | /// one was stored: that ID belongs to the key that was lost, and a backend refuses a known ID under
36 | /// another key. Calls at once share one load, so that one key never gets two IDs.
37 | open func loadOrCreate() async throws -> InstallationIdentity {
| `- note: add '@available' attribute to enclosing instance method
38 | if let running = loading { return try await running.task.value }
39 | let id = UUID()
40 | let task = Task<InstallationIdentity, Error> { @MainActor in
| |- error: 'Task' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
41 | defer { if self.loading?.id == id { self.loading = nil } }
42 | return try await self.loadOrCreateOnce()
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/InstallationStore.swift:40:52: error: 'init(name:priority:operation:)' is only available in macOS 10.15 or newer
16 | /// on iOS in the Keychain, on this device only, readable after the first unlock, never synchronized.
17 | @MainActor
18 | open class InstallationStore {
| `- note: add '@available' attribute to enclosing class
19 | public let key: InstallationKeyProvider
20 | public let storage: SecureStorage
:
35 | /// one was stored: that ID belongs to the key that was lost, and a backend refuses a known ID under
36 | /// another key. Calls at once share one load, so that one key never gets two IDs.
37 | open func loadOrCreate() async throws -> InstallationIdentity {
| `- note: add '@available' attribute to enclosing instance method
38 | if let running = loading { return try await running.task.value }
39 | let id = UUID()
40 | let task = Task<InstallationIdentity, Error> { @MainActor in
| |- error: 'init(name:priority:operation:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
41 | defer { if self.loading?.id == id { self.loading = nil } }
42 | return try await self.loadOrCreateOnce()
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/InstallationStore.swift:45:31: error: 'value' is only available in macOS 10.15 or newer
16 | /// on iOS in the Keychain, on this device only, readable after the first unlock, never synchronized.
17 | @MainActor
18 | open class InstallationStore {
| `- note: add '@available' attribute to enclosing class
19 | public let key: InstallationKeyProvider
20 | public let storage: SecureStorage
:
35 | /// one was stored: that ID belongs to the key that was lost, and a backend refuses a known ID under
36 | /// another key. Calls at once share one load, so that one key never gets two IDs.
37 | open func loadOrCreate() async throws -> InstallationIdentity {
| `- note: add '@available' attribute to enclosing instance method
38 | if let running = loading { return try await running.task.value }
39 | let id = UUID()
:
43 | }
44 | loading = (id, task)
45 | return try await task.value
| |- error: 'value' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
46 | }
47 |
[13/22] Compiling Necessary InstallationStore.swift
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/InstallationStore.swift:25:43: error: 'Task' is only available in macOS 10.15 or newer
16 | /// on iOS in the Keychain, on this device only, readable after the first unlock, never synchronized.
17 | @MainActor
18 | open class InstallationStore {
| `- note: add '@available' attribute to enclosing class
19 | public let key: InstallationKeyProvider
20 | public let storage: SecureStorage
:
23 | static let stepUpReenrolKey = "recognition.stepup_reenrol_pending.v1"
24 |
25 | private var loading: (id: UUID, task: Task<InstallationIdentity, Error>)?
| `- error: 'Task' is only available in macOS 10.15 or newer
26 |
27 | /// `key` and `storage` replace the native ones in tests.
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/InstallationStore.swift:38:66: error: 'value' is only available in macOS 10.15 or newer
16 | /// on iOS in the Keychain, on this device only, readable after the first unlock, never synchronized.
17 | @MainActor
18 | open class InstallationStore {
| `- note: add '@available' attribute to enclosing class
19 | public let key: InstallationKeyProvider
20 | public let storage: SecureStorage
:
35 | /// one was stored: that ID belongs to the key that was lost, and a backend refuses a known ID under
36 | /// another key. Calls at once share one load, so that one key never gets two IDs.
37 | open func loadOrCreate() async throws -> InstallationIdentity {
| `- note: add '@available' attribute to enclosing instance method
38 | if let running = loading { return try await running.task.value }
| |- error: 'value' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
39 | let id = UUID()
40 | let task = Task<InstallationIdentity, Error> { @MainActor in
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/InstallationStore.swift:40:20: error: 'Task' is only available in macOS 10.15 or newer
16 | /// on iOS in the Keychain, on this device only, readable after the first unlock, never synchronized.
17 | @MainActor
18 | open class InstallationStore {
| `- note: add '@available' attribute to enclosing class
19 | public let key: InstallationKeyProvider
20 | public let storage: SecureStorage
:
35 | /// one was stored: that ID belongs to the key that was lost, and a backend refuses a known ID under
36 | /// another key. Calls at once share one load, so that one key never gets two IDs.
37 | open func loadOrCreate() async throws -> InstallationIdentity {
| `- note: add '@available' attribute to enclosing instance method
38 | if let running = loading { return try await running.task.value }
39 | let id = UUID()
40 | let task = Task<InstallationIdentity, Error> { @MainActor in
| |- error: 'Task' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
41 | defer { if self.loading?.id == id { self.loading = nil } }
42 | return try await self.loadOrCreateOnce()
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/InstallationStore.swift:40:52: error: 'init(name:priority:operation:)' is only available in macOS 10.15 or newer
16 | /// on iOS in the Keychain, on this device only, readable after the first unlock, never synchronized.
17 | @MainActor
18 | open class InstallationStore {
| `- note: add '@available' attribute to enclosing class
19 | public let key: InstallationKeyProvider
20 | public let storage: SecureStorage
:
35 | /// one was stored: that ID belongs to the key that was lost, and a backend refuses a known ID under
36 | /// another key. Calls at once share one load, so that one key never gets two IDs.
37 | open func loadOrCreate() async throws -> InstallationIdentity {
| `- note: add '@available' attribute to enclosing instance method
38 | if let running = loading { return try await running.task.value }
39 | let id = UUID()
40 | let task = Task<InstallationIdentity, Error> { @MainActor in
| |- error: 'init(name:priority:operation:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
41 | defer { if self.loading?.id == id { self.loading = nil } }
42 | return try await self.loadOrCreateOnce()
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/InstallationStore.swift:45:31: error: 'value' is only available in macOS 10.15 or newer
16 | /// on iOS in the Keychain, on this device only, readable after the first unlock, never synchronized.
17 | @MainActor
18 | open class InstallationStore {
| `- note: add '@available' attribute to enclosing class
19 | public let key: InstallationKeyProvider
20 | public let storage: SecureStorage
:
35 | /// one was stored: that ID belongs to the key that was lost, and a backend refuses a known ID under
36 | /// another key. Calls at once share one load, so that one key never gets two IDs.
37 | open func loadOrCreate() async throws -> InstallationIdentity {
| `- note: add '@available' attribute to enclosing instance method
38 | if let running = loading { return try await running.task.value }
39 | let id = UUID()
:
43 | }
44 | loading = (id, task)
45 | return try await task.value
| |- error: 'value' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
46 | }
47 |
[14/22] Compiling Necessary NativeWorker.swift
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/NativeWorker.swift:12:19: error: 'withCheckedThrowingContinuation(isolation:function:_:)' is only available in macOS 10.15 or newer
4 | /// time on one serial queue, off the main thread -- while a step-up prompt is open, the calls behind
5 | /// it wait. UIKit and Core Location are read on the main thread, which never waits for this queue.
6 | enum NativeWorker {
| `- note: add '@available' attribute to enclosing enum
7 | static let queue = DispatchQueue(label: "com.necessarysdk.native", qos: .userInitiated)
8 |
9 | /// Runs `work` on the queue; a native failure comes back as the `NativeKeyError` it names, with
10 | /// its code untouched.
11 | static func run<T>(_ work: @escaping @Sendable () throws -> T) async throws -> T {
| `- note: add '@available' attribute to enclosing static method
12 | try await withCheckedThrowingContinuation { continuation in
| |- error: 'withCheckedThrowingContinuation(isolation:function:_:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
13 | queue.async {
14 | do {
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/NativeWorker.swift:12:52: error: 'isolation()' is only available in macOS 10.15 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/Necessary/NativeWorker.swift:12:51: note: expanded code originates here
4 | /// time on one serial queue, off the main thread -- while a step-up prompt is open, the calls behind
5 | /// it wait. UIKit and Core Location are read on the main thread, which never waits for this queue.
6 | enum NativeWorker {
| `- note: add '@available' attribute to enclosing enum
7 | static let queue = DispatchQueue(label: "com.necessarysdk.native", qos: .userInitiated)
8 |
9 | /// Runs `work` on the queue; a native failure comes back as the `NativeKeyError` it names, with
10 | /// its code untouched.
11 | static func run<T>(_ work: @escaping @Sendable () throws -> T) async throws -> T {
| `- note: add '@available' attribute to enclosing static method
12 | try await withCheckedThrowingContinuation { continuation in
+--- /Users/admin/builder/spi-builder-workspace/Sources/Necessary/NativeWorker.swift
|10 |
|11 |
|12 | #isolation
| | `- error: 'isolation()' is only available in macOS 10.15 or newer
+------------------------------------------------------------------------------------
13 | queue.async {
14 | do {
[15/22] Compiling Necessary ProbeReads.swift
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/NativeWorker.swift:12:19: error: 'withCheckedThrowingContinuation(isolation:function:_:)' is only available in macOS 10.15 or newer
4 | /// time on one serial queue, off the main thread -- while a step-up prompt is open, the calls behind
5 | /// it wait. UIKit and Core Location are read on the main thread, which never waits for this queue.
6 | enum NativeWorker {
| `- note: add '@available' attribute to enclosing enum
7 | static let queue = DispatchQueue(label: "com.necessarysdk.native", qos: .userInitiated)
8 |
9 | /// Runs `work` on the queue; a native failure comes back as the `NativeKeyError` it names, with
10 | /// its code untouched.
11 | static func run<T>(_ work: @escaping @Sendable () throws -> T) async throws -> T {
| `- note: add '@available' attribute to enclosing static method
12 | try await withCheckedThrowingContinuation { continuation in
| |- error: 'withCheckedThrowingContinuation(isolation:function:_:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
13 | queue.async {
14 | do {
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/NativeWorker.swift:12:52: error: 'isolation()' is only available in macOS 10.15 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/Necessary/NativeWorker.swift:12:51: note: expanded code originates here
4 | /// time on one serial queue, off the main thread -- while a step-up prompt is open, the calls behind
5 | /// it wait. UIKit and Core Location are read on the main thread, which never waits for this queue.
6 | enum NativeWorker {
| `- note: add '@available' attribute to enclosing enum
7 | static let queue = DispatchQueue(label: "com.necessarysdk.native", qos: .userInitiated)
8 |
9 | /// Runs `work` on the queue; a native failure comes back as the `NativeKeyError` it names, with
10 | /// its code untouched.
11 | static func run<T>(_ work: @escaping @Sendable () throws -> T) async throws -> T {
| `- note: add '@available' attribute to enclosing static method
12 | try await withCheckedThrowingContinuation { continuation in
+--- /Users/admin/builder/spi-builder-workspace/Sources/Necessary/NativeWorker.swift
|10 |
|11 |
|12 | #isolation
| | `- error: 'isolation()' is only available in macOS 10.15 or newer
+------------------------------------------------------------------------------------
13 | queue.async {
14 | do {
error: emit-module command failed with exit code 1 (use -v to see invocation)
[16/24] Compiling Necessary Errors.swift
[17/24] Compiling Necessary InstallationKey.swift
[18/24] Compiling Necessary Client.swift
[19/24] Compiling Necessary Collector.swift
[20/24] Emitting module Necessary
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:81:43: error: 'Task' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
79 |
80 | // One call of each kind in flight; a second waits for the first's result.
81 | private var loading: (id: UUID, task: Task<InstallationIdentity, Error>)?
| `- error: 'Task' is only available in macOS 10.15 or newer
82 | private var starting: (id: UUID, task: Task<InstallationIdentity, Error>)?
83 | private var proving: (id: UUID, task: Task<String, Error>)?
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:82:44: error: 'Task' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
80 | // One call of each kind in flight; a second waits for the first's result.
81 | private var loading: (id: UUID, task: Task<InstallationIdentity, Error>)?
82 | private var starting: (id: UUID, task: Task<InstallationIdentity, Error>)?
| `- error: 'Task' is only available in macOS 10.15 or newer
83 | private var proving: (id: UUID, task: Task<String, Error>)?
84 | private var scanning: [String: (id: UUID, task: Task<ScanResult, Error>)] = [:]
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:83:43: error: 'Task' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
81 | private var loading: (id: UUID, task: Task<InstallationIdentity, Error>)?
82 | private var starting: (id: UUID, task: Task<InstallationIdentity, Error>)?
83 | private var proving: (id: UUID, task: Task<String, Error>)?
| `- error: 'Task' is only available in macOS 10.15 or newer
84 | private var scanning: [String: (id: UUID, task: Task<ScanResult, Error>)] = [:]
85 |
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:84:53: error: 'Task' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
82 | private var starting: (id: UUID, task: Task<InstallationIdentity, Error>)?
83 | private var proving: (id: UUID, task: Task<String, Error>)?
84 | private var scanning: [String: (id: UUID, task: Task<ScanResult, Error>)] = [:]
| `- error: 'Task' is only available in macOS 10.15 or newer
85 |
86 | // Which installation the calls running now belong to: reset() and close() move on to the next,
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:91:28: error: 'Task' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
89 | // A reset's deletion, which every later load waits for; and the installation ID being saved and a
90 | // re-enrolment, which a reset waits for.
91 | private var resetting: Task<Void, Never>?
| `- error: 'Task' is only available in macOS 10.15 or newer
92 | private var saving: Task<Void, Error>?
93 | private var reenrolling: Task<Void, Never>?
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:92:25: error: 'Task' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
90 | // re-enrolment, which a reset waits for.
91 | private var resetting: Task<Void, Never>?
92 | private var saving: Task<Void, Error>?
| `- error: 'Task' is only available in macOS 10.15 or newer
93 | private var reenrolling: Task<Void, Never>?
94 | // The persistent writes and key changes running now (mutate): a reset waits for each before it
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:93:30: error: 'Task' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
91 | private var resetting: Task<Void, Never>?
92 | private var saving: Task<Void, Error>?
93 | private var reenrolling: Task<Void, Never>?
| `- error: 'Task' is only available in macOS 10.15 or newer
94 | // The persistent writes and key changes running now (mutate): a reset waits for each before it
95 | // deletes, so none outlives the deletion.
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/InstallationStore.swift:25:43: error: 'Task' is only available in macOS 10.15 or newer
16 | /// on iOS in the Keychain, on this device only, readable after the first unlock, never synchronized.
17 | @MainActor
18 | open class InstallationStore {
| `- note: add '@available' attribute to enclosing class
19 | public let key: InstallationKeyProvider
20 | public let storage: SecureStorage
:
23 | static let stepUpReenrolKey = "recognition.stepup_reenrol_pending.v1"
24 |
25 | private var loading: (id: UUID, task: Task<InstallationIdentity, Error>)?
| `- error: 'Task' is only available in macOS 10.15 or newer
26 |
27 | /// `key` and `storage` replace the native ones in tests.
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/Transport.swift:137:26: error: 'withTaskCancellationHandler(operation:onCancel:isolation:)' is only available in macOS 10.15 or newer
21 | /// `timeout` seconds, 15 unless you say otherwise, from its start to its answer.
22 | @MainActor
23 | public final class HTTPTransport: DeviceTrustTransport {
| `- note: add '@available' attribute to enclosing class
24 | public let baseURL: String
25 | public let timeout: TimeInterval
:
132 | }
133 |
134 | private nonisolated static func load(_ request: URLRequest, with session: URLSession) async throws -> (Data, Int) {
| `- note: add '@available' attribute to enclosing static method
135 | final class Box: @unchecked Sendable { var task: URLSessionDataTask? }
136 | let box = Box()
137 | return try await withTaskCancellationHandler {
| |- error: 'withTaskCancellationHandler(operation:onCancel:isolation:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
138 | try await withCheckedThrowingContinuation { (continuation: CheckedContinuation<(Data, Int), Error>) in
139 | let task = session.dataTask(with: request) { data, response, error in
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/Transport.swift:138:23: error: 'withCheckedThrowingContinuation(isolation:function:_:)' is only available in macOS 10.15 or newer
21 | /// `timeout` seconds, 15 unless you say otherwise, from its start to its answer.
22 | @MainActor
23 | public final class HTTPTransport: DeviceTrustTransport {
| `- note: add '@available' attribute to enclosing class
24 | public let baseURL: String
25 | public let timeout: TimeInterval
:
132 | }
133 |
134 | private nonisolated static func load(_ request: URLRequest, with session: URLSession) async throws -> (Data, Int) {
| `- note: add '@available' attribute to enclosing static method
135 | final class Box: @unchecked Sendable { var task: URLSessionDataTask? }
136 | let box = Box()
137 | return try await withTaskCancellationHandler {
138 | try await withCheckedThrowingContinuation { (continuation: CheckedContinuation<(Data, Int), Error>) in
| |- error: 'withCheckedThrowingContinuation(isolation:function:_:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
139 | let task = session.dataTask(with: request) { data, response, error in
140 | if let error {
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/Transport.swift:138:72: error: 'CheckedContinuation' is only available in macOS 10.15 or newer
21 | /// `timeout` seconds, 15 unless you say otherwise, from its start to its answer.
22 | @MainActor
23 | public final class HTTPTransport: DeviceTrustTransport {
| `- note: add '@available' attribute to enclosing class
24 | public let baseURL: String
25 | public let timeout: TimeInterval
:
132 | }
133 |
134 | private nonisolated static func load(_ request: URLRequest, with session: URLSession) async throws -> (Data, Int) {
| `- note: add '@available' attribute to enclosing static method
135 | final class Box: @unchecked Sendable { var task: URLSessionDataTask? }
136 | let box = Box()
137 | return try await withTaskCancellationHandler {
138 | try await withCheckedThrowingContinuation { (continuation: CheckedContinuation<(Data, Int), Error>) in
| |- error: 'CheckedContinuation' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
139 | let task = session.dataTask(with: request) { data, response, error in
140 | if let error {
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/Transport.swift:138:56: error: 'isolation()' is only available in macOS 10.15 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/Necessary/Transport.swift:138:55: note: expanded code originates here
21 | /// `timeout` seconds, 15 unless you say otherwise, from its start to its answer.
22 | @MainActor
23 | public final class HTTPTransport: DeviceTrustTransport {
| `- note: add '@available' attribute to enclosing class
24 | public let baseURL: String
25 | public let timeout: TimeInterval
:
132 | }
133 |
134 | private nonisolated static func load(_ request: URLRequest, with session: URLSession) async throws -> (Data, Int) {
| `- note: add '@available' attribute to enclosing static method
135 | final class Box: @unchecked Sendable { var task: URLSessionDataTask? }
136 | let box = Box()
137 | return try await withTaskCancellationHandler {
138 | try await withCheckedThrowingContinuation { (continuation: CheckedContinuation<(Data, Int), Error>) in
+--- /Users/admin/builder/spi-builder-workspace/Sources/Necessary/Transport.swift
|136 |
|137 |
|138 | #isolation
| | `- error: 'isolation()' is only available in macOS 10.15 or newer
+---------------------------------------------------------------------------------
139 | let task = session.dataTask(with: request) { data, response, error in
140 | if let error {
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/Transport.swift:137:55: error: 'isolation()' is only available in macOS 10.15 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/Necessary/Transport.swift:137:54: note: expanded code originates here
21 | /// `timeout` seconds, 15 unless you say otherwise, from its start to its answer.
22 | @MainActor
23 | public final class HTTPTransport: DeviceTrustTransport {
| `- note: add '@available' attribute to enclosing class
24 | public let baseURL: String
25 | public let timeout: TimeInterval
:
132 | }
133 |
134 | private nonisolated static func load(_ request: URLRequest, with session: URLSession) async throws -> (Data, Int) {
| `- note: add '@available' attribute to enclosing static method
135 | final class Box: @unchecked Sendable { var task: URLSessionDataTask? }
136 | let box = Box()
137 | return try await withTaskCancellationHandler {
+--- /Users/admin/builder/spi-builder-workspace/Sources/Necessary/Transport.swift
|135 |
|136 |
|137 | #isolation
| | `- error: 'isolation()' is only available in macOS 10.15 or newer
+---------------------------------------------------------------------------------
138 | try await withCheckedThrowingContinuation { (continuation: CheckedContinuation<(Data, Int), Error>) in
139 | let task = session.dataTask(with: request) { data, response, error in
[21/24] Compiling Necessary DeviceTrust.swift
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:81:43: error: 'Task' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
79 |
80 | // One call of each kind in flight; a second waits for the first's result.
81 | private var loading: (id: UUID, task: Task<InstallationIdentity, Error>)?
| `- error: 'Task' is only available in macOS 10.15 or newer
82 | private var starting: (id: UUID, task: Task<InstallationIdentity, Error>)?
83 | private var proving: (id: UUID, task: Task<String, Error>)?
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:82:44: error: 'Task' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
80 | // One call of each kind in flight; a second waits for the first's result.
81 | private var loading: (id: UUID, task: Task<InstallationIdentity, Error>)?
82 | private var starting: (id: UUID, task: Task<InstallationIdentity, Error>)?
| `- error: 'Task' is only available in macOS 10.15 or newer
83 | private var proving: (id: UUID, task: Task<String, Error>)?
84 | private var scanning: [String: (id: UUID, task: Task<ScanResult, Error>)] = [:]
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:83:43: error: 'Task' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
81 | private var loading: (id: UUID, task: Task<InstallationIdentity, Error>)?
82 | private var starting: (id: UUID, task: Task<InstallationIdentity, Error>)?
83 | private var proving: (id: UUID, task: Task<String, Error>)?
| `- error: 'Task' is only available in macOS 10.15 or newer
84 | private var scanning: [String: (id: UUID, task: Task<ScanResult, Error>)] = [:]
85 |
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:84:53: error: 'Task' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
82 | private var starting: (id: UUID, task: Task<InstallationIdentity, Error>)?
83 | private var proving: (id: UUID, task: Task<String, Error>)?
84 | private var scanning: [String: (id: UUID, task: Task<ScanResult, Error>)] = [:]
| `- error: 'Task' is only available in macOS 10.15 or newer
85 |
86 | // Which installation the calls running now belong to: reset() and close() move on to the next,
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:91:28: error: 'Task' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
89 | // A reset's deletion, which every later load waits for; and the installation ID being saved and a
90 | // re-enrolment, which a reset waits for.
91 | private var resetting: Task<Void, Never>?
| `- error: 'Task' is only available in macOS 10.15 or newer
92 | private var saving: Task<Void, Error>?
93 | private var reenrolling: Task<Void, Never>?
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:92:25: error: 'Task' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
90 | // re-enrolment, which a reset waits for.
91 | private var resetting: Task<Void, Never>?
92 | private var saving: Task<Void, Error>?
| `- error: 'Task' is only available in macOS 10.15 or newer
93 | private var reenrolling: Task<Void, Never>?
94 | // The persistent writes and key changes running now (mutate): a reset waits for each before it
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:93:30: error: 'Task' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
91 | private var resetting: Task<Void, Never>?
92 | private var saving: Task<Void, Error>?
93 | private var reenrolling: Task<Void, Never>?
| `- error: 'Task' is only available in macOS 10.15 or newer
94 | // The persistent writes and key changes running now (mutate): a reset waits for each before it
95 | // deletes, so none outlives the deletion.
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:153:66: error: 'value' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
149 | /// (`InstallationIdentity.createdThisLaunch`): whatever the app kept for the one before belongs to
150 | /// that one. Calls at once share one load, so one key gets one ID.
151 | public func loadIdentity() async throws -> InstallationIdentity {
| `- note: add '@available' attribute to enclosing instance method
152 | if let known = currentIdentity { return known }
153 | if let running = loading { return try await running.task.value }
| |- error: 'value' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
154 | let id = UUID()
155 | let task = Task<InstallationIdentity, Error> { @MainActor in
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:155:20: error: 'Task' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
149 | /// (`InstallationIdentity.createdThisLaunch`): whatever the app kept for the one before belongs to
150 | /// that one. Calls at once share one load, so one key gets one ID.
151 | public func loadIdentity() async throws -> InstallationIdentity {
| `- note: add '@available' attribute to enclosing instance method
152 | if let known = currentIdentity { return known }
153 | if let running = loading { return try await running.task.value }
154 | let id = UUID()
155 | let task = Task<InstallationIdentity, Error> { @MainActor in
| |- error: 'Task' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
156 | defer { if self.loading?.id == id { self.loading = nil } }
157 | return try await self.load()
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:155:52: error: 'init(name:priority:operation:)' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
149 | /// (`InstallationIdentity.createdThisLaunch`): whatever the app kept for the one before belongs to
150 | /// that one. Calls at once share one load, so one key gets one ID.
151 | public func loadIdentity() async throws -> InstallationIdentity {
| `- note: add '@available' attribute to enclosing instance method
152 | if let known = currentIdentity { return known }
153 | if let running = loading { return try await running.task.value }
154 | let id = UUID()
155 | let task = Task<InstallationIdentity, Error> { @MainActor in
| |- error: 'init(name:priority:operation:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
156 | defer { if self.loading?.id == id { self.loading = nil } }
157 | return try await self.load()
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:160:31: error: 'value' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
149 | /// (`InstallationIdentity.createdThisLaunch`): whatever the app kept for the one before belongs to
150 | /// that one. Calls at once share one load, so one key gets one ID.
151 | public func loadIdentity() async throws -> InstallationIdentity {
| `- note: add '@available' attribute to enclosing instance method
152 | if let known = currentIdentity { return known }
153 | if let running = loading { return try await running.task.value }
:
158 | }
159 | loading = (id, task)
160 | return try await task.value
| |- error: 'value' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
161 | }
162 |
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:165:26: error: 'value' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
161 | }
162 |
163 | private func load() async throws -> InstallationIdentity {
| `- note: add '@available' attribute to enclosing instance method
164 | // A reset's deletion first, so that nothing loads the key it deletes.
165 | await resetting?.value
| |- error: 'value' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
166 | let generation = self.generation
167 | let loaded = try await store.loadOrCreate()
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:182:20: error: 'Task' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
177 | /// is called, so a write asked for after that throws here without writing; one asked for before is
178 | /// in `mutations`, which the reset waits for before it deletes anything.
179 | private func mutate<T>(_ generation: Int, _ change: @escaping () async throws -> T) async throws -> T {
| `- note: add '@available' attribute to enclosing instance method
180 | try current(generation)
181 | let id = UUID()
182 | let task = Task<T, Error> { @MainActor in
| |- error: 'Task' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
183 | defer { self.mutations[id] = nil }
184 | return try await change()
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:182:33: error: 'init(name:priority:operation:)' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
177 | /// is called, so a write asked for after that throws here without writing; one asked for before is
178 | /// in `mutations`, which the reset waits for before it deletes anything.
179 | private func mutate<T>(_ generation: Int, _ change: @escaping () async throws -> T) async throws -> T {
| `- note: add '@available' attribute to enclosing instance method
180 | try current(generation)
181 | let id = UUID()
182 | let task = Task<T, Error> { @MainActor in
| |- error: 'init(name:priority:operation:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
183 | defer { self.mutations[id] = nil }
184 | return try await change()
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:186:42: error: 'result' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
177 | /// is called, so a write asked for after that throws here without writing; one asked for before is
178 | /// in `mutations`, which the reset waits for before it deletes anything.
179 | private func mutate<T>(_ generation: Int, _ change: @escaping () async throws -> T) async throws -> T {
| `- note: add '@available' attribute to enclosing instance method
180 | try current(generation)
181 | let id = UUID()
:
184 | return try await change()
185 | }
186 | mutations[id] = { _ = await task.result }
| |- error: 'result' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
187 | return try await task.value
188 | }
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:187:31: error: 'value' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
177 | /// is called, so a write asked for after that throws here without writing; one asked for before is
178 | /// in `mutations`, which the reset waits for before it deletes anything.
179 | private func mutate<T>(_ generation: Int, _ change: @escaping () async throws -> T) async throws -> T {
| `- note: add '@available' attribute to enclosing instance method
180 | try current(generation)
181 | let id = UUID()
:
185 | }
186 | mutations[id] = { _ = await task.result }
187 | return try await task.value
| |- error: 'value' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
188 | }
189 |
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:204:67: error: 'value' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
201 | /// errors goes to the app as it came. A second call while one runs gets its result.
202 | @discardableResult
203 | public func start() async throws -> InstallationIdentity {
| `- note: add '@available' attribute to enclosing instance method
204 | if let running = starting { return try await running.task.value }
| |- error: 'value' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
205 | let id = UUID()
206 | let task = Task<InstallationIdentity, Error> { @MainActor in
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:206:20: error: 'Task' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
201 | /// errors goes to the app as it came. A second call while one runs gets its result.
202 | @discardableResult
203 | public func start() async throws -> InstallationIdentity {
| `- note: add '@available' attribute to enclosing instance method
204 | if let running = starting { return try await running.task.value }
205 | let id = UUID()
206 | let task = Task<InstallationIdentity, Error> { @MainActor in
| |- error: 'Task' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
207 | defer { if self.starting?.id == id { self.starting = nil } }
208 | return try await self.startOnce()
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:206:52: error: 'init(name:priority:operation:)' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
201 | /// errors goes to the app as it came. A second call while one runs gets its result.
202 | @discardableResult
203 | public func start() async throws -> InstallationIdentity {
| `- note: add '@available' attribute to enclosing instance method
204 | if let running = starting { return try await running.task.value }
205 | let id = UUID()
206 | let task = Task<InstallationIdentity, Error> { @MainActor in
| |- error: 'init(name:priority:operation:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
207 | defer { if self.starting?.id == id { self.starting = nil } }
208 | return try await self.startOnce()
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:211:31: error: 'value' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
201 | /// errors goes to the app as it came. A second call while one runs gets its result.
202 | @discardableResult
203 | public func start() async throws -> InstallationIdentity {
| `- note: add '@available' attribute to enclosing instance method
204 | if let running = starting { return try await running.task.value }
205 | let id = UUID()
:
209 | }
210 | starting = (id, task)
211 | return try await task.value
| |- error: 'value' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
212 | }
213 |
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:227:66: error: 'value' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
224 | /// its result.
225 | @discardableResult
226 | public func prove() async throws -> String {
| `- note: add '@available' attribute to enclosing instance method
227 | if let running = proving { return try await running.task.value }
| |- error: 'value' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
228 | let id = UUID()
229 | let generation = self.generation
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:230:20: error: 'Task' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
224 | /// its result.
225 | @discardableResult
226 | public func prove() async throws -> String {
| `- note: add '@available' attribute to enclosing instance method
227 | if let running = proving { return try await running.task.value }
228 | let id = UUID()
229 | let generation = self.generation
230 | let task = Task<String, Error> { @MainActor in
| |- error: 'Task' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
231 | defer { if self.proving?.id == id { self.proving = nil } }
232 | return try await self.proveOnce(generation, retried: false)
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:230:38: error: 'init(name:priority:operation:)' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
224 | /// its result.
225 | @discardableResult
226 | public func prove() async throws -> String {
| `- note: add '@available' attribute to enclosing instance method
227 | if let running = proving { return try await running.task.value }
228 | let id = UUID()
229 | let generation = self.generation
230 | let task = Task<String, Error> { @MainActor in
| |- error: 'init(name:priority:operation:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
231 | defer { if self.proving?.id == id { self.proving = nil } }
232 | return try await self.proveOnce(generation, retried: false)
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:235:31: error: 'value' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
224 | /// its result.
225 | @discardableResult
226 | public func prove() async throws -> String {
| `- note: add '@available' attribute to enclosing instance method
227 | if let running = proving { return try await running.task.value }
228 | let id = UUID()
:
233 | }
234 | proving = (id, task)
235 | return try await task.value
| |- error: 'value' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
236 | }
237 |
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:254:24: error: 'Task' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
240 | /// with `InterruptedCallError` and keep nothing; calls made from now on wait for the deletion, and
241 | /// never join one made before.
242 | public func reset() async throws {
| `- note: add '@available' attribute to enclosing instance method
243 | let loading = self.loading?.task
244 | let saving = self.saving
:
252 | let store = self.store
253 | let stepUpKey = self.stepUpKeyProvider
254 | let deleting = Task<Void, Error> { @MainActor in
| |- error: 'Task' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
255 | await earlier?.value
256 | // A load or a save still running finishes first, so that nothing it writes outlives the
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:254:40: error: 'init(name:priority:operation:)' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
240 | /// with `InterruptedCallError` and keep nothing; calls made from now on wait for the deletion, and
241 | /// never join one made before.
242 | public func reset() async throws {
| `- note: add '@available' attribute to enclosing instance method
243 | let loading = self.loading?.task
244 | let saving = self.saving
:
252 | let store = self.store
253 | let stepUpKey = self.stepUpKeyProvider
254 | let deleting = Task<Void, Error> { @MainActor in
| |- error: 'init(name:priority:operation:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
255 | await earlier?.value
256 | // A load or a save still running finishes first, so that nothing it writes outlives the
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:255:28: error: 'value' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
240 | /// with `InterruptedCallError` and keep nothing; calls made from now on wait for the deletion, and
241 | /// never join one made before.
242 | public func reset() async throws {
| `- note: add '@available' attribute to enclosing instance method
243 | let loading = self.loading?.task
244 | let saving = self.saving
:
253 | let stepUpKey = self.stepUpKeyProvider
254 | let deleting = Task<Void, Error> { @MainActor in
255 | await earlier?.value
| |- error: 'value' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
256 | // A load or a save still running finishes first, so that nothing it writes outlives the
257 | // deletion. So does a re-enrolment: its key, which a backend may already have taken, is
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:260:32: error: 'result' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
240 | /// with `InterruptedCallError` and keep nothing; calls made from now on wait for the deletion, and
241 | /// never join one made before.
242 | public func reset() async throws {
| `- note: add '@available' attribute to enclosing instance method
243 | let loading = self.loading?.task
244 | let saving = self.saving
:
258 | // deleted after it, and the marker it writes is cleared. So does every write and key change
259 | // still running (mutate): the step-up marker, a step-up key being made.
260 | _ = await loading?.result
| |- error: 'result' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
261 | _ = await saving?.result
262 | await reenrolling?.value
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:261:31: error: 'result' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
240 | /// with `InterruptedCallError` and keep nothing; calls made from now on wait for the deletion, and
241 | /// never join one made before.
242 | public func reset() async throws {
| `- note: add '@available' attribute to enclosing instance method
243 | let loading = self.loading?.task
244 | let saving = self.saving
:
259 | // still running (mutate): the step-up marker, a step-up key being made.
260 | _ = await loading?.result
261 | _ = await saving?.result
| |- error: 'result' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
262 | await reenrolling?.value
263 | for change in changing { await change() }
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:262:32: error: 'value' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
240 | /// with `InterruptedCallError` and keep nothing; calls made from now on wait for the deletion, and
241 | /// never join one made before.
242 | public func reset() async throws {
| `- note: add '@available' attribute to enclosing instance method
243 | let loading = self.loading?.task
244 | let saving = self.saving
:
260 | _ = await loading?.result
261 | _ = await saving?.result
262 | await reenrolling?.value
| |- error: 'value' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
263 | for change in changing { await change() }
264 | try await store.clear()
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:281:21: error: 'Task' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
240 | /// with `InterruptedCallError` and keep nothing; calls made from now on wait for the deletion, and
241 | /// never join one made before.
242 | public func reset() async throws {
| `- note: add '@available' attribute to enclosing instance method
243 | let loading = self.loading?.task
244 | let saving = self.saving
:
279 | }
280 | // Later loads wait for the deletion, whatever came of it; the caller of reset hears what did.
281 | resetting = Task { _ = await deleting.result }
| |- error: 'Task' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
282 | try await deleting.value
283 | }
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:281:21: error: 'init(name:priority:operation:)' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
240 | /// with `InterruptedCallError` and keep nothing; calls made from now on wait for the deletion, and
241 | /// never join one made before.
242 | public func reset() async throws {
| `- note: add '@available' attribute to enclosing instance method
243 | let loading = self.loading?.task
244 | let saving = self.saving
:
279 | }
280 | // Later loads wait for the deletion, whatever came of it; the caller of reset hears what did.
281 | resetting = Task { _ = await deleting.result }
| |- error: 'init(name:priority:operation:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
282 | try await deleting.value
283 | }
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:281:47: error: 'result' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
240 | /// with `InterruptedCallError` and keep nothing; calls made from now on wait for the deletion, and
241 | /// never join one made before.
242 | public func reset() async throws {
| `- note: add '@available' attribute to enclosing instance method
243 | let loading = self.loading?.task
244 | let saving = self.saving
:
279 | }
280 | // Later loads wait for the deletion, whatever came of it; the caller of reset hears what did.
281 | resetting = Task { _ = await deleting.result }
| |- error: 'result' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
282 | try await deleting.value
283 | }
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:282:28: error: 'value' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
240 | /// with `InterruptedCallError` and keep nothing; calls made from now on wait for the deletion, and
241 | /// never join one made before.
242 | public func reset() async throws {
| `- note: add '@available' attribute to enclosing instance method
243 | let loading = self.loading?.task
244 | let saving = self.saving
:
280 | // Later loads wait for the deletion, whatever came of it; the caller of reset hears what did.
281 | resetting = Task { _ = await deleting.result }
282 | try await deleting.value
| |- error: 'value' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
283 | }
284 |
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:348:26: error: 'Task' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
329 | }
330 |
331 | private func register(_ generation: Int) async throws {
| `- note: add '@available' attribute to enclosing instance method
332 | let identity = try await loadIdentity()
333 | try current(generation)
:
346 | currentIdentity = identity.withInstallationId(held)
347 | let store = self.store
348 | let saving = Task<Void, Error> { @MainActor in try await store.saveInstallationId(held) }
| |- error: 'Task' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
349 | self.saving = saving
350 | try await saving.value
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:348:42: error: 'init(name:priority:operation:)' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
329 | }
330 |
331 | private func register(_ generation: Int) async throws {
| `- note: add '@available' attribute to enclosing instance method
332 | let identity = try await loadIdentity()
333 | try current(generation)
:
346 | currentIdentity = identity.withInstallationId(held)
347 | let store = self.store
348 | let saving = Task<Void, Error> { @MainActor in try await store.saveInstallationId(held) }
| |- error: 'init(name:priority:operation:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
349 | self.saving = saving
350 | try await saving.value
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:350:30: error: 'value' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
329 | }
330 |
331 | private func register(_ generation: Int) async throws {
| `- note: add '@available' attribute to enclosing instance method
332 | let identity = try await loadIdentity()
333 | try current(generation)
:
348 | let saving = Task<Void, Error> { @MainActor in try await store.saveInstallationId(held) }
349 | self.saving = saving
350 | try await saving.value
| |- error: 'value' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
351 | }
352 | try await settleStepUpKey(answer, offered, generation)
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:446:73: error: 'value' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
431 | /// app's to renew. A second call for the same scan while one runs gets its result; a scan whose
432 | /// answer was lost is simply asked for again.
433 | public func scan(session: String? = nil, operation: JSONObject? = nil) async throws -> ScanResult {
| `- note: add '@available' attribute to enclosing instance method
434 | if operation != nil && session == nil {
435 | throw UsageError.invalidArgument(
:
444 | JSONValue(enabled),
445 | ]).encodedJSON
446 | if let running = scanning[kind] { return try await running.task.value }
| |- error: 'value' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
447 | let id = UUID()
448 | let generation = self.generation
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:449:20: error: 'Task' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
431 | /// app's to renew. A second call for the same scan while one runs gets its result; a scan whose
432 | /// answer was lost is simply asked for again.
433 | public func scan(session: String? = nil, operation: JSONObject? = nil) async throws -> ScanResult {
| `- note: add '@available' attribute to enclosing instance method
434 | if operation != nil && session == nil {
435 | throw UsageError.invalidArgument(
:
447 | let id = UUID()
448 | let generation = self.generation
449 | let task = Task<ScanResult, Error> { @MainActor in
| |- error: 'Task' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
450 | defer { if self.scanning[kind]?.id == id { self.scanning[kind] = nil } }
451 | return try await self.scanWithProtocol(generation, session, operation, enabled)
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:449:42: error: 'init(name:priority:operation:)' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
431 | /// app's to renew. A second call for the same scan while one runs gets its result; a scan whose
432 | /// answer was lost is simply asked for again.
433 | public func scan(session: String? = nil, operation: JSONObject? = nil) async throws -> ScanResult {
| `- note: add '@available' attribute to enclosing instance method
434 | if operation != nil && session == nil {
435 | throw UsageError.invalidArgument(
:
447 | let id = UUID()
448 | let generation = self.generation
449 | let task = Task<ScanResult, Error> { @MainActor in
| |- error: 'init(name:priority:operation:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
450 | defer { if self.scanning[kind]?.id == id { self.scanning[kind] = nil } }
451 | return try await self.scanWithProtocol(generation, session, operation, enabled)
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:454:31: error: 'value' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
431 | /// app's to renew. A second call for the same scan while one runs gets its result; a scan whose
432 | /// answer was lost is simply asked for again.
433 | public func scan(session: String? = nil, operation: JSONObject? = nil) async throws -> ScanResult {
| `- note: add '@available' attribute to enclosing instance method
434 | if operation != nil && session == nil {
435 | throw UsageError.invalidArgument(
:
452 | }
453 | scanning[kind] = (id, task)
454 | return try await task.value
| |- error: 'value' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
455 | }
456 |
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:562:23: error: 'Task' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
558 | /// `STEPUP_REENROL_PENDING`, across restarts too, until a call of this succeeds.
559 | @discardableResult
560 | public func reenrolStepUp(session: String, reauthentication: JSONObject = JSONObject(),
| `- note: add '@available' attribute to enclosing instance method
561 | reason: String = "Confirm your new step-up key") async throws -> JSONObject {
562 | let running = Task<JSONObject, Error> { @MainActor in
| |- error: 'Task' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
563 | try await self.reenrolStepUpOnce(session, reauthentication, reason)
564 | }
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:562:45: error: 'init(name:priority:operation:)' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
558 | /// `STEPUP_REENROL_PENDING`, across restarts too, until a call of this succeeds.
559 | @discardableResult
560 | public func reenrolStepUp(session: String, reauthentication: JSONObject = JSONObject(),
| `- note: add '@available' attribute to enclosing instance method
561 | reason: String = "Confirm your new step-up key") async throws -> JSONObject {
562 | let running = Task<JSONObject, Error> { @MainActor in
| |- error: 'init(name:priority:operation:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
563 | try await self.reenrolStepUpOnce(session, reauthentication, reason)
564 | }
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:566:23: error: 'Task' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
558 | /// `STEPUP_REENROL_PENDING`, across restarts too, until a call of this succeeds.
559 | @discardableResult
560 | public func reenrolStepUp(session: String, reauthentication: JSONObject = JSONObject(),
| `- note: add '@available' attribute to enclosing instance method
561 | reason: String = "Confirm your new step-up key") async throws -> JSONObject {
562 | let running = Task<JSONObject, Error> { @MainActor in
:
564 | }
565 | // reset() waits for it, whatever comes of it.
566 | reenrolling = Task { _ = await running.result }
| |- error: 'Task' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
567 | return try await running.value
568 | }
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:566:23: error: 'init(name:priority:operation:)' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
558 | /// `STEPUP_REENROL_PENDING`, across restarts too, until a call of this succeeds.
559 | @discardableResult
560 | public func reenrolStepUp(session: String, reauthentication: JSONObject = JSONObject(),
| `- note: add '@available' attribute to enclosing instance method
561 | reason: String = "Confirm your new step-up key") async throws -> JSONObject {
562 | let running = Task<JSONObject, Error> { @MainActor in
:
564 | }
565 | // reset() waits for it, whatever comes of it.
566 | reenrolling = Task { _ = await running.result }
| |- error: 'init(name:priority:operation:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
567 | return try await running.value
568 | }
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:566:48: error: 'result' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
558 | /// `STEPUP_REENROL_PENDING`, across restarts too, until a call of this succeeds.
559 | @discardableResult
560 | public func reenrolStepUp(session: String, reauthentication: JSONObject = JSONObject(),
| `- note: add '@available' attribute to enclosing instance method
561 | reason: String = "Confirm your new step-up key") async throws -> JSONObject {
562 | let running = Task<JSONObject, Error> { @MainActor in
:
564 | }
565 | // reset() waits for it, whatever comes of it.
566 | reenrolling = Task { _ = await running.result }
| |- error: 'result' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
567 | return try await running.value
568 | }
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:567:34: error: 'value' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
558 | /// `STEPUP_REENROL_PENDING`, across restarts too, until a call of this succeeds.
559 | @discardableResult
560 | public func reenrolStepUp(session: String, reauthentication: JSONObject = JSONObject(),
| `- note: add '@available' attribute to enclosing instance method
561 | reason: String = "Confirm your new step-up key") async throws -> JSONObject {
562 | let running = Task<JSONObject, Error> { @MainActor in
:
565 | // reset() waits for it, whatever comes of it.
566 | reenrolling = Task { _ = await running.result }
567 | return try await running.value
| |- error: 'value' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
568 | }
569 |
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:682:19: error: 'Task' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
679 | }
680 |
681 | private func sleep(_ seconds: TimeInterval) async throws {
| `- note: add '@available' attribute to enclosing instance method
682 | try await Task.sleep(nanoseconds: UInt64(seconds * 1_000_000_000))
| |- error: 'Task' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
683 | }
684 | }
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:682:24: error: 'sleep(nanoseconds:)' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
679 | }
680 |
681 | private func sleep(_ seconds: TimeInterval) async throws {
| `- note: add '@available' attribute to enclosing instance method
682 | try await Task.sleep(nanoseconds: UInt64(seconds * 1_000_000_000))
| |- error: 'sleep(nanoseconds:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
683 | }
684 | }
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/Encoding.swift:37:5: error: 'SHA256' is only available in macOS 10.15 or newer
34 | }
35 |
36 | func sha256Hex(_ data: Data) -> String {
| `- note: add '@available' attribute to enclosing global function
37 | SHA256.hash(data: data).map { byte in
| |- error: 'SHA256' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
38 | let hex = String(byte, radix: 16)
39 | return hex.count == 1 ? "0" + hex : hex
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/Encoding.swift:37:12: error: 'hash(data:)' is only available in macOS 10.15 or newer
34 | }
35 |
36 | func sha256Hex(_ data: Data) -> String {
| `- note: add '@available' attribute to enclosing global function
37 | SHA256.hash(data: data).map { byte in
| |- error: 'hash(data:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
38 | let hex = String(byte, radix: 16)
39 | return hex.count == 1 ? "0" + hex : hex
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/Encoding.swift:37:29: warning: conformance of 'SHA256Digest' to 'Sequence' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
34 | }
35 |
36 | func sha256Hex(_ data: Data) -> String {
| `- note: add '@available' attribute to enclosing global function
37 | SHA256.hash(data: data).map { byte in
| |- warning: conformance of 'SHA256Digest' to 'Sequence' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
| `- note: add 'if #available' version check
38 | let hex = String(byte, radix: 16)
39 | return hex.count == 1 ? "0" + hex : hex
[22/24] Compiling Necessary Encoding.swift
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:81:43: error: 'Task' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
79 |
80 | // One call of each kind in flight; a second waits for the first's result.
81 | private var loading: (id: UUID, task: Task<InstallationIdentity, Error>)?
| `- error: 'Task' is only available in macOS 10.15 or newer
82 | private var starting: (id: UUID, task: Task<InstallationIdentity, Error>)?
83 | private var proving: (id: UUID, task: Task<String, Error>)?
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:82:44: error: 'Task' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
80 | // One call of each kind in flight; a second waits for the first's result.
81 | private var loading: (id: UUID, task: Task<InstallationIdentity, Error>)?
82 | private var starting: (id: UUID, task: Task<InstallationIdentity, Error>)?
| `- error: 'Task' is only available in macOS 10.15 or newer
83 | private var proving: (id: UUID, task: Task<String, Error>)?
84 | private var scanning: [String: (id: UUID, task: Task<ScanResult, Error>)] = [:]
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:83:43: error: 'Task' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
81 | private var loading: (id: UUID, task: Task<InstallationIdentity, Error>)?
82 | private var starting: (id: UUID, task: Task<InstallationIdentity, Error>)?
83 | private var proving: (id: UUID, task: Task<String, Error>)?
| `- error: 'Task' is only available in macOS 10.15 or newer
84 | private var scanning: [String: (id: UUID, task: Task<ScanResult, Error>)] = [:]
85 |
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:84:53: error: 'Task' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
82 | private var starting: (id: UUID, task: Task<InstallationIdentity, Error>)?
83 | private var proving: (id: UUID, task: Task<String, Error>)?
84 | private var scanning: [String: (id: UUID, task: Task<ScanResult, Error>)] = [:]
| `- error: 'Task' is only available in macOS 10.15 or newer
85 |
86 | // Which installation the calls running now belong to: reset() and close() move on to the next,
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:91:28: error: 'Task' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
89 | // A reset's deletion, which every later load waits for; and the installation ID being saved and a
90 | // re-enrolment, which a reset waits for.
91 | private var resetting: Task<Void, Never>?
| `- error: 'Task' is only available in macOS 10.15 or newer
92 | private var saving: Task<Void, Error>?
93 | private var reenrolling: Task<Void, Never>?
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:92:25: error: 'Task' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
90 | // re-enrolment, which a reset waits for.
91 | private var resetting: Task<Void, Never>?
92 | private var saving: Task<Void, Error>?
| `- error: 'Task' is only available in macOS 10.15 or newer
93 | private var reenrolling: Task<Void, Never>?
94 | // The persistent writes and key changes running now (mutate): a reset waits for each before it
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:93:30: error: 'Task' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
91 | private var resetting: Task<Void, Never>?
92 | private var saving: Task<Void, Error>?
93 | private var reenrolling: Task<Void, Never>?
| `- error: 'Task' is only available in macOS 10.15 or newer
94 | // The persistent writes and key changes running now (mutate): a reset waits for each before it
95 | // deletes, so none outlives the deletion.
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:153:66: error: 'value' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
149 | /// (`InstallationIdentity.createdThisLaunch`): whatever the app kept for the one before belongs to
150 | /// that one. Calls at once share one load, so one key gets one ID.
151 | public func loadIdentity() async throws -> InstallationIdentity {
| `- note: add '@available' attribute to enclosing instance method
152 | if let known = currentIdentity { return known }
153 | if let running = loading { return try await running.task.value }
| |- error: 'value' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
154 | let id = UUID()
155 | let task = Task<InstallationIdentity, Error> { @MainActor in
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:155:20: error: 'Task' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
149 | /// (`InstallationIdentity.createdThisLaunch`): whatever the app kept for the one before belongs to
150 | /// that one. Calls at once share one load, so one key gets one ID.
151 | public func loadIdentity() async throws -> InstallationIdentity {
| `- note: add '@available' attribute to enclosing instance method
152 | if let known = currentIdentity { return known }
153 | if let running = loading { return try await running.task.value }
154 | let id = UUID()
155 | let task = Task<InstallationIdentity, Error> { @MainActor in
| |- error: 'Task' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
156 | defer { if self.loading?.id == id { self.loading = nil } }
157 | return try await self.load()
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:155:52: error: 'init(name:priority:operation:)' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
149 | /// (`InstallationIdentity.createdThisLaunch`): whatever the app kept for the one before belongs to
150 | /// that one. Calls at once share one load, so one key gets one ID.
151 | public func loadIdentity() async throws -> InstallationIdentity {
| `- note: add '@available' attribute to enclosing instance method
152 | if let known = currentIdentity { return known }
153 | if let running = loading { return try await running.task.value }
154 | let id = UUID()
155 | let task = Task<InstallationIdentity, Error> { @MainActor in
| |- error: 'init(name:priority:operation:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
156 | defer { if self.loading?.id == id { self.loading = nil } }
157 | return try await self.load()
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:160:31: error: 'value' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
149 | /// (`InstallationIdentity.createdThisLaunch`): whatever the app kept for the one before belongs to
150 | /// that one. Calls at once share one load, so one key gets one ID.
151 | public func loadIdentity() async throws -> InstallationIdentity {
| `- note: add '@available' attribute to enclosing instance method
152 | if let known = currentIdentity { return known }
153 | if let running = loading { return try await running.task.value }
:
158 | }
159 | loading = (id, task)
160 | return try await task.value
| |- error: 'value' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
161 | }
162 |
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:165:26: error: 'value' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
161 | }
162 |
163 | private func load() async throws -> InstallationIdentity {
| `- note: add '@available' attribute to enclosing instance method
164 | // A reset's deletion first, so that nothing loads the key it deletes.
165 | await resetting?.value
| |- error: 'value' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
166 | let generation = self.generation
167 | let loaded = try await store.loadOrCreate()
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:182:20: error: 'Task' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
177 | /// is called, so a write asked for after that throws here without writing; one asked for before is
178 | /// in `mutations`, which the reset waits for before it deletes anything.
179 | private func mutate<T>(_ generation: Int, _ change: @escaping () async throws -> T) async throws -> T {
| `- note: add '@available' attribute to enclosing instance method
180 | try current(generation)
181 | let id = UUID()
182 | let task = Task<T, Error> { @MainActor in
| |- error: 'Task' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
183 | defer { self.mutations[id] = nil }
184 | return try await change()
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:182:33: error: 'init(name:priority:operation:)' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
177 | /// is called, so a write asked for after that throws here without writing; one asked for before is
178 | /// in `mutations`, which the reset waits for before it deletes anything.
179 | private func mutate<T>(_ generation: Int, _ change: @escaping () async throws -> T) async throws -> T {
| `- note: add '@available' attribute to enclosing instance method
180 | try current(generation)
181 | let id = UUID()
182 | let task = Task<T, Error> { @MainActor in
| |- error: 'init(name:priority:operation:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
183 | defer { self.mutations[id] = nil }
184 | return try await change()
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:186:42: error: 'result' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
177 | /// is called, so a write asked for after that throws here without writing; one asked for before is
178 | /// in `mutations`, which the reset waits for before it deletes anything.
179 | private func mutate<T>(_ generation: Int, _ change: @escaping () async throws -> T) async throws -> T {
| `- note: add '@available' attribute to enclosing instance method
180 | try current(generation)
181 | let id = UUID()
:
184 | return try await change()
185 | }
186 | mutations[id] = { _ = await task.result }
| |- error: 'result' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
187 | return try await task.value
188 | }
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:187:31: error: 'value' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
177 | /// is called, so a write asked for after that throws here without writing; one asked for before is
178 | /// in `mutations`, which the reset waits for before it deletes anything.
179 | private func mutate<T>(_ generation: Int, _ change: @escaping () async throws -> T) async throws -> T {
| `- note: add '@available' attribute to enclosing instance method
180 | try current(generation)
181 | let id = UUID()
:
185 | }
186 | mutations[id] = { _ = await task.result }
187 | return try await task.value
| |- error: 'value' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
188 | }
189 |
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:204:67: error: 'value' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
201 | /// errors goes to the app as it came. A second call while one runs gets its result.
202 | @discardableResult
203 | public func start() async throws -> InstallationIdentity {
| `- note: add '@available' attribute to enclosing instance method
204 | if let running = starting { return try await running.task.value }
| |- error: 'value' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
205 | let id = UUID()
206 | let task = Task<InstallationIdentity, Error> { @MainActor in
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:206:20: error: 'Task' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
201 | /// errors goes to the app as it came. A second call while one runs gets its result.
202 | @discardableResult
203 | public func start() async throws -> InstallationIdentity {
| `- note: add '@available' attribute to enclosing instance method
204 | if let running = starting { return try await running.task.value }
205 | let id = UUID()
206 | let task = Task<InstallationIdentity, Error> { @MainActor in
| |- error: 'Task' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
207 | defer { if self.starting?.id == id { self.starting = nil } }
208 | return try await self.startOnce()
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:206:52: error: 'init(name:priority:operation:)' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
201 | /// errors goes to the app as it came. A second call while one runs gets its result.
202 | @discardableResult
203 | public func start() async throws -> InstallationIdentity {
| `- note: add '@available' attribute to enclosing instance method
204 | if let running = starting { return try await running.task.value }
205 | let id = UUID()
206 | let task = Task<InstallationIdentity, Error> { @MainActor in
| |- error: 'init(name:priority:operation:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
207 | defer { if self.starting?.id == id { self.starting = nil } }
208 | return try await self.startOnce()
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:211:31: error: 'value' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
201 | /// errors goes to the app as it came. A second call while one runs gets its result.
202 | @discardableResult
203 | public func start() async throws -> InstallationIdentity {
| `- note: add '@available' attribute to enclosing instance method
204 | if let running = starting { return try await running.task.value }
205 | let id = UUID()
:
209 | }
210 | starting = (id, task)
211 | return try await task.value
| |- error: 'value' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
212 | }
213 |
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:227:66: error: 'value' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
224 | /// its result.
225 | @discardableResult
226 | public func prove() async throws -> String {
| `- note: add '@available' attribute to enclosing instance method
227 | if let running = proving { return try await running.task.value }
| |- error: 'value' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
228 | let id = UUID()
229 | let generation = self.generation
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:230:20: error: 'Task' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
224 | /// its result.
225 | @discardableResult
226 | public func prove() async throws -> String {
| `- note: add '@available' attribute to enclosing instance method
227 | if let running = proving { return try await running.task.value }
228 | let id = UUID()
229 | let generation = self.generation
230 | let task = Task<String, Error> { @MainActor in
| |- error: 'Task' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
231 | defer { if self.proving?.id == id { self.proving = nil } }
232 | return try await self.proveOnce(generation, retried: false)
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:230:38: error: 'init(name:priority:operation:)' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
224 | /// its result.
225 | @discardableResult
226 | public func prove() async throws -> String {
| `- note: add '@available' attribute to enclosing instance method
227 | if let running = proving { return try await running.task.value }
228 | let id = UUID()
229 | let generation = self.generation
230 | let task = Task<String, Error> { @MainActor in
| |- error: 'init(name:priority:operation:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
231 | defer { if self.proving?.id == id { self.proving = nil } }
232 | return try await self.proveOnce(generation, retried: false)
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:235:31: error: 'value' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
224 | /// its result.
225 | @discardableResult
226 | public func prove() async throws -> String {
| `- note: add '@available' attribute to enclosing instance method
227 | if let running = proving { return try await running.task.value }
228 | let id = UUID()
:
233 | }
234 | proving = (id, task)
235 | return try await task.value
| |- error: 'value' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
236 | }
237 |
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:254:24: error: 'Task' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
240 | /// with `InterruptedCallError` and keep nothing; calls made from now on wait for the deletion, and
241 | /// never join one made before.
242 | public func reset() async throws {
| `- note: add '@available' attribute to enclosing instance method
243 | let loading = self.loading?.task
244 | let saving = self.saving
:
252 | let store = self.store
253 | let stepUpKey = self.stepUpKeyProvider
254 | let deleting = Task<Void, Error> { @MainActor in
| |- error: 'Task' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
255 | await earlier?.value
256 | // A load or a save still running finishes first, so that nothing it writes outlives the
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:254:40: error: 'init(name:priority:operation:)' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
240 | /// with `InterruptedCallError` and keep nothing; calls made from now on wait for the deletion, and
241 | /// never join one made before.
242 | public func reset() async throws {
| `- note: add '@available' attribute to enclosing instance method
243 | let loading = self.loading?.task
244 | let saving = self.saving
:
252 | let store = self.store
253 | let stepUpKey = self.stepUpKeyProvider
254 | let deleting = Task<Void, Error> { @MainActor in
| |- error: 'init(name:priority:operation:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
255 | await earlier?.value
256 | // A load or a save still running finishes first, so that nothing it writes outlives the
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:255:28: error: 'value' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
240 | /// with `InterruptedCallError` and keep nothing; calls made from now on wait for the deletion, and
241 | /// never join one made before.
242 | public func reset() async throws {
| `- note: add '@available' attribute to enclosing instance method
243 | let loading = self.loading?.task
244 | let saving = self.saving
:
253 | let stepUpKey = self.stepUpKeyProvider
254 | let deleting = Task<Void, Error> { @MainActor in
255 | await earlier?.value
| |- error: 'value' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
256 | // A load or a save still running finishes first, so that nothing it writes outlives the
257 | // deletion. So does a re-enrolment: its key, which a backend may already have taken, is
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:260:32: error: 'result' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
240 | /// with `InterruptedCallError` and keep nothing; calls made from now on wait for the deletion, and
241 | /// never join one made before.
242 | public func reset() async throws {
| `- note: add '@available' attribute to enclosing instance method
243 | let loading = self.loading?.task
244 | let saving = self.saving
:
258 | // deleted after it, and the marker it writes is cleared. So does every write and key change
259 | // still running (mutate): the step-up marker, a step-up key being made.
260 | _ = await loading?.result
| |- error: 'result' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
261 | _ = await saving?.result
262 | await reenrolling?.value
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:261:31: error: 'result' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
240 | /// with `InterruptedCallError` and keep nothing; calls made from now on wait for the deletion, and
241 | /// never join one made before.
242 | public func reset() async throws {
| `- note: add '@available' attribute to enclosing instance method
243 | let loading = self.loading?.task
244 | let saving = self.saving
:
259 | // still running (mutate): the step-up marker, a step-up key being made.
260 | _ = await loading?.result
261 | _ = await saving?.result
| |- error: 'result' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
262 | await reenrolling?.value
263 | for change in changing { await change() }
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:262:32: error: 'value' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
240 | /// with `InterruptedCallError` and keep nothing; calls made from now on wait for the deletion, and
241 | /// never join one made before.
242 | public func reset() async throws {
| `- note: add '@available' attribute to enclosing instance method
243 | let loading = self.loading?.task
244 | let saving = self.saving
:
260 | _ = await loading?.result
261 | _ = await saving?.result
262 | await reenrolling?.value
| |- error: 'value' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
263 | for change in changing { await change() }
264 | try await store.clear()
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:281:21: error: 'Task' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
240 | /// with `InterruptedCallError` and keep nothing; calls made from now on wait for the deletion, and
241 | /// never join one made before.
242 | public func reset() async throws {
| `- note: add '@available' attribute to enclosing instance method
243 | let loading = self.loading?.task
244 | let saving = self.saving
:
279 | }
280 | // Later loads wait for the deletion, whatever came of it; the caller of reset hears what did.
281 | resetting = Task { _ = await deleting.result }
| |- error: 'Task' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
282 | try await deleting.value
283 | }
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:281:21: error: 'init(name:priority:operation:)' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
240 | /// with `InterruptedCallError` and keep nothing; calls made from now on wait for the deletion, and
241 | /// never join one made before.
242 | public func reset() async throws {
| `- note: add '@available' attribute to enclosing instance method
243 | let loading = self.loading?.task
244 | let saving = self.saving
:
279 | }
280 | // Later loads wait for the deletion, whatever came of it; the caller of reset hears what did.
281 | resetting = Task { _ = await deleting.result }
| |- error: 'init(name:priority:operation:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
282 | try await deleting.value
283 | }
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:281:47: error: 'result' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
240 | /// with `InterruptedCallError` and keep nothing; calls made from now on wait for the deletion, and
241 | /// never join one made before.
242 | public func reset() async throws {
| `- note: add '@available' attribute to enclosing instance method
243 | let loading = self.loading?.task
244 | let saving = self.saving
:
279 | }
280 | // Later loads wait for the deletion, whatever came of it; the caller of reset hears what did.
281 | resetting = Task { _ = await deleting.result }
| |- error: 'result' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
282 | try await deleting.value
283 | }
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:282:28: error: 'value' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
240 | /// with `InterruptedCallError` and keep nothing; calls made from now on wait for the deletion, and
241 | /// never join one made before.
242 | public func reset() async throws {
| `- note: add '@available' attribute to enclosing instance method
243 | let loading = self.loading?.task
244 | let saving = self.saving
:
280 | // Later loads wait for the deletion, whatever came of it; the caller of reset hears what did.
281 | resetting = Task { _ = await deleting.result }
282 | try await deleting.value
| |- error: 'value' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
283 | }
284 |
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:348:26: error: 'Task' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
329 | }
330 |
331 | private func register(_ generation: Int) async throws {
| `- note: add '@available' attribute to enclosing instance method
332 | let identity = try await loadIdentity()
333 | try current(generation)
:
346 | currentIdentity = identity.withInstallationId(held)
347 | let store = self.store
348 | let saving = Task<Void, Error> { @MainActor in try await store.saveInstallationId(held) }
| |- error: 'Task' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
349 | self.saving = saving
350 | try await saving.value
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:348:42: error: 'init(name:priority:operation:)' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
329 | }
330 |
331 | private func register(_ generation: Int) async throws {
| `- note: add '@available' attribute to enclosing instance method
332 | let identity = try await loadIdentity()
333 | try current(generation)
:
346 | currentIdentity = identity.withInstallationId(held)
347 | let store = self.store
348 | let saving = Task<Void, Error> { @MainActor in try await store.saveInstallationId(held) }
| |- error: 'init(name:priority:operation:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
349 | self.saving = saving
350 | try await saving.value
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:350:30: error: 'value' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
329 | }
330 |
331 | private func register(_ generation: Int) async throws {
| `- note: add '@available' attribute to enclosing instance method
332 | let identity = try await loadIdentity()
333 | try current(generation)
:
348 | let saving = Task<Void, Error> { @MainActor in try await store.saveInstallationId(held) }
349 | self.saving = saving
350 | try await saving.value
| |- error: 'value' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
351 | }
352 | try await settleStepUpKey(answer, offered, generation)
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:446:73: error: 'value' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
431 | /// app's to renew. A second call for the same scan while one runs gets its result; a scan whose
432 | /// answer was lost is simply asked for again.
433 | public func scan(session: String? = nil, operation: JSONObject? = nil) async throws -> ScanResult {
| `- note: add '@available' attribute to enclosing instance method
434 | if operation != nil && session == nil {
435 | throw UsageError.invalidArgument(
:
444 | JSONValue(enabled),
445 | ]).encodedJSON
446 | if let running = scanning[kind] { return try await running.task.value }
| |- error: 'value' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
447 | let id = UUID()
448 | let generation = self.generation
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:449:20: error: 'Task' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
431 | /// app's to renew. A second call for the same scan while one runs gets its result; a scan whose
432 | /// answer was lost is simply asked for again.
433 | public func scan(session: String? = nil, operation: JSONObject? = nil) async throws -> ScanResult {
| `- note: add '@available' attribute to enclosing instance method
434 | if operation != nil && session == nil {
435 | throw UsageError.invalidArgument(
:
447 | let id = UUID()
448 | let generation = self.generation
449 | let task = Task<ScanResult, Error> { @MainActor in
| |- error: 'Task' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
450 | defer { if self.scanning[kind]?.id == id { self.scanning[kind] = nil } }
451 | return try await self.scanWithProtocol(generation, session, operation, enabled)
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:449:42: error: 'init(name:priority:operation:)' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
431 | /// app's to renew. A second call for the same scan while one runs gets its result; a scan whose
432 | /// answer was lost is simply asked for again.
433 | public func scan(session: String? = nil, operation: JSONObject? = nil) async throws -> ScanResult {
| `- note: add '@available' attribute to enclosing instance method
434 | if operation != nil && session == nil {
435 | throw UsageError.invalidArgument(
:
447 | let id = UUID()
448 | let generation = self.generation
449 | let task = Task<ScanResult, Error> { @MainActor in
| |- error: 'init(name:priority:operation:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
450 | defer { if self.scanning[kind]?.id == id { self.scanning[kind] = nil } }
451 | return try await self.scanWithProtocol(generation, session, operation, enabled)
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:454:31: error: 'value' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
431 | /// app's to renew. A second call for the same scan while one runs gets its result; a scan whose
432 | /// answer was lost is simply asked for again.
433 | public func scan(session: String? = nil, operation: JSONObject? = nil) async throws -> ScanResult {
| `- note: add '@available' attribute to enclosing instance method
434 | if operation != nil && session == nil {
435 | throw UsageError.invalidArgument(
:
452 | }
453 | scanning[kind] = (id, task)
454 | return try await task.value
| |- error: 'value' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
455 | }
456 |
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:562:23: error: 'Task' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
558 | /// `STEPUP_REENROL_PENDING`, across restarts too, until a call of this succeeds.
559 | @discardableResult
560 | public func reenrolStepUp(session: String, reauthentication: JSONObject = JSONObject(),
| `- note: add '@available' attribute to enclosing instance method
561 | reason: String = "Confirm your new step-up key") async throws -> JSONObject {
562 | let running = Task<JSONObject, Error> { @MainActor in
| |- error: 'Task' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
563 | try await self.reenrolStepUpOnce(session, reauthentication, reason)
564 | }
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:562:45: error: 'init(name:priority:operation:)' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
558 | /// `STEPUP_REENROL_PENDING`, across restarts too, until a call of this succeeds.
559 | @discardableResult
560 | public func reenrolStepUp(session: String, reauthentication: JSONObject = JSONObject(),
| `- note: add '@available' attribute to enclosing instance method
561 | reason: String = "Confirm your new step-up key") async throws -> JSONObject {
562 | let running = Task<JSONObject, Error> { @MainActor in
| |- error: 'init(name:priority:operation:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
563 | try await self.reenrolStepUpOnce(session, reauthentication, reason)
564 | }
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:566:23: error: 'Task' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
558 | /// `STEPUP_REENROL_PENDING`, across restarts too, until a call of this succeeds.
559 | @discardableResult
560 | public func reenrolStepUp(session: String, reauthentication: JSONObject = JSONObject(),
| `- note: add '@available' attribute to enclosing instance method
561 | reason: String = "Confirm your new step-up key") async throws -> JSONObject {
562 | let running = Task<JSONObject, Error> { @MainActor in
:
564 | }
565 | // reset() waits for it, whatever comes of it.
566 | reenrolling = Task { _ = await running.result }
| |- error: 'Task' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
567 | return try await running.value
568 | }
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:566:23: error: 'init(name:priority:operation:)' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
558 | /// `STEPUP_REENROL_PENDING`, across restarts too, until a call of this succeeds.
559 | @discardableResult
560 | public func reenrolStepUp(session: String, reauthentication: JSONObject = JSONObject(),
| `- note: add '@available' attribute to enclosing instance method
561 | reason: String = "Confirm your new step-up key") async throws -> JSONObject {
562 | let running = Task<JSONObject, Error> { @MainActor in
:
564 | }
565 | // reset() waits for it, whatever comes of it.
566 | reenrolling = Task { _ = await running.result }
| |- error: 'init(name:priority:operation:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
567 | return try await running.value
568 | }
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:566:48: error: 'result' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
558 | /// `STEPUP_REENROL_PENDING`, across restarts too, until a call of this succeeds.
559 | @discardableResult
560 | public func reenrolStepUp(session: String, reauthentication: JSONObject = JSONObject(),
| `- note: add '@available' attribute to enclosing instance method
561 | reason: String = "Confirm your new step-up key") async throws -> JSONObject {
562 | let running = Task<JSONObject, Error> { @MainActor in
:
564 | }
565 | // reset() waits for it, whatever comes of it.
566 | reenrolling = Task { _ = await running.result }
| |- error: 'result' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
567 | return try await running.value
568 | }
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:567:34: error: 'value' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
558 | /// `STEPUP_REENROL_PENDING`, across restarts too, until a call of this succeeds.
559 | @discardableResult
560 | public func reenrolStepUp(session: String, reauthentication: JSONObject = JSONObject(),
| `- note: add '@available' attribute to enclosing instance method
561 | reason: String = "Confirm your new step-up key") async throws -> JSONObject {
562 | let running = Task<JSONObject, Error> { @MainActor in
:
565 | // reset() waits for it, whatever comes of it.
566 | reenrolling = Task { _ = await running.result }
567 | return try await running.value
| |- error: 'value' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
568 | }
569 |
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:682:19: error: 'Task' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
679 | }
680 |
681 | private func sleep(_ seconds: TimeInterval) async throws {
| `- note: add '@available' attribute to enclosing instance method
682 | try await Task.sleep(nanoseconds: UInt64(seconds * 1_000_000_000))
| |- error: 'Task' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
683 | }
684 | }
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/DeviceTrust.swift:682:24: error: 'sleep(nanoseconds:)' is only available in macOS 10.15 or newer
50 | /// collection run on a queue of their own.
51 | @MainActor
52 | public final class DeviceTrust {
| `- note: add '@available' attribute to enclosing class
53 | /// The guide's calls, for an app that makes them itself.
54 | public let client: DeviceTrustClient
:
679 | }
680 |
681 | private func sleep(_ seconds: TimeInterval) async throws {
| `- note: add '@available' attribute to enclosing instance method
682 | try await Task.sleep(nanoseconds: UInt64(seconds * 1_000_000_000))
| |- error: 'sleep(nanoseconds:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
683 | }
684 | }
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/Encoding.swift:37:5: error: 'SHA256' is only available in macOS 10.15 or newer
34 | }
35 |
36 | func sha256Hex(_ data: Data) -> String {
| `- note: add '@available' attribute to enclosing global function
37 | SHA256.hash(data: data).map { byte in
| |- error: 'SHA256' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
38 | let hex = String(byte, radix: 16)
39 | return hex.count == 1 ? "0" + hex : hex
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/Encoding.swift:37:12: error: 'hash(data:)' is only available in macOS 10.15 or newer
34 | }
35 |
36 | func sha256Hex(_ data: Data) -> String {
| `- note: add '@available' attribute to enclosing global function
37 | SHA256.hash(data: data).map { byte in
| |- error: 'hash(data:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
38 | let hex = String(byte, radix: 16)
39 | return hex.count == 1 ? "0" + hex : hex
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/Encoding.swift:37:29: warning: conformance of 'SHA256Digest' to 'Sequence' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
34 | }
35 |
36 | func sha256Hex(_ data: Data) -> String {
| `- note: add '@available' attribute to enclosing global function
37 | SHA256.hash(data: data).map { byte in
| |- warning: conformance of 'SHA256Digest' to 'Sequence' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
| `- note: add 'if #available' version check
38 | let hex = String(byte, radix: 16)
39 | return hex.count == 1 ? "0" + hex : hex
[23/24] Compiling Necessary Transport.swift
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/Transport.swift:109:30: error: 'withThrowingTaskGroup(of:returning:isolation:body:)' is only available in macOS 10.15 or newer
21 | /// `timeout` seconds, 15 unless you say otherwise, from its start to its answer.
22 | @MainActor
23 | public final class HTTPTransport: DeviceTrustTransport {
| `- note: add '@available' attribute to enclosing class
24 | public let baseURL: String
25 | public let timeout: TimeInterval
:
103 |
104 | /// The request's answer, or the failure on the way -- within `timeout` from its start.
105 | private func perform(_ request: URLRequest) async throws -> (Data, Int) {
| `- note: add '@available' attribute to enclosing instance method
106 | let session = self.session
107 | let limit = timeout
108 | do {
109 | return try await withThrowingTaskGroup(of: (Data, Int)?.self) { group in
| |- error: 'withThrowingTaskGroup(of:returning:isolation:body:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
110 | group.addTask {
111 | try await HTTPTransport.load(request, with: session)
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/Transport.swift:110:23: error: 'addTask(priority:operation:)' is only available in macOS 10.15 or newer
21 | /// `timeout` seconds, 15 unless you say otherwise, from its start to its answer.
22 | @MainActor
23 | public final class HTTPTransport: DeviceTrustTransport {
| `- note: add '@available' attribute to enclosing class
24 | public let baseURL: String
25 | public let timeout: TimeInterval
:
103 |
104 | /// The request's answer, or the failure on the way -- within `timeout` from its start.
105 | private func perform(_ request: URLRequest) async throws -> (Data, Int) {
| `- note: add '@available' attribute to enclosing instance method
106 | let session = self.session
107 | let limit = timeout
108 | do {
109 | return try await withThrowingTaskGroup(of: (Data, Int)?.self) { group in
110 | group.addTask {
| |- error: 'addTask(priority:operation:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
111 | try await HTTPTransport.load(request, with: session)
112 | }
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/Transport.swift:113:23: error: 'addTask(priority:operation:)' is only available in macOS 10.15 or newer
21 | /// `timeout` seconds, 15 unless you say otherwise, from its start to its answer.
22 | @MainActor
23 | public final class HTTPTransport: DeviceTrustTransport {
| `- note: add '@available' attribute to enclosing class
24 | public let baseURL: String
25 | public let timeout: TimeInterval
:
103 |
104 | /// The request's answer, or the failure on the way -- within `timeout` from its start.
105 | private func perform(_ request: URLRequest) async throws -> (Data, Int) {
| `- note: add '@available' attribute to enclosing instance method
106 | let session = self.session
107 | let limit = timeout
:
111 | try await HTTPTransport.load(request, with: session)
112 | }
113 | group.addTask {
| |- error: 'addTask(priority:operation:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
114 | try await Task.sleep(nanoseconds: UInt64(limit * 1_000_000_000))
115 | return nil
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/Transport.swift:114:31: error: 'Task' is only available in macOS 10.15 or newer
21 | /// `timeout` seconds, 15 unless you say otherwise, from its start to its answer.
22 | @MainActor
23 | public final class HTTPTransport: DeviceTrustTransport {
| `- note: add '@available' attribute to enclosing class
24 | public let baseURL: String
25 | public let timeout: TimeInterval
:
103 |
104 | /// The request's answer, or the failure on the way -- within `timeout` from its start.
105 | private func perform(_ request: URLRequest) async throws -> (Data, Int) {
| `- note: add '@available' attribute to enclosing instance method
106 | let session = self.session
107 | let limit = timeout
:
112 | }
113 | group.addTask {
114 | try await Task.sleep(nanoseconds: UInt64(limit * 1_000_000_000))
| |- error: 'Task' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
115 | return nil
116 | }
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/Transport.swift:114:36: error: 'sleep(nanoseconds:)' is only available in macOS 10.15 or newer
21 | /// `timeout` seconds, 15 unless you say otherwise, from its start to its answer.
22 | @MainActor
23 | public final class HTTPTransport: DeviceTrustTransport {
| `- note: add '@available' attribute to enclosing class
24 | public let baseURL: String
25 | public let timeout: TimeInterval
:
103 |
104 | /// The request's answer, or the failure on the way -- within `timeout` from its start.
105 | private func perform(_ request: URLRequest) async throws -> (Data, Int) {
| `- note: add '@available' attribute to enclosing instance method
106 | let session = self.session
107 | let limit = timeout
:
112 | }
113 | group.addTask {
114 | try await Task.sleep(nanoseconds: UInt64(limit * 1_000_000_000))
| |- error: 'sleep(nanoseconds:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
115 | return nil
116 | }
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/Transport.swift:118:51: error: 'next(isolation:)' is only available in macOS 10.15 or newer
21 | /// `timeout` seconds, 15 unless you say otherwise, from its start to its answer.
22 | @MainActor
23 | public final class HTTPTransport: DeviceTrustTransport {
| `- note: add '@available' attribute to enclosing class
24 | public let baseURL: String
25 | public let timeout: TimeInterval
:
103 |
104 | /// The request's answer, or the failure on the way -- within `timeout` from its start.
105 | private func perform(_ request: URLRequest) async throws -> (Data, Int) {
| `- note: add '@available' attribute to enclosing instance method
106 | let session = self.session
107 | let limit = timeout
:
116 | }
117 | defer { group.cancelAll() }
118 | guard let first = try await group.next(), let answer = first else {
| |- error: 'next(isolation:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
119 | throw URLError(.timedOut)
120 | }
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/Transport.swift:109:52: error: 'isolation()' is only available in macOS 10.15 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/Necessary/Transport.swift:109:51: note: expanded code originates here
21 | /// `timeout` seconds, 15 unless you say otherwise, from its start to its answer.
22 | @MainActor
23 | public final class HTTPTransport: DeviceTrustTransport {
| `- note: add '@available' attribute to enclosing class
24 | public let baseURL: String
25 | public let timeout: TimeInterval
:
103 |
104 | /// The request's answer, or the failure on the way -- within `timeout` from its start.
105 | private func perform(_ request: URLRequest) async throws -> (Data, Int) {
| `- note: add '@available' attribute to enclosing instance method
106 | let session = self.session
107 | let limit = timeout
108 | do {
109 | return try await withThrowingTaskGroup(of: (Data, Int)?.self) { group in
+--- /Users/admin/builder/spi-builder-workspace/Sources/Necessary/Transport.swift
|107 |
|108 |
|109 | #isolation
| | `- error: 'isolation()' is only available in macOS 10.15 or newer
+---------------------------------------------------------------------------------
110 | group.addTask {
111 | try await HTTPTransport.load(request, with: session)
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/Transport.swift:129:20: error: 'CancellationError' is only available in macOS 10.15 or newer
21 | /// `timeout` seconds, 15 unless you say otherwise, from its start to its answer.
22 | @MainActor
23 | public final class HTTPTransport: DeviceTrustTransport {
| `- note: add '@available' attribute to enclosing class
24 | public let baseURL: String
25 | public let timeout: TimeInterval
:
103 |
104 | /// The request's answer, or the failure on the way -- within `timeout` from its start.
105 | private func perform(_ request: URLRequest) async throws -> (Data, Int) {
| `- note: add '@available' attribute to enclosing instance method
106 | let session = self.session
107 | let limit = timeout
:
127 | } catch let error as URLError {
128 | throw APIError("Network connection failed: \(error.localizedDescription)")
129 | } catch is CancellationError {
| |- error: 'CancellationError' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
130 | throw APIError("HTTP connection failed: the call was cancelled.")
131 | }
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/Transport.swift:129:20: error: 'CancellationError' is only available in macOS 10.15 or newer
21 | /// `timeout` seconds, 15 unless you say otherwise, from its start to its answer.
22 | @MainActor
23 | public final class HTTPTransport: DeviceTrustTransport {
| `- note: add '@available' attribute to enclosing class
24 | public let baseURL: String
25 | public let timeout: TimeInterval
:
103 |
104 | /// The request's answer, or the failure on the way -- within `timeout` from its start.
105 | private func perform(_ request: URLRequest) async throws -> (Data, Int) {
| `- note: add '@available' attribute to enclosing instance method
106 | let session = self.session
107 | let limit = timeout
:
127 | } catch let error as URLError {
128 | throw APIError("Network connection failed: \(error.localizedDescription)")
129 | } catch is CancellationError {
| |- error: 'CancellationError' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
130 | throw APIError("HTTP connection failed: the call was cancelled.")
131 | }
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/Transport.swift:118:56: error: 'isolation()' is only available in macOS 10.15 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/Necessary/Transport.swift:118:55: note: expanded code originates here
21 | /// `timeout` seconds, 15 unless you say otherwise, from its start to its answer.
22 | @MainActor
23 | public final class HTTPTransport: DeviceTrustTransport {
| `- note: add '@available' attribute to enclosing class
24 | public let baseURL: String
25 | public let timeout: TimeInterval
:
103 |
104 | /// The request's answer, or the failure on the way -- within `timeout` from its start.
105 | private func perform(_ request: URLRequest) async throws -> (Data, Int) {
| `- note: add '@available' attribute to enclosing instance method
106 | let session = self.session
107 | let limit = timeout
:
116 | }
117 | defer { group.cancelAll() }
118 | guard let first = try await group.next(), let answer = first else {
+--- /Users/admin/builder/spi-builder-workspace/Sources/Necessary/Transport.swift
|116 |
|117 |
|118 | #isolation
| | `- error: 'isolation()' is only available in macOS 10.15 or newer
+---------------------------------------------------------------------------------
119 | throw URLError(.timedOut)
120 | }
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/Transport.swift:137:26: error: 'withTaskCancellationHandler(operation:onCancel:isolation:)' is only available in macOS 10.15 or newer
21 | /// `timeout` seconds, 15 unless you say otherwise, from its start to its answer.
22 | @MainActor
23 | public final class HTTPTransport: DeviceTrustTransport {
| `- note: add '@available' attribute to enclosing class
24 | public let baseURL: String
25 | public let timeout: TimeInterval
:
132 | }
133 |
134 | private nonisolated static func load(_ request: URLRequest, with session: URLSession) async throws -> (Data, Int) {
| `- note: add '@available' attribute to enclosing static method
135 | final class Box: @unchecked Sendable { var task: URLSessionDataTask? }
136 | let box = Box()
137 | return try await withTaskCancellationHandler {
| |- error: 'withTaskCancellationHandler(operation:onCancel:isolation:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
138 | try await withCheckedThrowingContinuation { (continuation: CheckedContinuation<(Data, Int), Error>) in
139 | let task = session.dataTask(with: request) { data, response, error in
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/Transport.swift:138:23: error: 'withCheckedThrowingContinuation(isolation:function:_:)' is only available in macOS 10.15 or newer
21 | /// `timeout` seconds, 15 unless you say otherwise, from its start to its answer.
22 | @MainActor
23 | public final class HTTPTransport: DeviceTrustTransport {
| `- note: add '@available' attribute to enclosing class
24 | public let baseURL: String
25 | public let timeout: TimeInterval
:
132 | }
133 |
134 | private nonisolated static func load(_ request: URLRequest, with session: URLSession) async throws -> (Data, Int) {
| `- note: add '@available' attribute to enclosing static method
135 | final class Box: @unchecked Sendable { var task: URLSessionDataTask? }
136 | let box = Box()
137 | return try await withTaskCancellationHandler {
138 | try await withCheckedThrowingContinuation { (continuation: CheckedContinuation<(Data, Int), Error>) in
| |- error: 'withCheckedThrowingContinuation(isolation:function:_:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
139 | let task = session.dataTask(with: request) { data, response, error in
140 | if let error {
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/Transport.swift:138:72: error: 'CheckedContinuation' is only available in macOS 10.15 or newer
21 | /// `timeout` seconds, 15 unless you say otherwise, from its start to its answer.
22 | @MainActor
23 | public final class HTTPTransport: DeviceTrustTransport {
| `- note: add '@available' attribute to enclosing class
24 | public let baseURL: String
25 | public let timeout: TimeInterval
:
132 | }
133 |
134 | private nonisolated static func load(_ request: URLRequest, with session: URLSession) async throws -> (Data, Int) {
| `- note: add '@available' attribute to enclosing static method
135 | final class Box: @unchecked Sendable { var task: URLSessionDataTask? }
136 | let box = Box()
137 | return try await withTaskCancellationHandler {
138 | try await withCheckedThrowingContinuation { (continuation: CheckedContinuation<(Data, Int), Error>) in
| |- error: 'CheckedContinuation' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
139 | let task = session.dataTask(with: request) { data, response, error in
140 | if let error {
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/Transport.swift:138:56: error: 'isolation()' is only available in macOS 10.15 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/Necessary/Transport.swift:138:55: note: expanded code originates here
21 | /// `timeout` seconds, 15 unless you say otherwise, from its start to its answer.
22 | @MainActor
23 | public final class HTTPTransport: DeviceTrustTransport {
| `- note: add '@available' attribute to enclosing class
24 | public let baseURL: String
25 | public let timeout: TimeInterval
:
132 | }
133 |
134 | private nonisolated static func load(_ request: URLRequest, with session: URLSession) async throws -> (Data, Int) {
| `- note: add '@available' attribute to enclosing static method
135 | final class Box: @unchecked Sendable { var task: URLSessionDataTask? }
136 | let box = Box()
137 | return try await withTaskCancellationHandler {
138 | try await withCheckedThrowingContinuation { (continuation: CheckedContinuation<(Data, Int), Error>) in
+--- /Users/admin/builder/spi-builder-workspace/Sources/Necessary/Transport.swift
|136 |
|137 |
|138 | #isolation
| | `- error: 'isolation()' is only available in macOS 10.15 or newer
+---------------------------------------------------------------------------------
139 | let task = session.dataTask(with: request) { data, response, error in
140 | if let error {
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/Transport.swift:137:55: error: 'isolation()' is only available in macOS 10.15 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/Necessary/Transport.swift:137:54: note: expanded code originates here
21 | /// `timeout` seconds, 15 unless you say otherwise, from its start to its answer.
22 | @MainActor
23 | public final class HTTPTransport: DeviceTrustTransport {
| `- note: add '@available' attribute to enclosing class
24 | public let baseURL: String
25 | public let timeout: TimeInterval
:
132 | }
133 |
134 | private nonisolated static func load(_ request: URLRequest, with session: URLSession) async throws -> (Data, Int) {
| `- note: add '@available' attribute to enclosing static method
135 | final class Box: @unchecked Sendable { var task: URLSessionDataTask? }
136 | let box = Box()
137 | return try await withTaskCancellationHandler {
+--- /Users/admin/builder/spi-builder-workspace/Sources/Necessary/Transport.swift
|135 |
|136 |
|137 | #isolation
| | `- error: 'isolation()' is only available in macOS 10.15 or newer
+---------------------------------------------------------------------------------
138 | try await withCheckedThrowingContinuation { (continuation: CheckedContinuation<(Data, Int), Error>) in
139 | let task = session.dataTask(with: request) { data, response, error in
[24/24] Compiling Necessary resource_bundle_accessor.swift
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/Transport.swift:109:30: error: 'withThrowingTaskGroup(of:returning:isolation:body:)' is only available in macOS 10.15 or newer
21 | /// `timeout` seconds, 15 unless you say otherwise, from its start to its answer.
22 | @MainActor
23 | public final class HTTPTransport: DeviceTrustTransport {
| `- note: add '@available' attribute to enclosing class
24 | public let baseURL: String
25 | public let timeout: TimeInterval
:
103 |
104 | /// The request's answer, or the failure on the way -- within `timeout` from its start.
105 | private func perform(_ request: URLRequest) async throws -> (Data, Int) {
| `- note: add '@available' attribute to enclosing instance method
106 | let session = self.session
107 | let limit = timeout
108 | do {
109 | return try await withThrowingTaskGroup(of: (Data, Int)?.self) { group in
| |- error: 'withThrowingTaskGroup(of:returning:isolation:body:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
110 | group.addTask {
111 | try await HTTPTransport.load(request, with: session)
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/Transport.swift:110:23: error: 'addTask(priority:operation:)' is only available in macOS 10.15 or newer
21 | /// `timeout` seconds, 15 unless you say otherwise, from its start to its answer.
22 | @MainActor
23 | public final class HTTPTransport: DeviceTrustTransport {
| `- note: add '@available' attribute to enclosing class
24 | public let baseURL: String
25 | public let timeout: TimeInterval
:
103 |
104 | /// The request's answer, or the failure on the way -- within `timeout` from its start.
105 | private func perform(_ request: URLRequest) async throws -> (Data, Int) {
| `- note: add '@available' attribute to enclosing instance method
106 | let session = self.session
107 | let limit = timeout
108 | do {
109 | return try await withThrowingTaskGroup(of: (Data, Int)?.self) { group in
110 | group.addTask {
| |- error: 'addTask(priority:operation:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
111 | try await HTTPTransport.load(request, with: session)
112 | }
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/Transport.swift:113:23: error: 'addTask(priority:operation:)' is only available in macOS 10.15 or newer
21 | /// `timeout` seconds, 15 unless you say otherwise, from its start to its answer.
22 | @MainActor
23 | public final class HTTPTransport: DeviceTrustTransport {
| `- note: add '@available' attribute to enclosing class
24 | public let baseURL: String
25 | public let timeout: TimeInterval
:
103 |
104 | /// The request's answer, or the failure on the way -- within `timeout` from its start.
105 | private func perform(_ request: URLRequest) async throws -> (Data, Int) {
| `- note: add '@available' attribute to enclosing instance method
106 | let session = self.session
107 | let limit = timeout
:
111 | try await HTTPTransport.load(request, with: session)
112 | }
113 | group.addTask {
| |- error: 'addTask(priority:operation:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
114 | try await Task.sleep(nanoseconds: UInt64(limit * 1_000_000_000))
115 | return nil
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/Transport.swift:114:31: error: 'Task' is only available in macOS 10.15 or newer
21 | /// `timeout` seconds, 15 unless you say otherwise, from its start to its answer.
22 | @MainActor
23 | public final class HTTPTransport: DeviceTrustTransport {
| `- note: add '@available' attribute to enclosing class
24 | public let baseURL: String
25 | public let timeout: TimeInterval
:
103 |
104 | /// The request's answer, or the failure on the way -- within `timeout` from its start.
105 | private func perform(_ request: URLRequest) async throws -> (Data, Int) {
| `- note: add '@available' attribute to enclosing instance method
106 | let session = self.session
107 | let limit = timeout
:
112 | }
113 | group.addTask {
114 | try await Task.sleep(nanoseconds: UInt64(limit * 1_000_000_000))
| |- error: 'Task' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
115 | return nil
116 | }
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/Transport.swift:114:36: error: 'sleep(nanoseconds:)' is only available in macOS 10.15 or newer
21 | /// `timeout` seconds, 15 unless you say otherwise, from its start to its answer.
22 | @MainActor
23 | public final class HTTPTransport: DeviceTrustTransport {
| `- note: add '@available' attribute to enclosing class
24 | public let baseURL: String
25 | public let timeout: TimeInterval
:
103 |
104 | /// The request's answer, or the failure on the way -- within `timeout` from its start.
105 | private func perform(_ request: URLRequest) async throws -> (Data, Int) {
| `- note: add '@available' attribute to enclosing instance method
106 | let session = self.session
107 | let limit = timeout
:
112 | }
113 | group.addTask {
114 | try await Task.sleep(nanoseconds: UInt64(limit * 1_000_000_000))
| |- error: 'sleep(nanoseconds:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
115 | return nil
116 | }
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/Transport.swift:118:51: error: 'next(isolation:)' is only available in macOS 10.15 or newer
21 | /// `timeout` seconds, 15 unless you say otherwise, from its start to its answer.
22 | @MainActor
23 | public final class HTTPTransport: DeviceTrustTransport {
| `- note: add '@available' attribute to enclosing class
24 | public let baseURL: String
25 | public let timeout: TimeInterval
:
103 |
104 | /// The request's answer, or the failure on the way -- within `timeout` from its start.
105 | private func perform(_ request: URLRequest) async throws -> (Data, Int) {
| `- note: add '@available' attribute to enclosing instance method
106 | let session = self.session
107 | let limit = timeout
:
116 | }
117 | defer { group.cancelAll() }
118 | guard let first = try await group.next(), let answer = first else {
| |- error: 'next(isolation:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
119 | throw URLError(.timedOut)
120 | }
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/Transport.swift:109:52: error: 'isolation()' is only available in macOS 10.15 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/Necessary/Transport.swift:109:51: note: expanded code originates here
21 | /// `timeout` seconds, 15 unless you say otherwise, from its start to its answer.
22 | @MainActor
23 | public final class HTTPTransport: DeviceTrustTransport {
| `- note: add '@available' attribute to enclosing class
24 | public let baseURL: String
25 | public let timeout: TimeInterval
:
103 |
104 | /// The request's answer, or the failure on the way -- within `timeout` from its start.
105 | private func perform(_ request: URLRequest) async throws -> (Data, Int) {
| `- note: add '@available' attribute to enclosing instance method
106 | let session = self.session
107 | let limit = timeout
108 | do {
109 | return try await withThrowingTaskGroup(of: (Data, Int)?.self) { group in
+--- /Users/admin/builder/spi-builder-workspace/Sources/Necessary/Transport.swift
|107 |
|108 |
|109 | #isolation
| | `- error: 'isolation()' is only available in macOS 10.15 or newer
+---------------------------------------------------------------------------------
110 | group.addTask {
111 | try await HTTPTransport.load(request, with: session)
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/Transport.swift:129:20: error: 'CancellationError' is only available in macOS 10.15 or newer
21 | /// `timeout` seconds, 15 unless you say otherwise, from its start to its answer.
22 | @MainActor
23 | public final class HTTPTransport: DeviceTrustTransport {
| `- note: add '@available' attribute to enclosing class
24 | public let baseURL: String
25 | public let timeout: TimeInterval
:
103 |
104 | /// The request's answer, or the failure on the way -- within `timeout` from its start.
105 | private func perform(_ request: URLRequest) async throws -> (Data, Int) {
| `- note: add '@available' attribute to enclosing instance method
106 | let session = self.session
107 | let limit = timeout
:
127 | } catch let error as URLError {
128 | throw APIError("Network connection failed: \(error.localizedDescription)")
129 | } catch is CancellationError {
| |- error: 'CancellationError' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
130 | throw APIError("HTTP connection failed: the call was cancelled.")
131 | }
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/Transport.swift:129:20: error: 'CancellationError' is only available in macOS 10.15 or newer
21 | /// `timeout` seconds, 15 unless you say otherwise, from its start to its answer.
22 | @MainActor
23 | public final class HTTPTransport: DeviceTrustTransport {
| `- note: add '@available' attribute to enclosing class
24 | public let baseURL: String
25 | public let timeout: TimeInterval
:
103 |
104 | /// The request's answer, or the failure on the way -- within `timeout` from its start.
105 | private func perform(_ request: URLRequest) async throws -> (Data, Int) {
| `- note: add '@available' attribute to enclosing instance method
106 | let session = self.session
107 | let limit = timeout
:
127 | } catch let error as URLError {
128 | throw APIError("Network connection failed: \(error.localizedDescription)")
129 | } catch is CancellationError {
| |- error: 'CancellationError' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
130 | throw APIError("HTTP connection failed: the call was cancelled.")
131 | }
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/Transport.swift:118:56: error: 'isolation()' is only available in macOS 10.15 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/Necessary/Transport.swift:118:55: note: expanded code originates here
21 | /// `timeout` seconds, 15 unless you say otherwise, from its start to its answer.
22 | @MainActor
23 | public final class HTTPTransport: DeviceTrustTransport {
| `- note: add '@available' attribute to enclosing class
24 | public let baseURL: String
25 | public let timeout: TimeInterval
:
103 |
104 | /// The request's answer, or the failure on the way -- within `timeout` from its start.
105 | private func perform(_ request: URLRequest) async throws -> (Data, Int) {
| `- note: add '@available' attribute to enclosing instance method
106 | let session = self.session
107 | let limit = timeout
:
116 | }
117 | defer { group.cancelAll() }
118 | guard let first = try await group.next(), let answer = first else {
+--- /Users/admin/builder/spi-builder-workspace/Sources/Necessary/Transport.swift
|116 |
|117 |
|118 | #isolation
| | `- error: 'isolation()' is only available in macOS 10.15 or newer
+---------------------------------------------------------------------------------
119 | throw URLError(.timedOut)
120 | }
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/Transport.swift:137:26: error: 'withTaskCancellationHandler(operation:onCancel:isolation:)' is only available in macOS 10.15 or newer
21 | /// `timeout` seconds, 15 unless you say otherwise, from its start to its answer.
22 | @MainActor
23 | public final class HTTPTransport: DeviceTrustTransport {
| `- note: add '@available' attribute to enclosing class
24 | public let baseURL: String
25 | public let timeout: TimeInterval
:
132 | }
133 |
134 | private nonisolated static func load(_ request: URLRequest, with session: URLSession) async throws -> (Data, Int) {
| `- note: add '@available' attribute to enclosing static method
135 | final class Box: @unchecked Sendable { var task: URLSessionDataTask? }
136 | let box = Box()
137 | return try await withTaskCancellationHandler {
| |- error: 'withTaskCancellationHandler(operation:onCancel:isolation:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
138 | try await withCheckedThrowingContinuation { (continuation: CheckedContinuation<(Data, Int), Error>) in
139 | let task = session.dataTask(with: request) { data, response, error in
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/Transport.swift:138:23: error: 'withCheckedThrowingContinuation(isolation:function:_:)' is only available in macOS 10.15 or newer
21 | /// `timeout` seconds, 15 unless you say otherwise, from its start to its answer.
22 | @MainActor
23 | public final class HTTPTransport: DeviceTrustTransport {
| `- note: add '@available' attribute to enclosing class
24 | public let baseURL: String
25 | public let timeout: TimeInterval
:
132 | }
133 |
134 | private nonisolated static func load(_ request: URLRequest, with session: URLSession) async throws -> (Data, Int) {
| `- note: add '@available' attribute to enclosing static method
135 | final class Box: @unchecked Sendable { var task: URLSessionDataTask? }
136 | let box = Box()
137 | return try await withTaskCancellationHandler {
138 | try await withCheckedThrowingContinuation { (continuation: CheckedContinuation<(Data, Int), Error>) in
| |- error: 'withCheckedThrowingContinuation(isolation:function:_:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
139 | let task = session.dataTask(with: request) { data, response, error in
140 | if let error {
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/Transport.swift:138:72: error: 'CheckedContinuation' is only available in macOS 10.15 or newer
21 | /// `timeout` seconds, 15 unless you say otherwise, from its start to its answer.
22 | @MainActor
23 | public final class HTTPTransport: DeviceTrustTransport {
| `- note: add '@available' attribute to enclosing class
24 | public let baseURL: String
25 | public let timeout: TimeInterval
:
132 | }
133 |
134 | private nonisolated static func load(_ request: URLRequest, with session: URLSession) async throws -> (Data, Int) {
| `- note: add '@available' attribute to enclosing static method
135 | final class Box: @unchecked Sendable { var task: URLSessionDataTask? }
136 | let box = Box()
137 | return try await withTaskCancellationHandler {
138 | try await withCheckedThrowingContinuation { (continuation: CheckedContinuation<(Data, Int), Error>) in
| |- error: 'CheckedContinuation' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
139 | let task = session.dataTask(with: request) { data, response, error in
140 | if let error {
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/Transport.swift:138:56: error: 'isolation()' is only available in macOS 10.15 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/Necessary/Transport.swift:138:55: note: expanded code originates here
21 | /// `timeout` seconds, 15 unless you say otherwise, from its start to its answer.
22 | @MainActor
23 | public final class HTTPTransport: DeviceTrustTransport {
| `- note: add '@available' attribute to enclosing class
24 | public let baseURL: String
25 | public let timeout: TimeInterval
:
132 | }
133 |
134 | private nonisolated static func load(_ request: URLRequest, with session: URLSession) async throws -> (Data, Int) {
| `- note: add '@available' attribute to enclosing static method
135 | final class Box: @unchecked Sendable { var task: URLSessionDataTask? }
136 | let box = Box()
137 | return try await withTaskCancellationHandler {
138 | try await withCheckedThrowingContinuation { (continuation: CheckedContinuation<(Data, Int), Error>) in
+--- /Users/admin/builder/spi-builder-workspace/Sources/Necessary/Transport.swift
|136 |
|137 |
|138 | #isolation
| | `- error: 'isolation()' is only available in macOS 10.15 or newer
+---------------------------------------------------------------------------------
139 | let task = session.dataTask(with: request) { data, response, error in
140 | if let error {
/Users/admin/builder/spi-builder-workspace/Sources/Necessary/Transport.swift:137:55: error: 'isolation()' is only available in macOS 10.15 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/Necessary/Transport.swift:137:54: note: expanded code originates here
21 | /// `timeout` seconds, 15 unless you say otherwise, from its start to its answer.
22 | @MainActor
23 | public final class HTTPTransport: DeviceTrustTransport {
| `- note: add '@available' attribute to enclosing class
24 | public let baseURL: String
25 | public let timeout: TimeInterval
:
132 | }
133 |
134 | private nonisolated static func load(_ request: URLRequest, with session: URLSession) async throws -> (Data, Int) {
| `- note: add '@available' attribute to enclosing static method
135 | final class Box: @unchecked Sendable { var task: URLSessionDataTask? }
136 | let box = Box()
137 | return try await withTaskCancellationHandler {
+--- /Users/admin/builder/spi-builder-workspace/Sources/Necessary/Transport.swift
|135 |
|136 |
|137 | #isolation
| | `- error: 'isolation()' is only available in macOS 10.15 or newer
+---------------------------------------------------------------------------------
138 | try await withCheckedThrowingContinuation { (continuation: CheckedContinuation<(Data, Int), Error>) in
139 | let task = session.dataTask(with: request) { data, response, error in
BUILD FAILURE 6.2 macosSpm