The Swift Package Index logo.Swift Package Index

Track the adoption of Swift 6 strict concurrency checks for data race safety. How many packages are Ready for Swift 6?

Build Information

Successful build of PersistentCacheKit, reference 0.6.0 (cb3e35), with Swift 6.0 for macOS (SPM) on 31 Oct 2024 21:00:34 UTC.

Swift 6 data race errors: 0

Build Command

env DEVELOPER_DIR=/Applications/Xcode-16.1.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete

Build Log

========================================
RunAll
========================================
Builder version: 4.56.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/davbeck/PersistentCacheKit.git
Reference: 0.6.0
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/davbeck/PersistentCacheKit
 * tag               0.6.0      -> FETCH_HEAD
HEAD is now at cb3e358 Add Sendable conformances
Cloned https://github.com/davbeck/PersistentCacheKit.git
Revision (git rev-parse @):
cb3e3587646574a7ee5a7b5016638a296b9f09b7
SUCCESS checkout https://github.com/davbeck/PersistentCacheKit.git at 0.6.0
========================================
ResolveProductDependencies
========================================
Resolving dependencies ...
{
  "identity": ".resolve-product-dependencies",
  "name": "resolve-dependencies",
  "url": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
  "version": "unspecified",
  "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
  "dependencies": [
    {
      "identity": "persistentcachekit",
      "name": "PersistentCacheKit",
      "url": "https://github.com/davbeck/PersistentCacheKit.git",
      "version": "unspecified",
      "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/PersistentCacheKit",
      "dependencies": [
      ]
    }
  ]
}
Fetching https://github.com/davbeck/PersistentCacheKit.git
[1/265] Fetching persistentcachekit
Fetched https://github.com/davbeck/PersistentCacheKit.git from cache (0.83s)
Creating working copy for https://github.com/davbeck/PersistentCacheKit.git
Working copy of https://github.com/davbeck/PersistentCacheKit.git resolved at 0.6.0 (cb3e358)
warning: '.resolve-product-dependencies': dependency 'persistentcachekit' is not used by any target
Found 0 product dependencies
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.0
Building package at path:  $PWD
https://github.com/davbeck/PersistentCacheKit.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.1.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version--7754E27361AE5C74.txt
[3/7] Compiling PersistentCacheKit PersistentCache.swift
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/PersistentCache.swift:65:24: warning: capture of 'completion' with non-sendable type '(() -> Void)?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 63 | 			self.internalCache = [:]
 64 |
 65 | 			if let completion = completion {
    |                        |- warning: capture of 'completion' with non-sendable type '(() -> Void)?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
    |                        `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
 66 | 				DispatchQueue.global().async {
 67 | 					completion()
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/PersistentCache.swift:67:6: warning: capture of 'completion' with non-sendable type '() -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 65 | 			if let completion = completion {
 66 | 				DispatchQueue.global().async {
 67 | 					completion()
    |      |- warning: capture of 'completion' with non-sendable type '() -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
    |      `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
 68 | 				}
 69 | 			}
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/PersistentCache.swift:123:24: warning: capture of 'key' with non-sendable type 'Key' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 37 | }
 38 |
 39 | public class PersistentCache<Key: CustomStringConvertible & Hashable, Value: Codable>: @unchecked Sendable {
    |                              `- note: consider making generic parameter 'Key' conform to the 'Sendable' protocol
 40 | 	private let queue = DispatchQueue(label: "Cache", attributes: .concurrent)
 41 | 	private var internalCache = [Key: Item<Value>]()
    :
121 |
122 | 			self.queue.async(flags: .barrier) {
123 | 				self.internalCache[key] = newValue
    |                        `- warning: capture of 'key' with non-sendable type 'Key' in a `@Sendable` closure; this is an error in the Swift 6 language mode
124 |
125 | 				self.storage?[self.stringKey(for: key)] = data
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/PersistentCache.swift:123:31: warning: capture of 'newValue' with non-sendable type 'Item<Value>?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 15 | }
 16 |
 17 | public struct Item<Value: Codable>: Codable {
    |               `- note: consider making generic struct 'Item' conform to the 'Sendable' protocol
 18 | 	public var expiration: Date?
 19 | 	public var value: Value
    :
121 |
122 | 			self.queue.async(flags: .barrier) {
123 | 				self.internalCache[key] = newValue
    |                               `- warning: capture of 'newValue' with non-sendable type 'Item<Value>?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
124 |
125 | 				self.storage?[self.stringKey(for: key)] = data
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/PersistentCache.swift:128:25: warning: capture of 'key' with non-sendable type 'Key' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 37 | }
 38 |
 39 | public class PersistentCache<Key: CustomStringConvertible & Hashable, Value: Codable>: @unchecked Sendable {
    |                              `- note: consider making generic parameter 'Key' conform to the 'Sendable' protocol
 40 | 	private let queue = DispatchQueue(label: "Cache", attributes: .concurrent)
 41 | 	private var internalCache = [Key: Item<Value>]()
    :
126 |
127 | 				DispatchQueue.global().async {
128 | 					self.updated.send((key, newValue?.value))
    |                         `- warning: capture of 'key' with non-sendable type 'Key' in a `@Sendable` closure; this is an error in the Swift 6 language mode
129 | 				}
130 | 			}
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/PersistentCache.swift:128:30: warning: capture of 'newValue' with non-sendable type 'Item<Value>?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 15 | }
 16 |
 17 | public struct Item<Value: Codable>: Codable {
    |               `- note: consider making generic struct 'Item' conform to the 'Sendable' protocol
 18 | 	public var expiration: Date?
 19 | 	public var value: Value
    :
126 |
127 | 				DispatchQueue.global().async {
128 | 					self.updated.send((key, newValue?.value))
    |                              `- warning: capture of 'newValue' with non-sendable type 'Item<Value>?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
129 | 				}
130 | 			}
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/PersistentCache.swift:158:54: warning: capture of 'key' with non-sendable type 'Key' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 37 | }
 38 |
 39 | public class PersistentCache<Key: CustomStringConvertible & Hashable, Value: Codable>: @unchecked Sendable {
    |                              `- note: consider making generic parameter 'Key' conform to the 'Sendable' protocol
 40 | 	private let queue = DispatchQueue(label: "Cache", attributes: .concurrent)
 41 | 	private var internalCache = [Key: Item<Value>]()
    :
156 | 			} else {
157 | 				self.queue.async {
158 | 					if let data = self.storage?[self.stringKey(for: key)], let item = try? self.decoder.decode(Item<Value>.self, from: data) {
    |                                                      `- warning: capture of 'key' with non-sendable type 'Key' in a `@Sendable` closure; this is an error in the Swift 6 language mode
159 | 						queue.async {
160 | 							completion(item.value)
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/PersistentCache.swift:160:8: warning: capture of 'completion' with non-sendable type '(Value?) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
158 | 					if let data = self.storage?[self.stringKey(for: key)], let item = try? self.decoder.decode(Item<Value>.self, from: data) {
159 | 						queue.async {
160 | 							completion(item.value)
    |        |- warning: capture of 'completion' with non-sendable type '(Value?) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
    |        `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
161 | 						}
162 | 					} else {
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/PersistentCache.swift:164:23: warning: capture of 'fallback' with non-sendable type '(() -> Value)?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
162 | 					} else {
163 | 						queue.async {
164 | 							if let value = fallback?() {
    |                       |- warning: capture of 'fallback' with non-sendable type '(() -> Value)?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
    |                       `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
165 | 								self[key] = value
166 |
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/PersistentCache.swift:160:8: warning: capture of 'completion' with non-sendable type '(Value?) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
158 | 					if let data = self.storage?[self.stringKey(for: key)], let item = try? self.decoder.decode(Item<Value>.self, from: data) {
159 | 						queue.async {
160 | 							completion(item.value)
    |        |- warning: capture of 'completion' with non-sendable type '(Value?) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
    |        `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
161 | 						}
162 | 					} else {
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/PersistentCache.swift:160:19: warning: capture of 'item' with non-sendable type 'Item<Value>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 15 | }
 16 |
 17 | public struct Item<Value: Codable>: Codable {
    |               `- note: consider making generic struct 'Item' conform to the 'Sendable' protocol
 18 | 	public var expiration: Date?
 19 | 	public var value: Value
    :
158 | 					if let data = self.storage?[self.stringKey(for: key)], let item = try? self.decoder.decode(Item<Value>.self, from: data) {
159 | 						queue.async {
160 | 							completion(item.value)
    |                   `- warning: capture of 'item' with non-sendable type 'Item<Value>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
161 | 						}
162 | 					} else {
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/PersistentCache.swift:164:23: warning: capture of 'fallback' with non-sendable type '(() -> Value)?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
162 | 					} else {
163 | 						queue.async {
164 | 							if let value = fallback?() {
    |                       |- warning: capture of 'fallback' with non-sendable type '(() -> Value)?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
    |                       `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
165 | 								self[key] = value
166 |
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/PersistentCache.swift:165:14: warning: capture of 'key' with non-sendable type 'Key' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 37 | }
 38 |
 39 | public class PersistentCache<Key: CustomStringConvertible & Hashable, Value: Codable>: @unchecked Sendable {
    |                              `- note: consider making generic parameter 'Key' conform to the 'Sendable' protocol
 40 | 	private let queue = DispatchQueue(label: "Cache", attributes: .concurrent)
 41 | 	private var internalCache = [Key: Item<Value>]()
    :
163 | 						queue.async {
164 | 							if let value = fallback?() {
165 | 								self[key] = value
    |              `- warning: capture of 'key' with non-sendable type 'Key' in a `@Sendable` closure; this is an error in the Swift 6 language mode
166 |
167 | 								completion(value)
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/PersistentCache.swift:167:9: warning: capture of 'completion' with non-sendable type '(Value?) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
165 | 								self[key] = value
166 |
167 | 								completion(value)
    |         |- warning: capture of 'completion' with non-sendable type '(Value?) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
    |         `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
168 | 							} else {
169 | 								completion(nil)
[4/7] Compiling PersistentCacheKit MixedPersistentCache.swift
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/MixedPersistentCache.swift:45:24: warning: capture of 'completion' with non-sendable type '(() -> Void)?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 43 | 			self.internalCache = [:]
 44 |
 45 | 			if let completion = completion {
    |                        |- warning: capture of 'completion' with non-sendable type '(() -> Void)?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
    |                        `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
 46 | 				DispatchQueue.global().async {
 47 | 					completion()
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/MixedPersistentCache.swift:47:6: warning: capture of 'completion' with non-sendable type '() -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 45 | 			if let completion = completion {
 46 | 				DispatchQueue.global().async {
 47 | 					completion()
    |      |- warning: capture of 'completion' with non-sendable type '() -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
    |      `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
 48 | 				}
 49 | 			}
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/MixedPersistentCache.swift:103:44: warning: capture of 'key' with non-sendable type 'Key<Value>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  5 | #endif
  6 |
  7 | public struct Key<Value: Codable>: Hashable, RawRepresentable {
    |               `- note: consider making generic struct 'Key' conform to the 'Sendable' protocol
  8 | 	public var rawValue: String
  9 |
    :
101 |
102 | 			self.queue.async(flags: .barrier) {
103 | 				self.internalCache[self.stringKey(for: key)] = newValue
    |                                            `- warning: capture of 'key' with non-sendable type 'Key<Value>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
104 |
105 | 				self.storage?[self.stringKey(for: key)] = data
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/MixedPersistentCache.swift:103:52: warning: capture of 'newValue' with non-sendable type 'Item<Value>?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
101 |
102 | 			self.queue.async(flags: .barrier) {
103 | 				self.internalCache[self.stringKey(for: key)] = newValue
    |                                                    `- warning: capture of 'newValue' with non-sendable type 'Item<Value>?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
104 |
105 | 				self.storage?[self.stringKey(for: key)] = data
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/PersistentCache.swift:17:15: note: consider making generic struct 'Item' conform to the 'Sendable' protocol
 15 | }
 16 |
 17 | public struct Item<Value: Codable>: Codable {
    |               `- note: consider making generic struct 'Item' conform to the 'Sendable' protocol
 18 | 	public var expiration: Date?
 19 | 	public var value: Value
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/MixedPersistentCache.swift:108:25: warning: capture of 'key' with non-sendable type 'Key<Value>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  5 | #endif
  6 |
  7 | public struct Key<Value: Codable>: Hashable, RawRepresentable {
    |               `- note: consider making generic struct 'Key' conform to the 'Sendable' protocol
  8 | 	public var rawValue: String
  9 |
    :
106 |
107 | 				DispatchQueue.global().async {
108 | 					self.updated.send((key.rawValue, newValue?.value))
    |                         `- warning: capture of 'key' with non-sendable type 'Key<Value>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
109 | 				}
110 | 			}
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/MixedPersistentCache.swift:108:39: warning: capture of 'newValue' with non-sendable type 'Item<Value>?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
106 |
107 | 				DispatchQueue.global().async {
108 | 					self.updated.send((key.rawValue, newValue?.value))
    |                                       `- warning: capture of 'newValue' with non-sendable type 'Item<Value>?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
109 | 				}
110 | 			}
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/PersistentCache.swift:17:15: note: consider making generic struct 'Item' conform to the 'Sendable' protocol
 15 | }
 16 |
 17 | public struct Item<Value: Codable>: Codable {
    |               `- note: consider making generic struct 'Item' conform to the 'Sendable' protocol
 18 | 	public var expiration: Date?
 19 | 	public var value: Value
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/MixedPersistentCache.swift:138:54: warning: capture of 'key' with non-sendable type 'Key<Value>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  5 | #endif
  6 |
  7 | public struct Key<Value: Codable>: Hashable, RawRepresentable {
    |               `- note: consider making generic struct 'Key' conform to the 'Sendable' protocol
  8 | 	public var rawValue: String
  9 |
    :
136 | 			} else {
137 | 				self.queue.async {
138 | 					if let data = self.storage?[self.stringKey(for: key)], let item = try? self.decoder.decode(Item<Value>.self, from: data) {
    |                                                      `- warning: capture of 'key' with non-sendable type 'Key<Value>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
139 | 						queue.async {
140 | 							completion(item.value)
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/MixedPersistentCache.swift:140:8: warning: capture of 'completion' with non-sendable type '(Value?) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
138 | 					if let data = self.storage?[self.stringKey(for: key)], let item = try? self.decoder.decode(Item<Value>.self, from: data) {
139 | 						queue.async {
140 | 							completion(item.value)
    |        |- warning: capture of 'completion' with non-sendable type '(Value?) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
    |        `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
141 | 						}
142 | 					} else {
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/MixedPersistentCache.swift:144:23: warning: capture of 'fallback' with non-sendable type '(() -> Value)?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
142 | 					} else {
143 | 						queue.async {
144 | 							if let value = fallback?() {
    |                       |- warning: capture of 'fallback' with non-sendable type '(() -> Value)?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
    |                       `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
145 | 								self[key] = value
146 |
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/MixedPersistentCache.swift:140:8: warning: capture of 'completion' with non-sendable type '(Value?) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
138 | 					if let data = self.storage?[self.stringKey(for: key)], let item = try? self.decoder.decode(Item<Value>.self, from: data) {
139 | 						queue.async {
140 | 							completion(item.value)
    |        |- warning: capture of 'completion' with non-sendable type '(Value?) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
    |        `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
141 | 						}
142 | 					} else {
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/MixedPersistentCache.swift:140:19: warning: capture of 'item' with non-sendable type 'Item<Value>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
138 | 					if let data = self.storage?[self.stringKey(for: key)], let item = try? self.decoder.decode(Item<Value>.self, from: data) {
139 | 						queue.async {
140 | 							completion(item.value)
    |                   `- warning: capture of 'item' with non-sendable type 'Item<Value>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
141 | 						}
142 | 					} else {
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/PersistentCache.swift:17:15: note: consider making generic struct 'Item' conform to the 'Sendable' protocol
 15 | }
 16 |
 17 | public struct Item<Value: Codable>: Codable {
    |               `- note: consider making generic struct 'Item' conform to the 'Sendable' protocol
 18 | 	public var expiration: Date?
 19 | 	public var value: Value
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/MixedPersistentCache.swift:144:23: warning: capture of 'fallback' with non-sendable type '(() -> Value)?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
142 | 					} else {
143 | 						queue.async {
144 | 							if let value = fallback?() {
    |                       |- warning: capture of 'fallback' with non-sendable type '(() -> Value)?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
    |                       `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
145 | 								self[key] = value
146 |
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/MixedPersistentCache.swift:145:14: warning: capture of 'key' with non-sendable type 'Key<Value>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  5 | #endif
  6 |
  7 | public struct Key<Value: Codable>: Hashable, RawRepresentable {
    |               `- note: consider making generic struct 'Key' conform to the 'Sendable' protocol
  8 | 	public var rawValue: String
  9 |
    :
143 | 						queue.async {
144 | 							if let value = fallback?() {
145 | 								self[key] = value
    |              `- warning: capture of 'key' with non-sendable type 'Key<Value>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
146 |
147 | 								completion(value)
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/MixedPersistentCache.swift:147:9: warning: capture of 'completion' with non-sendable type '(Value?) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
145 | 								self[key] = value
146 |
147 | 								completion(value)
    |         |- warning: capture of 'completion' with non-sendable type '(Value?) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
    |         `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
148 | 							} else {
149 | 								completion(nil)
[5/7] Compiling PersistentCacheKit SQLiteCacheStorage.swift
[6/7] Compiling PersistentCacheKit SQLite.swift
[7/7] Emitting module PersistentCacheKit
Build complete! (7.11s)
Build complete.
{
  "dependencies" : [
  ],
  "manifest_display_name" : "PersistentCacheKit",
  "name" : "PersistentCacheKit",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "10.15"
    },
    {
      "name" : "ios",
      "version" : "13.0"
    }
  ],
  "products" : [
    {
      "name" : "PersistentCacheKit",
      "targets" : [
        "PersistentCacheKit"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "PersistentCacheKitTests",
      "module_type" : "SwiftTarget",
      "name" : "PersistentCacheKitTests",
      "path" : "Tests/PersistentCacheKitTests",
      "sources" : [
        "PersistentCacheKitTests.swift"
      ],
      "target_dependencies" : [
        "PersistentCacheKit"
      ],
      "type" : "test"
    },
    {
      "c99name" : "PersistentCacheKit",
      "module_type" : "SwiftTarget",
      "name" : "PersistentCacheKit",
      "path" : "Sources/PersistentCacheKit",
      "product_memberships" : [
        "PersistentCacheKit"
      ],
      "sources" : [
        "MixedPersistentCache.swift",
        "PersistentCache.swift",
        "SQLite.swift",
        "SQLiteCacheStorage.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.7"
}
Done.