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 SimpleMDM-Swift, reference 0.10.0 (f5557f), with Swift 6.0 for macOS (SPM) on 2 Nov 2024 10:19:32 UTC.

Swift 6 data race errors: 1

Build Command

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

Build Log

========================================
RunAll
========================================
Builder version: 4.56.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/guillaumealgis/SimpleMDM-Swift.git
Reference: 0.10.0
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/guillaumealgis/SimpleMDM-Swift
 * tag               0.10.0     -> FETCH_HEAD
HEAD is now at f5557fb Bump version 0.9.0 -> 0.10.0
Cloned https://github.com/guillaumealgis/SimpleMDM-Swift.git
Revision (git rev-parse @):
f5557fb43306c33e2537aec76d35c47ca97b607d
SUCCESS checkout https://github.com/guillaumealgis/SimpleMDM-Swift.git at 0.10.0
Fetching https://github.com/mxcl/PromiseKit.git
[1/17121] Fetching promisekit
Fetched https://github.com/mxcl/PromiseKit.git from cache (4.85s)
Computing version for https://github.com/mxcl/PromiseKit.git
Computed https://github.com/mxcl/PromiseKit.git at 6.13.1 (0.70s)
Creating working copy for https://github.com/mxcl/PromiseKit.git
Working copy of https://github.com/mxcl/PromiseKit.git resolved at 6.13.1
========================================
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": "simplemdm-swift",
      "name": "SimpleMDM-Swift",
      "url": "https://github.com/guillaumealgis/SimpleMDM-Swift.git",
      "version": "unspecified",
      "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/SimpleMDM-Swift",
      "dependencies": [
        {
          "identity": "promisekit",
          "name": "PromiseKit",
          "url": "https://github.com/mxcl/PromiseKit.git",
          "version": "6.22.1",
          "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/PromiseKit",
          "dependencies": [
          ]
        }
      ]
    }
  ]
}
Fetching https://github.com/guillaumealgis/SimpleMDM-Swift.git
[1/3514] Fetching simplemdm-swift
Fetched https://github.com/guillaumealgis/SimpleMDM-Swift.git from cache (1.65s)
Fetching https://github.com/mxcl/PromiseKit.git from cache
Fetched https://github.com/mxcl/PromiseKit.git from cache (0.78s)
Computing version for https://github.com/mxcl/PromiseKit.git
Computed https://github.com/mxcl/PromiseKit.git at 6.22.1 (0.66s)
Creating working copy for https://github.com/mxcl/PromiseKit.git
Working copy of https://github.com/mxcl/PromiseKit.git resolved at 6.22.1
Creating working copy for https://github.com/guillaumealgis/SimpleMDM-Swift.git
Working copy of https://github.com/guillaumealgis/SimpleMDM-Swift.git resolved at 0.10.0 (f5557fb)
warning: '.resolve-product-dependencies': dependency 'simplemdm-swift' is not used by any target
Found 1 product dependencies
  - PromiseKit
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.0
Building package at path:  $PWD
https://github.com/guillaumealgis/SimpleMDM-Swift.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.1.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete
Building for debugging...
[0/3] Write sources
[2/3] Write swift-version--7754E27361AE5C74.txt
[4/18] Compiling PromiseKit race.swift
[5/19] Compiling PromiseKit when.swift
[6/19] Compiling PromiseKit firstly.swift
[7/19] Compiling PromiseKit hang.swift
[8/19] Compiling PromiseKit after.swift
[9/19] Compiling PromiseKit LogEvent.swift
[10/19] Compiling PromiseKit Promise.swift
[11/19] Compiling PromiseKit Resolver.swift
[12/19] Compiling PromiseKit Thenable.swift
[13/19] Compiling PromiseKit Box.swift
[14/19] Compiling PromiseKit Catchable.swift
[15/19] Emitting module PromiseKit
[16/19] Compiling PromiseKit Configuration.swift
[17/19] Compiling PromiseKit CustomStringConvertible.swift
[18/19] Compiling PromiseKit Error.swift
[19/19] Compiling PromiseKit Guarantee.swift
[20/42] Emitting module SimpleMDM
/Users/admin/builder/spi-builder-workspace/Sources/Relationship.swift:251:17: warning: cannot use generic enum 'Result' here; 'PromiseKit' was not imported by this file
249 |     ///   - index: The index of the resource to fetch in the collection.
250 |     ///   - completion: A completion handler called with the fetched resource, or an error.
251 |     public func get(id: Element.ID, completion: @escaping (Result<Element>) -> Void) {
    |                 `- warning: cannot use generic enum 'Result' here; 'PromiseKit' was not imported by this file
252 |         get(SimpleMDM.shared.networking, id: id, completion: completion)
253 |     }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/PromiseKit/Sources/Resolver.swift:85:13: note: type declared here
 83 | #endif
 84 |
 85 | public enum Result<T> {
    |             `- note: type declared here
 86 |     case fulfilled(T)
 87 |     case rejected(Error)
/Users/admin/builder/spi-builder-workspace/Sources/Resources/Resource.swift:9:18: warning: cannot use generic enum 'Result' here; 'PromiseKit' was not imported by this file
  7 |
  8 | /// A completion clusure used to return a Result type asynchronously.
  9 | public typealias CompletionClosure<Value> = (Result<Value>) -> Void
    |                  `- warning: cannot use generic enum 'Result' here; 'PromiseKit' was not imported by this file
 10 |
 11 | /// A protocol adopted by all resources types of the library.
/Users/admin/builder/spi-builder-workspace/.build/checkouts/PromiseKit/Sources/Resolver.swift:85:13: note: type declared here
 83 | #endif
 84 |
 85 | public enum Result<T> {
    |             `- note: type declared here
 86 |     case fulfilled(T)
 87 |     case rejected(Error)
/Users/admin/builder/spi-builder-workspace/Sources/SimpleMDM.swift:34:25: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'SimpleMDM' may have shared mutable state; this is an error in the Swift 6 language mode
14 |
15 | /// The main static object representing the SimpleMDM API. Use this to set your private API key.
16 | public class SimpleMDM: NSObject {
   |              `- note: class 'SimpleMDM' does not conform to the 'Sendable' protocol
17 |     // MARK: - Type properties
18 |
   :
32 |     }
33 |
34 |     internal static let shared = SimpleMDM()
   |                         |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'SimpleMDM' may have shared mutable state; this is an error in the Swift 6 language mode
   |                         |- note: annotate 'shared' 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
35 |
36 |     // MARK: - Instance properties
[21/44] Compiling SimpleMDM Resource.swift
/Users/admin/builder/spi-builder-workspace/Sources/Resources/Resource.swift:9:18: warning: cannot use generic enum 'Result' here; 'PromiseKit' was not imported by this file
  7 |
  8 | /// A completion clusure used to return a Result type asynchronously.
  9 | public typealias CompletionClosure<Value> = (Result<Value>) -> Void
    |                  `- warning: cannot use generic enum 'Result' here; 'PromiseKit' was not imported by this file
 10 |
 11 | /// A protocol adopted by all resources types of the library.
/Users/admin/builder/spi-builder-workspace/.build/checkouts/PromiseKit/Sources/Resolver.swift:85:13: note: type declared here
 83 | #endif
 84 |
 85 | public enum Result<T> {
    |             `- note: type declared here
 86 |     case fulfilled(T)
 87 |     case rejected(Error)
/Users/admin/builder/spi-builder-workspace/Sources/SimpleMDM.swift:34:25: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'SimpleMDM' may have shared mutable state; this is an error in the Swift 6 language mode
14 |
15 | /// The main static object representing the SimpleMDM API. Use this to set your private API key.
16 | public class SimpleMDM: NSObject {
   |              `- note: class 'SimpleMDM' does not conform to the 'Sendable' protocol
17 |     // MARK: - Type properties
18 |
   :
32 |     }
33 |
34 |     internal static let shared = SimpleMDM()
   |                         |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'SimpleMDM' may have shared mutable state; this is an error in the Swift 6 language mode
   |                         |- note: annotate 'shared' 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
35 |
36 |     // MARK: - Instance properties
[22/44] Compiling SimpleMDM SimpleMDM.swift
/Users/admin/builder/spi-builder-workspace/Sources/Resources/Resource.swift:9:18: warning: cannot use generic enum 'Result' here; 'PromiseKit' was not imported by this file
  7 |
  8 | /// A completion clusure used to return a Result type asynchronously.
  9 | public typealias CompletionClosure<Value> = (Result<Value>) -> Void
    |                  `- warning: cannot use generic enum 'Result' here; 'PromiseKit' was not imported by this file
 10 |
 11 | /// A protocol adopted by all resources types of the library.
/Users/admin/builder/spi-builder-workspace/.build/checkouts/PromiseKit/Sources/Resolver.swift:85:13: note: type declared here
 83 | #endif
 84 |
 85 | public enum Result<T> {
    |             `- note: type declared here
 86 |     case fulfilled(T)
 87 |     case rejected(Error)
/Users/admin/builder/spi-builder-workspace/Sources/SimpleMDM.swift:34:25: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'SimpleMDM' may have shared mutable state; this is an error in the Swift 6 language mode
14 |
15 | /// The main static object representing the SimpleMDM API. Use this to set your private API key.
16 | public class SimpleMDM: NSObject {
   |              `- note: class 'SimpleMDM' does not conform to the 'Sendable' protocol
17 |     // MARK: - Type properties
18 |
   :
32 |     }
33 |
34 |     internal static let shared = SimpleMDM()
   |                         |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'SimpleMDM' may have shared mutable state; this is an error in the Swift 6 language mode
   |                         |- note: annotate 'shared' 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
35 |
36 |     // MARK: - Instance properties
[23/44] Compiling SimpleMDM Device.swift
[24/44] Compiling SimpleMDM DeviceGroup.swift
[25/44] Compiling SimpleMDM URL+CustomInit.swift
/Users/admin/builder/spi-builder-workspace/Sources/URLSession.swift:17:83: warning: passing non-sendable parameter 'completionHandler' to function expecting a @Sendable closure
14 |
15 | extension URLSession: URLSessionProtocol {
16 |     func dataTask(with request: URLRequest, completionHandler: @escaping (Data?, URLResponse?, Error?) -> Void) -> URLSessionDataTaskProtocol {
   |                                             `- note: parameter 'completionHandler' is implicitly non-sendable
17 |         let task: URLSessionDataTask = dataTask(with: request, completionHandler: completionHandler)
   |                                                                                   `- warning: passing non-sendable parameter 'completionHandler' to function expecting a @Sendable closure
18 |         return task
19 |     }
[26/44] Compiling SimpleMDM URLSession.swift
/Users/admin/builder/spi-builder-workspace/Sources/URLSession.swift:17:83: warning: passing non-sendable parameter 'completionHandler' to function expecting a @Sendable closure
14 |
15 | extension URLSession: URLSessionProtocol {
16 |     func dataTask(with request: URLRequest, completionHandler: @escaping (Data?, URLResponse?, Error?) -> Void) -> URLSessionDataTaskProtocol {
   |                                             `- note: parameter 'completionHandler' is implicitly non-sendable
17 |         let task: URLSessionDataTask = dataTask(with: request, completionHandler: completionHandler)
   |                                                                                   `- warning: passing non-sendable parameter 'completionHandler' to function expecting a @Sendable closure
18 |         return task
19 |     }
[27/44] Compiling SimpleMDM App.swift
[28/44] Compiling SimpleMDM AppGroup.swift
[29/44] Compiling SimpleMDM CustomAttribute.swift
[30/44] Compiling SimpleMDM SimpleMDM+PromiseKit.swift
/Users/admin/builder/spi-builder-workspace/Sources/SimpleMDM.swift:34:25: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'SimpleMDM' may have shared mutable state; this is an error in the Swift 6 language mode
14 |
15 | /// The main static object representing the SimpleMDM API. Use this to set your private API key.
16 | public class SimpleMDM: NSObject {
   |              `- note: class 'SimpleMDM' does not conform to the 'Sendable' protocol
17 |     // MARK: - Type properties
18 |
   :
32 |     }
33 |
34 |     internal static let shared = SimpleMDM()
   |                         |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'SimpleMDM' may have shared mutable state; this is an error in the Swift 6 language mode
   |                         |- note: annotate 'shared' 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
35 |
36 |     // MARK: - Instance properties
[31/44] Compiling SimpleMDM Version.swift
/Users/admin/builder/spi-builder-workspace/Sources/SimpleMDM.swift:34:25: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'SimpleMDM' may have shared mutable state; this is an error in the Swift 6 language mode
14 |
15 | /// The main static object representing the SimpleMDM API. Use this to set your private API key.
16 | public class SimpleMDM: NSObject {
   |              `- note: class 'SimpleMDM' does not conform to the 'Sendable' protocol
17 |     // MARK: - Type properties
18 |
   :
32 |     }
33 |
34 |     internal static let shared = SimpleMDM()
   |                         |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'SimpleMDM' may have shared mutable state; this is an error in the Swift 6 language mode
   |                         |- note: annotate 'shared' 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
35 |
36 |     // MARK: - Instance properties
[32/44] Compiling SimpleMDM Networking.swift
/Users/admin/builder/spi-builder-workspace/Sources/SimpleMDM.swift:34:25: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'SimpleMDM' may have shared mutable state; this is an error in the Swift 6 language mode
14 |
15 | /// The main static object representing the SimpleMDM API. Use this to set your private API key.
16 | public class SimpleMDM: NSObject {
   |              `- note: class 'SimpleMDM' does not conform to the 'Sendable' protocol
17 |     // MARK: - Type properties
18 |
   :
32 |     }
33 |
34 |     internal static let shared = SimpleMDM()
   |                         |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'SimpleMDM' may have shared mutable state; this is an error in the Swift 6 language mode
   |                         |- note: annotate 'shared' 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
35 |
36 |     // MARK: - Instance properties
[33/44] Compiling SimpleMDM InstalledApp.swift
[34/44] Compiling SimpleMDM ManagedConfig.swift
[35/44] Compiling SimpleMDM Payload.swift
/Users/admin/builder/spi-builder-workspace/Sources/Relationship.swift:251:17: warning: cannot use generic enum 'Result' here; 'PromiseKit' was not imported by this file
249 |     ///   - index: The index of the resource to fetch in the collection.
250 |     ///   - completion: A completion handler called with the fetched resource, or an error.
251 |     public func get(id: Element.ID, completion: @escaping (Result<Element>) -> Void) {
    |                 `- warning: cannot use generic enum 'Result' here; 'PromiseKit' was not imported by this file
252 |         get(SimpleMDM.shared.networking, id: id, completion: completion)
253 |     }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/PromiseKit/Sources/Resolver.swift:85:13: note: type declared here
 83 | #endif
 84 |
 85 | public enum Result<T> {
    |             `- note: type declared here
 86 |     case fulfilled(T)
 87 |     case rejected(Error)
/Users/admin/builder/spi-builder-workspace/Sources/SimpleMDM.swift:34:25: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'SimpleMDM' may have shared mutable state; this is an error in the Swift 6 language mode
14 |
15 | /// The main static object representing the SimpleMDM API. Use this to set your private API key.
16 | public class SimpleMDM: NSObject {
   |              `- note: class 'SimpleMDM' does not conform to the 'Sendable' protocol
17 |     // MARK: - Type properties
18 |
   :
32 |     }
33 |
34 |     internal static let shared = SimpleMDM()
   |                         |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'SimpleMDM' may have shared mutable state; this is an error in the Swift 6 language mode
   |                         |- note: annotate 'shared' 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
35 |
36 |     // MARK: - Instance properties
[36/44] Compiling SimpleMDM Relationship.swift
/Users/admin/builder/spi-builder-workspace/Sources/Relationship.swift:251:17: warning: cannot use generic enum 'Result' here; 'PromiseKit' was not imported by this file
249 |     ///   - index: The index of the resource to fetch in the collection.
250 |     ///   - completion: A completion handler called with the fetched resource, or an error.
251 |     public func get(id: Element.ID, completion: @escaping (Result<Element>) -> Void) {
    |                 `- warning: cannot use generic enum 'Result' here; 'PromiseKit' was not imported by this file
252 |         get(SimpleMDM.shared.networking, id: id, completion: completion)
253 |     }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/PromiseKit/Sources/Resolver.swift:85:13: note: type declared here
 83 | #endif
 84 |
 85 | public enum Result<T> {
    |             `- note: type declared here
 86 |     case fulfilled(T)
 87 |     case rejected(Error)
/Users/admin/builder/spi-builder-workspace/Sources/SimpleMDM.swift:34:25: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'SimpleMDM' may have shared mutable state; this is an error in the Swift 6 language mode
14 |
15 | /// The main static object representing the SimpleMDM API. Use this to set your private API key.
16 | public class SimpleMDM: NSObject {
   |              `- note: class 'SimpleMDM' does not conform to the 'Sendable' protocol
17 |     // MARK: - Type properties
18 |
   :
32 |     }
33 |
34 |     internal static let shared = SimpleMDM()
   |                         |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'SimpleMDM' may have shared mutable state; this is an error in the Swift 6 language mode
   |                         |- note: annotate 'shared' 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
35 |
36 |     // MARK: - Instance properties
[37/44] Compiling SimpleMDM Account.swift
/Users/admin/builder/spi-builder-workspace/Sources/Relationship.swift:251:17: warning: cannot use generic enum 'Result' here; 'PromiseKit' was not imported by this file
249 |     ///   - index: The index of the resource to fetch in the collection.
250 |     ///   - completion: A completion handler called with the fetched resource, or an error.
251 |     public func get(id: Element.ID, completion: @escaping (Result<Element>) -> Void) {
    |                 `- warning: cannot use generic enum 'Result' here; 'PromiseKit' was not imported by this file
252 |         get(SimpleMDM.shared.networking, id: id, completion: completion)
253 |     }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/PromiseKit/Sources/Resolver.swift:85:13: note: type declared here
 83 | #endif
 84 |
 85 | public enum Result<T> {
    |             `- note: type declared here
 86 |     case fulfilled(T)
 87 |     case rejected(Error)
/Users/admin/builder/spi-builder-workspace/Sources/SimpleMDM.swift:34:25: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'SimpleMDM' may have shared mutable state; this is an error in the Swift 6 language mode
14 |
15 | /// The main static object representing the SimpleMDM API. Use this to set your private API key.
16 | public class SimpleMDM: NSObject {
   |              `- note: class 'SimpleMDM' does not conform to the 'Sendable' protocol
17 |     // MARK: - Type properties
18 |
   :
32 |     }
33 |
34 |     internal static let shared = SimpleMDM()
   |                         |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'SimpleMDM' may have shared mutable state; this is an error in the Swift 6 language mode
   |                         |- note: annotate 'shared' 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
35 |
36 |     // MARK: - Instance properties
[38/44] Compiling SimpleMDM Cursor.swift
/Users/admin/builder/spi-builder-workspace/Sources/SimpleMDM.swift:34:25: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'SimpleMDM' may have shared mutable state; this is an error in the Swift 6 language mode
14 |
15 | /// The main static object representing the SimpleMDM API. Use this to set your private API key.
16 | public class SimpleMDM: NSObject {
   |              `- note: class 'SimpleMDM' does not conform to the 'Sendable' protocol
17 |     // MARK: - Type properties
18 |
   :
32 |     }
33 |
34 |     internal static let shared = SimpleMDM()
   |                         |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'SimpleMDM' may have shared mutable state; this is an error in the Swift 6 language mode
   |                         |- note: annotate 'shared' 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
35 |
36 |     // MARK: - Instance properties
/Users/admin/builder/spi-builder-workspace/Sources/Cursor.swift:66:13: warning: capture of 'self' with non-sendable type 'Cursor<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 35 | ///         }
 36 | ///     }
 37 | public class Cursor<T: ListableResource> {
    |              `- note: generic class 'Cursor' does not conform to the 'Sendable' protocol
 38 |     /// Whether the server has more resources available to be fetched.
 39 |     public private(set) var hasMore = true
    :
 64 |
 65 |         serialQueue.async {
 66 |             self.fetchNextData(networking, limit: limit, completion: completion)
    |             `- warning: capture of 'self' with non-sendable type 'Cursor<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 67 |         }
 68 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Cursor.swift:66:32: warning: capture of 'networking' with non-sendable type 'Networking' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 64 |
 65 |         serialQueue.async {
 66 |             self.fetchNextData(networking, limit: limit, completion: completion)
    |                                `- warning: capture of 'networking' with non-sendable type 'Networking' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 67 |         }
 68 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Networking.swift:26:16: note: class 'Networking' does not conform to the 'Sendable' protocol
 24 | /// - Note: You should not instanciate this class directly, but instead use the global instance `SimpleMDM.networking`.
 25 | ///   This allows the library to re-use a single connection, improving performances.
 26 | internal class Networking {
    |                `- note: class 'Networking' does not conform to the 'Sendable' protocol
 27 |     var apiKey: String? {
 28 |         didSet {
/Users/admin/builder/spi-builder-workspace/Sources/Cursor.swift:66:70: warning: capture of 'completion' with non-sendable type 'CompletionClosure<[T]>' (aka '(Result<Array<T>>) -> ()') in a `@Sendable` closure; this is an error in the Swift 6 language mode
 64 |
 65 |         serialQueue.async {
 66 |             self.fetchNextData(networking, limit: limit, completion: completion)
    |                                                                      |- warning: capture of 'completion' with non-sendable type 'CompletionClosure<[T]>' (aka '(Result<Array<T>>) -> ()') in a `@Sendable` closure; this is an error in the Swift 6 language mode
    |                                                                      `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
 67 |         }
 68 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Decoding.swift:16:48: warning: converting non-sendable function value to '@Sendable (any Decoder) throws -> Date' may introduce data races
14 |     init() {
15 |         decoder.keyDecodingStrategy = .convertFromSnakeCase
16 |         decoder.dateDecodingStrategy = .custom(decodeRFC3339Date)
   |                                                `- warning: converting non-sendable function value to '@Sendable (any Decoder) throws -> Date' may introduce data races
17 |     }
18 |
[39/44] Compiling SimpleMDM Decoding.swift
/Users/admin/builder/spi-builder-workspace/Sources/SimpleMDM.swift:34:25: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'SimpleMDM' may have shared mutable state; this is an error in the Swift 6 language mode
14 |
15 | /// The main static object representing the SimpleMDM API. Use this to set your private API key.
16 | public class SimpleMDM: NSObject {
   |              `- note: class 'SimpleMDM' does not conform to the 'Sendable' protocol
17 |     // MARK: - Type properties
18 |
   :
32 |     }
33 |
34 |     internal static let shared = SimpleMDM()
   |                         |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'SimpleMDM' may have shared mutable state; this is an error in the Swift 6 language mode
   |                         |- note: annotate 'shared' 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
35 |
36 |     // MARK: - Instance properties
/Users/admin/builder/spi-builder-workspace/Sources/Cursor.swift:66:13: warning: capture of 'self' with non-sendable type 'Cursor<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 35 | ///         }
 36 | ///     }
 37 | public class Cursor<T: ListableResource> {
    |              `- note: generic class 'Cursor' does not conform to the 'Sendable' protocol
 38 |     /// Whether the server has more resources available to be fetched.
 39 |     public private(set) var hasMore = true
    :
 64 |
 65 |         serialQueue.async {
 66 |             self.fetchNextData(networking, limit: limit, completion: completion)
    |             `- warning: capture of 'self' with non-sendable type 'Cursor<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 67 |         }
 68 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Cursor.swift:66:32: warning: capture of 'networking' with non-sendable type 'Networking' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 64 |
 65 |         serialQueue.async {
 66 |             self.fetchNextData(networking, limit: limit, completion: completion)
    |                                `- warning: capture of 'networking' with non-sendable type 'Networking' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 67 |         }
 68 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Networking.swift:26:16: note: class 'Networking' does not conform to the 'Sendable' protocol
 24 | /// - Note: You should not instanciate this class directly, but instead use the global instance `SimpleMDM.networking`.
 25 | ///   This allows the library to re-use a single connection, improving performances.
 26 | internal class Networking {
    |                `- note: class 'Networking' does not conform to the 'Sendable' protocol
 27 |     var apiKey: String? {
 28 |         didSet {
/Users/admin/builder/spi-builder-workspace/Sources/Cursor.swift:66:70: warning: capture of 'completion' with non-sendable type 'CompletionClosure<[T]>' (aka '(Result<Array<T>>) -> ()') in a `@Sendable` closure; this is an error in the Swift 6 language mode
 64 |
 65 |         serialQueue.async {
 66 |             self.fetchNextData(networking, limit: limit, completion: completion)
    |                                                                      |- warning: capture of 'completion' with non-sendable type 'CompletionClosure<[T]>' (aka '(Result<Array<T>>) -> ()') in a `@Sendable` closure; this is an error in the Swift 6 language mode
    |                                                                      `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
 67 |         }
 68 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Decoding.swift:16:48: warning: converting non-sendable function value to '@Sendable (any Decoder) throws -> Date' may introduce data races
14 |     init() {
15 |         decoder.keyDecodingStrategy = .convertFromSnakeCase
16 |         decoder.dateDecodingStrategy = .custom(decodeRFC3339Date)
   |                                                `- warning: converting non-sendable function value to '@Sendable (any Decoder) throws -> Date' may introduce data races
17 |     }
18 |
[40/44] Compiling SimpleMDM Error.swift
/Users/admin/builder/spi-builder-workspace/Sources/SimpleMDM.swift:34:25: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'SimpleMDM' may have shared mutable state; this is an error in the Swift 6 language mode
14 |
15 | /// The main static object representing the SimpleMDM API. Use this to set your private API key.
16 | public class SimpleMDM: NSObject {
   |              `- note: class 'SimpleMDM' does not conform to the 'Sendable' protocol
17 |     // MARK: - Type properties
18 |
   :
32 |     }
33 |
34 |     internal static let shared = SimpleMDM()
   |                         |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'SimpleMDM' may have shared mutable state; this is an error in the Swift 6 language mode
   |                         |- note: annotate 'shared' 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
35 |
36 |     // MARK: - Instance properties
/Users/admin/builder/spi-builder-workspace/Sources/Cursor.swift:66:13: warning: capture of 'self' with non-sendable type 'Cursor<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 35 | ///         }
 36 | ///     }
 37 | public class Cursor<T: ListableResource> {
    |              `- note: generic class 'Cursor' does not conform to the 'Sendable' protocol
 38 |     /// Whether the server has more resources available to be fetched.
 39 |     public private(set) var hasMore = true
    :
 64 |
 65 |         serialQueue.async {
 66 |             self.fetchNextData(networking, limit: limit, completion: completion)
    |             `- warning: capture of 'self' with non-sendable type 'Cursor<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 67 |         }
 68 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Cursor.swift:66:32: warning: capture of 'networking' with non-sendable type 'Networking' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 64 |
 65 |         serialQueue.async {
 66 |             self.fetchNextData(networking, limit: limit, completion: completion)
    |                                `- warning: capture of 'networking' with non-sendable type 'Networking' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 67 |         }
 68 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Networking.swift:26:16: note: class 'Networking' does not conform to the 'Sendable' protocol
 24 | /// - Note: You should not instanciate this class directly, but instead use the global instance `SimpleMDM.networking`.
 25 | ///   This allows the library to re-use a single connection, improving performances.
 26 | internal class Networking {
    |                `- note: class 'Networking' does not conform to the 'Sendable' protocol
 27 |     var apiKey: String? {
 28 |         didSet {
/Users/admin/builder/spi-builder-workspace/Sources/Cursor.swift:66:70: warning: capture of 'completion' with non-sendable type 'CompletionClosure<[T]>' (aka '(Result<Array<T>>) -> ()') in a `@Sendable` closure; this is an error in the Swift 6 language mode
 64 |
 65 |         serialQueue.async {
 66 |             self.fetchNextData(networking, limit: limit, completion: completion)
    |                                                                      |- warning: capture of 'completion' with non-sendable type 'CompletionClosure<[T]>' (aka '(Result<Array<T>>) -> ()') in a `@Sendable` closure; this is an error in the Swift 6 language mode
    |                                                                      `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
 67 |         }
 68 |     }
/Users/admin/builder/spi-builder-workspace/Sources/Decoding.swift:16:48: warning: converting non-sendable function value to '@Sendable (any Decoder) throws -> Date' may introduce data races
14 |     init() {
15 |         decoder.keyDecodingStrategy = .convertFromSnakeCase
16 |         decoder.dateDecodingStrategy = .custom(decodeRFC3339Date)
   |                                                `- warning: converting non-sendable function value to '@Sendable (any Decoder) throws -> Date' may introduce data races
17 |     }
18 |
[41/44] Compiling SimpleMDM CustomAttributeValue.swift
[42/44] Compiling SimpleMDM CustomConfigurationProfile.swift
[43/44] Compiling SimpleMDM PushCertificate.swift
[44/44] Compiling SimpleMDM Resource.generated.swift
Build complete! (15.48s)
Build complete.
{
  "dependencies" : [
    {
      "identity" : "promisekit",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "6.8.0",
            "upper_bound" : "7.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/mxcl/PromiseKit.git"
    }
  ],
  "manifest_display_name" : "SimpleMDM-Swift",
  "name" : "SimpleMDM-Swift",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "ios",
      "version" : "11.0"
    },
    {
      "name" : "macos",
      "version" : "10.13"
    },
    {
      "name" : "tvos",
      "version" : "11.0"
    },
    {
      "name" : "watchos",
      "version" : "4.0"
    }
  ],
  "products" : [
    {
      "name" : "SimpleMDM",
      "targets" : [
        "SimpleMDM"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "swift_languages_versions" : [
    "5"
  ],
  "targets" : [
    {
      "c99name" : "SimpleMDM_Tests",
      "module_type" : "SwiftTarget",
      "name" : "SimpleMDM-Tests",
      "path" : "Tests",
      "sources" : [
        "APIKeyTests.swift",
        "CursorTests.swift",
        "DecodingTests.swift",
        "FieldTypes/VersionTests.swift",
        "NetworkingTests.swift",
        "PromiseKit/SimpleMDM+PromiseKitTests.swift",
        "PromiseKit/SimpleMDMSingleton+PromiseKitTests.swift",
        "Resources/AccountTests.swift",
        "Resources/AppGroupTests.swift",
        "Resources/AppTests.swift",
        "Resources/CustomAttributeTests.swift",
        "Resources/CustomConfigurationProfileTests.swift",
        "Resources/DeviceGroupTests.swift",
        "Resources/DeviceTests.swift",
        "Resources/InstalledAppTests.swift",
        "Resources/PushCertificateTests.swift",
        "Resources/ResourcesTests.swift",
        "SimpleMDMSingletonTests.swift",
        "Tools/ResourceMock.swift",
        "Tools/URLSessionMock.swift",
        "Tools/Utils.swift"
      ],
      "target_dependencies" : [
        "SimpleMDM"
      ],
      "type" : "test"
    },
    {
      "c99name" : "SimpleMDM",
      "module_type" : "SwiftTarget",
      "name" : "SimpleMDM",
      "path" : "Sources",
      "product_dependencies" : [
        "PromiseKit"
      ],
      "product_memberships" : [
        "SimpleMDM"
      ],
      "sources" : [
        "Cursor.swift",
        "Decoding.swift",
        "Error.swift",
        "Extensions/SimpleMDM+PromiseKit.swift",
        "FieldTypes/Version.swift",
        "Networking.swift",
        "Payload.swift",
        "Relationship.swift",
        "Resources/Account.swift",
        "Resources/App.swift",
        "Resources/AppGroup.swift",
        "Resources/CustomAttribute.swift",
        "Resources/CustomAttributeValue.swift",
        "Resources/CustomConfigurationProfile.swift",
        "Resources/Device.swift",
        "Resources/DeviceGroup.swift",
        "Resources/InstalledApp.swift",
        "Resources/ManagedConfig.swift",
        "Resources/PushCertificate.swift",
        "Resources/Resource.generated.swift",
        "Resources/Resource.swift",
        "SimpleMDM.swift",
        "URL+CustomInit.swift",
        "URLSession.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.0"
}
Done.