This is a staging environment. For live and up-to-date package information, visit swiftpackageindex.com.

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 Carlos with Swift 6.0 for macOS (SPM).

Swift 6 data race errors: 6

Build Command

env DEVELOPER_DIR=/Applications/Xcode-15.3.0.app xcrun --toolchain org.swift.600202405261a swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete

Build Log

========================================
RunAll
========================================
Builder version: 4.40.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/spring-media/Carlos.git
Reference: master
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/spring-media/Carlos
 * branch            master     -> FETCH_HEAD
 * [new branch]      master     -> origin/master
HEAD is now at 26ca894 Merge pull request #196 from spring-media/feature/migrate-to-action
Cloned https://github.com/spring-media/Carlos.git
Revision (git rev-parse @):
26ca894e3cef48a15b6da20803c31e5386ac45bd
SUCCESS checkout https://github.com/spring-media/Carlos.git at master
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.0
Building package at path:  $workDir
https://github.com/spring-media/Carlos.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-15.3.0.app xcrun --toolchain org.swift.600202405261a 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-6F35C1178C84523A.txt
[3/39] Emitting module Carlos
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/CacheLevels/DiskCacheLevel.swift:24:9: warning: capture of 'self' with non-sendable type 'DiskCacheLevel<K, T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  7 |
  8 | /// This class is a disk cache level. It has a configurable total size that defaults to 100 MB.
  9 | public final class DiskCacheLevel<K: StringConvertible, T: NSCoding>: CacheLevel {
    |                    `- note: generic class 'DiskCacheLevel' does not conform to the 'Sendable' protocol
 10 |   /// At the moment the disk cache level only accepts keys that can be converted to string values
 11 |   public typealias KeyType = K
    :
 22 |     didSet {
 23 |       cacheQueue.async {
 24 |         self.controlCapacity()
    |         `- warning: capture of 'self' with non-sendable type 'DiskCacheLevel<K, T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 25 |       }
 26 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/CacheProvider.swift:6:21: warning: static property 'sharedDataCache' is not concurrency-safe because non-'Sendable' type 'BasicCache<URL, NSData>' may have shared mutable state; this is an error in the Swift 6 language mode
 4 | public enum CacheProvider {
 5 |   /// A shared data cache instance
 6 |   public static let sharedDataCache: BasicCache<URL, NSData> = CacheProvider.dataCache()
   |                     |- warning: static property 'sharedDataCache' is not concurrency-safe because non-'Sendable' type 'BasicCache<URL, NSData>' may have shared mutable state; this is an error in the Swift 6 language mode
   |                     |- note: annotate 'sharedDataCache' with '@MainActor' if property should only be accessed from the main actor
   |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 7 |
 8 |   /// A shared JSON cache instance
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/Core/BasicCache.swift:5:20: note: generic class 'BasicCache' does not conform to the 'Sendable' protocol
 3 |
 4 | /// A wrapper cache that explicitly takes get, set, clear and memory warning closures
 5 | public final class BasicCache<A, B>: CacheLevel {
   |                    `- note: generic class 'BasicCache' does not conform to the 'Sendable' protocol
 6 |   public typealias KeyType = A
 7 |   public typealias OutputType = B
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/CacheProvider.swift:9:21: warning: static property 'sharedJSONCache' is not concurrency-safe because non-'Sendable' type 'BasicCache<URL, AnyObject>' may have shared mutable state; this is an error in the Swift 6 language mode
 7 |
 8 |   /// A shared JSON cache instance
 9 |   public static let sharedJSONCache: BasicCache<URL, AnyObject> = CacheProvider.JSONCache()
   |                     |- warning: static property 'sharedJSONCache' is not concurrency-safe because non-'Sendable' type 'BasicCache<URL, AnyObject>' may have shared mutable state; this is an error in the Swift 6 language mode
   |                     |- note: annotate 'sharedJSONCache' with '@MainActor' if property should only be accessed from the main actor
   |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
10 |
11 |   /// A shared image cache instance
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/Core/BasicCache.swift:5:20: note: generic class 'BasicCache' does not conform to the 'Sendable' protocol
 3 |
 4 | /// A wrapper cache that explicitly takes get, set, clear and memory warning closures
 5 | public final class BasicCache<A, B>: CacheLevel {
   |                    `- note: generic class 'BasicCache' does not conform to the 'Sendable' protocol
 6 |   public typealias KeyType = A
 7 |   public typealias OutputType = B
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/CacheProvider.swift:12:21: warning: static property 'sharedImageCache' is not concurrency-safe because non-'Sendable' type 'BasicCache<URL, CarlosImage>' (aka 'BasicCache<URL, NSImage>') may have shared mutable state; this is an error in the Swift 6 language mode
10 |
11 |   /// A shared image cache instance
12 |   public static let sharedImageCache: BasicCache<URL, CarlosImage> = CacheProvider.imageCache()
   |                     |- warning: static property 'sharedImageCache' is not concurrency-safe because non-'Sendable' type 'BasicCache<URL, CarlosImage>' (aka 'BasicCache<URL, NSImage>') may have shared mutable state; this is an error in the Swift 6 language mode
   |                     |- note: annotate 'sharedImageCache' with '@MainActor' if property should only be accessed from the main actor
   |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
13 |
14 |   /// - Returns: An initialized and configured CacheLevel that takes URL keys and stores NSData values.
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/Core/BasicCache.swift:5:20: note: generic class 'BasicCache' does not conform to the 'Sendable' protocol
 3 |
 4 | /// A wrapper cache that explicitly takes get, set, clear and memory warning closures
 5 | public final class BasicCache<A, B>: CacheLevel {
   |                    `- note: generic class 'BasicCache' does not conform to the 'Sendable' protocol
 6 |   public typealias KeyType = A
 7 |   public typealias OutputType = B
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/Core/Logger.swift:18:21: warning: static property 'output' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
16 |    Called to output the log message. Override for custom logging.
17 |    */
18 |   public static var output: (String, Level) -> Void = { msg, level in
   |                     |- warning: static property 'output' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
   |                     |- note: convert 'output' to a 'let' constant to make 'Sendable' shared state immutable
   |                     |- note: annotate 'output' with '@MainActor' if property should only be accessed from the main actor
   |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
19 |     queue.async {
20 |       print("[Carlos][\(level.rawValue)]: \(msg)")
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/Core/Logger.swift:20:25: warning: capture of 'level' with non-sendable type 'Logger.Level' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 4 | public final class Logger {
 5 |   /// The level of the logged message
 6 |   public enum Level: String {
   |               `- note: consider making enum 'Level' conform to the 'Sendable' protocol
 7 |     case debug = "Debug"
 8 |     case info = "Info"
   :
18 |   public static var output: (String, Level) -> Void = { msg, level in
19 |     queue.async {
20 |       print("[Carlos][\(level.rawValue)]: \(msg)")
   |                         `- warning: capture of 'level' with non-sendable type 'Logger.Level' in a `@Sendable` closure; this is an error in the Swift 6 language mode
21 |     }
22 |   }
[4/43] Compiling Carlos ComposedOneWayTransformer.swift
[5/43] Compiling Carlos ComposedTwoWayTransformer.swift
[6/43] Compiling Carlos ConditionedOneWayTransformer.swift
[7/43] Compiling Carlos ConditionedOutputProcessing.swift
[8/43] Compiling Carlos BatchAllCache.swift
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/CacheLevels/DiskCacheLevel.swift:24:9: warning: capture of 'self' with non-sendable type 'DiskCacheLevel<K, T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  7 |
  8 | /// This class is a disk cache level. It has a configurable total size that defaults to 100 MB.
  9 | public final class DiskCacheLevel<K: StringConvertible, T: NSCoding>: CacheLevel {
    |                    `- note: generic class 'DiskCacheLevel' does not conform to the 'Sendable' protocol
 10 |   /// At the moment the disk cache level only accepts keys that can be converted to string values
 11 |   public typealias KeyType = K
    :
 22 |     didSet {
 23 |       cacheQueue.async {
 24 |         self.controlCapacity()
    |         `- warning: capture of 'self' with non-sendable type 'DiskCacheLevel<K, T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 25 |       }
 26 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/CacheLevels/DiskCacheLevel.swift:57:7: warning: capture of 'self' with non-sendable type 'DiskCacheLevel<K, T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  7 |
  8 | /// This class is a disk cache level. It has a configurable total size that defaults to 100 MB.
  9 | public final class DiskCacheLevel<K: StringConvertible, T: NSCoding>: CacheLevel {
    |                    `- note: generic class 'DiskCacheLevel' does not conform to the 'Sendable' protocol
 10 |   /// At the moment the disk cache level only accepts keys that can be converted to string values
 11 |   public typealias KeyType = K
    :
 55 |
 56 |     cacheQueue.async {
 57 |       self.calculateSize()
    |       `- warning: capture of 'self' with non-sendable type 'DiskCacheLevel<K, T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 58 |       self.controlCapacity()
 59 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/CacheLevels/DiskCacheLevel.swift:100:42: warning: 'unarchiveTopLevelObjectWithData' was deprecated in macOS 10.14: Use unarchivedObject(ofClass:from:) instead
 98 |
 99 |       if let data = try? Data(contentsOf: URL(fileURLWithPath: path)),
100 |         let obj = try? NSKeyedUnarchiver.unarchiveTopLevelObjectWithData(data) as? T
    |                                          `- warning: 'unarchiveTopLevelObjectWithData' was deprecated in macOS 10.14: Use unarchivedObject(ofClass:from:) instead
101 |       {
102 |         Logger.log("DiskCacheLevel| Fetched \(key.toString()) on disk level", .info)
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/CacheLevels/DiskCacheLevel.swift:150:7: warning: capture of 'self' with non-sendable type 'DiskCacheLevel<K, T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  7 |
  8 | /// This class is a disk cache level. It has a configurable total size that defaults to 100 MB.
  9 | public final class DiskCacheLevel<K: StringConvertible, T: NSCoding>: CacheLevel {
    |                    `- note: generic class 'DiskCacheLevel' does not conform to the 'Sendable' protocol
 10 |   /// At the moment the disk cache level only accepts keys that can be converted to string values
 11 |   public typealias KeyType = K
    :
148 |   public func clear() {
149 |     cacheQueue.async {
150 |       self.itemsInDirectory(self.path).forEach { filePath in
    |       `- warning: capture of 'self' with non-sendable type 'DiskCacheLevel<K, T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
151 |         _ = try? self.fileManager.removeItem(atPath: filePath)
152 |       }
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/CacheLevels/DiskCacheLevel.swift:151:18: warning: capture of 'self' with non-sendable type 'DiskCacheLevel<K, T>' in an isolated closure; this is an error in the Swift 6 language mode
  7 |
  8 | /// This class is a disk cache level. It has a configurable total size that defaults to 100 MB.
  9 | public final class DiskCacheLevel<K: StringConvertible, T: NSCoding>: CacheLevel {
    |                    `- note: generic class 'DiskCacheLevel' does not conform to the 'Sendable' protocol
 10 |   /// At the moment the disk cache level only accepts keys that can be converted to string values
 11 |   public typealias KeyType = K
    :
149 |     cacheQueue.async {
150 |       self.itemsInDirectory(self.path).forEach { filePath in
151 |         _ = try? self.fileManager.removeItem(atPath: filePath)
    |                  `- warning: capture of 'self' with non-sendable type 'DiskCacheLevel<K, T>' in an isolated closure; this is an error in the Swift 6 language mode
152 |       }
153 |       self.calculateSize()
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/CacheLevels/DiskCacheLevel.swift:161:7: warning: capture of 'self' with non-sendable type 'DiskCacheLevel<K, T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  7 |
  8 | /// This class is a disk cache level. It has a configurable total size that defaults to 100 MB.
  9 | public final class DiskCacheLevel<K: StringConvertible, T: NSCoding>: CacheLevel {
    |                    `- note: generic class 'DiskCacheLevel' does not conform to the 'Sendable' protocol
 10 |   /// At the moment the disk cache level only accepts keys that can be converted to string values
 11 |   public typealias KeyType = K
    :
159 |   private func removeData(_ key: K) {
160 |     cacheQueue.async {
161 |       self.removeFileAtPath(self.pathForKey(key))
    |       `- warning: capture of 'self' with non-sendable type 'DiskCacheLevel<K, T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
162 |     }
163 |   }
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/CacheLevels/DiskCacheLevel.swift:161:45: warning: capture of 'key' with non-sendable type 'K' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  7 |
  8 | /// This class is a disk cache level. It has a configurable total size that defaults to 100 MB.
  9 | public final class DiskCacheLevel<K: StringConvertible, T: NSCoding>: CacheLevel {
    |                                   `- note: consider making generic parameter 'K' conform to the 'Sendable' protocol
 10 |   /// At the moment the disk cache level only accepts keys that can be converted to string values
 11 |   public typealias KeyType = K
    :
159 |   private func removeData(_ key: K) {
160 |     cacheQueue.async {
161 |       self.removeFileAtPath(self.pathForKey(key))
    |                                             `- warning: capture of 'key' with non-sendable type 'K' in a `@Sendable` closure; this is an error in the Swift 6 language mode
162 |     }
163 |   }
[9/43] Compiling Carlos Composed.swift
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/CacheLevels/DiskCacheLevel.swift:24:9: warning: capture of 'self' with non-sendable type 'DiskCacheLevel<K, T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  7 |
  8 | /// This class is a disk cache level. It has a configurable total size that defaults to 100 MB.
  9 | public final class DiskCacheLevel<K: StringConvertible, T: NSCoding>: CacheLevel {
    |                    `- note: generic class 'DiskCacheLevel' does not conform to the 'Sendable' protocol
 10 |   /// At the moment the disk cache level only accepts keys that can be converted to string values
 11 |   public typealias KeyType = K
    :
 22 |     didSet {
 23 |       cacheQueue.async {
 24 |         self.controlCapacity()
    |         `- warning: capture of 'self' with non-sendable type 'DiskCacheLevel<K, T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 25 |       }
 26 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/CacheLevels/DiskCacheLevel.swift:57:7: warning: capture of 'self' with non-sendable type 'DiskCacheLevel<K, T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  7 |
  8 | /// This class is a disk cache level. It has a configurable total size that defaults to 100 MB.
  9 | public final class DiskCacheLevel<K: StringConvertible, T: NSCoding>: CacheLevel {
    |                    `- note: generic class 'DiskCacheLevel' does not conform to the 'Sendable' protocol
 10 |   /// At the moment the disk cache level only accepts keys that can be converted to string values
 11 |   public typealias KeyType = K
    :
 55 |
 56 |     cacheQueue.async {
 57 |       self.calculateSize()
    |       `- warning: capture of 'self' with non-sendable type 'DiskCacheLevel<K, T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 58 |       self.controlCapacity()
 59 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/CacheLevels/DiskCacheLevel.swift:100:42: warning: 'unarchiveTopLevelObjectWithData' was deprecated in macOS 10.14: Use unarchivedObject(ofClass:from:) instead
 98 |
 99 |       if let data = try? Data(contentsOf: URL(fileURLWithPath: path)),
100 |         let obj = try? NSKeyedUnarchiver.unarchiveTopLevelObjectWithData(data) as? T
    |                                          `- warning: 'unarchiveTopLevelObjectWithData' was deprecated in macOS 10.14: Use unarchivedObject(ofClass:from:) instead
101 |       {
102 |         Logger.log("DiskCacheLevel| Fetched \(key.toString()) on disk level", .info)
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/CacheLevels/DiskCacheLevel.swift:150:7: warning: capture of 'self' with non-sendable type 'DiskCacheLevel<K, T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  7 |
  8 | /// This class is a disk cache level. It has a configurable total size that defaults to 100 MB.
  9 | public final class DiskCacheLevel<K: StringConvertible, T: NSCoding>: CacheLevel {
    |                    `- note: generic class 'DiskCacheLevel' does not conform to the 'Sendable' protocol
 10 |   /// At the moment the disk cache level only accepts keys that can be converted to string values
 11 |   public typealias KeyType = K
    :
148 |   public func clear() {
149 |     cacheQueue.async {
150 |       self.itemsInDirectory(self.path).forEach { filePath in
    |       `- warning: capture of 'self' with non-sendable type 'DiskCacheLevel<K, T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
151 |         _ = try? self.fileManager.removeItem(atPath: filePath)
152 |       }
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/CacheLevels/DiskCacheLevel.swift:151:18: warning: capture of 'self' with non-sendable type 'DiskCacheLevel<K, T>' in an isolated closure; this is an error in the Swift 6 language mode
  7 |
  8 | /// This class is a disk cache level. It has a configurable total size that defaults to 100 MB.
  9 | public final class DiskCacheLevel<K: StringConvertible, T: NSCoding>: CacheLevel {
    |                    `- note: generic class 'DiskCacheLevel' does not conform to the 'Sendable' protocol
 10 |   /// At the moment the disk cache level only accepts keys that can be converted to string values
 11 |   public typealias KeyType = K
    :
149 |     cacheQueue.async {
150 |       self.itemsInDirectory(self.path).forEach { filePath in
151 |         _ = try? self.fileManager.removeItem(atPath: filePath)
    |                  `- warning: capture of 'self' with non-sendable type 'DiskCacheLevel<K, T>' in an isolated closure; this is an error in the Swift 6 language mode
152 |       }
153 |       self.calculateSize()
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/CacheLevels/DiskCacheLevel.swift:161:7: warning: capture of 'self' with non-sendable type 'DiskCacheLevel<K, T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  7 |
  8 | /// This class is a disk cache level. It has a configurable total size that defaults to 100 MB.
  9 | public final class DiskCacheLevel<K: StringConvertible, T: NSCoding>: CacheLevel {
    |                    `- note: generic class 'DiskCacheLevel' does not conform to the 'Sendable' protocol
 10 |   /// At the moment the disk cache level only accepts keys that can be converted to string values
 11 |   public typealias KeyType = K
    :
159 |   private func removeData(_ key: K) {
160 |     cacheQueue.async {
161 |       self.removeFileAtPath(self.pathForKey(key))
    |       `- warning: capture of 'self' with non-sendable type 'DiskCacheLevel<K, T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
162 |     }
163 |   }
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/CacheLevels/DiskCacheLevel.swift:161:45: warning: capture of 'key' with non-sendable type 'K' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  7 |
  8 | /// This class is a disk cache level. It has a configurable total size that defaults to 100 MB.
  9 | public final class DiskCacheLevel<K: StringConvertible, T: NSCoding>: CacheLevel {
    |                                   `- note: consider making generic parameter 'K' conform to the 'Sendable' protocol
 10 |   /// At the moment the disk cache level only accepts keys that can be converted to string values
 11 |   public typealias KeyType = K
    :
159 |   private func removeData(_ key: K) {
160 |     cacheQueue.async {
161 |       self.removeFileAtPath(self.pathForKey(key))
    |                                             `- warning: capture of 'key' with non-sendable type 'K' in a `@Sendable` closure; this is an error in the Swift 6 language mode
162 |     }
163 |   }
[10/43] Compiling Carlos Conditioned.swift
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/CacheLevels/DiskCacheLevel.swift:24:9: warning: capture of 'self' with non-sendable type 'DiskCacheLevel<K, T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  7 |
  8 | /// This class is a disk cache level. It has a configurable total size that defaults to 100 MB.
  9 | public final class DiskCacheLevel<K: StringConvertible, T: NSCoding>: CacheLevel {
    |                    `- note: generic class 'DiskCacheLevel' does not conform to the 'Sendable' protocol
 10 |   /// At the moment the disk cache level only accepts keys that can be converted to string values
 11 |   public typealias KeyType = K
    :
 22 |     didSet {
 23 |       cacheQueue.async {
 24 |         self.controlCapacity()
    |         `- warning: capture of 'self' with non-sendable type 'DiskCacheLevel<K, T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 25 |       }
 26 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/CacheLevels/DiskCacheLevel.swift:57:7: warning: capture of 'self' with non-sendable type 'DiskCacheLevel<K, T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  7 |
  8 | /// This class is a disk cache level. It has a configurable total size that defaults to 100 MB.
  9 | public final class DiskCacheLevel<K: StringConvertible, T: NSCoding>: CacheLevel {
    |                    `- note: generic class 'DiskCacheLevel' does not conform to the 'Sendable' protocol
 10 |   /// At the moment the disk cache level only accepts keys that can be converted to string values
 11 |   public typealias KeyType = K
    :
 55 |
 56 |     cacheQueue.async {
 57 |       self.calculateSize()
    |       `- warning: capture of 'self' with non-sendable type 'DiskCacheLevel<K, T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 58 |       self.controlCapacity()
 59 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/CacheLevels/DiskCacheLevel.swift:100:42: warning: 'unarchiveTopLevelObjectWithData' was deprecated in macOS 10.14: Use unarchivedObject(ofClass:from:) instead
 98 |
 99 |       if let data = try? Data(contentsOf: URL(fileURLWithPath: path)),
100 |         let obj = try? NSKeyedUnarchiver.unarchiveTopLevelObjectWithData(data) as? T
    |                                          `- warning: 'unarchiveTopLevelObjectWithData' was deprecated in macOS 10.14: Use unarchivedObject(ofClass:from:) instead
101 |       {
102 |         Logger.log("DiskCacheLevel| Fetched \(key.toString()) on disk level", .info)
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/CacheLevels/DiskCacheLevel.swift:150:7: warning: capture of 'self' with non-sendable type 'DiskCacheLevel<K, T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  7 |
  8 | /// This class is a disk cache level. It has a configurable total size that defaults to 100 MB.
  9 | public final class DiskCacheLevel<K: StringConvertible, T: NSCoding>: CacheLevel {
    |                    `- note: generic class 'DiskCacheLevel' does not conform to the 'Sendable' protocol
 10 |   /// At the moment the disk cache level only accepts keys that can be converted to string values
 11 |   public typealias KeyType = K
    :
148 |   public func clear() {
149 |     cacheQueue.async {
150 |       self.itemsInDirectory(self.path).forEach { filePath in
    |       `- warning: capture of 'self' with non-sendable type 'DiskCacheLevel<K, T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
151 |         _ = try? self.fileManager.removeItem(atPath: filePath)
152 |       }
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/CacheLevels/DiskCacheLevel.swift:151:18: warning: capture of 'self' with non-sendable type 'DiskCacheLevel<K, T>' in an isolated closure; this is an error in the Swift 6 language mode
  7 |
  8 | /// This class is a disk cache level. It has a configurable total size that defaults to 100 MB.
  9 | public final class DiskCacheLevel<K: StringConvertible, T: NSCoding>: CacheLevel {
    |                    `- note: generic class 'DiskCacheLevel' does not conform to the 'Sendable' protocol
 10 |   /// At the moment the disk cache level only accepts keys that can be converted to string values
 11 |   public typealias KeyType = K
    :
149 |     cacheQueue.async {
150 |       self.itemsInDirectory(self.path).forEach { filePath in
151 |         _ = try? self.fileManager.removeItem(atPath: filePath)
    |                  `- warning: capture of 'self' with non-sendable type 'DiskCacheLevel<K, T>' in an isolated closure; this is an error in the Swift 6 language mode
152 |       }
153 |       self.calculateSize()
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/CacheLevels/DiskCacheLevel.swift:161:7: warning: capture of 'self' with non-sendable type 'DiskCacheLevel<K, T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  7 |
  8 | /// This class is a disk cache level. It has a configurable total size that defaults to 100 MB.
  9 | public final class DiskCacheLevel<K: StringConvertible, T: NSCoding>: CacheLevel {
    |                    `- note: generic class 'DiskCacheLevel' does not conform to the 'Sendable' protocol
 10 |   /// At the moment the disk cache level only accepts keys that can be converted to string values
 11 |   public typealias KeyType = K
    :
159 |   private func removeData(_ key: K) {
160 |     cacheQueue.async {
161 |       self.removeFileAtPath(self.pathForKey(key))
    |       `- warning: capture of 'self' with non-sendable type 'DiskCacheLevel<K, T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
162 |     }
163 |   }
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/CacheLevels/DiskCacheLevel.swift:161:45: warning: capture of 'key' with non-sendable type 'K' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  7 |
  8 | /// This class is a disk cache level. It has a configurable total size that defaults to 100 MB.
  9 | public final class DiskCacheLevel<K: StringConvertible, T: NSCoding>: CacheLevel {
    |                                   `- note: consider making generic parameter 'K' conform to the 'Sendable' protocol
 10 |   /// At the moment the disk cache level only accepts keys that can be converted to string values
 11 |   public typealias KeyType = K
    :
159 |   private func removeData(_ key: K) {
160 |     cacheQueue.async {
161 |       self.removeFileAtPath(self.pathForKey(key))
    |                                             `- warning: capture of 'key' with non-sendable type 'K' in a `@Sendable` closure; this is an error in the Swift 6 language mode
162 |     }
163 |   }
[11/43] Compiling Carlos DiskCacheLevel.swift
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/CacheLevels/DiskCacheLevel.swift:24:9: warning: capture of 'self' with non-sendable type 'DiskCacheLevel<K, T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  7 |
  8 | /// This class is a disk cache level. It has a configurable total size that defaults to 100 MB.
  9 | public final class DiskCacheLevel<K: StringConvertible, T: NSCoding>: CacheLevel {
    |                    `- note: generic class 'DiskCacheLevel' does not conform to the 'Sendable' protocol
 10 |   /// At the moment the disk cache level only accepts keys that can be converted to string values
 11 |   public typealias KeyType = K
    :
 22 |     didSet {
 23 |       cacheQueue.async {
 24 |         self.controlCapacity()
    |         `- warning: capture of 'self' with non-sendable type 'DiskCacheLevel<K, T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 25 |       }
 26 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/CacheLevels/DiskCacheLevel.swift:57:7: warning: capture of 'self' with non-sendable type 'DiskCacheLevel<K, T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  7 |
  8 | /// This class is a disk cache level. It has a configurable total size that defaults to 100 MB.
  9 | public final class DiskCacheLevel<K: StringConvertible, T: NSCoding>: CacheLevel {
    |                    `- note: generic class 'DiskCacheLevel' does not conform to the 'Sendable' protocol
 10 |   /// At the moment the disk cache level only accepts keys that can be converted to string values
 11 |   public typealias KeyType = K
    :
 55 |
 56 |     cacheQueue.async {
 57 |       self.calculateSize()
    |       `- warning: capture of 'self' with non-sendable type 'DiskCacheLevel<K, T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 58 |       self.controlCapacity()
 59 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/CacheLevels/DiskCacheLevel.swift:100:42: warning: 'unarchiveTopLevelObjectWithData' was deprecated in macOS 10.14: Use unarchivedObject(ofClass:from:) instead
 98 |
 99 |       if let data = try? Data(contentsOf: URL(fileURLWithPath: path)),
100 |         let obj = try? NSKeyedUnarchiver.unarchiveTopLevelObjectWithData(data) as? T
    |                                          `- warning: 'unarchiveTopLevelObjectWithData' was deprecated in macOS 10.14: Use unarchivedObject(ofClass:from:) instead
101 |       {
102 |         Logger.log("DiskCacheLevel| Fetched \(key.toString()) on disk level", .info)
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/CacheLevels/DiskCacheLevel.swift:150:7: warning: capture of 'self' with non-sendable type 'DiskCacheLevel<K, T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  7 |
  8 | /// This class is a disk cache level. It has a configurable total size that defaults to 100 MB.
  9 | public final class DiskCacheLevel<K: StringConvertible, T: NSCoding>: CacheLevel {
    |                    `- note: generic class 'DiskCacheLevel' does not conform to the 'Sendable' protocol
 10 |   /// At the moment the disk cache level only accepts keys that can be converted to string values
 11 |   public typealias KeyType = K
    :
148 |   public func clear() {
149 |     cacheQueue.async {
150 |       self.itemsInDirectory(self.path).forEach { filePath in
    |       `- warning: capture of 'self' with non-sendable type 'DiskCacheLevel<K, T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
151 |         _ = try? self.fileManager.removeItem(atPath: filePath)
152 |       }
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/CacheLevels/DiskCacheLevel.swift:151:18: warning: capture of 'self' with non-sendable type 'DiskCacheLevel<K, T>' in an isolated closure; this is an error in the Swift 6 language mode
  7 |
  8 | /// This class is a disk cache level. It has a configurable total size that defaults to 100 MB.
  9 | public final class DiskCacheLevel<K: StringConvertible, T: NSCoding>: CacheLevel {
    |                    `- note: generic class 'DiskCacheLevel' does not conform to the 'Sendable' protocol
 10 |   /// At the moment the disk cache level only accepts keys that can be converted to string values
 11 |   public typealias KeyType = K
    :
149 |     cacheQueue.async {
150 |       self.itemsInDirectory(self.path).forEach { filePath in
151 |         _ = try? self.fileManager.removeItem(atPath: filePath)
    |                  `- warning: capture of 'self' with non-sendable type 'DiskCacheLevel<K, T>' in an isolated closure; this is an error in the Swift 6 language mode
152 |       }
153 |       self.calculateSize()
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/CacheLevels/DiskCacheLevel.swift:161:7: warning: capture of 'self' with non-sendable type 'DiskCacheLevel<K, T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  7 |
  8 | /// This class is a disk cache level. It has a configurable total size that defaults to 100 MB.
  9 | public final class DiskCacheLevel<K: StringConvertible, T: NSCoding>: CacheLevel {
    |                    `- note: generic class 'DiskCacheLevel' does not conform to the 'Sendable' protocol
 10 |   /// At the moment the disk cache level only accepts keys that can be converted to string values
 11 |   public typealias KeyType = K
    :
159 |   private func removeData(_ key: K) {
160 |     cacheQueue.async {
161 |       self.removeFileAtPath(self.pathForKey(key))
    |       `- warning: capture of 'self' with non-sendable type 'DiskCacheLevel<K, T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
162 |     }
163 |   }
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/CacheLevels/DiskCacheLevel.swift:161:45: warning: capture of 'key' with non-sendable type 'K' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  7 |
  8 | /// This class is a disk cache level. It has a configurable total size that defaults to 100 MB.
  9 | public final class DiskCacheLevel<K: StringConvertible, T: NSCoding>: CacheLevel {
    |                                   `- note: consider making generic parameter 'K' conform to the 'Sendable' protocol
 10 |   /// At the moment the disk cache level only accepts keys that can be converted to string values
 11 |   public typealias KeyType = K
    :
159 |   private func removeData(_ key: K) {
160 |     cacheQueue.async {
161 |       self.removeFileAtPath(self.pathForKey(key))
    |                                             `- warning: capture of 'key' with non-sendable type 'K' in a `@Sendable` closure; this is an error in the Swift 6 language mode
162 |     }
163 |   }
[12/43] Compiling Carlos PoolCache.swift
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/CacheProvider.swift:6:21: warning: static property 'sharedDataCache' is not concurrency-safe because non-'Sendable' type 'BasicCache<URL, NSData>' may have shared mutable state; this is an error in the Swift 6 language mode
 4 | public enum CacheProvider {
 5 |   /// A shared data cache instance
 6 |   public static let sharedDataCache: BasicCache<URL, NSData> = CacheProvider.dataCache()
   |                     |- warning: static property 'sharedDataCache' is not concurrency-safe because non-'Sendable' type 'BasicCache<URL, NSData>' may have shared mutable state; this is an error in the Swift 6 language mode
   |                     |- note: annotate 'sharedDataCache' with '@MainActor' if property should only be accessed from the main actor
   |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 7 |
 8 |   /// A shared JSON cache instance
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/Core/BasicCache.swift:5:20: note: generic class 'BasicCache' does not conform to the 'Sendable' protocol
 3 |
 4 | /// A wrapper cache that explicitly takes get, set, clear and memory warning closures
 5 | public final class BasicCache<A, B>: CacheLevel {
   |                    `- note: generic class 'BasicCache' does not conform to the 'Sendable' protocol
 6 |   public typealias KeyType = A
 7 |   public typealias OutputType = B
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/CacheProvider.swift:9:21: warning: static property 'sharedJSONCache' is not concurrency-safe because non-'Sendable' type 'BasicCache<URL, AnyObject>' may have shared mutable state; this is an error in the Swift 6 language mode
 7 |
 8 |   /// A shared JSON cache instance
 9 |   public static let sharedJSONCache: BasicCache<URL, AnyObject> = CacheProvider.JSONCache()
   |                     |- warning: static property 'sharedJSONCache' is not concurrency-safe because non-'Sendable' type 'BasicCache<URL, AnyObject>' may have shared mutable state; this is an error in the Swift 6 language mode
   |                     |- note: annotate 'sharedJSONCache' with '@MainActor' if property should only be accessed from the main actor
   |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
10 |
11 |   /// A shared image cache instance
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/Core/BasicCache.swift:5:20: note: generic class 'BasicCache' does not conform to the 'Sendable' protocol
 3 |
 4 | /// A wrapper cache that explicitly takes get, set, clear and memory warning closures
 5 | public final class BasicCache<A, B>: CacheLevel {
   |                    `- note: generic class 'BasicCache' does not conform to the 'Sendable' protocol
 6 |   public typealias KeyType = A
 7 |   public typealias OutputType = B
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/CacheProvider.swift:12:21: warning: static property 'sharedImageCache' is not concurrency-safe because non-'Sendable' type 'BasicCache<URL, CarlosImage>' (aka 'BasicCache<URL, NSImage>') may have shared mutable state; this is an error in the Swift 6 language mode
10 |
11 |   /// A shared image cache instance
12 |   public static let sharedImageCache: BasicCache<URL, CarlosImage> = CacheProvider.imageCache()
   |                     |- warning: static property 'sharedImageCache' is not concurrency-safe because non-'Sendable' type 'BasicCache<URL, CarlosImage>' (aka 'BasicCache<URL, NSImage>') may have shared mutable state; this is an error in the Swift 6 language mode
   |                     |- note: annotate 'sharedImageCache' with '@MainActor' if property should only be accessed from the main actor
   |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
13 |
14 |   /// - Returns: An initialized and configured CacheLevel that takes URL keys and stores NSData values.
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/Core/BasicCache.swift:5:20: note: generic class 'BasicCache' does not conform to the 'Sendable' protocol
 3 |
 4 | /// A wrapper cache that explicitly takes get, set, clear and memory warning closures
 5 | public final class BasicCache<A, B>: CacheLevel {
   |                    `- note: generic class 'BasicCache' does not conform to the 'Sendable' protocol
 6 |   public typealias KeyType = A
 7 |   public typealias OutputType = B
[13/43] Compiling Carlos CacheProvider.swift
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/CacheProvider.swift:6:21: warning: static property 'sharedDataCache' is not concurrency-safe because non-'Sendable' type 'BasicCache<URL, NSData>' may have shared mutable state; this is an error in the Swift 6 language mode
 4 | public enum CacheProvider {
 5 |   /// A shared data cache instance
 6 |   public static let sharedDataCache: BasicCache<URL, NSData> = CacheProvider.dataCache()
   |                     |- warning: static property 'sharedDataCache' is not concurrency-safe because non-'Sendable' type 'BasicCache<URL, NSData>' may have shared mutable state; this is an error in the Swift 6 language mode
   |                     |- note: annotate 'sharedDataCache' with '@MainActor' if property should only be accessed from the main actor
   |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 7 |
 8 |   /// A shared JSON cache instance
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/Core/BasicCache.swift:5:20: note: generic class 'BasicCache' does not conform to the 'Sendable' protocol
 3 |
 4 | /// A wrapper cache that explicitly takes get, set, clear and memory warning closures
 5 | public final class BasicCache<A, B>: CacheLevel {
   |                    `- note: generic class 'BasicCache' does not conform to the 'Sendable' protocol
 6 |   public typealias KeyType = A
 7 |   public typealias OutputType = B
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/CacheProvider.swift:9:21: warning: static property 'sharedJSONCache' is not concurrency-safe because non-'Sendable' type 'BasicCache<URL, AnyObject>' may have shared mutable state; this is an error in the Swift 6 language mode
 7 |
 8 |   /// A shared JSON cache instance
 9 |   public static let sharedJSONCache: BasicCache<URL, AnyObject> = CacheProvider.JSONCache()
   |                     |- warning: static property 'sharedJSONCache' is not concurrency-safe because non-'Sendable' type 'BasicCache<URL, AnyObject>' may have shared mutable state; this is an error in the Swift 6 language mode
   |                     |- note: annotate 'sharedJSONCache' with '@MainActor' if property should only be accessed from the main actor
   |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
10 |
11 |   /// A shared image cache instance
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/Core/BasicCache.swift:5:20: note: generic class 'BasicCache' does not conform to the 'Sendable' protocol
 3 |
 4 | /// A wrapper cache that explicitly takes get, set, clear and memory warning closures
 5 | public final class BasicCache<A, B>: CacheLevel {
   |                    `- note: generic class 'BasicCache' does not conform to the 'Sendable' protocol
 6 |   public typealias KeyType = A
 7 |   public typealias OutputType = B
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/CacheProvider.swift:12:21: warning: static property 'sharedImageCache' is not concurrency-safe because non-'Sendable' type 'BasicCache<URL, CarlosImage>' (aka 'BasicCache<URL, NSImage>') may have shared mutable state; this is an error in the Swift 6 language mode
10 |
11 |   /// A shared image cache instance
12 |   public static let sharedImageCache: BasicCache<URL, CarlosImage> = CacheProvider.imageCache()
   |                     |- warning: static property 'sharedImageCache' is not concurrency-safe because non-'Sendable' type 'BasicCache<URL, CarlosImage>' (aka 'BasicCache<URL, NSImage>') may have shared mutable state; this is an error in the Swift 6 language mode
   |                     |- note: annotate 'sharedImageCache' with '@MainActor' if property should only be accessed from the main actor
   |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
13 |
14 |   /// - Returns: An initialized and configured CacheLevel that takes URL keys and stores NSData values.
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/Core/BasicCache.swift:5:20: note: generic class 'BasicCache' does not conform to the 'Sendable' protocol
 3 |
 4 | /// A wrapper cache that explicitly takes get, set, clear and memory warning closures
 5 | public final class BasicCache<A, B>: CacheLevel {
   |                    `- note: generic class 'BasicCache' does not conform to the 'Sendable' protocol
 6 |   public typealias KeyType = A
 7 |   public typealias OutputType = B
[14/43] Compiling Carlos Carlos.swift
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/CacheProvider.swift:6:21: warning: static property 'sharedDataCache' is not concurrency-safe because non-'Sendable' type 'BasicCache<URL, NSData>' may have shared mutable state; this is an error in the Swift 6 language mode
 4 | public enum CacheProvider {
 5 |   /// A shared data cache instance
 6 |   public static let sharedDataCache: BasicCache<URL, NSData> = CacheProvider.dataCache()
   |                     |- warning: static property 'sharedDataCache' is not concurrency-safe because non-'Sendable' type 'BasicCache<URL, NSData>' may have shared mutable state; this is an error in the Swift 6 language mode
   |                     |- note: annotate 'sharedDataCache' with '@MainActor' if property should only be accessed from the main actor
   |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 7 |
 8 |   /// A shared JSON cache instance
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/Core/BasicCache.swift:5:20: note: generic class 'BasicCache' does not conform to the 'Sendable' protocol
 3 |
 4 | /// A wrapper cache that explicitly takes get, set, clear and memory warning closures
 5 | public final class BasicCache<A, B>: CacheLevel {
   |                    `- note: generic class 'BasicCache' does not conform to the 'Sendable' protocol
 6 |   public typealias KeyType = A
 7 |   public typealias OutputType = B
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/CacheProvider.swift:9:21: warning: static property 'sharedJSONCache' is not concurrency-safe because non-'Sendable' type 'BasicCache<URL, AnyObject>' may have shared mutable state; this is an error in the Swift 6 language mode
 7 |
 8 |   /// A shared JSON cache instance
 9 |   public static let sharedJSONCache: BasicCache<URL, AnyObject> = CacheProvider.JSONCache()
   |                     |- warning: static property 'sharedJSONCache' is not concurrency-safe because non-'Sendable' type 'BasicCache<URL, AnyObject>' may have shared mutable state; this is an error in the Swift 6 language mode
   |                     |- note: annotate 'sharedJSONCache' with '@MainActor' if property should only be accessed from the main actor
   |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
10 |
11 |   /// A shared image cache instance
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/Core/BasicCache.swift:5:20: note: generic class 'BasicCache' does not conform to the 'Sendable' protocol
 3 |
 4 | /// A wrapper cache that explicitly takes get, set, clear and memory warning closures
 5 | public final class BasicCache<A, B>: CacheLevel {
   |                    `- note: generic class 'BasicCache' does not conform to the 'Sendable' protocol
 6 |   public typealias KeyType = A
 7 |   public typealias OutputType = B
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/CacheProvider.swift:12:21: warning: static property 'sharedImageCache' is not concurrency-safe because non-'Sendable' type 'BasicCache<URL, CarlosImage>' (aka 'BasicCache<URL, NSImage>') may have shared mutable state; this is an error in the Swift 6 language mode
10 |
11 |   /// A shared image cache instance
12 |   public static let sharedImageCache: BasicCache<URL, CarlosImage> = CacheProvider.imageCache()
   |                     |- warning: static property 'sharedImageCache' is not concurrency-safe because non-'Sendable' type 'BasicCache<URL, CarlosImage>' (aka 'BasicCache<URL, NSImage>') may have shared mutable state; this is an error in the Swift 6 language mode
   |                     |- note: annotate 'sharedImageCache' with '@MainActor' if property should only be accessed from the main actor
   |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
13 |
14 |   /// - Returns: An initialized and configured CacheLevel that takes URL keys and stores NSData values.
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/Core/BasicCache.swift:5:20: note: generic class 'BasicCache' does not conform to the 'Sendable' protocol
 3 |
 4 | /// A wrapper cache that explicitly takes get, set, clear and memory warning closures
 5 | public final class BasicCache<A, B>: CacheLevel {
   |                    `- note: generic class 'BasicCache' does not conform to the 'Sendable' protocol
 6 |   public typealias KeyType = A
 7 |   public typealias OutputType = B
[15/43] Compiling Carlos BasicCache.swift
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/CacheProvider.swift:6:21: warning: static property 'sharedDataCache' is not concurrency-safe because non-'Sendable' type 'BasicCache<URL, NSData>' may have shared mutable state; this is an error in the Swift 6 language mode
 4 | public enum CacheProvider {
 5 |   /// A shared data cache instance
 6 |   public static let sharedDataCache: BasicCache<URL, NSData> = CacheProvider.dataCache()
   |                     |- warning: static property 'sharedDataCache' is not concurrency-safe because non-'Sendable' type 'BasicCache<URL, NSData>' may have shared mutable state; this is an error in the Swift 6 language mode
   |                     |- note: annotate 'sharedDataCache' with '@MainActor' if property should only be accessed from the main actor
   |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 7 |
 8 |   /// A shared JSON cache instance
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/Core/BasicCache.swift:5:20: note: generic class 'BasicCache' does not conform to the 'Sendable' protocol
 3 |
 4 | /// A wrapper cache that explicitly takes get, set, clear and memory warning closures
 5 | public final class BasicCache<A, B>: CacheLevel {
   |                    `- note: generic class 'BasicCache' does not conform to the 'Sendable' protocol
 6 |   public typealias KeyType = A
 7 |   public typealias OutputType = B
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/CacheProvider.swift:9:21: warning: static property 'sharedJSONCache' is not concurrency-safe because non-'Sendable' type 'BasicCache<URL, AnyObject>' may have shared mutable state; this is an error in the Swift 6 language mode
 7 |
 8 |   /// A shared JSON cache instance
 9 |   public static let sharedJSONCache: BasicCache<URL, AnyObject> = CacheProvider.JSONCache()
   |                     |- warning: static property 'sharedJSONCache' is not concurrency-safe because non-'Sendable' type 'BasicCache<URL, AnyObject>' may have shared mutable state; this is an error in the Swift 6 language mode
   |                     |- note: annotate 'sharedJSONCache' with '@MainActor' if property should only be accessed from the main actor
   |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
10 |
11 |   /// A shared image cache instance
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/Core/BasicCache.swift:5:20: note: generic class 'BasicCache' does not conform to the 'Sendable' protocol
 3 |
 4 | /// A wrapper cache that explicitly takes get, set, clear and memory warning closures
 5 | public final class BasicCache<A, B>: CacheLevel {
   |                    `- note: generic class 'BasicCache' does not conform to the 'Sendable' protocol
 6 |   public typealias KeyType = A
 7 |   public typealias OutputType = B
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/CacheProvider.swift:12:21: warning: static property 'sharedImageCache' is not concurrency-safe because non-'Sendable' type 'BasicCache<URL, CarlosImage>' (aka 'BasicCache<URL, NSImage>') may have shared mutable state; this is an error in the Swift 6 language mode
10 |
11 |   /// A shared image cache instance
12 |   public static let sharedImageCache: BasicCache<URL, CarlosImage> = CacheProvider.imageCache()
   |                     |- warning: static property 'sharedImageCache' is not concurrency-safe because non-'Sendable' type 'BasicCache<URL, CarlosImage>' (aka 'BasicCache<URL, NSImage>') may have shared mutable state; this is an error in the Swift 6 language mode
   |                     |- note: annotate 'sharedImageCache' with '@MainActor' if property should only be accessed from the main actor
   |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
13 |
14 |   /// - Returns: An initialized and configured CacheLevel that takes URL keys and stores NSData values.
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/Core/BasicCache.swift:5:20: note: generic class 'BasicCache' does not conform to the 'Sendable' protocol
 3 |
 4 | /// A wrapper cache that explicitly takes get, set, clear and memory warning closures
 5 | public final class BasicCache<A, B>: CacheLevel {
   |                    `- note: generic class 'BasicCache' does not conform to the 'Sendable' protocol
 6 |   public typealias KeyType = A
 7 |   public typealias OutputType = B
[16/43] Compiling Carlos Fetcher.swift
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/CacheLevels/NSUserDefaultsCacheLevel.swift:99:57: warning: 'unarchiveTopLevelObjectWithData' was deprecated in macOS 10.14: Use unarchivedObject(ofClass:from:) instead
 97 |
 98 |       if let cachedValue = self.safeInternalDomain[key.toString()] {
 99 |         if let unencodedObject = try? NSKeyedUnarchiver.unarchiveTopLevelObjectWithData(cachedValue) as? T {
    |                                                         `- warning: 'unarchiveTopLevelObjectWithData' was deprecated in macOS 10.14: Use unarchivedObject(ofClass:from:) instead
100 |           Logger.log("Fetched \(key.toString()) on user defaults level (domain \(self.domainName)")
101 |           promise(.success(unencodedObject))
[17/43] Compiling Carlos MemoryCacheLevel.swift
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/CacheLevels/NSUserDefaultsCacheLevel.swift:99:57: warning: 'unarchiveTopLevelObjectWithData' was deprecated in macOS 10.14: Use unarchivedObject(ofClass:from:) instead
 97 |
 98 |       if let cachedValue = self.safeInternalDomain[key.toString()] {
 99 |         if let unencodedObject = try? NSKeyedUnarchiver.unarchiveTopLevelObjectWithData(cachedValue) as? T {
    |                                                         `- warning: 'unarchiveTopLevelObjectWithData' was deprecated in macOS 10.14: Use unarchivedObject(ofClass:from:) instead
100 |           Logger.log("Fetched \(key.toString()) on user defaults level (domain \(self.domainName)")
101 |           promise(.success(unencodedObject))
[18/43] Compiling Carlos NSUserDefaultsCacheLevel.swift
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/CacheLevels/NSUserDefaultsCacheLevel.swift:99:57: warning: 'unarchiveTopLevelObjectWithData' was deprecated in macOS 10.14: Use unarchivedObject(ofClass:from:) instead
 97 |
 98 |       if let cachedValue = self.safeInternalDomain[key.toString()] {
 99 |         if let unencodedObject = try? NSKeyedUnarchiver.unarchiveTopLevelObjectWithData(cachedValue) as? T {
    |                                                         `- warning: 'unarchiveTopLevelObjectWithData' was deprecated in macOS 10.14: Use unarchivedObject(ofClass:from:) instead
100 |           Logger.log("Fetched \(key.toString()) on user defaults level (domain \(self.domainName)")
101 |           promise(.success(unencodedObject))
[19/43] Compiling Carlos NetworkFetcher.swift
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/CacheLevels/NSUserDefaultsCacheLevel.swift:99:57: warning: 'unarchiveTopLevelObjectWithData' was deprecated in macOS 10.14: Use unarchivedObject(ofClass:from:) instead
 97 |
 98 |       if let cachedValue = self.safeInternalDomain[key.toString()] {
 99 |         if let unencodedObject = try? NSKeyedUnarchiver.unarchiveTopLevelObjectWithData(cachedValue) as? T {
    |                                                         `- warning: 'unarchiveTopLevelObjectWithData' was deprecated in macOS 10.14: Use unarchivedObject(ofClass:from:) instead
100 |           Logger.log("Fetched \(key.toString()) on user defaults level (domain \(self.domainName)")
101 |           promise(.success(unencodedObject))
[20/43] Compiling Carlos Normalize.swift
[21/43] Compiling Carlos PostProcess.swift
[22/43] Compiling Carlos SwitchCache.swift
[23/43] Compiling Carlos ValueTransformation.swift
[24/43] Compiling Carlos FetcherValueTransformation.swift
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/Core/Logger.swift:18:21: warning: static property 'output' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
16 |    Called to output the log message. Override for custom logging.
17 |    */
18 |   public static var output: (String, Level) -> Void = { msg, level in
   |                     |- warning: static property 'output' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
   |                     |- note: convert 'output' to a 'let' constant to make 'Sendable' shared state immutable
   |                     |- note: annotate 'output' with '@MainActor' if property should only be accessed from the main actor
   |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
19 |     queue.async {
20 |       print("[Carlos][\(level.rawValue)]: \(msg)")
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/Core/Logger.swift:20:25: warning: capture of 'level' with non-sendable type 'Logger.Level' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 4 | public final class Logger {
 5 |   /// The level of the logged message
 6 |   public enum Level: String {
   |               `- note: consider making enum 'Level' conform to the 'Sendable' protocol
 7 |     case debug = "Debug"
 8 |     case info = "Info"
   :
18 |   public static var output: (String, Level) -> Void = { msg, level in
19 |     queue.async {
20 |       print("[Carlos][\(level.rawValue)]: \(msg)")
   |                         `- warning: capture of 'level' with non-sendable type 'Logger.Level' in a `@Sendable` closure; this is an error in the Swift 6 language mode
21 |     }
22 |   }
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/Core/Logger.swift:33:28: warning: capture of 'level' with non-sendable type 'Logger.Level' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 4 | public final class Logger {
 5 |   /// The level of the logged message
 6 |   public enum Level: String {
   |               `- note: consider making enum 'Level' conform to the 'Sendable' protocol
 7 |     case debug = "Debug"
 8 |     case info = "Info"
   :
31 |   public static func log(_ message: String, _ level: Level = Level.debug) {
32 |     DispatchQueue.main.async {
33 |       self.output(message, level)
   |                            `- warning: capture of 'level' with non-sendable type 'Logger.Level' in a `@Sendable` closure; this is an error in the Swift 6 language mode
34 |     }
35 |   }
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/Core/Logger.swift:33:28: warning: sending 'level' risks causing data races; this is an error in the Swift 6 language mode
31 |   public static func log(_ message: String, _ level: Level = Level.debug) {
32 |     DispatchQueue.main.async {
33 |       self.output(message, level)
   |                            |- warning: sending 'level' risks causing data races; this is an error in the Swift 6 language mode
   |                            `- note: task-isolated 'level' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
34 |     }
35 |   }
[25/43] Compiling Carlos FunctionComposition.swift
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/Core/Logger.swift:18:21: warning: static property 'output' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
16 |    Called to output the log message. Override for custom logging.
17 |    */
18 |   public static var output: (String, Level) -> Void = { msg, level in
   |                     |- warning: static property 'output' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
   |                     |- note: convert 'output' to a 'let' constant to make 'Sendable' shared state immutable
   |                     |- note: annotate 'output' with '@MainActor' if property should only be accessed from the main actor
   |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
19 |     queue.async {
20 |       print("[Carlos][\(level.rawValue)]: \(msg)")
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/Core/Logger.swift:20:25: warning: capture of 'level' with non-sendable type 'Logger.Level' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 4 | public final class Logger {
 5 |   /// The level of the logged message
 6 |   public enum Level: String {
   |               `- note: consider making enum 'Level' conform to the 'Sendable' protocol
 7 |     case debug = "Debug"
 8 |     case info = "Info"
   :
18 |   public static var output: (String, Level) -> Void = { msg, level in
19 |     queue.async {
20 |       print("[Carlos][\(level.rawValue)]: \(msg)")
   |                         `- warning: capture of 'level' with non-sendable type 'Logger.Level' in a `@Sendable` closure; this is an error in the Swift 6 language mode
21 |     }
22 |   }
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/Core/Logger.swift:33:28: warning: capture of 'level' with non-sendable type 'Logger.Level' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 4 | public final class Logger {
 5 |   /// The level of the logged message
 6 |   public enum Level: String {
   |               `- note: consider making enum 'Level' conform to the 'Sendable' protocol
 7 |     case debug = "Debug"
 8 |     case info = "Info"
   :
31 |   public static func log(_ message: String, _ level: Level = Level.debug) {
32 |     DispatchQueue.main.async {
33 |       self.output(message, level)
   |                            `- warning: capture of 'level' with non-sendable type 'Logger.Level' in a `@Sendable` closure; this is an error in the Swift 6 language mode
34 |     }
35 |   }
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/Core/Logger.swift:33:28: warning: sending 'level' risks causing data races; this is an error in the Swift 6 language mode
31 |   public static func log(_ message: String, _ level: Level = Level.debug) {
32 |     DispatchQueue.main.async {
33 |       self.output(message, level)
   |                            |- warning: sending 'level' risks causing data races; this is an error in the Swift 6 language mode
   |                            `- note: task-isolated 'level' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
34 |     }
35 |   }
[26/43] Compiling Carlos Logger.swift
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/Core/Logger.swift:18:21: warning: static property 'output' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
16 |    Called to output the log message. Override for custom logging.
17 |    */
18 |   public static var output: (String, Level) -> Void = { msg, level in
   |                     |- warning: static property 'output' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
   |                     |- note: convert 'output' to a 'let' constant to make 'Sendable' shared state immutable
   |                     |- note: annotate 'output' with '@MainActor' if property should only be accessed from the main actor
   |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
19 |     queue.async {
20 |       print("[Carlos][\(level.rawValue)]: \(msg)")
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/Core/Logger.swift:20:25: warning: capture of 'level' with non-sendable type 'Logger.Level' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 4 | public final class Logger {
 5 |   /// The level of the logged message
 6 |   public enum Level: String {
   |               `- note: consider making enum 'Level' conform to the 'Sendable' protocol
 7 |     case debug = "Debug"
 8 |     case info = "Info"
   :
18 |   public static var output: (String, Level) -> Void = { msg, level in
19 |     queue.async {
20 |       print("[Carlos][\(level.rawValue)]: \(msg)")
   |                         `- warning: capture of 'level' with non-sendable type 'Logger.Level' in a `@Sendable` closure; this is an error in the Swift 6 language mode
21 |     }
22 |   }
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/Core/Logger.swift:33:28: warning: capture of 'level' with non-sendable type 'Logger.Level' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 4 | public final class Logger {
 5 |   /// The level of the logged message
 6 |   public enum Level: String {
   |               `- note: consider making enum 'Level' conform to the 'Sendable' protocol
 7 |     case debug = "Debug"
 8 |     case info = "Info"
   :
31 |   public static func log(_ message: String, _ level: Level = Level.debug) {
32 |     DispatchQueue.main.async {
33 |       self.output(message, level)
   |                            `- warning: capture of 'level' with non-sendable type 'Logger.Level' in a `@Sendable` closure; this is an error in the Swift 6 language mode
34 |     }
35 |   }
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/Core/Logger.swift:33:28: warning: sending 'level' risks causing data races; this is an error in the Swift 6 language mode
31 |   public static func log(_ message: String, _ level: Level = Level.debug) {
32 |     DispatchQueue.main.async {
33 |       self.output(message, level)
   |                            |- warning: sending 'level' risks causing data races; this is an error in the Swift 6 language mode
   |                            `- note: task-isolated 'level' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
34 |     }
35 |   }
[27/43] Compiling Carlos MemoryWarning.swift
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/Core/Logger.swift:18:21: warning: static property 'output' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
16 |    Called to output the log message. Override for custom logging.
17 |    */
18 |   public static var output: (String, Level) -> Void = { msg, level in
   |                     |- warning: static property 'output' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
   |                     |- note: convert 'output' to a 'let' constant to make 'Sendable' shared state immutable
   |                     |- note: annotate 'output' with '@MainActor' if property should only be accessed from the main actor
   |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
19 |     queue.async {
20 |       print("[Carlos][\(level.rawValue)]: \(msg)")
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/Core/Logger.swift:20:25: warning: capture of 'level' with non-sendable type 'Logger.Level' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 4 | public final class Logger {
 5 |   /// The level of the logged message
 6 |   public enum Level: String {
   |               `- note: consider making enum 'Level' conform to the 'Sendable' protocol
 7 |     case debug = "Debug"
 8 |     case info = "Info"
   :
18 |   public static var output: (String, Level) -> Void = { msg, level in
19 |     queue.async {
20 |       print("[Carlos][\(level.rawValue)]: \(msg)")
   |                         `- warning: capture of 'level' with non-sendable type 'Logger.Level' in a `@Sendable` closure; this is an error in the Swift 6 language mode
21 |     }
22 |   }
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/Core/Logger.swift:33:28: warning: capture of 'level' with non-sendable type 'Logger.Level' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 4 | public final class Logger {
 5 |   /// The level of the logged message
 6 |   public enum Level: String {
   |               `- note: consider making enum 'Level' conform to the 'Sendable' protocol
 7 |     case debug = "Debug"
 8 |     case info = "Info"
   :
31 |   public static func log(_ message: String, _ level: Level = Level.debug) {
32 |     DispatchQueue.main.async {
33 |       self.output(message, level)
   |                            `- warning: capture of 'level' with non-sendable type 'Logger.Level' in a `@Sendable` closure; this is an error in the Swift 6 language mode
34 |     }
35 |   }
/Users/admin/builder/spi-builder-workspace/Sources/Carlos/Core/Logger.swift:33:28: warning: sending 'level' risks causing data races; this is an error in the Swift 6 language mode
31 |   public static func log(_ message: String, _ level: Level = Level.debug) {
32 |     DispatchQueue.main.async {
33 |       self.output(message, level)
   |                            |- warning: sending 'level' risks causing data races; this is an error in the Swift 6 language mode
   |                            `- note: task-isolated 'level' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
34 |     }
35 |   }
[28/43] Compiling Carlos StringConvertible.swift
[29/43] Compiling Carlos UnfairLock.swift
[30/43] Compiling Carlos CacheLevel+Batch.swift
[31/43] Compiling Carlos KeyTransformation.swift
[32/43] Compiling Carlos ConditionedTwoWayTransformer.swift
[33/43] Compiling Carlos ConditionedValueTransformation.swift
[34/43] Compiling Carlos ImageTransformer.swift
[35/43] Compiling Carlos JSONTransformer.swift
[36/43] Compiling Carlos BasicFetcher.swift
[37/43] Compiling Carlos Errors.swift
[38/43] Compiling Carlos ExpensiveObject.swift
[39/43] Compiling Carlos Extensions.swift
[40/43] Compiling Carlos OneWayTransformer.swift
[41/43] Compiling Carlos StringTransformer.swift
[42/43] Compiling Carlos Transformers.swift
[43/43] Compiling Carlos TwoWayTransformer.swift
Build complete! (43.55s)
Fetching https://github.com/Quick/Nimble.git
Fetching https://github.com/Quick/Quick.git
Fetching https://github.com/mattgallagher/CwlPreconditionTesting.git
Fetching https://github.com/mattgallagher/CwlCatchException.git
[1/1247] Fetching cwlpreconditiontesting
[39/1686] Fetching cwlpreconditiontesting, cwlcatchexception
[1687/16235] Fetching cwlpreconditiontesting, cwlcatchexception, quick
[10271/34875] Fetching cwlpreconditiontesting, cwlcatchexception, quick, nimble
Fetched https://github.com/Quick/Quick.git from cache (1.77s)
[3737/20326] Fetching cwlpreconditiontesting, cwlcatchexception, nimble
Fetched https://github.com/Quick/Nimble.git from cache (2.90s)
Fetched https://github.com/mattgallagher/CwlPreconditionTesting.git from cache (2.90s)
Fetched https://github.com/mattgallagher/CwlCatchException.git from cache (2.90s)
Computing version for https://github.com/Quick/Nimble.git
Computed https://github.com/Quick/Nimble.git at 9.2.1 (0.71s)
Computing version for https://github.com/Quick/Quick.git
Computed https://github.com/Quick/Quick.git at 4.0.0 (0.68s)
Computing version for https://github.com/mattgallagher/CwlPreconditionTesting.git
Computed https://github.com/mattgallagher/CwlPreconditionTesting.git at 2.1.0 (0.66s)
Computing version for https://github.com/mattgallagher/CwlCatchException.git
Computed https://github.com/mattgallagher/CwlCatchException.git at 2.1.1 (0.66s)
Creating working copy for https://github.com/mattgallagher/CwlCatchException.git
Working copy of https://github.com/mattgallagher/CwlCatchException.git resolved at 2.1.1
Creating working copy for https://github.com/mattgallagher/CwlPreconditionTesting.git
Working copy of https://github.com/mattgallagher/CwlPreconditionTesting.git resolved at 2.1.0
Creating working copy for https://github.com/Quick/Nimble.git
Working copy of https://github.com/Quick/Nimble.git resolved at 9.2.1
Creating working copy for https://github.com/Quick/Quick.git
Working copy of https://github.com/Quick/Quick.git resolved at 4.0.0
Build complete.
{
  "dependencies" : [
    {
      "identity" : "quick",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "4.0.0",
            "upper_bound" : "5.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/Quick/Quick.git"
    },
    {
      "identity" : "nimble",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "9.2.0",
            "upper_bound" : "10.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/Quick/Nimble.git"
    }
  ],
  "manifest_display_name" : "Carlos",
  "name" : "Carlos",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "ios",
      "version" : "13.0"
    },
    {
      "name" : "macos",
      "version" : "10.15"
    },
    {
      "name" : "tvos",
      "version" : "13.0"
    },
    {
      "name" : "watchos",
      "version" : "6.0"
    }
  ],
  "products" : [
    {
      "name" : "Carlos",
      "targets" : [
        "Carlos"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "swift_languages_versions" : [
    "5"
  ],
  "targets" : [
    {
      "c99name" : "CarlosTests",
      "module_type" : "SwiftTarget",
      "name" : "CarlosTests",
      "path" : "Tests/CarlosTests",
      "product_dependencies" : [
        "Quick",
        "Nimble"
      ],
      "sources" : [
        "BasicCacheTests.swift",
        "BasicFetcherTests.swift",
        "BatchTests.swift",
        "CacheProviderTests.swift",
        "CompositionTests.swift",
        "ConditionedCacheTests.swift",
        "ConditionedOneWayTransformationBoxTests.swift",
        "ConditionedOutputProcessingTests.swift",
        "ConditionedTransformersTests.swift",
        "ConditionedTwoWayTransformationBoxTests.swift",
        "ConditionedValueTransformationTests.swift",
        "DiskCacheTests.swift",
        "Fakes/Base64EncodedImage.swift",
        "Fakes/CacheLevelFake.swift",
        "Fakes/FetcherFake.swift",
        "FetcherValueTransformationTests.swift",
        "ImageTransformerTests.swift",
        "JSONTransformerTests.swift",
        "KeyTransformationTests.swift",
        "MKDistanceFormatterTransformerTests.swift",
        "MemoryCacheLevelTests.swift",
        "MemoryWarningNotificationTests.swift",
        "NSDateFormatterTransformerTests.swift",
        "NSNumberFormatterTransformerTests.swift",
        "NSUserDefaultsCacheLevelTests.swift",
        "NetworkFetcherTests.swift",
        "NormalizationTests.swift",
        "OneWayTransformationBoxTests.swift",
        "OneWayTransformerCompositionTests.swift",
        "PoolCacheTests.swift",
        "PostProcessTests.swift",
        "StringConvertibleTests.swift",
        "StringTransformerTests.swift",
        "SwitchCacheTests.swift",
        "TwoWayTransformationBoxTests.swift",
        "TwoWayTransformerCompositionTests.swift",
        "ValueTransformationTests.swift"
      ],
      "target_dependencies" : [
        "Carlos"
      ],
      "type" : "test"
    },
    {
      "c99name" : "Carlos",
      "module_type" : "SwiftTarget",
      "name" : "Carlos",
      "path" : "Sources/Carlos",
      "product_memberships" : [
        "Carlos"
      ],
      "sources" : [
        "CacheLevels/BatchAllCache.swift",
        "CacheLevels/Composed.swift",
        "CacheLevels/Conditioned.swift",
        "CacheLevels/DiskCacheLevel.swift",
        "CacheLevels/Fetcher.swift",
        "CacheLevels/MemoryCacheLevel.swift",
        "CacheLevels/NSUserDefaultsCacheLevel.swift",
        "CacheLevels/NetworkFetcher.swift",
        "CacheLevels/PoolCache.swift",
        "CacheProvider.swift",
        "Carlos.swift",
        "Core/BasicCache.swift",
        "Core/BasicFetcher.swift",
        "Core/Errors.swift",
        "Core/ExpensiveObject.swift",
        "Core/Extensions.swift",
        "Core/FetcherValueTransformation.swift",
        "Core/FunctionComposition.swift",
        "Core/Logger.swift",
        "Core/MemoryWarning.swift",
        "Core/StringConvertible.swift",
        "Core/UnfairLock.swift",
        "Operations/CacheLevel+Batch.swift",
        "Operations/KeyTransformation.swift",
        "Operations/Normalize.swift",
        "Operations/PostProcess.swift",
        "Operations/SwitchCache.swift",
        "Operations/ValueTransformation.swift",
        "Transformers/ComposedOneWayTransformer.swift",
        "Transformers/ComposedTwoWayTransformer.swift",
        "Transformers/ConditionedOneWayTransformer.swift",
        "Transformers/ConditionedOutputProcessing.swift",
        "Transformers/ConditionedTwoWayTransformer.swift",
        "Transformers/ConditionedValueTransformation.swift",
        "Transformers/ImageTransformer.swift",
        "Transformers/JSONTransformer.swift",
        "Transformers/OneWayTransformer.swift",
        "Transformers/StringTransformer.swift",
        "Transformers/Transformers.swift",
        "Transformers/TwoWayTransformer.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.2"
}
Done.
This is a staging environment. For live and up-to-date package information, visit swiftpackageindex.com.