Build Information
Successful build of Haversack, reference 1.1.1 (4d58a3
), with Swift 6.2 (beta) for macOS (SPM) on 20 Jun 2025 23:36:32 UTC.
Swift 6 data race errors: 0
Build Command
env DEVELOPER_DIR=/Applications/Xcode-26.0.0-Beta.app xcrun swift build --arch arm64
Build Log
========================================
RunAll
========================================
Builder version: 4.64.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/jamf/Haversack.git
Reference: 1.1.1
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/jamf/Haversack
* tag 1.1.1 -> FETCH_HEAD
HEAD is now at 4d58a33 Merge pull request #4 from mlink/main
Cloned https://github.com/jamf/Haversack.git
Revision (git rev-parse @):
4d58a33d989d5ed318cc0ccc88f9ad6d064fbc68
SUCCESS checkout https://github.com/jamf/Haversack.git at 1.1.1
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.2
Building package at path: $PWD
https://github.com/jamf/Haversack.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-26.0.0-Beta.app xcrun swift build --arch arm64
[1/1] Compiling plugin Swift-DocC Preview
[2/2] Compiling plugin Swift-DocC
Building for debugging...
[2/8] Write sources
[7/8] Write swift-version-1EA4D86E10B52AF.txt
[9/22] Compiling InternalCollectionsUtilities Descriptions.swift
[10/22] Compiling InternalCollectionsUtilities UnsafeBufferPointer+Extras.swift
[11/22] Compiling InternalCollectionsUtilities RandomAccessCollection+Offsets.swift
[12/23] Compiling InternalCollectionsUtilities _UnsafeBitSet.swift
[13/23] Compiling InternalCollectionsUtilities _SortedCollection.swift
[14/23] Compiling InternalCollectionsUtilities UInt+first and last set bit.swift
[15/23] Compiling InternalCollectionsUtilities UInt+reversed.swift
[16/23] Compiling InternalCollectionsUtilities FixedWidthInteger+roundUpToPowerOfTwo.swift
[17/23] Compiling InternalCollectionsUtilities Integer rank.swift
[18/23] Compiling InternalCollectionsUtilities _UniqueCollection.swift
[19/23] Compiling InternalCollectionsUtilities _UnsafeBitSet+Index.swift
[20/23] Compiling InternalCollectionsUtilities _UnsafeBitSet+_Word.swift
[21/23] Compiling InternalCollectionsUtilities Debugging.swift
[22/23] Emitting module InternalCollectionsUtilities
[23/23] Compiling InternalCollectionsUtilities UnsafeMutableBufferPointer+Extras.swift
[24/79] Compiling OrderedCollections OrderedSet+Codable.swift
[25/79] Compiling OrderedCollections OrderedSet+CustomReflectable.swift
[26/79] Compiling OrderedCollections OrderedSet+Descriptions.swift
[27/79] Compiling OrderedCollections OrderedSet+Diffing.swift
[28/79] Compiling OrderedCollections OrderedSet+Equatable.swift
[29/79] Compiling OrderedCollections OrderedSet+ExpressibleByArrayLiteral.swift
[30/85] Compiling OrderedCollections OrderedSet+Partial SetAlgebra isStrictSubset.swift
[31/85] Compiling OrderedCollections OrderedSet+Partial SetAlgebra isStrictSuperset.swift
[32/85] Compiling OrderedCollections OrderedSet+Partial SetAlgebra isSubset.swift
[33/85] Compiling OrderedCollections OrderedSet+Partial SetAlgebra isSuperset.swift
[34/85] Compiling OrderedCollections OrderedSet+Partial SetAlgebra subtract.swift
[35/85] Compiling OrderedCollections OrderedSet+Partial SetAlgebra subtracting.swift
[36/85] Compiling OrderedCollections OrderedSet+Partial SetAlgebra symmetricDifference.swift
[37/85] Compiling OrderedCollections OrderedSet+Partial SetAlgebra union.swift
[38/85] Compiling OrderedCollections OrderedSet+Partial SetAlgebra+Basics.swift
[39/85] Compiling OrderedCollections OrderedSet+RandomAccessCollection.swift
[40/85] Compiling OrderedCollections OrderedSet+ReserveCapacity.swift
[41/85] Compiling OrderedCollections OrderedSet+Sendable.swift
[42/85] Compiling OrderedCollections OrderedSet+Partial SetAlgebra formIntersection.swift
[43/85] Compiling OrderedCollections OrderedSet+Partial SetAlgebra formSymmetricDifference.swift
[44/85] Compiling OrderedCollections OrderedSet+Partial SetAlgebra formUnion.swift
[45/85] Compiling OrderedCollections OrderedSet+Partial SetAlgebra intersection.swift
[46/85] Compiling OrderedCollections OrderedSet+Partial SetAlgebra isDisjoint.swift
[47/85] Compiling OrderedCollections OrderedSet+Partial SetAlgebra isEqualSet.swift
[48/85] Compiling OrderedCollections OrderedSet+Hashable.swift
[49/85] Compiling OrderedCollections OrderedSet+Initializers.swift
[50/85] Compiling OrderedCollections OrderedSet+Insertions.swift
[51/85] Compiling OrderedCollections OrderedSet+Invariants.swift
[52/85] Compiling OrderedCollections OrderedSet+Partial MutableCollection.swift
[53/85] Compiling OrderedCollections OrderedSet+Partial RangeReplaceableCollection.swift
[54/85] Compiling OrderedCollections OrderedDictionary+Elements.swift
[55/85] Compiling OrderedCollections OrderedDictionary+Equatable.swift
[56/85] Compiling OrderedCollections OrderedDictionary+ExpressibleByDictionaryLiteral.swift
[57/85] Compiling OrderedCollections OrderedDictionary+Hashable.swift
[58/85] Compiling OrderedCollections OrderedDictionary+Initializers.swift
[59/85] Compiling OrderedCollections OrderedDictionary+Invariants.swift
[60/85] Compiling OrderedCollections _Hashtable+Header.swift
[61/85] Compiling OrderedCollections OrderedDictionary+Codable.swift
[62/85] Compiling OrderedCollections OrderedDictionary+CustomReflectable.swift
[63/85] Compiling OrderedCollections OrderedDictionary+Deprecations.swift
[64/85] Compiling OrderedCollections OrderedDictionary+Descriptions.swift
[65/85] Compiling OrderedCollections OrderedDictionary+Elements.SubSequence.swift
[66/85] Compiling OrderedCollections OrderedDictionary+Partial MutableCollection.swift
[67/85] Compiling OrderedCollections OrderedDictionary+Partial RangeReplaceableCollection.swift
[68/85] Compiling OrderedCollections OrderedDictionary+Sendable.swift
[69/85] Compiling OrderedCollections OrderedDictionary+Sequence.swift
[70/85] Compiling OrderedCollections OrderedDictionary+Values.swift
[71/85] Compiling OrderedCollections OrderedDictionary.swift
[72/85] Compiling OrderedCollections _HashTable+Bucket.swift
[73/85] Compiling OrderedCollections _HashTable+BucketIterator.swift
[74/85] Compiling OrderedCollections _HashTable+Constants.swift
[75/85] Compiling OrderedCollections _HashTable+CustomStringConvertible.swift
[76/85] Compiling OrderedCollections _HashTable+Testing.swift
[77/85] Compiling OrderedCollections _HashTable+UnsafeHandle.swift
[78/85] Compiling OrderedCollections _HashTable.swift
[79/85] Compiling OrderedCollections OrderedSet+SubSequence.swift
[80/85] Compiling OrderedCollections OrderedSet+Testing.swift
[81/85] Compiling OrderedCollections OrderedSet+UnorderedView.swift
[82/85] Compiling OrderedCollections OrderedSet+UnstableInternals.swift
[83/85] Compiling OrderedCollections OrderedSet.swift
[84/85] Compiling OrderedCollections _UnsafeBitset.swift
[85/85] Emitting module OrderedCollections
[86/118] Emitting module Haversack
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Security/KeychainFile.swift:41:13: warning: 'SecKeychainCopyDomainSearchList' was deprecated in macOS 10.10: SecKeychain is deprecated [#DeprecatedDeclaration]
39 | var searchList: CFArray?
40 | let status = withUnsafeMutablePointer(to: &searchList) {
41 | SecKeychainCopyDomainSearchList(.system, UnsafeMutablePointer($0))
| `- warning: 'SecKeychainCopyDomainSearchList' was deprecated in macOS 10.10: SecKeychain is deprecated [#DeprecatedDeclaration]
42 | }
43 |
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
[87/121] Compiling Haversack KeychainFile.swift
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Security/KeychainFile.swift:41:13: warning: 'SecKeychainCopyDomainSearchList' was deprecated in macOS 10.10: SecKeychain is deprecated [#DeprecatedDeclaration]
39 | var searchList: CFArray?
40 | let status = withUnsafeMutablePointer(to: &searchList) {
41 | SecKeychainCopyDomainSearchList(.system, UnsafeMutablePointer($0))
| `- warning: 'SecKeychainCopyDomainSearchList' was deprecated in macOS 10.10: SecKeychain is deprecated [#DeprecatedDeclaration]
42 | }
43 |
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Security/KeychainFile.swift:85:13: warning: 'SecKeychainGetPath' was deprecated in macOS 10.10: SecKeychain is deprecated [#DeprecatedDeclaration]
83 | let pathName = UnsafeMutablePointer<CChar>.allocate(capacity: Int(pathLength))
84 | let status = withUnsafeMutablePointer(to: &pathLength) { pathLength in
85 | SecKeychainGetPath(reference, pathLength, pathName)
| `- warning: 'SecKeychainGetPath' was deprecated in macOS 10.10: SecKeychain is deprecated [#DeprecatedDeclaration]
86 | }
87 |
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Security/KeychainFile.swift:127:22: warning: 'SecKeychainOpen' was deprecated in macOS 10.10: SecKeychain is deprecated [#DeprecatedDeclaration]
125 | func open() throws {
126 | os_log("Attempting to open keychain at %{public}@", log: Logs.keychainFile, type: .default, path)
127 | let status = SecKeychainOpen(path, &reference)
| `- warning: 'SecKeychainOpen' was deprecated in macOS 10.10: SecKeychain is deprecated [#DeprecatedDeclaration]
128 | if status != errSecSuccess {
129 | os_log("SecKeychainOpen returned error %{public}d", log: Logs.keychainFile, type: .error, status)
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Security/KeychainFile.swift:159:22: warning: 'SecKeychainCreate' was deprecated in macOS 10.10: SecKeychain is deprecated [#DeprecatedDeclaration]
157 |
158 | os_log("Attempting to create keychain at %{public}@", log: Logs.keychainFile, type: .default, path)
159 | let status = SecKeychainCreate(path, UInt32(rawPassword.count), rawPassword, false, nil, &reference)
| `- warning: 'SecKeychainCreate' was deprecated in macOS 10.10: SecKeychain is deprecated [#DeprecatedDeclaration]
160 | if status != errSecSuccess {
161 | os_log("SecKeychainCreate returned error %{public}d", log: Logs.keychainFile, type: .error, status)
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Security/KeychainFile.swift:170:22: warning: 'SecKeychainDelete' was deprecated in macOS 10.10: SecKeychain is deprecated [#DeprecatedDeclaration]
168 | public func delete() throws {
169 | os_log("Attempting to delete keychain at %{public}@", log: Logs.keychainFile, type: .default, path)
170 | let status = SecKeychainDelete(reference)
| `- warning: 'SecKeychainDelete' was deprecated in macOS 10.10: SecKeychain is deprecated [#DeprecatedDeclaration]
171 | if status != errSecSuccess {
172 | os_log("SecKeychainDelete returned error %{public}d", log: Logs.keychainFile, type: .error, status)
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Security/KeychainFile.swift:186:22: warning: 'SecKeychainGetStatus' was deprecated in macOS 10.10: SecKeychain is deprecated [#DeprecatedDeclaration]
184 |
185 | var rawStatus: SecKeychainStatus = .zero
186 | let status = SecKeychainGetStatus(keychain, &rawStatus)
| `- warning: 'SecKeychainGetStatus' was deprecated in macOS 10.10: SecKeychain is deprecated [#DeprecatedDeclaration]
187 | if status == errSecSuccess {
188 | let keychainStatus = KeychainStatusOptions(rawValue: rawStatus)
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Security/KeychainFile.swift:206:22: warning: 'SecKeychainLock' was deprecated in macOS 10.10: SecKeychain is deprecated [#DeprecatedDeclaration]
204 |
205 | os_log("Attempting to lock keychain at %{public}@", log: Logs.keychainFile, type: .info, path)
206 | let status = SecKeychainLock(keychain)
| `- warning: 'SecKeychainLock' was deprecated in macOS 10.10: SecKeychain is deprecated [#DeprecatedDeclaration]
207 | if status != errSecSuccess {
208 | os_log("SecKeychainLock returned error %{public}d", log: Logs.keychainFile, type: .error, status)
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Security/KeychainFile.swift:228:22: warning: 'SecKeychainUnlock' was deprecated in macOS 10.10: SecKeychain is deprecated [#DeprecatedDeclaration]
226 | // We can't unlock the system keychain with our password; prompt the user if needed.
227 | os_log("Attempting to unlock keychain at %{public}@", log: Logs.keychainFile, type: .info, path)
228 | status = SecKeychainUnlock(keychain, 0, nil, false)
| `- warning: 'SecKeychainUnlock' was deprecated in macOS 10.10: SecKeychain is deprecated [#DeprecatedDeclaration]
229 | } else {
230 | guard let passwordFunc = passwordProvider else {
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Security/KeychainFile.swift:238:22: warning: 'SecKeychainUnlock' was deprecated in macOS 10.10: SecKeychain is deprecated [#DeprecatedDeclaration]
236 | let rawPassword = passwordFunc(path)
237 | os_log("Attempting to unlock keychain at %{public}@", log: Logs.keychainFile, type: .info, path)
238 | status = SecKeychainUnlock(keychain, UInt32(rawPassword.count), rawPassword, true)
| `- warning: 'SecKeychainUnlock' was deprecated in macOS 10.10: SecKeychain is deprecated [#DeprecatedDeclaration]
239 | }
240 | if status != errSecSuccess {
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
[88/121] Compiling Haversack KeychainItemRetrievability.swift
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Security/KeychainFile.swift:41:13: warning: 'SecKeychainCopyDomainSearchList' was deprecated in macOS 10.10: SecKeychain is deprecated [#DeprecatedDeclaration]
39 | var searchList: CFArray?
40 | let status = withUnsafeMutablePointer(to: &searchList) {
41 | SecKeychainCopyDomainSearchList(.system, UnsafeMutablePointer($0))
| `- warning: 'SecKeychainCopyDomainSearchList' was deprecated in macOS 10.10: SecKeychain is deprecated [#DeprecatedDeclaration]
42 | }
43 |
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Security/KeychainFile.swift:85:13: warning: 'SecKeychainGetPath' was deprecated in macOS 10.10: SecKeychain is deprecated [#DeprecatedDeclaration]
83 | let pathName = UnsafeMutablePointer<CChar>.allocate(capacity: Int(pathLength))
84 | let status = withUnsafeMutablePointer(to: &pathLength) { pathLength in
85 | SecKeychainGetPath(reference, pathLength, pathName)
| `- warning: 'SecKeychainGetPath' was deprecated in macOS 10.10: SecKeychain is deprecated [#DeprecatedDeclaration]
86 | }
87 |
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Security/KeychainFile.swift:127:22: warning: 'SecKeychainOpen' was deprecated in macOS 10.10: SecKeychain is deprecated [#DeprecatedDeclaration]
125 | func open() throws {
126 | os_log("Attempting to open keychain at %{public}@", log: Logs.keychainFile, type: .default, path)
127 | let status = SecKeychainOpen(path, &reference)
| `- warning: 'SecKeychainOpen' was deprecated in macOS 10.10: SecKeychain is deprecated [#DeprecatedDeclaration]
128 | if status != errSecSuccess {
129 | os_log("SecKeychainOpen returned error %{public}d", log: Logs.keychainFile, type: .error, status)
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Security/KeychainFile.swift:159:22: warning: 'SecKeychainCreate' was deprecated in macOS 10.10: SecKeychain is deprecated [#DeprecatedDeclaration]
157 |
158 | os_log("Attempting to create keychain at %{public}@", log: Logs.keychainFile, type: .default, path)
159 | let status = SecKeychainCreate(path, UInt32(rawPassword.count), rawPassword, false, nil, &reference)
| `- warning: 'SecKeychainCreate' was deprecated in macOS 10.10: SecKeychain is deprecated [#DeprecatedDeclaration]
160 | if status != errSecSuccess {
161 | os_log("SecKeychainCreate returned error %{public}d", log: Logs.keychainFile, type: .error, status)
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Security/KeychainFile.swift:170:22: warning: 'SecKeychainDelete' was deprecated in macOS 10.10: SecKeychain is deprecated [#DeprecatedDeclaration]
168 | public func delete() throws {
169 | os_log("Attempting to delete keychain at %{public}@", log: Logs.keychainFile, type: .default, path)
170 | let status = SecKeychainDelete(reference)
| `- warning: 'SecKeychainDelete' was deprecated in macOS 10.10: SecKeychain is deprecated [#DeprecatedDeclaration]
171 | if status != errSecSuccess {
172 | os_log("SecKeychainDelete returned error %{public}d", log: Logs.keychainFile, type: .error, status)
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Security/KeychainFile.swift:186:22: warning: 'SecKeychainGetStatus' was deprecated in macOS 10.10: SecKeychain is deprecated [#DeprecatedDeclaration]
184 |
185 | var rawStatus: SecKeychainStatus = .zero
186 | let status = SecKeychainGetStatus(keychain, &rawStatus)
| `- warning: 'SecKeychainGetStatus' was deprecated in macOS 10.10: SecKeychain is deprecated [#DeprecatedDeclaration]
187 | if status == errSecSuccess {
188 | let keychainStatus = KeychainStatusOptions(rawValue: rawStatus)
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Security/KeychainFile.swift:206:22: warning: 'SecKeychainLock' was deprecated in macOS 10.10: SecKeychain is deprecated [#DeprecatedDeclaration]
204 |
205 | os_log("Attempting to lock keychain at %{public}@", log: Logs.keychainFile, type: .info, path)
206 | let status = SecKeychainLock(keychain)
| `- warning: 'SecKeychainLock' was deprecated in macOS 10.10: SecKeychain is deprecated [#DeprecatedDeclaration]
207 | if status != errSecSuccess {
208 | os_log("SecKeychainLock returned error %{public}d", log: Logs.keychainFile, type: .error, status)
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Security/KeychainFile.swift:228:22: warning: 'SecKeychainUnlock' was deprecated in macOS 10.10: SecKeychain is deprecated [#DeprecatedDeclaration]
226 | // We can't unlock the system keychain with our password; prompt the user if needed.
227 | os_log("Attempting to unlock keychain at %{public}@", log: Logs.keychainFile, type: .info, path)
228 | status = SecKeychainUnlock(keychain, 0, nil, false)
| `- warning: 'SecKeychainUnlock' was deprecated in macOS 10.10: SecKeychain is deprecated [#DeprecatedDeclaration]
229 | } else {
230 | guard let passwordFunc = passwordProvider else {
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Security/KeychainFile.swift:238:22: warning: 'SecKeychainUnlock' was deprecated in macOS 10.10: SecKeychain is deprecated [#DeprecatedDeclaration]
236 | let rawPassword = passwordFunc(path)
237 | os_log("Attempting to unlock keychain at %{public}@", log: Logs.keychainFile, type: .info, path)
238 | status = SecKeychainUnlock(keychain, UInt32(rawPassword.count), rawPassword, true)
| `- warning: 'SecKeychainUnlock' was deprecated in macOS 10.10: SecKeychain is deprecated [#DeprecatedDeclaration]
239 | }
240 | if status != errSecSuccess {
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
[89/121] Compiling Haversack RetrievabilityLevel.swift
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Security/KeychainFile.swift:41:13: warning: 'SecKeychainCopyDomainSearchList' was deprecated in macOS 10.10: SecKeychain is deprecated [#DeprecatedDeclaration]
39 | var searchList: CFArray?
40 | let status = withUnsafeMutablePointer(to: &searchList) {
41 | SecKeychainCopyDomainSearchList(.system, UnsafeMutablePointer($0))
| `- warning: 'SecKeychainCopyDomainSearchList' was deprecated in macOS 10.10: SecKeychain is deprecated [#DeprecatedDeclaration]
42 | }
43 |
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Security/KeychainFile.swift:85:13: warning: 'SecKeychainGetPath' was deprecated in macOS 10.10: SecKeychain is deprecated [#DeprecatedDeclaration]
83 | let pathName = UnsafeMutablePointer<CChar>.allocate(capacity: Int(pathLength))
84 | let status = withUnsafeMutablePointer(to: &pathLength) { pathLength in
85 | SecKeychainGetPath(reference, pathLength, pathName)
| `- warning: 'SecKeychainGetPath' was deprecated in macOS 10.10: SecKeychain is deprecated [#DeprecatedDeclaration]
86 | }
87 |
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Security/KeychainFile.swift:127:22: warning: 'SecKeychainOpen' was deprecated in macOS 10.10: SecKeychain is deprecated [#DeprecatedDeclaration]
125 | func open() throws {
126 | os_log("Attempting to open keychain at %{public}@", log: Logs.keychainFile, type: .default, path)
127 | let status = SecKeychainOpen(path, &reference)
| `- warning: 'SecKeychainOpen' was deprecated in macOS 10.10: SecKeychain is deprecated [#DeprecatedDeclaration]
128 | if status != errSecSuccess {
129 | os_log("SecKeychainOpen returned error %{public}d", log: Logs.keychainFile, type: .error, status)
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Security/KeychainFile.swift:159:22: warning: 'SecKeychainCreate' was deprecated in macOS 10.10: SecKeychain is deprecated [#DeprecatedDeclaration]
157 |
158 | os_log("Attempting to create keychain at %{public}@", log: Logs.keychainFile, type: .default, path)
159 | let status = SecKeychainCreate(path, UInt32(rawPassword.count), rawPassword, false, nil, &reference)
| `- warning: 'SecKeychainCreate' was deprecated in macOS 10.10: SecKeychain is deprecated [#DeprecatedDeclaration]
160 | if status != errSecSuccess {
161 | os_log("SecKeychainCreate returned error %{public}d", log: Logs.keychainFile, type: .error, status)
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Security/KeychainFile.swift:170:22: warning: 'SecKeychainDelete' was deprecated in macOS 10.10: SecKeychain is deprecated [#DeprecatedDeclaration]
168 | public func delete() throws {
169 | os_log("Attempting to delete keychain at %{public}@", log: Logs.keychainFile, type: .default, path)
170 | let status = SecKeychainDelete(reference)
| `- warning: 'SecKeychainDelete' was deprecated in macOS 10.10: SecKeychain is deprecated [#DeprecatedDeclaration]
171 | if status != errSecSuccess {
172 | os_log("SecKeychainDelete returned error %{public}d", log: Logs.keychainFile, type: .error, status)
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Security/KeychainFile.swift:186:22: warning: 'SecKeychainGetStatus' was deprecated in macOS 10.10: SecKeychain is deprecated [#DeprecatedDeclaration]
184 |
185 | var rawStatus: SecKeychainStatus = .zero
186 | let status = SecKeychainGetStatus(keychain, &rawStatus)
| `- warning: 'SecKeychainGetStatus' was deprecated in macOS 10.10: SecKeychain is deprecated [#DeprecatedDeclaration]
187 | if status == errSecSuccess {
188 | let keychainStatus = KeychainStatusOptions(rawValue: rawStatus)
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Security/KeychainFile.swift:206:22: warning: 'SecKeychainLock' was deprecated in macOS 10.10: SecKeychain is deprecated [#DeprecatedDeclaration]
204 |
205 | os_log("Attempting to lock keychain at %{public}@", log: Logs.keychainFile, type: .info, path)
206 | let status = SecKeychainLock(keychain)
| `- warning: 'SecKeychainLock' was deprecated in macOS 10.10: SecKeychain is deprecated [#DeprecatedDeclaration]
207 | if status != errSecSuccess {
208 | os_log("SecKeychainLock returned error %{public}d", log: Logs.keychainFile, type: .error, status)
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Security/KeychainFile.swift:228:22: warning: 'SecKeychainUnlock' was deprecated in macOS 10.10: SecKeychain is deprecated [#DeprecatedDeclaration]
226 | // We can't unlock the system keychain with our password; prompt the user if needed.
227 | os_log("Attempting to unlock keychain at %{public}@", log: Logs.keychainFile, type: .info, path)
228 | status = SecKeychainUnlock(keychain, 0, nil, false)
| `- warning: 'SecKeychainUnlock' was deprecated in macOS 10.10: SecKeychain is deprecated [#DeprecatedDeclaration]
229 | } else {
230 | guard let passwordFunc = passwordProvider else {
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Security/KeychainFile.swift:238:22: warning: 'SecKeychainUnlock' was deprecated in macOS 10.10: SecKeychain is deprecated [#DeprecatedDeclaration]
236 | let rawPassword = passwordFunc(path)
237 | os_log("Attempting to unlock keychain at %{public}@", log: Logs.keychainFile, type: .info, path)
238 | status = SecKeychainUnlock(keychain, UInt32(rawPassword.count), rawPassword, true)
| `- warning: 'SecKeychainUnlock' was deprecated in macOS 10.10: SecKeychain is deprecated [#DeprecatedDeclaration]
239 | }
240 | if status != errSecSuccess {
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
[90/121] Compiling Haversack KeychainQuerying.swift
[91/121] Compiling Haversack PasswordBaseQuerying.swift
[92/121] Compiling Haversack ItemSecurity.swift
[93/121] Compiling Haversack KeyBaseQuerying.swift
[94/121] Compiling Haversack KeyQuery.swift
[95/121] Compiling Haversack KeychainQueryOptions.swift
[96/121] Compiling Haversack Logs.swift
[97/121] Compiling Haversack CertificateBaseQuerying.swift
[98/121] Compiling Haversack CertificateQuery.swift
[99/121] Compiling Haversack KeychainPortable.swift
[100/121] Compiling Haversack PassphraseStrategy.swift
[101/121] Compiling Haversack PrivateKeyImporting.swift
[102/121] Compiling Haversack KeyGenerationConfig.swift
[103/121] Compiling Haversack HaversackError.swift
[104/121] Compiling Haversack HaversackStrategy.swift
[105/121] Compiling Haversack KeychainExportConfig.swift
[106/121] Compiling Haversack KeychainImportConfig.swift
[107/121] Compiling Haversack GenericPasswordConvertible.swift
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack+AsyncAwait.swift:11:58: warning: converting a value of type '(__shared sending Result<T.Entity, any Error>) -> ()' to type '(Result<T.Entity, any Error>) -> Void' risks causing data races; this is an error in the Swift 6 language mode
9 | public func first<T: KeychainQuerying>(where query: T) async throws -> T.Entity {
10 | try await withCheckedThrowingContinuation { continuation in
11 | first(where: query, completion: continuation.resume)
| |- warning: converting a value of type '(__shared sending Result<T.Entity, any Error>) -> ()' to type '(Result<T.Entity, any Error>) -> Void' risks causing data races; this is an error in the Swift 6 language mode
| `- note: converting a function typed value with a sending parameter to one without risks allowing actor-isolated values to escape their isolation domain as an argument to an invocation of value
12 | }
13 | }
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack+AsyncAwait.swift:18:59: warning: converting a value of type '(__shared sending Result<[T.Entity], any Error>) -> ()' to type '(Result<[T.Entity], any Error>) -> Void' risks causing data races; this is an error in the Swift 6 language mode
16 | public func search<T: KeychainQuerying>(where query: T) async throws -> [T.Entity] {
17 | try await withCheckedThrowingContinuation { continuation in
18 | search(where: query, completion: continuation.resume)
| |- warning: converting a value of type '(__shared sending Result<[T.Entity], any Error>) -> ()' to type '(Result<[T.Entity], any Error>) -> Void' risks causing data races; this is an error in the Swift 6 language mode
| `- note: converting a function typed value with a sending parameter to one without risks allowing actor-isolated values to escape their isolation domain as an argument to an invocation of value
19 | }
20 | }
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack+AsyncAwait.swift:26:109: warning: converting a value of type '(__shared sending Result<T, any Error>) -> ()' to type '(Result<T, any Error>) -> Void' risks causing data races; this is an error in the Swift 6 language mode
24 | public func save<T: KeychainStorable>(_ item: T, itemSecurity: ItemSecurity, updateExisting: Bool) async throws -> T {
25 | try await withCheckedThrowingContinuation { continuation in
26 | save(item, itemSecurity: itemSecurity, updateExisting: updateExisting, completion: continuation.resume)
| |- warning: converting a value of type '(__shared sending Result<T, any Error>) -> ()' to type '(Result<T, any Error>) -> Void' risks causing data races; this is an error in the Swift 6 language mode
| `- note: converting a function typed value with a sending parameter to one without risks allowing actor-isolated values to escape their isolation domain as an argument to an invocation of value
27 | }
28 | }
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack+AsyncAwait.swift:33:98: warning: converting a value of type '(__shared sending Result<SecKey, any Error>) -> ()' to type '(Result<SecKey, any Error>) -> Void' risks causing data races; this is an error in the Swift 6 language mode
31 | public func generateKey(fromConfig config: KeyGenerationConfig, itemSecurity: ItemSecurity) async throws -> SecKey {
32 | try await withCheckedThrowingContinuation { continuation in
33 | generateKey(fromConfig: config, itemSecurity: itemSecurity, completion: continuation.resume)
| |- warning: converting a value of type '(__shared sending Result<SecKey, any Error>) -> ()' to type '(Result<SecKey, any Error>) -> Void' risks causing data races; this is an error in the Swift 6 language mode
| `- note: converting a function typed value with a sending parameter to one without risks allowing actor-isolated values to escape their isolation domain as an argument to an invocation of value
34 | }
35 | }
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack+AsyncAwait.swift:40:107: warning: converting a value of type '(sending (any Error)?) -> ()' to type '((any Error)?) -> Void' risks causing data races; this is an error in the Swift 6 language mode
38 | public func delete<T: KeychainQuerying>(where query: T, treatNotFoundAsSuccess: Bool = true) async throws {
39 | let error = try await withCheckedThrowingContinuation { continuation in
40 | delete(where: query, treatNotFoundAsSuccess: treatNotFoundAsSuccess, completion: continuation.resume)
| |- warning: converting a value of type '(sending (any Error)?) -> ()' to type '((any Error)?) -> Void' risks causing data races; this is an error in the Swift 6 language mode
| `- note: converting a function typed value with a sending parameter to one without risks allowing actor-isolated values to escape their isolation domain as an argument to an invocation of value
41 | }
42 |
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack+AsyncAwait.swift:51:99: warning: converting a value of type '(sending (any Error)?) -> ()' to type '((any Error)?) -> Void' risks causing data races; this is an error in the Swift 6 language mode
49 | public func delete<T: KeychainStorable>(_ item: T, treatNotFoundAsSuccess: Bool = true) async throws {
50 | let error = try await withCheckedThrowingContinuation { continuation in
51 | delete(item, treatNotFoundAsSuccess: treatNotFoundAsSuccess, completion: continuation.resume)
| |- warning: converting a value of type '(sending (any Error)?) -> ()' to type '((any Error)?) -> Void' risks causing data races; this is an error in the Swift 6 language mode
| `- note: converting a function typed value with a sending parameter to one without risks allowing actor-isolated values to escape their isolation domain as an argument to an invocation of value
52 | }
53 |
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack.swift:46:38: warning: capture of non-sendable type 'T.Type' in an isolated closure
44 | let result: Result<T.Entity, Error>
45 | do {
46 | let localQuery = try precheckSearch(query, singleItem: true)
| `- warning: capture of non-sendable type 'T.Type' in an isolated closure
47 |
48 | let entity = try self.configuration.strategy.searchForOne(localQuery)
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack.swift:41:50: warning: capture of non-sendable type 'T.Type' in an isolated closure
39 | /// - completion: A function/block to be called when the search operation is completed.
40 | /// - result: The item or an error will be given to the completion handler.
41 | public func first<T: KeychainQuerying>(where query: T, completionQueue: OperationQueue? = nil,
| `- warning: capture of non-sendable type 'T.Type' in an isolated closure
42 | completion: @escaping (_ result: Result<T.Entity, Error>) -> Void) {
43 | configuration.serialQueue.async {
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack.swift:48:62: warning: capture of non-sendable type 'T.Entity.Type' in an isolated closure
46 | let localQuery = try precheckSearch(query, singleItem: true)
47 |
48 | let entity = try self.configuration.strategy.searchForOne(localQuery)
| `- warning: capture of non-sendable type 'T.Entity.Type' in an isolated closure
49 | result = .success(entity)
50 | } catch {
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack.swift:83:38: warning: capture of non-sendable type 'T.Type' in an isolated closure
81 | let result: Result<[T.Entity], Error>
82 | do {
83 | let localQuery = try precheckSearch(query)
| `- warning: capture of non-sendable type 'T.Type' in an isolated closure
84 |
85 | let entities = try self.configuration.strategy.search(localQuery)
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack.swift:78:51: warning: capture of non-sendable type 'T.Type' in an isolated closure
76 | /// - completion: A function/block to be called when the search operation is completed.
77 | /// - result: An array of items or an error will be given to the completion handler.
78 | public func search<T: KeychainQuerying>(where query: T, completionQueue: OperationQueue? = nil,
| `- warning: capture of non-sendable type 'T.Type' in an isolated closure
79 | completion: @escaping (_ result: Result<[T.Entity], Error>) -> Void) {
80 | configuration.serialQueue.async {
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack.swift:85:64: warning: capture of non-sendable type 'T.Entity.Type' in an isolated closure
83 | let localQuery = try precheckSearch(query)
84 |
85 | let entities = try self.configuration.strategy.search(localQuery)
| `- warning: capture of non-sendable type 'T.Entity.Type' in an isolated closure
86 | result = .success(entities)
87 | } catch {
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack.swift:129:35: warning: capture of non-sendable type 'T.Type' in an isolated closure
127 |
128 | do {
129 | let theItem = try unsynchronizedSave(item, itemSecurity: itemSecurity, updateExisting: updateExisting)
| `- warning: capture of non-sendable type 'T.Type' in an isolated closure
130 | result = .success(theItem)
131 | } catch {
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack.swift:122:45: warning: capture of non-sendable type 'T.Type' in an isolated closure
120 | /// - completion: A function/block to be called when the save operation is completed.
121 | /// - result: The original `item` that was saved or an error will be given to the completion handler.
122 | public func save<T: KeychainStorable>(_ item: T, itemSecurity: ItemSecurity, updateExisting: Bool,
| `- warning: capture of non-sendable type 'T.Type' in an isolated closure
123 | completionQueue: OperationQueue? = nil,
124 | completion: @escaping (_ result: Result<T, Error>) -> Void) {
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack.swift:406:26: warning: capture of non-sendable type 'T.Type' in an isolated closure
404 |
405 | do {
406 | try self.unsynchronizedDelete(item, treatNotFoundAsSuccess: treatNotFoundAsSuccess)
| `- warning: capture of non-sendable type 'T.Type' in an isolated closure
407 | result = nil
408 | } catch {
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack.swift:399:47: warning: capture of non-sendable type 'T.Type' in an isolated closure
397 | /// - error: If an error occurs during the delete operation it will be given to the completion
398 | /// block; a `nil` represents no error.
399 | public func delete<T: KeychainStorable>(_ item: T, treatNotFoundAsSuccess: Bool = true,
| `- warning: capture of non-sendable type 'T.Type' in an isolated closure
400 | completionQueue: OperationQueue? = nil,
401 | completion: @escaping (_ error: Error?) -> Void) {
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack.swift:459:21: warning: capture of non-sendable type 'T.Type' in an isolated closure
457 | var localQuery: T
458 | #if os(macOS)
459 | localQuery = try self.addKeychain(to: query)
| `- warning: capture of non-sendable type 'T.Type' in an isolated closure
460 | #else
461 | localQuery = query
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack.swift:450:51: warning: capture of non-sendable type 'T.Type' in an isolated closure
448 | /// - error: If an error occurs during the delete operation it will be given to the completion
449 | /// block; a `nil` represents no error.
450 | public func delete<T: KeychainQuerying>(where query: T, treatNotFoundAsSuccess: Bool = true,
| `- warning: capture of non-sendable type 'T.Type' in an isolated closure
451 | completionQueue: OperationQueue? = nil,
452 | completion: @escaping (_ error: Error?) -> Void) {
[108/121] Compiling Haversack Haversack+AsyncAwait.swift
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack+AsyncAwait.swift:11:58: warning: converting a value of type '(__shared sending Result<T.Entity, any Error>) -> ()' to type '(Result<T.Entity, any Error>) -> Void' risks causing data races; this is an error in the Swift 6 language mode
9 | public func first<T: KeychainQuerying>(where query: T) async throws -> T.Entity {
10 | try await withCheckedThrowingContinuation { continuation in
11 | first(where: query, completion: continuation.resume)
| |- warning: converting a value of type '(__shared sending Result<T.Entity, any Error>) -> ()' to type '(Result<T.Entity, any Error>) -> Void' risks causing data races; this is an error in the Swift 6 language mode
| `- note: converting a function typed value with a sending parameter to one without risks allowing actor-isolated values to escape their isolation domain as an argument to an invocation of value
12 | }
13 | }
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack+AsyncAwait.swift:18:59: warning: converting a value of type '(__shared sending Result<[T.Entity], any Error>) -> ()' to type '(Result<[T.Entity], any Error>) -> Void' risks causing data races; this is an error in the Swift 6 language mode
16 | public func search<T: KeychainQuerying>(where query: T) async throws -> [T.Entity] {
17 | try await withCheckedThrowingContinuation { continuation in
18 | search(where: query, completion: continuation.resume)
| |- warning: converting a value of type '(__shared sending Result<[T.Entity], any Error>) -> ()' to type '(Result<[T.Entity], any Error>) -> Void' risks causing data races; this is an error in the Swift 6 language mode
| `- note: converting a function typed value with a sending parameter to one without risks allowing actor-isolated values to escape their isolation domain as an argument to an invocation of value
19 | }
20 | }
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack+AsyncAwait.swift:26:109: warning: converting a value of type '(__shared sending Result<T, any Error>) -> ()' to type '(Result<T, any Error>) -> Void' risks causing data races; this is an error in the Swift 6 language mode
24 | public func save<T: KeychainStorable>(_ item: T, itemSecurity: ItemSecurity, updateExisting: Bool) async throws -> T {
25 | try await withCheckedThrowingContinuation { continuation in
26 | save(item, itemSecurity: itemSecurity, updateExisting: updateExisting, completion: continuation.resume)
| |- warning: converting a value of type '(__shared sending Result<T, any Error>) -> ()' to type '(Result<T, any Error>) -> Void' risks causing data races; this is an error in the Swift 6 language mode
| `- note: converting a function typed value with a sending parameter to one without risks allowing actor-isolated values to escape their isolation domain as an argument to an invocation of value
27 | }
28 | }
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack+AsyncAwait.swift:33:98: warning: converting a value of type '(__shared sending Result<SecKey, any Error>) -> ()' to type '(Result<SecKey, any Error>) -> Void' risks causing data races; this is an error in the Swift 6 language mode
31 | public func generateKey(fromConfig config: KeyGenerationConfig, itemSecurity: ItemSecurity) async throws -> SecKey {
32 | try await withCheckedThrowingContinuation { continuation in
33 | generateKey(fromConfig: config, itemSecurity: itemSecurity, completion: continuation.resume)
| |- warning: converting a value of type '(__shared sending Result<SecKey, any Error>) -> ()' to type '(Result<SecKey, any Error>) -> Void' risks causing data races; this is an error in the Swift 6 language mode
| `- note: converting a function typed value with a sending parameter to one without risks allowing actor-isolated values to escape their isolation domain as an argument to an invocation of value
34 | }
35 | }
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack+AsyncAwait.swift:40:107: warning: converting a value of type '(sending (any Error)?) -> ()' to type '((any Error)?) -> Void' risks causing data races; this is an error in the Swift 6 language mode
38 | public func delete<T: KeychainQuerying>(where query: T, treatNotFoundAsSuccess: Bool = true) async throws {
39 | let error = try await withCheckedThrowingContinuation { continuation in
40 | delete(where: query, treatNotFoundAsSuccess: treatNotFoundAsSuccess, completion: continuation.resume)
| |- warning: converting a value of type '(sending (any Error)?) -> ()' to type '((any Error)?) -> Void' risks causing data races; this is an error in the Swift 6 language mode
| `- note: converting a function typed value with a sending parameter to one without risks allowing actor-isolated values to escape their isolation domain as an argument to an invocation of value
41 | }
42 |
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack+AsyncAwait.swift:51:99: warning: converting a value of type '(sending (any Error)?) -> ()' to type '((any Error)?) -> Void' risks causing data races; this is an error in the Swift 6 language mode
49 | public func delete<T: KeychainStorable>(_ item: T, treatNotFoundAsSuccess: Bool = true) async throws {
50 | let error = try await withCheckedThrowingContinuation { continuation in
51 | delete(item, treatNotFoundAsSuccess: treatNotFoundAsSuccess, completion: continuation.resume)
| |- warning: converting a value of type '(sending (any Error)?) -> ()' to type '((any Error)?) -> Void' risks causing data races; this is an error in the Swift 6 language mode
| `- note: converting a function typed value with a sending parameter to one without risks allowing actor-isolated values to escape their isolation domain as an argument to an invocation of value
52 | }
53 |
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack.swift:46:38: warning: capture of non-sendable type 'T.Type' in an isolated closure
44 | let result: Result<T.Entity, Error>
45 | do {
46 | let localQuery = try precheckSearch(query, singleItem: true)
| `- warning: capture of non-sendable type 'T.Type' in an isolated closure
47 |
48 | let entity = try self.configuration.strategy.searchForOne(localQuery)
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack.swift:41:50: warning: capture of non-sendable type 'T.Type' in an isolated closure
39 | /// - completion: A function/block to be called when the search operation is completed.
40 | /// - result: The item or an error will be given to the completion handler.
41 | public func first<T: KeychainQuerying>(where query: T, completionQueue: OperationQueue? = nil,
| `- warning: capture of non-sendable type 'T.Type' in an isolated closure
42 | completion: @escaping (_ result: Result<T.Entity, Error>) -> Void) {
43 | configuration.serialQueue.async {
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack.swift:48:62: warning: capture of non-sendable type 'T.Entity.Type' in an isolated closure
46 | let localQuery = try precheckSearch(query, singleItem: true)
47 |
48 | let entity = try self.configuration.strategy.searchForOne(localQuery)
| `- warning: capture of non-sendable type 'T.Entity.Type' in an isolated closure
49 | result = .success(entity)
50 | } catch {
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack.swift:83:38: warning: capture of non-sendable type 'T.Type' in an isolated closure
81 | let result: Result<[T.Entity], Error>
82 | do {
83 | let localQuery = try precheckSearch(query)
| `- warning: capture of non-sendable type 'T.Type' in an isolated closure
84 |
85 | let entities = try self.configuration.strategy.search(localQuery)
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack.swift:78:51: warning: capture of non-sendable type 'T.Type' in an isolated closure
76 | /// - completion: A function/block to be called when the search operation is completed.
77 | /// - result: An array of items or an error will be given to the completion handler.
78 | public func search<T: KeychainQuerying>(where query: T, completionQueue: OperationQueue? = nil,
| `- warning: capture of non-sendable type 'T.Type' in an isolated closure
79 | completion: @escaping (_ result: Result<[T.Entity], Error>) -> Void) {
80 | configuration.serialQueue.async {
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack.swift:85:64: warning: capture of non-sendable type 'T.Entity.Type' in an isolated closure
83 | let localQuery = try precheckSearch(query)
84 |
85 | let entities = try self.configuration.strategy.search(localQuery)
| `- warning: capture of non-sendable type 'T.Entity.Type' in an isolated closure
86 | result = .success(entities)
87 | } catch {
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack.swift:129:35: warning: capture of non-sendable type 'T.Type' in an isolated closure
127 |
128 | do {
129 | let theItem = try unsynchronizedSave(item, itemSecurity: itemSecurity, updateExisting: updateExisting)
| `- warning: capture of non-sendable type 'T.Type' in an isolated closure
130 | result = .success(theItem)
131 | } catch {
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack.swift:122:45: warning: capture of non-sendable type 'T.Type' in an isolated closure
120 | /// - completion: A function/block to be called when the save operation is completed.
121 | /// - result: The original `item` that was saved or an error will be given to the completion handler.
122 | public func save<T: KeychainStorable>(_ item: T, itemSecurity: ItemSecurity, updateExisting: Bool,
| `- warning: capture of non-sendable type 'T.Type' in an isolated closure
123 | completionQueue: OperationQueue? = nil,
124 | completion: @escaping (_ result: Result<T, Error>) -> Void) {
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack.swift:406:26: warning: capture of non-sendable type 'T.Type' in an isolated closure
404 |
405 | do {
406 | try self.unsynchronizedDelete(item, treatNotFoundAsSuccess: treatNotFoundAsSuccess)
| `- warning: capture of non-sendable type 'T.Type' in an isolated closure
407 | result = nil
408 | } catch {
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack.swift:399:47: warning: capture of non-sendable type 'T.Type' in an isolated closure
397 | /// - error: If an error occurs during the delete operation it will be given to the completion
398 | /// block; a `nil` represents no error.
399 | public func delete<T: KeychainStorable>(_ item: T, treatNotFoundAsSuccess: Bool = true,
| `- warning: capture of non-sendable type 'T.Type' in an isolated closure
400 | completionQueue: OperationQueue? = nil,
401 | completion: @escaping (_ error: Error?) -> Void) {
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack.swift:459:21: warning: capture of non-sendable type 'T.Type' in an isolated closure
457 | var localQuery: T
458 | #if os(macOS)
459 | localQuery = try self.addKeychain(to: query)
| `- warning: capture of non-sendable type 'T.Type' in an isolated closure
460 | #else
461 | localQuery = query
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack.swift:450:51: warning: capture of non-sendable type 'T.Type' in an isolated closure
448 | /// - error: If an error occurs during the delete operation it will be given to the completion
449 | /// block; a `nil` represents no error.
450 | public func delete<T: KeychainQuerying>(where query: T, treatNotFoundAsSuccess: Bool = true,
| `- warning: capture of non-sendable type 'T.Type' in an isolated closure
451 | completionQueue: OperationQueue? = nil,
452 | completion: @escaping (_ error: Error?) -> Void) {
[109/121] Compiling Haversack Haversack.swift
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack+AsyncAwait.swift:11:58: warning: converting a value of type '(__shared sending Result<T.Entity, any Error>) -> ()' to type '(Result<T.Entity, any Error>) -> Void' risks causing data races; this is an error in the Swift 6 language mode
9 | public func first<T: KeychainQuerying>(where query: T) async throws -> T.Entity {
10 | try await withCheckedThrowingContinuation { continuation in
11 | first(where: query, completion: continuation.resume)
| |- warning: converting a value of type '(__shared sending Result<T.Entity, any Error>) -> ()' to type '(Result<T.Entity, any Error>) -> Void' risks causing data races; this is an error in the Swift 6 language mode
| `- note: converting a function typed value with a sending parameter to one without risks allowing actor-isolated values to escape their isolation domain as an argument to an invocation of value
12 | }
13 | }
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack+AsyncAwait.swift:18:59: warning: converting a value of type '(__shared sending Result<[T.Entity], any Error>) -> ()' to type '(Result<[T.Entity], any Error>) -> Void' risks causing data races; this is an error in the Swift 6 language mode
16 | public func search<T: KeychainQuerying>(where query: T) async throws -> [T.Entity] {
17 | try await withCheckedThrowingContinuation { continuation in
18 | search(where: query, completion: continuation.resume)
| |- warning: converting a value of type '(__shared sending Result<[T.Entity], any Error>) -> ()' to type '(Result<[T.Entity], any Error>) -> Void' risks causing data races; this is an error in the Swift 6 language mode
| `- note: converting a function typed value with a sending parameter to one without risks allowing actor-isolated values to escape their isolation domain as an argument to an invocation of value
19 | }
20 | }
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack+AsyncAwait.swift:26:109: warning: converting a value of type '(__shared sending Result<T, any Error>) -> ()' to type '(Result<T, any Error>) -> Void' risks causing data races; this is an error in the Swift 6 language mode
24 | public func save<T: KeychainStorable>(_ item: T, itemSecurity: ItemSecurity, updateExisting: Bool) async throws -> T {
25 | try await withCheckedThrowingContinuation { continuation in
26 | save(item, itemSecurity: itemSecurity, updateExisting: updateExisting, completion: continuation.resume)
| |- warning: converting a value of type '(__shared sending Result<T, any Error>) -> ()' to type '(Result<T, any Error>) -> Void' risks causing data races; this is an error in the Swift 6 language mode
| `- note: converting a function typed value with a sending parameter to one without risks allowing actor-isolated values to escape their isolation domain as an argument to an invocation of value
27 | }
28 | }
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack+AsyncAwait.swift:33:98: warning: converting a value of type '(__shared sending Result<SecKey, any Error>) -> ()' to type '(Result<SecKey, any Error>) -> Void' risks causing data races; this is an error in the Swift 6 language mode
31 | public func generateKey(fromConfig config: KeyGenerationConfig, itemSecurity: ItemSecurity) async throws -> SecKey {
32 | try await withCheckedThrowingContinuation { continuation in
33 | generateKey(fromConfig: config, itemSecurity: itemSecurity, completion: continuation.resume)
| |- warning: converting a value of type '(__shared sending Result<SecKey, any Error>) -> ()' to type '(Result<SecKey, any Error>) -> Void' risks causing data races; this is an error in the Swift 6 language mode
| `- note: converting a function typed value with a sending parameter to one without risks allowing actor-isolated values to escape their isolation domain as an argument to an invocation of value
34 | }
35 | }
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack+AsyncAwait.swift:40:107: warning: converting a value of type '(sending (any Error)?) -> ()' to type '((any Error)?) -> Void' risks causing data races; this is an error in the Swift 6 language mode
38 | public func delete<T: KeychainQuerying>(where query: T, treatNotFoundAsSuccess: Bool = true) async throws {
39 | let error = try await withCheckedThrowingContinuation { continuation in
40 | delete(where: query, treatNotFoundAsSuccess: treatNotFoundAsSuccess, completion: continuation.resume)
| |- warning: converting a value of type '(sending (any Error)?) -> ()' to type '((any Error)?) -> Void' risks causing data races; this is an error in the Swift 6 language mode
| `- note: converting a function typed value with a sending parameter to one without risks allowing actor-isolated values to escape their isolation domain as an argument to an invocation of value
41 | }
42 |
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack+AsyncAwait.swift:51:99: warning: converting a value of type '(sending (any Error)?) -> ()' to type '((any Error)?) -> Void' risks causing data races; this is an error in the Swift 6 language mode
49 | public func delete<T: KeychainStorable>(_ item: T, treatNotFoundAsSuccess: Bool = true) async throws {
50 | let error = try await withCheckedThrowingContinuation { continuation in
51 | delete(item, treatNotFoundAsSuccess: treatNotFoundAsSuccess, completion: continuation.resume)
| |- warning: converting a value of type '(sending (any Error)?) -> ()' to type '((any Error)?) -> Void' risks causing data races; this is an error in the Swift 6 language mode
| `- note: converting a function typed value with a sending parameter to one without risks allowing actor-isolated values to escape their isolation domain as an argument to an invocation of value
52 | }
53 |
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack.swift:46:38: warning: capture of non-sendable type 'T.Type' in an isolated closure
44 | let result: Result<T.Entity, Error>
45 | do {
46 | let localQuery = try precheckSearch(query, singleItem: true)
| `- warning: capture of non-sendable type 'T.Type' in an isolated closure
47 |
48 | let entity = try self.configuration.strategy.searchForOne(localQuery)
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack.swift:41:50: warning: capture of non-sendable type 'T.Type' in an isolated closure
39 | /// - completion: A function/block to be called when the search operation is completed.
40 | /// - result: The item or an error will be given to the completion handler.
41 | public func first<T: KeychainQuerying>(where query: T, completionQueue: OperationQueue? = nil,
| `- warning: capture of non-sendable type 'T.Type' in an isolated closure
42 | completion: @escaping (_ result: Result<T.Entity, Error>) -> Void) {
43 | configuration.serialQueue.async {
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack.swift:48:62: warning: capture of non-sendable type 'T.Entity.Type' in an isolated closure
46 | let localQuery = try precheckSearch(query, singleItem: true)
47 |
48 | let entity = try self.configuration.strategy.searchForOne(localQuery)
| `- warning: capture of non-sendable type 'T.Entity.Type' in an isolated closure
49 | result = .success(entity)
50 | } catch {
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack.swift:83:38: warning: capture of non-sendable type 'T.Type' in an isolated closure
81 | let result: Result<[T.Entity], Error>
82 | do {
83 | let localQuery = try precheckSearch(query)
| `- warning: capture of non-sendable type 'T.Type' in an isolated closure
84 |
85 | let entities = try self.configuration.strategy.search(localQuery)
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack.swift:78:51: warning: capture of non-sendable type 'T.Type' in an isolated closure
76 | /// - completion: A function/block to be called when the search operation is completed.
77 | /// - result: An array of items or an error will be given to the completion handler.
78 | public func search<T: KeychainQuerying>(where query: T, completionQueue: OperationQueue? = nil,
| `- warning: capture of non-sendable type 'T.Type' in an isolated closure
79 | completion: @escaping (_ result: Result<[T.Entity], Error>) -> Void) {
80 | configuration.serialQueue.async {
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack.swift:85:64: warning: capture of non-sendable type 'T.Entity.Type' in an isolated closure
83 | let localQuery = try precheckSearch(query)
84 |
85 | let entities = try self.configuration.strategy.search(localQuery)
| `- warning: capture of non-sendable type 'T.Entity.Type' in an isolated closure
86 | result = .success(entities)
87 | } catch {
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack.swift:129:35: warning: capture of non-sendable type 'T.Type' in an isolated closure
127 |
128 | do {
129 | let theItem = try unsynchronizedSave(item, itemSecurity: itemSecurity, updateExisting: updateExisting)
| `- warning: capture of non-sendable type 'T.Type' in an isolated closure
130 | result = .success(theItem)
131 | } catch {
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack.swift:122:45: warning: capture of non-sendable type 'T.Type' in an isolated closure
120 | /// - completion: A function/block to be called when the save operation is completed.
121 | /// - result: The original `item` that was saved or an error will be given to the completion handler.
122 | public func save<T: KeychainStorable>(_ item: T, itemSecurity: ItemSecurity, updateExisting: Bool,
| `- warning: capture of non-sendable type 'T.Type' in an isolated closure
123 | completionQueue: OperationQueue? = nil,
124 | completion: @escaping (_ result: Result<T, Error>) -> Void) {
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack.swift:406:26: warning: capture of non-sendable type 'T.Type' in an isolated closure
404 |
405 | do {
406 | try self.unsynchronizedDelete(item, treatNotFoundAsSuccess: treatNotFoundAsSuccess)
| `- warning: capture of non-sendable type 'T.Type' in an isolated closure
407 | result = nil
408 | } catch {
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack.swift:399:47: warning: capture of non-sendable type 'T.Type' in an isolated closure
397 | /// - error: If an error occurs during the delete operation it will be given to the completion
398 | /// block; a `nil` represents no error.
399 | public func delete<T: KeychainStorable>(_ item: T, treatNotFoundAsSuccess: Bool = true,
| `- warning: capture of non-sendable type 'T.Type' in an isolated closure
400 | completionQueue: OperationQueue? = nil,
401 | completion: @escaping (_ error: Error?) -> Void) {
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack.swift:459:21: warning: capture of non-sendable type 'T.Type' in an isolated closure
457 | var localQuery: T
458 | #if os(macOS)
459 | localQuery = try self.addKeychain(to: query)
| `- warning: capture of non-sendable type 'T.Type' in an isolated closure
460 | #else
461 | localQuery = query
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack.swift:450:51: warning: capture of non-sendable type 'T.Type' in an isolated closure
448 | /// - error: If an error occurs during the delete operation it will be given to the completion
449 | /// block; a `nil` represents no error.
450 | public func delete<T: KeychainQuerying>(where query: T, treatNotFoundAsSuccess: Bool = true,
| `- warning: capture of non-sendable type 'T.Type' in an isolated closure
451 | completionQueue: OperationQueue? = nil,
452 | completion: @escaping (_ error: Error?) -> Void) {
[110/121] Compiling Haversack HaversackConfiguration.swift
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack+AsyncAwait.swift:11:58: warning: converting a value of type '(__shared sending Result<T.Entity, any Error>) -> ()' to type '(Result<T.Entity, any Error>) -> Void' risks causing data races; this is an error in the Swift 6 language mode
9 | public func first<T: KeychainQuerying>(where query: T) async throws -> T.Entity {
10 | try await withCheckedThrowingContinuation { continuation in
11 | first(where: query, completion: continuation.resume)
| |- warning: converting a value of type '(__shared sending Result<T.Entity, any Error>) -> ()' to type '(Result<T.Entity, any Error>) -> Void' risks causing data races; this is an error in the Swift 6 language mode
| `- note: converting a function typed value with a sending parameter to one without risks allowing actor-isolated values to escape their isolation domain as an argument to an invocation of value
12 | }
13 | }
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack+AsyncAwait.swift:18:59: warning: converting a value of type '(__shared sending Result<[T.Entity], any Error>) -> ()' to type '(Result<[T.Entity], any Error>) -> Void' risks causing data races; this is an error in the Swift 6 language mode
16 | public func search<T: KeychainQuerying>(where query: T) async throws -> [T.Entity] {
17 | try await withCheckedThrowingContinuation { continuation in
18 | search(where: query, completion: continuation.resume)
| |- warning: converting a value of type '(__shared sending Result<[T.Entity], any Error>) -> ()' to type '(Result<[T.Entity], any Error>) -> Void' risks causing data races; this is an error in the Swift 6 language mode
| `- note: converting a function typed value with a sending parameter to one without risks allowing actor-isolated values to escape their isolation domain as an argument to an invocation of value
19 | }
20 | }
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack+AsyncAwait.swift:26:109: warning: converting a value of type '(__shared sending Result<T, any Error>) -> ()' to type '(Result<T, any Error>) -> Void' risks causing data races; this is an error in the Swift 6 language mode
24 | public func save<T: KeychainStorable>(_ item: T, itemSecurity: ItemSecurity, updateExisting: Bool) async throws -> T {
25 | try await withCheckedThrowingContinuation { continuation in
26 | save(item, itemSecurity: itemSecurity, updateExisting: updateExisting, completion: continuation.resume)
| |- warning: converting a value of type '(__shared sending Result<T, any Error>) -> ()' to type '(Result<T, any Error>) -> Void' risks causing data races; this is an error in the Swift 6 language mode
| `- note: converting a function typed value with a sending parameter to one without risks allowing actor-isolated values to escape their isolation domain as an argument to an invocation of value
27 | }
28 | }
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack+AsyncAwait.swift:33:98: warning: converting a value of type '(__shared sending Result<SecKey, any Error>) -> ()' to type '(Result<SecKey, any Error>) -> Void' risks causing data races; this is an error in the Swift 6 language mode
31 | public func generateKey(fromConfig config: KeyGenerationConfig, itemSecurity: ItemSecurity) async throws -> SecKey {
32 | try await withCheckedThrowingContinuation { continuation in
33 | generateKey(fromConfig: config, itemSecurity: itemSecurity, completion: continuation.resume)
| |- warning: converting a value of type '(__shared sending Result<SecKey, any Error>) -> ()' to type '(Result<SecKey, any Error>) -> Void' risks causing data races; this is an error in the Swift 6 language mode
| `- note: converting a function typed value with a sending parameter to one without risks allowing actor-isolated values to escape their isolation domain as an argument to an invocation of value
34 | }
35 | }
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack+AsyncAwait.swift:40:107: warning: converting a value of type '(sending (any Error)?) -> ()' to type '((any Error)?) -> Void' risks causing data races; this is an error in the Swift 6 language mode
38 | public func delete<T: KeychainQuerying>(where query: T, treatNotFoundAsSuccess: Bool = true) async throws {
39 | let error = try await withCheckedThrowingContinuation { continuation in
40 | delete(where: query, treatNotFoundAsSuccess: treatNotFoundAsSuccess, completion: continuation.resume)
| |- warning: converting a value of type '(sending (any Error)?) -> ()' to type '((any Error)?) -> Void' risks causing data races; this is an error in the Swift 6 language mode
| `- note: converting a function typed value with a sending parameter to one without risks allowing actor-isolated values to escape their isolation domain as an argument to an invocation of value
41 | }
42 |
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack+AsyncAwait.swift:51:99: warning: converting a value of type '(sending (any Error)?) -> ()' to type '((any Error)?) -> Void' risks causing data races; this is an error in the Swift 6 language mode
49 | public func delete<T: KeychainStorable>(_ item: T, treatNotFoundAsSuccess: Bool = true) async throws {
50 | let error = try await withCheckedThrowingContinuation { continuation in
51 | delete(item, treatNotFoundAsSuccess: treatNotFoundAsSuccess, completion: continuation.resume)
| |- warning: converting a value of type '(sending (any Error)?) -> ()' to type '((any Error)?) -> Void' risks causing data races; this is an error in the Swift 6 language mode
| `- note: converting a function typed value with a sending parameter to one without risks allowing actor-isolated values to escape their isolation domain as an argument to an invocation of value
52 | }
53 |
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack.swift:46:38: warning: capture of non-sendable type 'T.Type' in an isolated closure
44 | let result: Result<T.Entity, Error>
45 | do {
46 | let localQuery = try precheckSearch(query, singleItem: true)
| `- warning: capture of non-sendable type 'T.Type' in an isolated closure
47 |
48 | let entity = try self.configuration.strategy.searchForOne(localQuery)
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack.swift:41:50: warning: capture of non-sendable type 'T.Type' in an isolated closure
39 | /// - completion: A function/block to be called when the search operation is completed.
40 | /// - result: The item or an error will be given to the completion handler.
41 | public func first<T: KeychainQuerying>(where query: T, completionQueue: OperationQueue? = nil,
| `- warning: capture of non-sendable type 'T.Type' in an isolated closure
42 | completion: @escaping (_ result: Result<T.Entity, Error>) -> Void) {
43 | configuration.serialQueue.async {
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack.swift:48:62: warning: capture of non-sendable type 'T.Entity.Type' in an isolated closure
46 | let localQuery = try precheckSearch(query, singleItem: true)
47 |
48 | let entity = try self.configuration.strategy.searchForOne(localQuery)
| `- warning: capture of non-sendable type 'T.Entity.Type' in an isolated closure
49 | result = .success(entity)
50 | } catch {
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack.swift:83:38: warning: capture of non-sendable type 'T.Type' in an isolated closure
81 | let result: Result<[T.Entity], Error>
82 | do {
83 | let localQuery = try precheckSearch(query)
| `- warning: capture of non-sendable type 'T.Type' in an isolated closure
84 |
85 | let entities = try self.configuration.strategy.search(localQuery)
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack.swift:78:51: warning: capture of non-sendable type 'T.Type' in an isolated closure
76 | /// - completion: A function/block to be called when the search operation is completed.
77 | /// - result: An array of items or an error will be given to the completion handler.
78 | public func search<T: KeychainQuerying>(where query: T, completionQueue: OperationQueue? = nil,
| `- warning: capture of non-sendable type 'T.Type' in an isolated closure
79 | completion: @escaping (_ result: Result<[T.Entity], Error>) -> Void) {
80 | configuration.serialQueue.async {
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack.swift:85:64: warning: capture of non-sendable type 'T.Entity.Type' in an isolated closure
83 | let localQuery = try precheckSearch(query)
84 |
85 | let entities = try self.configuration.strategy.search(localQuery)
| `- warning: capture of non-sendable type 'T.Entity.Type' in an isolated closure
86 | result = .success(entities)
87 | } catch {
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack.swift:129:35: warning: capture of non-sendable type 'T.Type' in an isolated closure
127 |
128 | do {
129 | let theItem = try unsynchronizedSave(item, itemSecurity: itemSecurity, updateExisting: updateExisting)
| `- warning: capture of non-sendable type 'T.Type' in an isolated closure
130 | result = .success(theItem)
131 | } catch {
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack.swift:122:45: warning: capture of non-sendable type 'T.Type' in an isolated closure
120 | /// - completion: A function/block to be called when the save operation is completed.
121 | /// - result: The original `item` that was saved or an error will be given to the completion handler.
122 | public func save<T: KeychainStorable>(_ item: T, itemSecurity: ItemSecurity, updateExisting: Bool,
| `- warning: capture of non-sendable type 'T.Type' in an isolated closure
123 | completionQueue: OperationQueue? = nil,
124 | completion: @escaping (_ result: Result<T, Error>) -> Void) {
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack.swift:406:26: warning: capture of non-sendable type 'T.Type' in an isolated closure
404 |
405 | do {
406 | try self.unsynchronizedDelete(item, treatNotFoundAsSuccess: treatNotFoundAsSuccess)
| `- warning: capture of non-sendable type 'T.Type' in an isolated closure
407 | result = nil
408 | } catch {
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack.swift:399:47: warning: capture of non-sendable type 'T.Type' in an isolated closure
397 | /// - error: If an error occurs during the delete operation it will be given to the completion
398 | /// block; a `nil` represents no error.
399 | public func delete<T: KeychainStorable>(_ item: T, treatNotFoundAsSuccess: Bool = true,
| `- warning: capture of non-sendable type 'T.Type' in an isolated closure
400 | completionQueue: OperationQueue? = nil,
401 | completion: @escaping (_ error: Error?) -> Void) {
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack.swift:459:21: warning: capture of non-sendable type 'T.Type' in an isolated closure
457 | var localQuery: T
458 | #if os(macOS)
459 | localQuery = try self.addKeychain(to: query)
| `- warning: capture of non-sendable type 'T.Type' in an isolated closure
460 | #else
461 | localQuery = query
/Users/admin/builder/spi-builder-workspace/Sources/Haversack/Haversack.swift:450:51: warning: capture of non-sendable type 'T.Type' in an isolated closure
448 | /// - error: If an error occurs during the delete operation it will be given to the completion
449 | /// block; a `nil` represents no error.
450 | public func delete<T: KeychainQuerying>(where query: T, treatNotFoundAsSuccess: Bool = true,
| `- warning: capture of non-sendable type 'T.Type' in an isolated closure
451 | completionQueue: OperationQueue? = nil,
452 | completion: @escaping (_ error: Error?) -> Void) {
[111/121] Compiling Haversack CertificateEntity.swift
[112/121] Compiling Haversack Data+X501Name.swift
[113/121] Compiling Haversack GenericPasswordEntity.swift
[114/121] Compiling Haversack IdentityEntity.swift
[115/121] Compiling Haversack GenericPasswordQuery.swift
[116/121] Compiling Haversack IdentityQuery.swift
[117/121] Compiling Haversack InternetPasswordQuery.swift
[118/121] Compiling Haversack InternetPasswordEntity.swift
[119/121] Compiling Haversack KeyEntity.swift
[120/121] Compiling Haversack KeychainStorable.swift
[121/121] Compiling Haversack PasswordBaseEntity.swift
[122/126] Compiling HaversackMock HaversackEphemeralStrategy.swift
[123/126] Emitting module HaversackMock
[124/126] Emitting module HaversackCryptoKit
/Users/admin/builder/spi-builder-workspace/Sources/HaversackCryptoKit/GenericPasswordConvertible+CryptoKit.swift:9:1: warning: extension declares a conformance of imported type 'PrivateKey' to imported protocol 'GenericPasswordConvertible'; this will not behave correctly if the owners of 'CryptoKit' introduce this conformance in the future
7 |
8 | @available(macOS 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
9 | extension Curve25519.KeyAgreement.PrivateKey: GenericPasswordConvertible {
| |- warning: extension declares a conformance of imported type 'PrivateKey' to imported protocol 'GenericPasswordConvertible'; this will not behave correctly if the owners of 'CryptoKit' introduce this conformance in the future
| `- note: add '@retroactive' to silence this warning
10 | public static func make(fromRaw data: Data) throws -> Self {
11 | return try Self.init(rawRepresentation: data)
/Users/admin/builder/spi-builder-workspace/Sources/HaversackCryptoKit/GenericPasswordConvertible+CryptoKit.swift:16:1: warning: extension declares a conformance of imported type 'PrivateKey' to imported protocol 'GenericPasswordConvertible'; this will not behave correctly if the owners of 'CryptoKit' introduce this conformance in the future
14 |
15 | @available(macOS 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
16 | extension Curve25519.Signing.PrivateKey: GenericPasswordConvertible {
| |- warning: extension declares a conformance of imported type 'PrivateKey' to imported protocol 'GenericPasswordConvertible'; this will not behave correctly if the owners of 'CryptoKit' introduce this conformance in the future
| `- note: add '@retroactive' to silence this warning
17 | public static func make(fromRaw data: Data) throws -> Self {
18 | return try Self.init(rawRepresentation: data)
/Users/admin/builder/spi-builder-workspace/Sources/HaversackCryptoKit/GenericPasswordConvertible+CryptoKit.swift:23:1: warning: extension declares a conformance of imported type 'SymmetricKey' to imported protocol 'GenericPasswordConvertible'; this will not behave correctly if the owners of 'CryptoKit' introduce this conformance in the future
21 |
22 | @available(macOS 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
23 | extension SymmetricKey: GenericPasswordConvertible {
| |- warning: extension declares a conformance of imported type 'SymmetricKey' to imported protocol 'GenericPasswordConvertible'; this will not behave correctly if the owners of 'CryptoKit' introduce this conformance in the future
| `- note: add '@retroactive' to silence this warning
24 | public static func make(fromRaw data: Data) throws -> Self {
25 | return Self.init(data: data)
/Users/admin/builder/spi-builder-workspace/Sources/HaversackCryptoKit/GenericPasswordConvertible+CryptoKit.swift:36:1: warning: extension declares a conformance of imported type 'PrivateKey' to imported protocol 'GenericPasswordConvertible'; this will not behave correctly if the owners of 'CryptoKit' introduce this conformance in the future
34 |
35 | @available(macOS 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
36 | extension SecureEnclave.P256.KeyAgreement.PrivateKey: GenericPasswordConvertible {
| |- warning: extension declares a conformance of imported type 'PrivateKey' to imported protocol 'GenericPasswordConvertible'; this will not behave correctly if the owners of 'CryptoKit' introduce this conformance in the future
| `- note: add '@retroactive' to silence this warning
37 | public static func make(fromRaw data: Data) throws -> Self {
38 | return try Self.init(dataRepresentation: data)
/Users/admin/builder/spi-builder-workspace/Sources/HaversackCryptoKit/GenericPasswordConvertible+CryptoKit.swift:47:1: warning: extension declares a conformance of imported type 'PrivateKey' to imported protocol 'GenericPasswordConvertible'; this will not behave correctly if the owners of 'CryptoKit' introduce this conformance in the future
45 |
46 | @available(macOS 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
47 | extension SecureEnclave.P256.Signing.PrivateKey: GenericPasswordConvertible {
| |- warning: extension declares a conformance of imported type 'PrivateKey' to imported protocol 'GenericPasswordConvertible'; this will not behave correctly if the owners of 'CryptoKit' introduce this conformance in the future
| `- note: add '@retroactive' to silence this warning
48 | public static func make(fromRaw data: Data) throws -> Self {
49 | return try Self.init(dataRepresentation: data)
[125/126] Compiling HaversackCryptoKit SecKeyConvertible.swift
[126/126] Compiling HaversackCryptoKit GenericPasswordConvertible+CryptoKit.swift
/Users/admin/builder/spi-builder-workspace/Sources/HaversackCryptoKit/GenericPasswordConvertible+CryptoKit.swift:9:1: warning: extension declares a conformance of imported type 'PrivateKey' to imported protocol 'GenericPasswordConvertible'; this will not behave correctly if the owners of 'CryptoKit' introduce this conformance in the future
7 |
8 | @available(macOS 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
9 | extension Curve25519.KeyAgreement.PrivateKey: GenericPasswordConvertible {
| |- warning: extension declares a conformance of imported type 'PrivateKey' to imported protocol 'GenericPasswordConvertible'; this will not behave correctly if the owners of 'CryptoKit' introduce this conformance in the future
| `- note: add '@retroactive' to silence this warning
10 | public static func make(fromRaw data: Data) throws -> Self {
11 | return try Self.init(rawRepresentation: data)
/Users/admin/builder/spi-builder-workspace/Sources/HaversackCryptoKit/GenericPasswordConvertible+CryptoKit.swift:16:1: warning: extension declares a conformance of imported type 'PrivateKey' to imported protocol 'GenericPasswordConvertible'; this will not behave correctly if the owners of 'CryptoKit' introduce this conformance in the future
14 |
15 | @available(macOS 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
16 | extension Curve25519.Signing.PrivateKey: GenericPasswordConvertible {
| |- warning: extension declares a conformance of imported type 'PrivateKey' to imported protocol 'GenericPasswordConvertible'; this will not behave correctly if the owners of 'CryptoKit' introduce this conformance in the future
| `- note: add '@retroactive' to silence this warning
17 | public static func make(fromRaw data: Data) throws -> Self {
18 | return try Self.init(rawRepresentation: data)
/Users/admin/builder/spi-builder-workspace/Sources/HaversackCryptoKit/GenericPasswordConvertible+CryptoKit.swift:23:1: warning: extension declares a conformance of imported type 'SymmetricKey' to imported protocol 'GenericPasswordConvertible'; this will not behave correctly if the owners of 'CryptoKit' introduce this conformance in the future
21 |
22 | @available(macOS 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
23 | extension SymmetricKey: GenericPasswordConvertible {
| |- warning: extension declares a conformance of imported type 'SymmetricKey' to imported protocol 'GenericPasswordConvertible'; this will not behave correctly if the owners of 'CryptoKit' introduce this conformance in the future
| `- note: add '@retroactive' to silence this warning
24 | public static func make(fromRaw data: Data) throws -> Self {
25 | return Self.init(data: data)
/Users/admin/builder/spi-builder-workspace/Sources/HaversackCryptoKit/GenericPasswordConvertible+CryptoKit.swift:36:1: warning: extension declares a conformance of imported type 'PrivateKey' to imported protocol 'GenericPasswordConvertible'; this will not behave correctly if the owners of 'CryptoKit' introduce this conformance in the future
34 |
35 | @available(macOS 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
36 | extension SecureEnclave.P256.KeyAgreement.PrivateKey: GenericPasswordConvertible {
| |- warning: extension declares a conformance of imported type 'PrivateKey' to imported protocol 'GenericPasswordConvertible'; this will not behave correctly if the owners of 'CryptoKit' introduce this conformance in the future
| `- note: add '@retroactive' to silence this warning
37 | public static func make(fromRaw data: Data) throws -> Self {
38 | return try Self.init(dataRepresentation: data)
/Users/admin/builder/spi-builder-workspace/Sources/HaversackCryptoKit/GenericPasswordConvertible+CryptoKit.swift:47:1: warning: extension declares a conformance of imported type 'PrivateKey' to imported protocol 'GenericPasswordConvertible'; this will not behave correctly if the owners of 'CryptoKit' introduce this conformance in the future
45 |
46 | @available(macOS 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
47 | extension SecureEnclave.P256.Signing.PrivateKey: GenericPasswordConvertible {
| |- warning: extension declares a conformance of imported type 'PrivateKey' to imported protocol 'GenericPasswordConvertible'; this will not behave correctly if the owners of 'CryptoKit' introduce this conformance in the future
| `- note: add '@retroactive' to silence this warning
48 | public static func make(fromRaw data: Data) throws -> Self {
49 | return try Self.init(dataRepresentation: data)
Build complete! (20.91s)
Fetching https://github.com/apple/swift-docc-plugin
Fetching https://github.com/apple/swift-collections
[1/2082] Fetching swift-docc-plugin
[210/18722] Fetching swift-docc-plugin, swift-collections
Fetched https://github.com/apple/swift-docc-plugin from cache (1.71s)
Fetched https://github.com/apple/swift-collections from cache (1.71s)
Computing version for https://github.com/apple/swift-docc-plugin
Computed https://github.com/apple/swift-docc-plugin at 1.4.4 (2.30s)
Fetching https://github.com/swiftlang/swift-docc-symbolkit
[1/3413] Fetching swift-docc-symbolkit
Fetched https://github.com/swiftlang/swift-docc-symbolkit from cache (1.09s)
Computing version for https://github.com/swiftlang/swift-docc-symbolkit
Computed https://github.com/swiftlang/swift-docc-symbolkit at 1.0.0 (1.66s)
Computing version for https://github.com/apple/swift-collections
Computed https://github.com/apple/swift-collections at 1.2.0 (0.46s)
Creating working copy for https://github.com/swiftlang/swift-docc-symbolkit
Working copy of https://github.com/swiftlang/swift-docc-symbolkit resolved at 1.0.0
Creating working copy for https://github.com/apple/swift-docc-plugin
Working copy of https://github.com/apple/swift-docc-plugin resolved at 1.4.4
Creating working copy for https://github.com/apple/swift-collections
Working copy of https://github.com/apple/swift-collections resolved at 1.2.0
Build complete.
{
"dependencies" : [
{
"identity" : "swift-collections",
"requirement" : {
"range" : [
{
"lower_bound" : "1.0.4",
"upper_bound" : "2.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/apple/swift-collections"
},
{
"identity" : "swift-docc-plugin",
"requirement" : {
"range" : [
{
"lower_bound" : "1.2.0",
"upper_bound" : "2.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/apple/swift-docc-plugin"
}
],
"manifest_display_name" : "Haversack",
"name" : "Haversack",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "macos",
"version" : "10.13"
},
{
"name" : "ios",
"version" : "12.0"
},
{
"name" : "tvos",
"version" : "12.0"
},
{
"name" : "watchos",
"version" : "5.0"
}
],
"products" : [
{
"name" : "Haversack",
"targets" : [
"Haversack"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "HaversackCryptoKit",
"targets" : [
"HaversackCryptoKit"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "HaversackMock",
"targets" : [
"HaversackMock"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "HaversackTests",
"module_type" : "SwiftTarget",
"name" : "HaversackTests",
"path" : "Tests/HaversackTests",
"resources" : [
{
"path" : "/Users/admin/builder/spi-builder-workspace/Tests/HaversackTests/TestResources",
"rule" : {
"copy" : {
}
}
}
],
"sources" : [
"CertificateIntegrationTests.swift",
"Data+X501NameTests.swift",
"EphemeralStrategyTests.swift",
"GenericPasswordConvertibleTests.swift",
"GenericPasswordIntegrationTests.swift",
"HaversackAsyncAwaitTests.swift",
"HaversackTests.swift",
"IdentityIntegrationTests.swift",
"InternetPasswordIntegrationTests.swift",
"KeyGenerationConfigTests.swift",
"KeyGenerationIntegrationTests.swift",
"KeychainExportConfigTests.swift",
"KeychainExportIntegrationTests.swift",
"KeychainFileIntegrationTests.swift",
"KeychainImportConfigTests.swift",
"KeychainImportIntegrationTests.swift",
"QueryCertificateTests.swift",
"QueryIdentityTests.swift",
"QueryKeyTests.swift",
"QueryPasswordTests.swift",
"SystemKeychainIntegrationTests.swift",
"XCTestCase+TestResources.swift"
],
"target_dependencies" : [
"HaversackMock"
],
"type" : "test"
},
{
"c99name" : "HaversackMock",
"module_type" : "SwiftTarget",
"name" : "HaversackMock",
"path" : "Sources/HaversackMock",
"product_memberships" : [
"HaversackMock"
],
"sources" : [
"HaversackEphemeralStrategy.swift"
],
"target_dependencies" : [
"Haversack"
],
"type" : "library"
},
{
"c99name" : "HaversackCryptoKit",
"module_type" : "SwiftTarget",
"name" : "HaversackCryptoKit",
"path" : "Sources/HaversackCryptoKit",
"product_memberships" : [
"HaversackCryptoKit"
],
"sources" : [
"GenericPasswordConvertible+CryptoKit.swift",
"SecKeyConvertible.swift"
],
"target_dependencies" : [
"Haversack"
],
"type" : "library"
},
{
"c99name" : "Haversack",
"module_type" : "SwiftTarget",
"name" : "Haversack",
"path" : "Sources/Haversack",
"product_dependencies" : [
"OrderedCollections"
],
"product_memberships" : [
"Haversack",
"HaversackCryptoKit",
"HaversackMock"
],
"sources" : [
"Entities/CertificateEntity.swift",
"Entities/Data+X501Name.swift",
"Entities/GenericPasswordEntity.swift",
"Entities/IdentityEntity.swift",
"Entities/InternetPasswordEntity.swift",
"Entities/KeyEntity.swift",
"Entities/KeychainStorable.swift",
"Entities/PasswordBaseEntity.swift",
"GenericPasswordConvertible.swift",
"Haversack+AsyncAwait.swift",
"Haversack.swift",
"HaversackConfiguration.swift",
"HaversackError.swift",
"HaversackStrategy.swift",
"ImportExport/KeychainExportConfig.swift",
"ImportExport/KeychainImportConfig.swift",
"ImportExport/KeychainPortable.swift",
"ImportExport/PassphraseStrategy.swift",
"ImportExport/PrivateKeyImporting.swift",
"KeyGenerationConfig.swift",
"Logs.swift",
"Queries/CertificateBaseQuerying.swift",
"Queries/CertificateQuery.swift",
"Queries/GenericPasswordQuery.swift",
"Queries/IdentityQuery.swift",
"Queries/InternetPasswordQuery.swift",
"Queries/KeyBaseQuerying.swift",
"Queries/KeyQuery.swift",
"Queries/KeychainQueryOptions.swift",
"Queries/KeychainQuerying.swift",
"Queries/PasswordBaseQuerying.swift",
"Security/ItemSecurity.swift",
"Security/KeychainFile.swift",
"Security/KeychainItemRetrievability.swift",
"Security/RetrievabilityLevel.swift"
],
"type" : "library"
}
],
"tools_version" : "5.6"
}
Done.