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 Cache, reference master (bde695), with Swift 6.1 for macOS (SPM) on 29 Apr 2025 07:30:59 UTC.

Swift 6 data race errors: 0

Build Command

env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures

Build Log

========================================
RunAll
========================================
Builder version: 4.61.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/hyperoslo/Cache.git
Reference: master
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/hyperoslo/Cache
 * branch            master     -> FETCH_HEAD
 * [new branch]      master     -> origin/master
HEAD is now at bde695c Merge pull request #340 from gibachan/fix-unit-test
Cloned https://github.com/hyperoslo/Cache.git
Revision (git rev-parse @):
bde695cef10efe1f5541e4d13763ae833f103db3
SUCCESS checkout https://github.com/hyperoslo/Cache.git at master
========================================
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": "cache",
      "name": "Cache",
      "url": "https://github.com/hyperoslo/Cache.git",
      "version": "unspecified",
      "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/Cache",
      "dependencies": [
      ]
    }
  ]
}
Fetching https://github.com/hyperoslo/Cache.git
[1/6185] Fetching cache
Fetched https://github.com/hyperoslo/Cache.git from cache (6.31s)
Creating working copy for https://github.com/hyperoslo/Cache.git
Working copy of https://github.com/hyperoslo/Cache.git resolved at master (bde695c)
warning: '.resolve-product-dependencies': dependency 'cache' is not used by any target
Found 0 product dependencies
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.1
Building package at path:  $PWD
https://github.com/hyperoslo/Cache.git
https://github.com/hyperoslo/Cache.git
{
  "dependencies" : [
  ],
  "manifest_display_name" : "Cache",
  "name" : "Cache",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
  ],
  "products" : [
    {
      "name" : "Cache",
      "targets" : [
        "Cache"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "swift_languages_versions" : [
    "5"
  ],
  "targets" : [
    {
      "c99name" : "CacheTests",
      "module_type" : "SwiftTarget",
      "name" : "CacheTests",
      "path" : "Tests",
      "sources" : [
        "Mac/Helpers/NSImage+ExtensionsTests.swift",
        "Mac/Helpers/TestHelper+OSX.swift",
        "Shared/TestCase+Extensions.swift",
        "Shared/TestHelper.swift",
        "Shared/User.swift",
        "iOS/Helpers/TestHelper+iOS.swift",
        "iOS/Helpers/UIImage+ExtensionsTests.swift",
        "iOS/Tests/Extensions/Date+ExtensionsTests.swift",
        "iOS/Tests/Extensions/Hasher+constantAccrossExecutions+Tests.swift",
        "iOS/Tests/Library/ExpiryTests.swift",
        "iOS/Tests/Library/ImageWrapperTests.swift",
        "iOS/Tests/Library/JSONWrapperTests.swift",
        "iOS/Tests/Library/MD5Tests.swift",
        "iOS/Tests/Library/MemoryCapsuleTests.swift",
        "iOS/Tests/Library/ObjectConverterTests.swift",
        "iOS/Tests/Library/ObservationTokenTests.swift",
        "iOS/Tests/Library/TypeWrapperTests.swift",
        "iOS/Tests/Storage/AsyncStorageTests.swift",
        "iOS/Tests/Storage/DiskStorageTests.swift",
        "iOS/Tests/Storage/HybridStorageTests.swift",
        "iOS/Tests/Storage/MemoryStorageTests.swift",
        "iOS/Tests/Storage/StorageSupportTests.swift",
        "iOS/Tests/Storage/StorageTests.swift",
        "iOS/Tests/Storage/SyncStorageTests.swift"
      ],
      "target_dependencies" : [
        "Cache"
      ],
      "type" : "test"
    },
    {
      "c99name" : "Cache",
      "module_type" : "SwiftTarget",
      "name" : "Cache",
      "path" : "Source",
      "product_memberships" : [
        "Cache"
      ],
      "resources" : [
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Source/PrivacyInfo.xcprivacy",
          "rule" : {
            "copy" : {
            }
          }
        }
      ],
      "sources" : [
        "Mac/NSImage+Extensions.swift",
        "Shared/Configuration/DiskConfig.swift",
        "Shared/Configuration/MemoryConfig.swift",
        "Shared/Extensions/Date+Extensions.swift",
        "Shared/Extensions/FileManager+Extensions.swift",
        "Shared/Extensions/Hasher+constantAccrossExecutions.swift",
        "Shared/Extensions/JSONDecoder+Extensions.swift",
        "Shared/Extensions/URL+Extensions.swift",
        "Shared/Library/DataSerializer.swift",
        "Shared/Library/Entry.swift",
        "Shared/Library/ExpirationMode.swift",
        "Shared/Library/Expiry.swift",
        "Shared/Library/ImageWrapper.swift",
        "Shared/Library/JSONArrayWrapper.swift",
        "Shared/Library/JSONDictionaryWrapper.swift",
        "Shared/Library/MD5.swift",
        "Shared/Library/MemoryCapsule.swift",
        "Shared/Library/ObservationToken.swift",
        "Shared/Library/Optional+Extension.swift",
        "Shared/Library/StorageError.swift",
        "Shared/Library/Transformer.swift",
        "Shared/Library/TransformerFactory.swift",
        "Shared/Library/TypeWrapper.swift",
        "Shared/Library/Types.swift",
        "Shared/Storage/AsyncStorage.swift",
        "Shared/Storage/DiskStorage.swift",
        "Shared/Storage/HybridStorage.swift",
        "Shared/Storage/KeyObservationRegistry.swift",
        "Shared/Storage/MemoryStorage.swift",
        "Shared/Storage/Storage+Transform.swift",
        "Shared/Storage/Storage.swift",
        "Shared/Storage/StorageAware.swift",
        "Shared/Storage/StorageObservationRegistry.swift",
        "Shared/Storage/SyncStorage.swift",
        "iOS/UIImage+Extensions.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.5"
}
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures
Building for debugging...
[0/3] Write sources
[1/3] Copying PrivacyInfo.xcprivacy
[2/3] Write swift-version-2F0A5646E1D333AE.txt
[4/37] Emitting module Cache
[5/40] Compiling Cache ImageWrapper.swift
[6/40] Compiling Cache JSONArrayWrapper.swift
[7/40] Compiling Cache JSONDictionaryWrapper.swift
[8/40] Compiling Cache MD5.swift
[9/40] Compiling Cache SyncStorage.swift
[10/40] Compiling Cache UIImage+Extensions.swift
[11/40] Compiling Cache resource_bundle_accessor.swift
[12/40] Compiling Cache Storage.swift
[13/40] Compiling Cache StorageAware.swift
[14/40] Compiling Cache StorageObservationRegistry.swift
[15/40] Compiling Cache MemoryCapsule.swift
[16/40] Compiling Cache ObservationToken.swift
[17/40] Compiling Cache Optional+Extension.swift
[18/40] Compiling Cache StorageError.swift
[19/40] Compiling Cache DataSerializer.swift
[20/40] Compiling Cache Entry.swift
[21/40] Compiling Cache ExpirationMode.swift
[22/40] Compiling Cache Expiry.swift
[23/40] Compiling Cache FileManager+Extensions.swift
[24/40] Compiling Cache Hasher+constantAccrossExecutions.swift
[25/40] Compiling Cache JSONDecoder+Extensions.swift
[26/40] Compiling Cache URL+Extensions.swift
[27/40] Compiling Cache KeyObservationRegistry.swift
[28/40] Compiling Cache MemoryStorage.swift
[29/40] Compiling Cache Storage+Transform.swift
[30/40] Compiling Cache AsyncStorage.swift
/Users/admin/builder/spi-builder-workspace/Source/Shared/Storage/AsyncStorage.swift:19:26: warning: capture of 'self' with non-sendable type 'AsyncStorage<Key, Value>?' in a '@Sendable' closure
  4 | /// Manipulate storage in a "all async" manner.
  5 | /// The completion closure will be called when operation completes.
  6 | public class AsyncStorage<Key: Hashable, Value> {
    |              `- note: generic class 'AsyncStorage' does not conform to the 'Sendable' protocol
  7 |   public let innerStorage: HybridStorage<Key, Value>
  8 |   public let serialQueue: DispatchQueue
    :
 17 |   public func entry(forKey key: Key, completion: @escaping (Result<Entry<Value>, Error>) -> Void) {
 18 |     serialQueue.async { [weak self] in
 19 |       guard let `self` = self else {
    |                          `- warning: capture of 'self' with non-sendable type 'AsyncStorage<Key, Value>?' in a '@Sendable' closure
 20 |         completion(.failure(StorageError.deallocated))
 21 |         return
/Users/admin/builder/spi-builder-workspace/Source/Shared/Storage/AsyncStorage.swift:20:9: warning: capture of 'completion' with non-sendable type '(Result<Entry<Value>, any Error>) -> Void' in a '@Sendable' closure
 18 |     serialQueue.async { [weak self] in
 19 |       guard let `self` = self else {
 20 |         completion(.failure(StorageError.deallocated))
    |         |- warning: capture of 'completion' with non-sendable type '(Result<Entry<Value>, any Error>) -> Void' in a '@Sendable' closure
    |         `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
 21 |         return
 22 |       }
/Users/admin/builder/spi-builder-workspace/Source/Shared/Storage/AsyncStorage.swift:25:59: warning: capture of 'key' with non-sendable type 'Key' in a '@Sendable' closure
  4 | /// Manipulate storage in a "all async" manner.
  5 | /// The completion closure will be called when operation completes.
  6 | public class AsyncStorage<Key: Hashable, Value> {
    |                           `- note: consider making generic parameter 'Key' conform to the 'Sendable' protocol
  7 |   public let innerStorage: HybridStorage<Key, Value>
  8 |   public let serialQueue: DispatchQueue
    :
 23 |
 24 |       do {
 25 |         let anEntry = try self.innerStorage.entry(forKey: key)
    |                                                           `- warning: capture of 'key' with non-sendable type 'Key' in a '@Sendable' closure
 26 |         completion(.success(anEntry))
 27 |       } catch {
/Users/admin/builder/spi-builder-workspace/Source/Shared/Storage/AsyncStorage.swift:35:26: warning: capture of 'self' with non-sendable type 'AsyncStorage<Key, Value>?' in a '@Sendable' closure
  4 | /// Manipulate storage in a "all async" manner.
  5 | /// The completion closure will be called when operation completes.
  6 | public class AsyncStorage<Key: Hashable, Value> {
    |              `- note: generic class 'AsyncStorage' does not conform to the 'Sendable' protocol
  7 |   public let innerStorage: HybridStorage<Key, Value>
  8 |   public let serialQueue: DispatchQueue
    :
 33 |   public func removeObject(forKey key: Key, completion: @escaping (Result<(), Error>) -> Void) {
 34 |     serialQueue.async { [weak self] in
 35 |       guard let `self` = self else {
    |                          `- warning: capture of 'self' with non-sendable type 'AsyncStorage<Key, Value>?' in a '@Sendable' closure
 36 |         completion(.failure(StorageError.deallocated))
 37 |         return
/Users/admin/builder/spi-builder-workspace/Source/Shared/Storage/AsyncStorage.swift:36:9: warning: capture of 'completion' with non-sendable type '(Result<(), any Error>) -> Void' in a '@Sendable' closure
 34 |     serialQueue.async { [weak self] in
 35 |       guard let `self` = self else {
 36 |         completion(.failure(StorageError.deallocated))
    |         |- warning: capture of 'completion' with non-sendable type '(Result<(), any Error>) -> Void' in a '@Sendable' closure
    |         `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
 37 |         return
 38 |       }
/Users/admin/builder/spi-builder-workspace/Source/Shared/Storage/AsyncStorage.swift:41:52: warning: capture of 'key' with non-sendable type 'Key' in a '@Sendable' closure
  4 | /// Manipulate storage in a "all async" manner.
  5 | /// The completion closure will be called when operation completes.
  6 | public class AsyncStorage<Key: Hashable, Value> {
    |                           `- note: consider making generic parameter 'Key' conform to the 'Sendable' protocol
  7 |   public let innerStorage: HybridStorage<Key, Value>
  8 |   public let serialQueue: DispatchQueue
    :
 39 |
 40 |       do {
 41 |         try self.innerStorage.removeObject(forKey: key)
    |                                                    `- warning: capture of 'key' with non-sendable type 'Key' in a '@Sendable' closure
 42 |         completion(.success(()))
 43 |       } catch {
/Users/admin/builder/spi-builder-workspace/Source/Shared/Storage/AsyncStorage.swift:55:26: warning: capture of 'self' with non-sendable type 'AsyncStorage<Key, Value>?' in a '@Sendable' closure
  4 | /// Manipulate storage in a "all async" manner.
  5 | /// The completion closure will be called when operation completes.
  6 | public class AsyncStorage<Key: Hashable, Value> {
    |              `- note: generic class 'AsyncStorage' does not conform to the 'Sendable' protocol
  7 |   public let innerStorage: HybridStorage<Key, Value>
  8 |   public let serialQueue: DispatchQueue
    :
 53 |     completion: @escaping (Result<(), Error>) -> Void) {
 54 |     serialQueue.async { [weak self] in
 55 |       guard let `self` = self else {
    |                          `- warning: capture of 'self' with non-sendable type 'AsyncStorage<Key, Value>?' in a '@Sendable' closure
 56 |         completion(.failure(StorageError.deallocated))
 57 |         return
/Users/admin/builder/spi-builder-workspace/Source/Shared/Storage/AsyncStorage.swift:56:9: warning: capture of 'completion' with non-sendable type '(Result<(), any Error>) -> Void' in a '@Sendable' closure
 54 |     serialQueue.async { [weak self] in
 55 |       guard let `self` = self else {
 56 |         completion(.failure(StorageError.deallocated))
    |         |- warning: capture of 'completion' with non-sendable type '(Result<(), any Error>) -> Void' in a '@Sendable' closure
    |         `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
 57 |         return
 58 |       }
/Users/admin/builder/spi-builder-workspace/Source/Shared/Storage/AsyncStorage.swift:61:41: warning: capture of 'object' with non-sendable type 'Value' in a '@Sendable' closure
  4 | /// Manipulate storage in a "all async" manner.
  5 | /// The completion closure will be called when operation completes.
  6 | public class AsyncStorage<Key: Hashable, Value> {
    |                                          `- note: consider making generic parameter 'Value' conform to the 'Sendable' protocol
  7 |   public let innerStorage: HybridStorage<Key, Value>
  8 |   public let serialQueue: DispatchQueue
    :
 59 |
 60 |       do {
 61 |         try self.innerStorage.setObject(object, forKey: key, expiry: expiry)
    |                                         `- warning: capture of 'object' with non-sendable type 'Value' in a '@Sendable' closure
 62 |         completion(.success(()))
 63 |       } catch {
/Users/admin/builder/spi-builder-workspace/Source/Shared/Storage/AsyncStorage.swift:61:57: warning: capture of 'key' with non-sendable type 'Key' in a '@Sendable' closure
  4 | /// Manipulate storage in a "all async" manner.
  5 | /// The completion closure will be called when operation completes.
  6 | public class AsyncStorage<Key: Hashable, Value> {
    |                           `- note: consider making generic parameter 'Key' conform to the 'Sendable' protocol
  7 |   public let innerStorage: HybridStorage<Key, Value>
  8 |   public let serialQueue: DispatchQueue
    :
 59 |
 60 |       do {
 61 |         try self.innerStorage.setObject(object, forKey: key, expiry: expiry)
    |                                                         `- warning: capture of 'key' with non-sendable type 'Key' in a '@Sendable' closure
 62 |         completion(.success(()))
 63 |       } catch {
/Users/admin/builder/spi-builder-workspace/Source/Shared/Storage/AsyncStorage.swift:61:70: warning: capture of 'expiry' with non-sendable type 'Expiry?' in a '@Sendable' closure
 59 |
 60 |       do {
 61 |         try self.innerStorage.setObject(object, forKey: key, expiry: expiry)
    |                                                                      `- warning: capture of 'expiry' with non-sendable type 'Expiry?' in a '@Sendable' closure
 62 |         completion(.success(()))
 63 |       } catch {
/Users/admin/builder/spi-builder-workspace/Source/Shared/Library/Expiry.swift:6:13: note: consider making enum 'Expiry' conform to the 'Sendable' protocol
 4 |  Helper enum to set the expiration date
 5 |  */
 6 | public enum Expiry {
   |             `- note: consider making enum 'Expiry' conform to the 'Sendable' protocol
 7 |   /// Object will be expired in the nearest future
 8 |   case never
/Users/admin/builder/spi-builder-workspace/Source/Shared/Storage/AsyncStorage.swift:71:26: warning: capture of 'self' with non-sendable type 'AsyncStorage<Key, Value>?' in a '@Sendable' closure
  4 | /// Manipulate storage in a "all async" manner.
  5 | /// The completion closure will be called when operation completes.
  6 | public class AsyncStorage<Key: Hashable, Value> {
    |              `- note: generic class 'AsyncStorage' does not conform to the 'Sendable' protocol
  7 |   public let innerStorage: HybridStorage<Key, Value>
  8 |   public let serialQueue: DispatchQueue
    :
 69 |   public func removeAll(completion: @escaping (Result<(), Error>) -> Void) {
 70 |     serialQueue.async { [weak self] in
 71 |       guard let `self` = self else {
    |                          `- warning: capture of 'self' with non-sendable type 'AsyncStorage<Key, Value>?' in a '@Sendable' closure
 72 |         completion(.failure(StorageError.deallocated))
 73 |         return
/Users/admin/builder/spi-builder-workspace/Source/Shared/Storage/AsyncStorage.swift:72:9: warning: capture of 'completion' with non-sendable type '(Result<(), any Error>) -> Void' in a '@Sendable' closure
 70 |     serialQueue.async { [weak self] in
 71 |       guard let `self` = self else {
 72 |         completion(.failure(StorageError.deallocated))
    |         |- warning: capture of 'completion' with non-sendable type '(Result<(), any Error>) -> Void' in a '@Sendable' closure
    |         `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
 73 |         return
 74 |       }
/Users/admin/builder/spi-builder-workspace/Source/Shared/Storage/AsyncStorage.swift:87:26: warning: capture of 'self' with non-sendable type 'AsyncStorage<Key, Value>?' in a '@Sendable' closure
  4 | /// Manipulate storage in a "all async" manner.
  5 | /// The completion closure will be called when operation completes.
  6 | public class AsyncStorage<Key: Hashable, Value> {
    |              `- note: generic class 'AsyncStorage' does not conform to the 'Sendable' protocol
  7 |   public let innerStorage: HybridStorage<Key, Value>
  8 |   public let serialQueue: DispatchQueue
    :
 85 |   public func removeExpiredObjects(completion: @escaping (Result<(), Error>) -> Void) {
 86 |     serialQueue.async { [weak self] in
 87 |       guard let `self` = self else {
    |                          `- warning: capture of 'self' with non-sendable type 'AsyncStorage<Key, Value>?' in a '@Sendable' closure
 88 |         completion(.failure(StorageError.deallocated))
 89 |         return
/Users/admin/builder/spi-builder-workspace/Source/Shared/Storage/AsyncStorage.swift:88:9: warning: capture of 'completion' with non-sendable type '(Result<(), any Error>) -> Void' in a '@Sendable' closure
 86 |     serialQueue.async { [weak self] in
 87 |       guard let `self` = self else {
 88 |         completion(.failure(StorageError.deallocated))
    |         |- warning: capture of 'completion' with non-sendable type '(Result<(), any Error>) -> Void' in a '@Sendable' closure
    |         `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
 89 |         return
 90 |       }
/Users/admin/builder/spi-builder-workspace/Source/Shared/Storage/AsyncStorage.swift:147:22: warning: sending '$0' risks causing data races; this is an error in the Swift 6 language mode
145 |     try await withCheckedThrowingContinuation { continuation in
146 |       entry(forKey: key) {
147 |         continuation.resume(with: $0)
    |                      |- warning: sending '$0' risks causing data races; this is an error in the Swift 6 language mode
    |                      `- note: task-isolated '$0' is passed as a 'sending' parameter; Uses in callee may race with later task-isolated uses
148 |       }
149 |     }
/Users/admin/builder/spi-builder-workspace/Source/Shared/Storage/AsyncStorage.swift:190:22: warning: sending '$0' risks causing data races; this is an error in the Swift 6 language mode
188 |     try await withCheckedThrowingContinuation { continuation in
189 |       object(forKey: key) {
190 |         continuation.resume(with: $0)
    |                      |- warning: sending '$0' risks causing data races; this is an error in the Swift 6 language mode
    |                      `- note: task-isolated '$0' is passed as a 'sending' parameter; Uses in callee may race with later task-isolated uses
191 |       }
192 |     }
[31/40] Compiling Cache DiskStorage.swift
/Users/admin/builder/spi-builder-workspace/Source/Shared/Storage/AsyncStorage.swift:19:26: warning: capture of 'self' with non-sendable type 'AsyncStorage<Key, Value>?' in a '@Sendable' closure
  4 | /// Manipulate storage in a "all async" manner.
  5 | /// The completion closure will be called when operation completes.
  6 | public class AsyncStorage<Key: Hashable, Value> {
    |              `- note: generic class 'AsyncStorage' does not conform to the 'Sendable' protocol
  7 |   public let innerStorage: HybridStorage<Key, Value>
  8 |   public let serialQueue: DispatchQueue
    :
 17 |   public func entry(forKey key: Key, completion: @escaping (Result<Entry<Value>, Error>) -> Void) {
 18 |     serialQueue.async { [weak self] in
 19 |       guard let `self` = self else {
    |                          `- warning: capture of 'self' with non-sendable type 'AsyncStorage<Key, Value>?' in a '@Sendable' closure
 20 |         completion(.failure(StorageError.deallocated))
 21 |         return
/Users/admin/builder/spi-builder-workspace/Source/Shared/Storage/AsyncStorage.swift:20:9: warning: capture of 'completion' with non-sendable type '(Result<Entry<Value>, any Error>) -> Void' in a '@Sendable' closure
 18 |     serialQueue.async { [weak self] in
 19 |       guard let `self` = self else {
 20 |         completion(.failure(StorageError.deallocated))
    |         |- warning: capture of 'completion' with non-sendable type '(Result<Entry<Value>, any Error>) -> Void' in a '@Sendable' closure
    |         `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
 21 |         return
 22 |       }
/Users/admin/builder/spi-builder-workspace/Source/Shared/Storage/AsyncStorage.swift:25:59: warning: capture of 'key' with non-sendable type 'Key' in a '@Sendable' closure
  4 | /// Manipulate storage in a "all async" manner.
  5 | /// The completion closure will be called when operation completes.
  6 | public class AsyncStorage<Key: Hashable, Value> {
    |                           `- note: consider making generic parameter 'Key' conform to the 'Sendable' protocol
  7 |   public let innerStorage: HybridStorage<Key, Value>
  8 |   public let serialQueue: DispatchQueue
    :
 23 |
 24 |       do {
 25 |         let anEntry = try self.innerStorage.entry(forKey: key)
    |                                                           `- warning: capture of 'key' with non-sendable type 'Key' in a '@Sendable' closure
 26 |         completion(.success(anEntry))
 27 |       } catch {
/Users/admin/builder/spi-builder-workspace/Source/Shared/Storage/AsyncStorage.swift:35:26: warning: capture of 'self' with non-sendable type 'AsyncStorage<Key, Value>?' in a '@Sendable' closure
  4 | /// Manipulate storage in a "all async" manner.
  5 | /// The completion closure will be called when operation completes.
  6 | public class AsyncStorage<Key: Hashable, Value> {
    |              `- note: generic class 'AsyncStorage' does not conform to the 'Sendable' protocol
  7 |   public let innerStorage: HybridStorage<Key, Value>
  8 |   public let serialQueue: DispatchQueue
    :
 33 |   public func removeObject(forKey key: Key, completion: @escaping (Result<(), Error>) -> Void) {
 34 |     serialQueue.async { [weak self] in
 35 |       guard let `self` = self else {
    |                          `- warning: capture of 'self' with non-sendable type 'AsyncStorage<Key, Value>?' in a '@Sendable' closure
 36 |         completion(.failure(StorageError.deallocated))
 37 |         return
/Users/admin/builder/spi-builder-workspace/Source/Shared/Storage/AsyncStorage.swift:36:9: warning: capture of 'completion' with non-sendable type '(Result<(), any Error>) -> Void' in a '@Sendable' closure
 34 |     serialQueue.async { [weak self] in
 35 |       guard let `self` = self else {
 36 |         completion(.failure(StorageError.deallocated))
    |         |- warning: capture of 'completion' with non-sendable type '(Result<(), any Error>) -> Void' in a '@Sendable' closure
    |         `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
 37 |         return
 38 |       }
/Users/admin/builder/spi-builder-workspace/Source/Shared/Storage/AsyncStorage.swift:41:52: warning: capture of 'key' with non-sendable type 'Key' in a '@Sendable' closure
  4 | /// Manipulate storage in a "all async" manner.
  5 | /// The completion closure will be called when operation completes.
  6 | public class AsyncStorage<Key: Hashable, Value> {
    |                           `- note: consider making generic parameter 'Key' conform to the 'Sendable' protocol
  7 |   public let innerStorage: HybridStorage<Key, Value>
  8 |   public let serialQueue: DispatchQueue
    :
 39 |
 40 |       do {
 41 |         try self.innerStorage.removeObject(forKey: key)
    |                                                    `- warning: capture of 'key' with non-sendable type 'Key' in a '@Sendable' closure
 42 |         completion(.success(()))
 43 |       } catch {
/Users/admin/builder/spi-builder-workspace/Source/Shared/Storage/AsyncStorage.swift:55:26: warning: capture of 'self' with non-sendable type 'AsyncStorage<Key, Value>?' in a '@Sendable' closure
  4 | /// Manipulate storage in a "all async" manner.
  5 | /// The completion closure will be called when operation completes.
  6 | public class AsyncStorage<Key: Hashable, Value> {
    |              `- note: generic class 'AsyncStorage' does not conform to the 'Sendable' protocol
  7 |   public let innerStorage: HybridStorage<Key, Value>
  8 |   public let serialQueue: DispatchQueue
    :
 53 |     completion: @escaping (Result<(), Error>) -> Void) {
 54 |     serialQueue.async { [weak self] in
 55 |       guard let `self` = self else {
    |                          `- warning: capture of 'self' with non-sendable type 'AsyncStorage<Key, Value>?' in a '@Sendable' closure
 56 |         completion(.failure(StorageError.deallocated))
 57 |         return
/Users/admin/builder/spi-builder-workspace/Source/Shared/Storage/AsyncStorage.swift:56:9: warning: capture of 'completion' with non-sendable type '(Result<(), any Error>) -> Void' in a '@Sendable' closure
 54 |     serialQueue.async { [weak self] in
 55 |       guard let `self` = self else {
 56 |         completion(.failure(StorageError.deallocated))
    |         |- warning: capture of 'completion' with non-sendable type '(Result<(), any Error>) -> Void' in a '@Sendable' closure
    |         `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
 57 |         return
 58 |       }
/Users/admin/builder/spi-builder-workspace/Source/Shared/Storage/AsyncStorage.swift:61:41: warning: capture of 'object' with non-sendable type 'Value' in a '@Sendable' closure
  4 | /// Manipulate storage in a "all async" manner.
  5 | /// The completion closure will be called when operation completes.
  6 | public class AsyncStorage<Key: Hashable, Value> {
    |                                          `- note: consider making generic parameter 'Value' conform to the 'Sendable' protocol
  7 |   public let innerStorage: HybridStorage<Key, Value>
  8 |   public let serialQueue: DispatchQueue
    :
 59 |
 60 |       do {
 61 |         try self.innerStorage.setObject(object, forKey: key, expiry: expiry)
    |                                         `- warning: capture of 'object' with non-sendable type 'Value' in a '@Sendable' closure
 62 |         completion(.success(()))
 63 |       } catch {
/Users/admin/builder/spi-builder-workspace/Source/Shared/Storage/AsyncStorage.swift:61:57: warning: capture of 'key' with non-sendable type 'Key' in a '@Sendable' closure
  4 | /// Manipulate storage in a "all async" manner.
  5 | /// The completion closure will be called when operation completes.
  6 | public class AsyncStorage<Key: Hashable, Value> {
    |                           `- note: consider making generic parameter 'Key' conform to the 'Sendable' protocol
  7 |   public let innerStorage: HybridStorage<Key, Value>
  8 |   public let serialQueue: DispatchQueue
    :
 59 |
 60 |       do {
 61 |         try self.innerStorage.setObject(object, forKey: key, expiry: expiry)
    |                                                         `- warning: capture of 'key' with non-sendable type 'Key' in a '@Sendable' closure
 62 |         completion(.success(()))
 63 |       } catch {
/Users/admin/builder/spi-builder-workspace/Source/Shared/Storage/AsyncStorage.swift:61:70: warning: capture of 'expiry' with non-sendable type 'Expiry?' in a '@Sendable' closure
 59 |
 60 |       do {
 61 |         try self.innerStorage.setObject(object, forKey: key, expiry: expiry)
    |                                                                      `- warning: capture of 'expiry' with non-sendable type 'Expiry?' in a '@Sendable' closure
 62 |         completion(.success(()))
 63 |       } catch {
/Users/admin/builder/spi-builder-workspace/Source/Shared/Library/Expiry.swift:6:13: note: consider making enum 'Expiry' conform to the 'Sendable' protocol
 4 |  Helper enum to set the expiration date
 5 |  */
 6 | public enum Expiry {
   |             `- note: consider making enum 'Expiry' conform to the 'Sendable' protocol
 7 |   /// Object will be expired in the nearest future
 8 |   case never
/Users/admin/builder/spi-builder-workspace/Source/Shared/Storage/AsyncStorage.swift:71:26: warning: capture of 'self' with non-sendable type 'AsyncStorage<Key, Value>?' in a '@Sendable' closure
  4 | /// Manipulate storage in a "all async" manner.
  5 | /// The completion closure will be called when operation completes.
  6 | public class AsyncStorage<Key: Hashable, Value> {
    |              `- note: generic class 'AsyncStorage' does not conform to the 'Sendable' protocol
  7 |   public let innerStorage: HybridStorage<Key, Value>
  8 |   public let serialQueue: DispatchQueue
    :
 69 |   public func removeAll(completion: @escaping (Result<(), Error>) -> Void) {
 70 |     serialQueue.async { [weak self] in
 71 |       guard let `self` = self else {
    |                          `- warning: capture of 'self' with non-sendable type 'AsyncStorage<Key, Value>?' in a '@Sendable' closure
 72 |         completion(.failure(StorageError.deallocated))
 73 |         return
/Users/admin/builder/spi-builder-workspace/Source/Shared/Storage/AsyncStorage.swift:72:9: warning: capture of 'completion' with non-sendable type '(Result<(), any Error>) -> Void' in a '@Sendable' closure
 70 |     serialQueue.async { [weak self] in
 71 |       guard let `self` = self else {
 72 |         completion(.failure(StorageError.deallocated))
    |         |- warning: capture of 'completion' with non-sendable type '(Result<(), any Error>) -> Void' in a '@Sendable' closure
    |         `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
 73 |         return
 74 |       }
/Users/admin/builder/spi-builder-workspace/Source/Shared/Storage/AsyncStorage.swift:87:26: warning: capture of 'self' with non-sendable type 'AsyncStorage<Key, Value>?' in a '@Sendable' closure
  4 | /// Manipulate storage in a "all async" manner.
  5 | /// The completion closure will be called when operation completes.
  6 | public class AsyncStorage<Key: Hashable, Value> {
    |              `- note: generic class 'AsyncStorage' does not conform to the 'Sendable' protocol
  7 |   public let innerStorage: HybridStorage<Key, Value>
  8 |   public let serialQueue: DispatchQueue
    :
 85 |   public func removeExpiredObjects(completion: @escaping (Result<(), Error>) -> Void) {
 86 |     serialQueue.async { [weak self] in
 87 |       guard let `self` = self else {
    |                          `- warning: capture of 'self' with non-sendable type 'AsyncStorage<Key, Value>?' in a '@Sendable' closure
 88 |         completion(.failure(StorageError.deallocated))
 89 |         return
/Users/admin/builder/spi-builder-workspace/Source/Shared/Storage/AsyncStorage.swift:88:9: warning: capture of 'completion' with non-sendable type '(Result<(), any Error>) -> Void' in a '@Sendable' closure
 86 |     serialQueue.async { [weak self] in
 87 |       guard let `self` = self else {
 88 |         completion(.failure(StorageError.deallocated))
    |         |- warning: capture of 'completion' with non-sendable type '(Result<(), any Error>) -> Void' in a '@Sendable' closure
    |         `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
 89 |         return
 90 |       }
/Users/admin/builder/spi-builder-workspace/Source/Shared/Storage/AsyncStorage.swift:147:22: warning: sending '$0' risks causing data races; this is an error in the Swift 6 language mode
145 |     try await withCheckedThrowingContinuation { continuation in
146 |       entry(forKey: key) {
147 |         continuation.resume(with: $0)
    |                      |- warning: sending '$0' risks causing data races; this is an error in the Swift 6 language mode
    |                      `- note: task-isolated '$0' is passed as a 'sending' parameter; Uses in callee may race with later task-isolated uses
148 |       }
149 |     }
/Users/admin/builder/spi-builder-workspace/Source/Shared/Storage/AsyncStorage.swift:190:22: warning: sending '$0' risks causing data races; this is an error in the Swift 6 language mode
188 |     try await withCheckedThrowingContinuation { continuation in
189 |       object(forKey: key) {
190 |         continuation.resume(with: $0)
    |                      |- warning: sending '$0' risks causing data races; this is an error in the Swift 6 language mode
    |                      `- note: task-isolated '$0' is passed as a 'sending' parameter; Uses in callee may race with later task-isolated uses
191 |       }
192 |     }
[32/40] Compiling Cache HybridStorage.swift
/Users/admin/builder/spi-builder-workspace/Source/Shared/Storage/AsyncStorage.swift:19:26: warning: capture of 'self' with non-sendable type 'AsyncStorage<Key, Value>?' in a '@Sendable' closure
  4 | /// Manipulate storage in a "all async" manner.
  5 | /// The completion closure will be called when operation completes.
  6 | public class AsyncStorage<Key: Hashable, Value> {
    |              `- note: generic class 'AsyncStorage' does not conform to the 'Sendable' protocol
  7 |   public let innerStorage: HybridStorage<Key, Value>
  8 |   public let serialQueue: DispatchQueue
    :
 17 |   public func entry(forKey key: Key, completion: @escaping (Result<Entry<Value>, Error>) -> Void) {
 18 |     serialQueue.async { [weak self] in
 19 |       guard let `self` = self else {
    |                          `- warning: capture of 'self' with non-sendable type 'AsyncStorage<Key, Value>?' in a '@Sendable' closure
 20 |         completion(.failure(StorageError.deallocated))
 21 |         return
/Users/admin/builder/spi-builder-workspace/Source/Shared/Storage/AsyncStorage.swift:20:9: warning: capture of 'completion' with non-sendable type '(Result<Entry<Value>, any Error>) -> Void' in a '@Sendable' closure
 18 |     serialQueue.async { [weak self] in
 19 |       guard let `self` = self else {
 20 |         completion(.failure(StorageError.deallocated))
    |         |- warning: capture of 'completion' with non-sendable type '(Result<Entry<Value>, any Error>) -> Void' in a '@Sendable' closure
    |         `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
 21 |         return
 22 |       }
/Users/admin/builder/spi-builder-workspace/Source/Shared/Storage/AsyncStorage.swift:25:59: warning: capture of 'key' with non-sendable type 'Key' in a '@Sendable' closure
  4 | /// Manipulate storage in a "all async" manner.
  5 | /// The completion closure will be called when operation completes.
  6 | public class AsyncStorage<Key: Hashable, Value> {
    |                           `- note: consider making generic parameter 'Key' conform to the 'Sendable' protocol
  7 |   public let innerStorage: HybridStorage<Key, Value>
  8 |   public let serialQueue: DispatchQueue
    :
 23 |
 24 |       do {
 25 |         let anEntry = try self.innerStorage.entry(forKey: key)
    |                                                           `- warning: capture of 'key' with non-sendable type 'Key' in a '@Sendable' closure
 26 |         completion(.success(anEntry))
 27 |       } catch {
/Users/admin/builder/spi-builder-workspace/Source/Shared/Storage/AsyncStorage.swift:35:26: warning: capture of 'self' with non-sendable type 'AsyncStorage<Key, Value>?' in a '@Sendable' closure
  4 | /// Manipulate storage in a "all async" manner.
  5 | /// The completion closure will be called when operation completes.
  6 | public class AsyncStorage<Key: Hashable, Value> {
    |              `- note: generic class 'AsyncStorage' does not conform to the 'Sendable' protocol
  7 |   public let innerStorage: HybridStorage<Key, Value>
  8 |   public let serialQueue: DispatchQueue
    :
 33 |   public func removeObject(forKey key: Key, completion: @escaping (Result<(), Error>) -> Void) {
 34 |     serialQueue.async { [weak self] in
 35 |       guard let `self` = self else {
    |                          `- warning: capture of 'self' with non-sendable type 'AsyncStorage<Key, Value>?' in a '@Sendable' closure
 36 |         completion(.failure(StorageError.deallocated))
 37 |         return
/Users/admin/builder/spi-builder-workspace/Source/Shared/Storage/AsyncStorage.swift:36:9: warning: capture of 'completion' with non-sendable type '(Result<(), any Error>) -> Void' in a '@Sendable' closure
 34 |     serialQueue.async { [weak self] in
 35 |       guard let `self` = self else {
 36 |         completion(.failure(StorageError.deallocated))
    |         |- warning: capture of 'completion' with non-sendable type '(Result<(), any Error>) -> Void' in a '@Sendable' closure
    |         `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
 37 |         return
 38 |       }
/Users/admin/builder/spi-builder-workspace/Source/Shared/Storage/AsyncStorage.swift:41:52: warning: capture of 'key' with non-sendable type 'Key' in a '@Sendable' closure
  4 | /// Manipulate storage in a "all async" manner.
  5 | /// The completion closure will be called when operation completes.
  6 | public class AsyncStorage<Key: Hashable, Value> {
    |                           `- note: consider making generic parameter 'Key' conform to the 'Sendable' protocol
  7 |   public let innerStorage: HybridStorage<Key, Value>
  8 |   public let serialQueue: DispatchQueue
    :
 39 |
 40 |       do {
 41 |         try self.innerStorage.removeObject(forKey: key)
    |                                                    `- warning: capture of 'key' with non-sendable type 'Key' in a '@Sendable' closure
 42 |         completion(.success(()))
 43 |       } catch {
/Users/admin/builder/spi-builder-workspace/Source/Shared/Storage/AsyncStorage.swift:55:26: warning: capture of 'self' with non-sendable type 'AsyncStorage<Key, Value>?' in a '@Sendable' closure
  4 | /// Manipulate storage in a "all async" manner.
  5 | /// The completion closure will be called when operation completes.
  6 | public class AsyncStorage<Key: Hashable, Value> {
    |              `- note: generic class 'AsyncStorage' does not conform to the 'Sendable' protocol
  7 |   public let innerStorage: HybridStorage<Key, Value>
  8 |   public let serialQueue: DispatchQueue
    :
 53 |     completion: @escaping (Result<(), Error>) -> Void) {
 54 |     serialQueue.async { [weak self] in
 55 |       guard let `self` = self else {
    |                          `- warning: capture of 'self' with non-sendable type 'AsyncStorage<Key, Value>?' in a '@Sendable' closure
 56 |         completion(.failure(StorageError.deallocated))
 57 |         return
/Users/admin/builder/spi-builder-workspace/Source/Shared/Storage/AsyncStorage.swift:56:9: warning: capture of 'completion' with non-sendable type '(Result<(), any Error>) -> Void' in a '@Sendable' closure
 54 |     serialQueue.async { [weak self] in
 55 |       guard let `self` = self else {
 56 |         completion(.failure(StorageError.deallocated))
    |         |- warning: capture of 'completion' with non-sendable type '(Result<(), any Error>) -> Void' in a '@Sendable' closure
    |         `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
 57 |         return
 58 |       }
/Users/admin/builder/spi-builder-workspace/Source/Shared/Storage/AsyncStorage.swift:61:41: warning: capture of 'object' with non-sendable type 'Value' in a '@Sendable' closure
  4 | /// Manipulate storage in a "all async" manner.
  5 | /// The completion closure will be called when operation completes.
  6 | public class AsyncStorage<Key: Hashable, Value> {
    |                                          `- note: consider making generic parameter 'Value' conform to the 'Sendable' protocol
  7 |   public let innerStorage: HybridStorage<Key, Value>
  8 |   public let serialQueue: DispatchQueue
    :
 59 |
 60 |       do {
 61 |         try self.innerStorage.setObject(object, forKey: key, expiry: expiry)
    |                                         `- warning: capture of 'object' with non-sendable type 'Value' in a '@Sendable' closure
 62 |         completion(.success(()))
 63 |       } catch {
/Users/admin/builder/spi-builder-workspace/Source/Shared/Storage/AsyncStorage.swift:61:57: warning: capture of 'key' with non-sendable type 'Key' in a '@Sendable' closure
  4 | /// Manipulate storage in a "all async" manner.
  5 | /// The completion closure will be called when operation completes.
  6 | public class AsyncStorage<Key: Hashable, Value> {
    |                           `- note: consider making generic parameter 'Key' conform to the 'Sendable' protocol
  7 |   public let innerStorage: HybridStorage<Key, Value>
  8 |   public let serialQueue: DispatchQueue
    :
 59 |
 60 |       do {
 61 |         try self.innerStorage.setObject(object, forKey: key, expiry: expiry)
    |                                                         `- warning: capture of 'key' with non-sendable type 'Key' in a '@Sendable' closure
 62 |         completion(.success(()))
 63 |       } catch {
/Users/admin/builder/spi-builder-workspace/Source/Shared/Storage/AsyncStorage.swift:61:70: warning: capture of 'expiry' with non-sendable type 'Expiry?' in a '@Sendable' closure
 59 |
 60 |       do {
 61 |         try self.innerStorage.setObject(object, forKey: key, expiry: expiry)
    |                                                                      `- warning: capture of 'expiry' with non-sendable type 'Expiry?' in a '@Sendable' closure
 62 |         completion(.success(()))
 63 |       } catch {
/Users/admin/builder/spi-builder-workspace/Source/Shared/Library/Expiry.swift:6:13: note: consider making enum 'Expiry' conform to the 'Sendable' protocol
 4 |  Helper enum to set the expiration date
 5 |  */
 6 | public enum Expiry {
   |             `- note: consider making enum 'Expiry' conform to the 'Sendable' protocol
 7 |   /// Object will be expired in the nearest future
 8 |   case never
/Users/admin/builder/spi-builder-workspace/Source/Shared/Storage/AsyncStorage.swift:71:26: warning: capture of 'self' with non-sendable type 'AsyncStorage<Key, Value>?' in a '@Sendable' closure
  4 | /// Manipulate storage in a "all async" manner.
  5 | /// The completion closure will be called when operation completes.
  6 | public class AsyncStorage<Key: Hashable, Value> {
    |              `- note: generic class 'AsyncStorage' does not conform to the 'Sendable' protocol
  7 |   public let innerStorage: HybridStorage<Key, Value>
  8 |   public let serialQueue: DispatchQueue
    :
 69 |   public func removeAll(completion: @escaping (Result<(), Error>) -> Void) {
 70 |     serialQueue.async { [weak self] in
 71 |       guard let `self` = self else {
    |                          `- warning: capture of 'self' with non-sendable type 'AsyncStorage<Key, Value>?' in a '@Sendable' closure
 72 |         completion(.failure(StorageError.deallocated))
 73 |         return
/Users/admin/builder/spi-builder-workspace/Source/Shared/Storage/AsyncStorage.swift:72:9: warning: capture of 'completion' with non-sendable type '(Result<(), any Error>) -> Void' in a '@Sendable' closure
 70 |     serialQueue.async { [weak self] in
 71 |       guard let `self` = self else {
 72 |         completion(.failure(StorageError.deallocated))
    |         |- warning: capture of 'completion' with non-sendable type '(Result<(), any Error>) -> Void' in a '@Sendable' closure
    |         `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
 73 |         return
 74 |       }
/Users/admin/builder/spi-builder-workspace/Source/Shared/Storage/AsyncStorage.swift:87:26: warning: capture of 'self' with non-sendable type 'AsyncStorage<Key, Value>?' in a '@Sendable' closure
  4 | /// Manipulate storage in a "all async" manner.
  5 | /// The completion closure will be called when operation completes.
  6 | public class AsyncStorage<Key: Hashable, Value> {
    |              `- note: generic class 'AsyncStorage' does not conform to the 'Sendable' protocol
  7 |   public let innerStorage: HybridStorage<Key, Value>
  8 |   public let serialQueue: DispatchQueue
    :
 85 |   public func removeExpiredObjects(completion: @escaping (Result<(), Error>) -> Void) {
 86 |     serialQueue.async { [weak self] in
 87 |       guard let `self` = self else {
    |                          `- warning: capture of 'self' with non-sendable type 'AsyncStorage<Key, Value>?' in a '@Sendable' closure
 88 |         completion(.failure(StorageError.deallocated))
 89 |         return
/Users/admin/builder/spi-builder-workspace/Source/Shared/Storage/AsyncStorage.swift:88:9: warning: capture of 'completion' with non-sendable type '(Result<(), any Error>) -> Void' in a '@Sendable' closure
 86 |     serialQueue.async { [weak self] in
 87 |       guard let `self` = self else {
 88 |         completion(.failure(StorageError.deallocated))
    |         |- warning: capture of 'completion' with non-sendable type '(Result<(), any Error>) -> Void' in a '@Sendable' closure
    |         `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
 89 |         return
 90 |       }
/Users/admin/builder/spi-builder-workspace/Source/Shared/Storage/AsyncStorage.swift:147:22: warning: sending '$0' risks causing data races; this is an error in the Swift 6 language mode
145 |     try await withCheckedThrowingContinuation { continuation in
146 |       entry(forKey: key) {
147 |         continuation.resume(with: $0)
    |                      |- warning: sending '$0' risks causing data races; this is an error in the Swift 6 language mode
    |                      `- note: task-isolated '$0' is passed as a 'sending' parameter; Uses in callee may race with later task-isolated uses
148 |       }
149 |     }
/Users/admin/builder/spi-builder-workspace/Source/Shared/Storage/AsyncStorage.swift:190:22: warning: sending '$0' risks causing data races; this is an error in the Swift 6 language mode
188 |     try await withCheckedThrowingContinuation { continuation in
189 |       object(forKey: key) {
190 |         continuation.resume(with: $0)
    |                      |- warning: sending '$0' risks causing data races; this is an error in the Swift 6 language mode
    |                      `- note: task-isolated '$0' is passed as a 'sending' parameter; Uses in callee may race with later task-isolated uses
191 |       }
192 |     }
[33/40] Compiling Cache Transformer.swift
[34/40] Compiling Cache TransformerFactory.swift
[35/40] Compiling Cache TypeWrapper.swift
[36/40] Compiling Cache Types.swift
[37/40] Compiling Cache NSImage+Extensions.swift
[38/40] Compiling Cache DiskConfig.swift
[39/40] Compiling Cache MemoryConfig.swift
[40/40] Compiling Cache Date+Extensions.swift
Build complete! (7.60s)
Build complete.
{
  "dependencies" : [
  ],
  "manifest_display_name" : "Cache",
  "name" : "Cache",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
  ],
  "products" : [
    {
      "name" : "Cache",
      "targets" : [
        "Cache"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "swift_languages_versions" : [
    "5"
  ],
  "targets" : [
    {
      "c99name" : "CacheTests",
      "module_type" : "SwiftTarget",
      "name" : "CacheTests",
      "path" : "Tests",
      "sources" : [
        "Mac/Helpers/NSImage+ExtensionsTests.swift",
        "Mac/Helpers/TestHelper+OSX.swift",
        "Shared/TestCase+Extensions.swift",
        "Shared/TestHelper.swift",
        "Shared/User.swift",
        "iOS/Helpers/TestHelper+iOS.swift",
        "iOS/Helpers/UIImage+ExtensionsTests.swift",
        "iOS/Tests/Extensions/Date+ExtensionsTests.swift",
        "iOS/Tests/Extensions/Hasher+constantAccrossExecutions+Tests.swift",
        "iOS/Tests/Library/ExpiryTests.swift",
        "iOS/Tests/Library/ImageWrapperTests.swift",
        "iOS/Tests/Library/JSONWrapperTests.swift",
        "iOS/Tests/Library/MD5Tests.swift",
        "iOS/Tests/Library/MemoryCapsuleTests.swift",
        "iOS/Tests/Library/ObjectConverterTests.swift",
        "iOS/Tests/Library/ObservationTokenTests.swift",
        "iOS/Tests/Library/TypeWrapperTests.swift",
        "iOS/Tests/Storage/AsyncStorageTests.swift",
        "iOS/Tests/Storage/DiskStorageTests.swift",
        "iOS/Tests/Storage/HybridStorageTests.swift",
        "iOS/Tests/Storage/MemoryStorageTests.swift",
        "iOS/Tests/Storage/StorageSupportTests.swift",
        "iOS/Tests/Storage/StorageTests.swift",
        "iOS/Tests/Storage/SyncStorageTests.swift"
      ],
      "target_dependencies" : [
        "Cache"
      ],
      "type" : "test"
    },
    {
      "c99name" : "Cache",
      "module_type" : "SwiftTarget",
      "name" : "Cache",
      "path" : "Source",
      "product_memberships" : [
        "Cache"
      ],
      "resources" : [
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Source/PrivacyInfo.xcprivacy",
          "rule" : {
            "copy" : {
            }
          }
        }
      ],
      "sources" : [
        "Mac/NSImage+Extensions.swift",
        "Shared/Configuration/DiskConfig.swift",
        "Shared/Configuration/MemoryConfig.swift",
        "Shared/Extensions/Date+Extensions.swift",
        "Shared/Extensions/FileManager+Extensions.swift",
        "Shared/Extensions/Hasher+constantAccrossExecutions.swift",
        "Shared/Extensions/JSONDecoder+Extensions.swift",
        "Shared/Extensions/URL+Extensions.swift",
        "Shared/Library/DataSerializer.swift",
        "Shared/Library/Entry.swift",
        "Shared/Library/ExpirationMode.swift",
        "Shared/Library/Expiry.swift",
        "Shared/Library/ImageWrapper.swift",
        "Shared/Library/JSONArrayWrapper.swift",
        "Shared/Library/JSONDictionaryWrapper.swift",
        "Shared/Library/MD5.swift",
        "Shared/Library/MemoryCapsule.swift",
        "Shared/Library/ObservationToken.swift",
        "Shared/Library/Optional+Extension.swift",
        "Shared/Library/StorageError.swift",
        "Shared/Library/Transformer.swift",
        "Shared/Library/TransformerFactory.swift",
        "Shared/Library/TypeWrapper.swift",
        "Shared/Library/Types.swift",
        "Shared/Storage/AsyncStorage.swift",
        "Shared/Storage/DiskStorage.swift",
        "Shared/Storage/HybridStorage.swift",
        "Shared/Storage/KeyObservationRegistry.swift",
        "Shared/Storage/MemoryStorage.swift",
        "Shared/Storage/Storage+Transform.swift",
        "Shared/Storage/Storage.swift",
        "Shared/Storage/StorageAware.swift",
        "Shared/Storage/StorageObservationRegistry.swift",
        "Shared/Storage/SyncStorage.swift",
        "iOS/UIImage+Extensions.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.5"
}
Done.