Build Information
Successful build of PersistentCacheKit, reference 0.6.0 (cb3e35
), with Swift 6.2 (beta) for macOS (SPM) on 18 Jun 2025 08:36:24 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/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
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.2
Building package at path: $PWD
https://github.com/davbeck/PersistentCacheKit.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-26.0.0-Beta.app xcrun swift build --arch arm64
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version-1EA4D86E10B52AF.txt
[3/7] Compiling PersistentCacheKit SQLiteCacheStorage.swift
[4/7] Compiling PersistentCacheKit PersistentCache.swift
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/PersistentCache.swift:63:9: warning: capture of non-sendable type 'Key.Type' in an isolated closure
61 | public func clearMemoryCache(completion: (() -> Void)? = nil) {
62 | self.queue.async(flags: .barrier) {
63 | self.internalCache = [:]
| `- warning: capture of non-sendable type 'Key.Type' in an isolated closure
64 |
65 | if let completion = completion {
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/PersistentCache.swift:63:9: warning: capture of non-sendable type 'Value.Type' in an isolated closure
61 | public func clearMemoryCache(completion: (() -> Void)? = nil) {
62 | self.queue.async(flags: .barrier) {
63 | self.internalCache = [:]
| `- warning: capture of non-sendable type 'Value.Type' in an isolated closure
64 |
65 | if let completion = completion {
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/PersistentCache.swift:61:14: warning: capture of non-sendable type 'Key.Type' in an isolated closure
59 | }
60 |
61 | public func clearMemoryCache(completion: (() -> Void)? = nil) {
| `- warning: capture of non-sendable type 'Key.Type' in an isolated closure
62 | self.queue.async(flags: .barrier) {
63 | self.internalCache = [:]
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/PersistentCache.swift:61:14: warning: capture of non-sendable type 'Value.Type' in an isolated closure
59 | }
60 |
61 | public func clearMemoryCache(completion: (() -> Void)? = nil) {
| `- warning: capture of non-sendable type 'Value.Type' in an isolated closure
62 | self.queue.async(flags: .barrier) {
63 | self.internalCache = [:]
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/PersistentCache.swift:123:23: warning: capture of non-sendable type 'Value.Type' in an isolated closure
121 |
122 | self.queue.async(flags: .barrier) {
123 | self.internalCache[key] = newValue
| `- warning: capture of non-sendable type 'Value.Type' in an isolated closure
124 |
125 | self.storage?[self.stringKey(for: key)] = data
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/PersistentCache.swift:123:5: warning: capture of non-sendable type 'Key.Type' in an isolated closure
121 |
122 | self.queue.async(flags: .barrier) {
123 | self.internalCache[key] = newValue
| `- warning: capture of non-sendable type 'Key.Type' in an isolated closure
124 |
125 | self.storage?[self.stringKey(for: key)] = data
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/PersistentCache.swift:119:3: warning: capture of non-sendable type 'Key.Type' in an isolated closure
117 | }
118 | }
119 | set {
| `- warning: capture of non-sendable type 'Key.Type' in an isolated closure
120 | let data = try? self.encoder.encode(newValue)
121 |
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/PersistentCache.swift:119:3: warning: capture of non-sendable type 'Value.Type' in an isolated closure
117 | }
118 | }
119 | set {
| `- warning: capture of non-sendable type 'Value.Type' in an isolated closure
120 | let data = try? self.encoder.encode(newValue)
121 |
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/PersistentCache.swift:128:19: warning: capture of non-sendable type 'Key.Type' in an isolated closure
126 |
127 | DispatchQueue.global().async {
128 | self.updated.send((key, newValue?.value))
| `- warning: capture of non-sendable type 'Key.Type' in an isolated closure
129 | }
130 | }
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/PersistentCache.swift:128:19: warning: capture of non-sendable type 'Value.Type' in an isolated closure
126 |
127 | DispatchQueue.global().async {
128 | self.updated.send((key, newValue?.value))
| `- warning: capture of non-sendable type 'Value.Type' in an isolated closure
129 | }
130 | }
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/PersistentCache.swift:119:3: warning: capture of non-sendable type 'Key.Type' in an isolated closure
117 | }
118 | }
119 | set {
| `- warning: capture of non-sendable type 'Key.Type' in an isolated closure
120 | let data = try? self.encoder.encode(newValue)
121 |
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/PersistentCache.swift:119:3: warning: capture of non-sendable type 'Value.Type' in an isolated closure
117 | }
118 | }
119 | set {
| `- warning: capture of non-sendable type 'Value.Type' in an isolated closure
120 | let data = try? self.encoder.encode(newValue)
121 |
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/PersistentCache.swift:158:20: warning: capture of non-sendable type 'Key.Type' in an isolated closure
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 non-sendable type 'Key.Type' in an isolated closure
159 | queue.async {
160 | completion(item.value)
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/PersistentCache.swift:158:20: warning: capture of non-sendable type 'Value.Type' in an isolated closure
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 non-sendable type 'Value.Type' in an isolated closure
159 | queue.async {
160 | completion(item.value)
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/PersistentCache.swift:152:15: warning: capture of non-sendable type 'Key.Type' in an isolated closure
150 | }
151 |
152 | private func _fetch(_ key: Key, queue: DispatchQueue = .main, fallback: (() -> Value)?, completion: @escaping (Value?) -> Void) {
| `- warning: capture of non-sendable type 'Key.Type' in an isolated closure
153 | self.queue.sync {
154 | if let item = self.internalCache[key], item.isValid {
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/PersistentCache.swift:152:15: warning: capture of non-sendable type 'Value.Type' in an isolated closure
150 | }
151 |
152 | private func _fetch(_ key: Key, queue: DispatchQueue = .main, fallback: (() -> Value)?, completion: @escaping (Value?) -> Void) {
| `- warning: capture of non-sendable type 'Value.Type' in an isolated closure
153 | self.queue.sync {
154 | if let item = self.internalCache[key], item.isValid {
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/PersistentCache.swift:160:8: warning: capture of non-sendable type 'Value.Type' in an isolated closure
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 non-sendable type 'Value.Type' in an isolated closure
161 | }
162 | } else {
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/PersistentCache.swift:152:90: warning: capture of non-sendable type 'Value.Type' in an isolated closure
150 | }
151 |
152 | private func _fetch(_ key: Key, queue: DispatchQueue = .main, fallback: (() -> Value)?, completion: @escaping (Value?) -> Void) {
| `- warning: capture of non-sendable type 'Value.Type' in an isolated closure
153 | self.queue.sync {
154 | if let item = self.internalCache[key], item.isValid {
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/PersistentCache.swift:164:31: warning: capture of non-sendable type 'Value.Type' in an isolated closure
162 | } else {
163 | queue.async {
164 | if let value = fallback?() {
| `- warning: capture of non-sendable type 'Value.Type' in an isolated closure
165 | self[key] = value
166 |
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/PersistentCache.swift:152:64: warning: capture of non-sendable type 'Value.Type' in an isolated closure
150 | }
151 |
152 | private func _fetch(_ key: Key, queue: DispatchQueue = .main, fallback: (() -> Value)?, completion: @escaping (Value?) -> Void) {
| `- warning: capture of non-sendable type 'Value.Type' in an isolated closure
153 | self.queue.sync {
154 | if let item = self.internalCache[key], item.isValid {
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/PersistentCache.swift:165:9: warning: capture of non-sendable type 'Key.Type' in an isolated closure
163 | queue.async {
164 | if let value = fallback?() {
165 | self[key] = value
| `- warning: capture of non-sendable type 'Key.Type' in an isolated closure
166 |
167 | completion(value)
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/PersistentCache.swift:152:15: warning: capture of non-sendable type 'Key.Type' in an isolated closure
150 | }
151 |
152 | private func _fetch(_ key: Key, queue: DispatchQueue = .main, fallback: (() -> Value)?, completion: @escaping (Value?) -> Void) {
| `- warning: capture of non-sendable type 'Key.Type' in an isolated closure
153 | self.queue.sync {
154 | if let item = self.internalCache[key], item.isValid {
[5/7] Emitting module PersistentCacheKit
[6/7] Compiling PersistentCacheKit SQLite.swift
[7/7] Compiling PersistentCacheKit MixedPersistentCache.swift
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/MixedPersistentCache.swift:103:29: warning: capture of non-sendable type 'Value.Type' in an isolated closure
101 |
102 | self.queue.async(flags: .barrier) {
103 | self.internalCache[self.stringKey(for: key)] = newValue
| `- warning: capture of non-sendable type 'Value.Type' in an isolated closure
104 |
105 | self.storage?[self.stringKey(for: key)] = data
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/MixedPersistentCache.swift:87:31: warning: capture of non-sendable type 'Value.Type' in an isolated closure
85 | }
86 |
87 | public subscript<Value>(item key: Key<Value>) -> Item<Value>? {
| `- warning: capture of non-sendable type 'Value.Type' in an isolated closure
88 | get {
89 | self.queue.sync {
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/MixedPersistentCache.swift:108:25: warning: capture of non-sendable type 'Value.Type' in an isolated closure
106 |
107 | DispatchQueue.global().async {
108 | self.updated.send((key.rawValue, newValue?.value))
| `- warning: capture of non-sendable type 'Value.Type' in an isolated closure
109 | }
110 | }
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/MixedPersistentCache.swift:87:31: warning: capture of non-sendable type 'Value.Type' in an isolated closure
85 | }
86 |
87 | public subscript<Value>(item key: Key<Value>) -> Item<Value>? {
| `- warning: capture of non-sendable type 'Value.Type' in an isolated closure
88 | get {
89 | self.queue.sync {
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/MixedPersistentCache.swift:138:39: warning: capture of non-sendable type 'Value.Type' in an isolated closure
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 non-sendable type 'Value.Type' in an isolated closure
139 | queue.async {
140 | completion(item.value)
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/MixedPersistentCache.swift:132:31: warning: capture of non-sendable type 'Value.Type' in an isolated closure
130 | }
131 |
132 | private func _fetch<Value>(_ key: Key<Value>, queue: DispatchQueue = .main, fallback: (() -> Value)?, completion: @escaping (Value?) -> Void) {
| `- warning: capture of non-sendable type 'Value.Type' in an isolated closure
133 | self.queue.sync {
134 | if let item = self.internalCache[stringKey(for: key)] as? Item<Value>, item.isValid {
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/MixedPersistentCache.swift:140:8: warning: capture of non-sendable type 'Value.Type' in an isolated closure
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 non-sendable type 'Value.Type' in an isolated closure
141 | }
142 | } else {
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/MixedPersistentCache.swift:132:104: warning: capture of non-sendable type 'Value.Type' in an isolated closure
130 | }
131 |
132 | private func _fetch<Value>(_ key: Key<Value>, queue: DispatchQueue = .main, fallback: (() -> Value)?, completion: @escaping (Value?) -> Void) {
| `- warning: capture of non-sendable type 'Value.Type' in an isolated closure
133 | self.queue.sync {
134 | if let item = self.internalCache[stringKey(for: key)] as? Item<Value>, item.isValid {
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/MixedPersistentCache.swift:144:31: warning: capture of non-sendable type 'Value.Type' in an isolated closure
142 | } else {
143 | queue.async {
144 | if let value = fallback?() {
| `- warning: capture of non-sendable type 'Value.Type' in an isolated closure
145 | self[key] = value
146 |
/Users/admin/builder/spi-builder-workspace/Sources/PersistentCacheKit/MixedPersistentCache.swift:132:78: warning: capture of non-sendable type 'Value.Type' in an isolated closure
130 | }
131 |
132 | private func _fetch<Value>(_ key: Key<Value>, queue: DispatchQueue = .main, fallback: (() -> Value)?, completion: @escaping (Value?) -> Void) {
| `- warning: capture of non-sendable type 'Value.Type' in an isolated closure
133 | self.queue.sync {
134 | if let item = self.internalCache[stringKey(for: key)] as? Item<Value>, item.isValid {
Build complete! (3.64s)
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.