The Swift Package Index logo.Swift Package Index

Build Information

Successful build of MuxUploadSDK, reference main (ffcf66), with Swift 6.1 for macOS (SPM) on 10 Apr 2026 02:07:12 UTC.

Swift 6 data race errors: 13

Build Command

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

Build Log

/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:254:22: warning: type 'ChunkedFileUploader' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
252 |
253 |     func getAllUploads() async -> [ChunkedFileUploader] {
254 |         return await Task<[ChunkedFileUploader]?, Never> {
    |                      `- warning: type 'ChunkedFileUploader' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
255 |             return try? persistence.readAll().compactMap { it in
256 |                 ChunkedFileUploader(
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/Upload/ChunkedFileUploader.swift:14:7: note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 12 | /// This object is not externally thread-safe. Access its methods only from the main thread
 13 | /// If you need to start this over again from the beginning, make a new object (and cancel your old one)
 14 | class ChunkedFileUploader {
    |       `- note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 15 |
 16 |     private(set) var currentState: InternalUploadState = .ready
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:254:56: warning: type 'ChunkedFileUploader' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
252 |
253 |     func getAllUploads() async -> [ChunkedFileUploader] {
254 |         return await Task<[ChunkedFileUploader]?, Never> {
    |                                                        `- warning: type 'ChunkedFileUploader' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
255 |             return try? persistence.readAll().compactMap { it in
256 |                 ChunkedFileUploader(
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/Upload/ChunkedFileUploader.swift:14:7: note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 12 | /// This object is not externally thread-safe. Access its methods only from the main thread
 13 | /// If you need to start this over again from the beginning, make a new object (and cancel your old one)
 14 | class ChunkedFileUploader {
    |       `- note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 15 |
 16 |     private(set) var currentState: InternalUploadState = .ready
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:260:11: warning: type 'ChunkedFileUploader' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
258 |                 )
259 |             }
260 |         }.value ?? []
    |           `- warning: type 'ChunkedFileUploader' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
261 |     }
262 |
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/Upload/ChunkedFileUploader.swift:14:7: note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 12 | /// This object is not externally thread-safe. Access its methods only from the main thread
 13 | /// If you need to start this over again from the beginning, make a new object (and cancel your old one)
 14 | class ChunkedFileUploader {
    |       `- note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 15 |
 16 |     private(set) var currentState: InternalUploadState = .ready
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:254:22: warning: non-sendable type 'Task<[ChunkedFileUploader]?, Never>' cannot exit actor-isolated context in call to nonisolated property 'value'; this is an error in the Swift 6 language mode
252 |
253 |     func getAllUploads() async -> [ChunkedFileUploader] {
254 |         return await Task<[ChunkedFileUploader]?, Never> {
    |                      `- warning: non-sendable type 'Task<[ChunkedFileUploader]?, Never>' cannot exit actor-isolated context in call to nonisolated property 'value'; this is an error in the Swift 6 language mode
255 |             return try? persistence.readAll().compactMap { it in
256 |                 ChunkedFileUploader(
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/Upload/ChunkedFileUploader.swift:14:7: note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 12 | /// This object is not externally thread-safe. Access its methods only from the main thread
 13 | /// If you need to start this over again from the beginning, make a new object (and cancel your old one)
 14 | class ChunkedFileUploader {
    |       `- note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 15 |
 16 |     private(set) var currentState: InternalUploadState = .ready
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:260:11: warning: non-sendable type '[ChunkedFileUploader]?' of nonisolated property 'value' cannot be sent to actor-isolated context; this is an error in the Swift 6 language mode
258 |                 )
259 |             }
260 |         }.value ?? []
    |           `- warning: non-sendable type '[ChunkedFileUploader]?' of nonisolated property 'value' cannot be sent to actor-isolated context; this is an error in the Swift 6 language mode
261 |     }
262 |
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/Upload/ChunkedFileUploader.swift:14:7: note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 12 | /// This object is not externally thread-safe. Access its methods only from the main thread
 13 | /// If you need to start this over again from the beginning, make a new object (and cancel your old one)
 14 | class ChunkedFileUploader {
    |       `- note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 15 |
 16 |     private(set) var currentState: InternalUploadState = .ready
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/Options/DirectUploadOptions.swift:153:27: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'DirectUploadOptions.InputStandardization' may have shared mutable state; this is an error in the Swift 6 language mode
 90 |     /// to some inputs to minimize processing time during
 91 |     /// ingestion
 92 |     public struct InputStandardization {
    |                   `- note: consider making struct 'InputStandardization' conform to the 'Sendable' protocol
 93 |
 94 |         /// If requested the SDK will attempt to detect
    :
151 |         /// Default options where input standardization is
152 |         /// requested and the maximum resolution is set to 1080p.
153 |         public static let `default`: InputStandardization = InputStandardization(
    |                           |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'DirectUploadOptions.InputStandardization' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'default' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
154 |             isRequested: true,
155 |             maximumResolution: .default
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/Options/DirectUploadOptions.swift:166:27: warning: static property 'skipped' is not concurrency-safe because non-'Sendable' type 'DirectUploadOptions.InputStandardization' may have shared mutable state; this is an error in the Swift 6 language mode
 90 |     /// to some inputs to minimize processing time during
 91 |     /// ingestion
 92 |     public struct InputStandardization {
    |                   `- note: consider making struct 'InputStandardization' conform to the 'Sendable' protocol
 93 |
 94 |         /// If requested the SDK will attempt to detect
    :
164 |         /// still convert your input to a standard format
165 |         /// on the server when it is ingested.
166 |         public static let skipped: InputStandardization = InputStandardization(
    |                           |- warning: static property 'skipped' is not concurrency-safe because non-'Sendable' type 'DirectUploadOptions.InputStandardization' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'skipped' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
167 |             isRequested: false,
168 |             maximumResolution: .default
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:89:23: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 87 |     ///  If no upload was found in the cache, this method returns null without taking any action
 88 |     public func resumeDirectUpload(ofFile url: URL, completion: @escaping (DirectUpload) -> Void) {
 89 |         Task.detached {
    |                       `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 90 |             let upload = await self.resumeDirectUpload(ofFile: url)
    |                                `- note: closure captures 'self' which is accessible to code in the current task
 91 |             if let nonNilUpload = upload {
 92 |                 await MainActor.run { completion(nonNilUpload) }
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:92:39: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
 90 |             let upload = await self.resumeDirectUpload(ofFile: url)
 91 |             if let nonNilUpload = upload {
 92 |                 await MainActor.run { completion(nonNilUpload) }
    |                                       |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                                       `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 93 |             }
 94 |         }
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:92:50: warning: sending 'nonNilUpload' risks causing data races; this is an error in the Swift 6 language mode
 90 |             let upload = await self.resumeDirectUpload(ofFile: url)
 91 |             if let nonNilUpload = upload {
 92 |                 await MainActor.run { completion(nonNilUpload) }
    |                                                  |- warning: sending 'nonNilUpload' risks causing data races; this is an error in the Swift 6 language mode
    |                                                  `- note: task-isolated 'nonNilUpload' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 93 |             }
 94 |         }
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:100:23: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 98 |     /// It can be useful to call this during app initialization to resume uploads that have been killed by the process dying
 99 |     public func resumeAllDirectUploads() {
100 |         Task.detached { [self] in
    |                       `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
101 |             for upload in await uploadActor.getAllUploads() {
    |                                 `- note: closure captures 'self' which is accessible to code in the current task
102 |                 upload.addDelegate(withToken: UUID().uuidString, uploaderDelegate)
103 |             }
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:122:23: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
120 |             upload.fileWorker?.cancel()
121 |         }
122 |         Task.detached {
    |                       `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
123 |             await self.uploadActor.remove(uploadID: id)
    |                   `- note: closure captures 'self' which is accessible to code in the current task
124 |             self.notifyDelegates()
125 |         }
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:159:23: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
157 |
158 |     private func notifyDelegates() {
159 |         Task.detached {
    |                       `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
160 |             await MainActor.run {
161 |                 let delegates = self.uploadsUpdateDelegatesByToken.values
    |                                 `- note: closure captures 'self' which is accessible to code in the current task
162 |                 let allManagedUploads = self.allManagedDirectUploads()
163 |
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:149:23: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
147 |         fileWorker.addDelegate(withToken: UUID().uuidString, uploaderDelegate)
148 |         self.notifyDelegates()
149 |         Task.detached {
    |                       `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
150 |             await self.uploadActor.updateUpload(
    |                   `- note: closure captures 'self' which is accessible to code in the current task
151 |                 fileWorker.uploadInfo,
152 |                 fileInputURL: fileWorker.inputFileURL,
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:150:36: warning: sending 'fileWorker.uploadInfo' risks causing data races; this is an error in the Swift 6 language mode
148 |         self.notifyDelegates()
149 |         Task.detached {
150 |             await self.uploadActor.updateUpload(
    |                                    |- warning: sending 'fileWorker.uploadInfo' risks causing data races; this is an error in the Swift 6 language mode
    |                                    `- note: sending task-isolated 'fileWorker.uploadInfo' to actor-isolated instance method 'updateUpload(_:fileInputURL:withUpdate:)' risks causing data races between actor-isolated and task-isolated uses
151 |                 fileWorker.uploadInfo,
152 |                 fileInputURL: fileWorker.inputFileURL,
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:161:33: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
159 |         Task.detached {
160 |             await MainActor.run {
161 |                 let delegates = self.uploadsUpdateDelegatesByToken.values
    |                                 |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |                                 `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
162 |                 let allManagedUploads = self.allManagedDirectUploads()
163 |
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:181:35: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
179 |             stateUpdated state: ChunkedFileUploader.InternalUploadState
180 |         ) {
181 |             let _ = Task.detached {
    |                                   `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
182 |                 await manager.uploadActor.updateUpload(
    |                       `- note: closure captures 'self' which is accessible to code in the current task
183 |                     uploader.uploadInfo,
184 |                     fileInputURL: uploader.inputFileURL,
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:182:43: warning: sending 'uploader.uploadInfo' risks causing data races; this is an error in the Swift 6 language mode
180 |         ) {
181 |             let _ = Task.detached {
182 |                 await manager.uploadActor.updateUpload(
    |                                           |- warning: sending 'uploader.uploadInfo' risks causing data races; this is an error in the Swift 6 language mode
    |                                           `- note: sending task-isolated 'uploader.uploadInfo' to actor-isolated instance method 'updateUpload(_:fileInputURL:withUpdate:)' risks causing data races between actor-isolated and task-isolated uses
183 |                     uploader.uploadInfo,
184 |                     fileInputURL: uploader.inputFileURL,
[16/32] Compiling MuxUploadSDK DirectUploadOptions.swift
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:172:23: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'DirectUploadManager' may have shared mutable state; this is an error in the Swift 6 language mode
 27 | /// ```
 28 | ///
 29 | public final class DirectUploadManager {
    |                    `- note: class 'DirectUploadManager' does not conform to the 'Sendable' protocol
 30 |
 31 |     private struct UploadStorage: Equatable, Hashable {
    :
170 |
171 |     /// The shared instance of this object that should be used
172 |     public static let shared = DirectUploadManager()
    |                       |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'DirectUploadManager' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
173 |
174 |     private struct FileUploaderDelegate : ChunkedFileUploaderDelegate {
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:77:46: warning: non-sendable result type 'ChunkedFileUploader?' cannot be sent from actor-isolated context in call to instance method 'getUpload(ofFileAt:)'; this is an error in the Swift 6 language mode
 75 |     ///  If no upload was found in the cache, this method returns null without taking any action
 76 |     public func resumeDirectUpload(ofFile url: URL) async -> DirectUpload? {
 77 |         let fileUploader = await uploadActor.getUpload(ofFileAt: url)
    |                                              `- warning: non-sendable result type 'ChunkedFileUploader?' cannot be sent from actor-isolated context in call to instance method 'getUpload(ofFileAt:)'; this is an error in the Swift 6 language mode
 78 |         if let nonNilUploader = fileUploader {
 79 |             nonNilUploader.addDelegate(withToken: UUID().uuidString, uploaderDelegate)
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/Upload/ChunkedFileUploader.swift:14:7: note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 12 | /// This object is not externally thread-safe. Access its methods only from the main thread
 13 | /// If you need to start this over again from the beginning, make a new object (and cancel your old one)
 14 | class ChunkedFileUploader {
    |       `- note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 15 |
 16 |     private(set) var currentState: InternalUploadState = .ready
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:101:45: warning: non-sendable result type '[ChunkedFileUploader]' cannot be sent from actor-isolated context in call to instance method 'getAllUploads()'; this is an error in the Swift 6 language mode
 99 |     public func resumeAllDirectUploads() {
100 |         Task.detached { [self] in
101 |             for upload in await uploadActor.getAllUploads() {
    |                                             `- warning: non-sendable result type '[ChunkedFileUploader]' cannot be sent from actor-isolated context in call to instance method 'getAllUploads()'; this is an error in the Swift 6 language mode
102 |                 upload.addDelegate(withToken: UUID().uuidString, uploaderDelegate)
103 |             }
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/Upload/ChunkedFileUploader.swift:14:7: note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 12 | /// This object is not externally thread-safe. Access its methods only from the main thread
 13 | /// If you need to start this over again from the beginning, make a new object (and cancel your old one)
 14 | class ChunkedFileUploader {
    |       `- note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 15 |
 16 |     private(set) var currentState: InternalUploadState = .ready
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:228:22: warning: type 'ChunkedFileUploader' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
226 |     func getUpload(uploadID: String) async -> ChunkedFileUploader? {
227 |         // reminder: doesn't start the uploader, just makes it
228 |         return await Task<ChunkedFileUploader?, Never> {
    |                      `- warning: type 'ChunkedFileUploader' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
229 |             try? persistence
230 |                 .readEntry(uploadID: uploadID)
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/Upload/ChunkedFileUploader.swift:14:7: note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 12 | /// This object is not externally thread-safe. Access its methods only from the main thread
 13 | /// If you need to start this over again from the beginning, make a new object (and cancel your old one)
 14 | class ChunkedFileUploader {
    |       `- note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 15 |
 16 |     private(set) var currentState: InternalUploadState = .ready
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:228:54: warning: type 'ChunkedFileUploader' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
226 |     func getUpload(uploadID: String) async -> ChunkedFileUploader? {
227 |         // reminder: doesn't start the uploader, just makes it
228 |         return await Task<ChunkedFileUploader?, Never> {
    |                                                      `- warning: type 'ChunkedFileUploader' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
229 |             try? persistence
230 |                 .readEntry(uploadID: uploadID)
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/Upload/ChunkedFileUploader.swift:14:7: note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 12 | /// This object is not externally thread-safe. Access its methods only from the main thread
 13 | /// If you need to start this over again from the beginning, make a new object (and cancel your old one)
 14 | class ChunkedFileUploader {
    |       `- note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 15 |
 16 |     private(set) var currentState: InternalUploadState = .ready
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:236:11: warning: type 'ChunkedFileUploader' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
234 |                     )
235 |                 })
236 |         }.value
    |           `- warning: type 'ChunkedFileUploader' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
237 |     }
238 |
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/Upload/ChunkedFileUploader.swift:14:7: note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 12 | /// This object is not externally thread-safe. Access its methods only from the main thread
 13 | /// If you need to start this over again from the beginning, make a new object (and cancel your old one)
 14 | class ChunkedFileUploader {
    |       `- note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 15 |
 16 |     private(set) var currentState: InternalUploadState = .ready
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:228:22: warning: non-sendable type 'Task<ChunkedFileUploader?, Never>' cannot exit actor-isolated context in call to nonisolated property 'value'; this is an error in the Swift 6 language mode
226 |     func getUpload(uploadID: String) async -> ChunkedFileUploader? {
227 |         // reminder: doesn't start the uploader, just makes it
228 |         return await Task<ChunkedFileUploader?, Never> {
    |                      `- warning: non-sendable type 'Task<ChunkedFileUploader?, Never>' cannot exit actor-isolated context in call to nonisolated property 'value'; this is an error in the Swift 6 language mode
229 |             try? persistence
230 |                 .readEntry(uploadID: uploadID)
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/Upload/ChunkedFileUploader.swift:14:7: note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 12 | /// This object is not externally thread-safe. Access its methods only from the main thread
 13 | /// If you need to start this over again from the beginning, make a new object (and cancel your old one)
 14 | class ChunkedFileUploader {
    |       `- note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 15 |
 16 |     private(set) var currentState: InternalUploadState = .ready
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:236:11: warning: non-sendable type 'ChunkedFileUploader?' of nonisolated property 'value' cannot be sent to actor-isolated context; this is an error in the Swift 6 language mode
234 |                     )
235 |                 })
236 |         }.value
    |           `- warning: non-sendable type 'ChunkedFileUploader?' of nonisolated property 'value' cannot be sent to actor-isolated context; this is an error in the Swift 6 language mode
237 |     }
238 |
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/Upload/ChunkedFileUploader.swift:14:7: note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 12 | /// This object is not externally thread-safe. Access its methods only from the main thread
 13 | /// If you need to start this over again from the beginning, make a new object (and cancel your old one)
 14 | class ChunkedFileUploader {
    |       `- note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 15 |
 16 |     private(set) var currentState: InternalUploadState = .ready
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:240:22: warning: type 'ChunkedFileUploader' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
238 |
239 |     func getUpload(ofFileAt: URL) async -> ChunkedFileUploader? {
240 |         return await Task<ChunkedFileUploader?, Never> {
    |                      `- warning: type 'ChunkedFileUploader' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
241 |             guard let matchingEntry = try? persistence.readAll().first(
242 |                 where: { $0.uploadInfo.uploadURL == ofFileAt }
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/Upload/ChunkedFileUploader.swift:14:7: note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 12 | /// This object is not externally thread-safe. Access its methods only from the main thread
 13 | /// If you need to start this over again from the beginning, make a new object (and cancel your old one)
 14 | class ChunkedFileUploader {
    |       `- note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 15 |
 16 |     private(set) var currentState: InternalUploadState = .ready
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:240:54: warning: type 'ChunkedFileUploader' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
238 |
239 |     func getUpload(ofFileAt: URL) async -> ChunkedFileUploader? {
240 |         return await Task<ChunkedFileUploader?, Never> {
    |                                                      `- warning: type 'ChunkedFileUploader' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
241 |             guard let matchingEntry = try? persistence.readAll().first(
242 |                 where: { $0.uploadInfo.uploadURL == ofFileAt }
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/Upload/ChunkedFileUploader.swift:14:7: note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 12 | /// This object is not externally thread-safe. Access its methods only from the main thread
 13 | /// If you need to start this over again from the beginning, make a new object (and cancel your old one)
 14 | class ChunkedFileUploader {
    |       `- note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 15 |
 16 |     private(set) var currentState: InternalUploadState = .ready
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:250:11: warning: type 'ChunkedFileUploader' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
248 |                 persistenceEntry: matchingEntry
249 |             )
250 |         }.value
    |           `- warning: type 'ChunkedFileUploader' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
251 |     }
252 |
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/Upload/ChunkedFileUploader.swift:14:7: note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 12 | /// This object is not externally thread-safe. Access its methods only from the main thread
 13 | /// If you need to start this over again from the beginning, make a new object (and cancel your old one)
 14 | class ChunkedFileUploader {
    |       `- note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 15 |
 16 |     private(set) var currentState: InternalUploadState = .ready
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:240:22: warning: non-sendable type 'Task<ChunkedFileUploader?, Never>' cannot exit actor-isolated context in call to nonisolated property 'value'; this is an error in the Swift 6 language mode
238 |
239 |     func getUpload(ofFileAt: URL) async -> ChunkedFileUploader? {
240 |         return await Task<ChunkedFileUploader?, Never> {
    |                      `- warning: non-sendable type 'Task<ChunkedFileUploader?, Never>' cannot exit actor-isolated context in call to nonisolated property 'value'; this is an error in the Swift 6 language mode
241 |             guard let matchingEntry = try? persistence.readAll().first(
242 |                 where: { $0.uploadInfo.uploadURL == ofFileAt }
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/Upload/ChunkedFileUploader.swift:14:7: note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 12 | /// This object is not externally thread-safe. Access its methods only from the main thread
 13 | /// If you need to start this over again from the beginning, make a new object (and cancel your old one)
 14 | class ChunkedFileUploader {
    |       `- note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 15 |
 16 |     private(set) var currentState: InternalUploadState = .ready
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:250:11: warning: non-sendable type 'ChunkedFileUploader?' of nonisolated property 'value' cannot be sent to actor-isolated context; this is an error in the Swift 6 language mode
248 |                 persistenceEntry: matchingEntry
249 |             )
250 |         }.value
    |           `- warning: non-sendable type 'ChunkedFileUploader?' of nonisolated property 'value' cannot be sent to actor-isolated context; this is an error in the Swift 6 language mode
251 |     }
252 |
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/Upload/ChunkedFileUploader.swift:14:7: note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 12 | /// This object is not externally thread-safe. Access its methods only from the main thread
 13 | /// If you need to start this over again from the beginning, make a new object (and cancel your old one)
 14 | class ChunkedFileUploader {
    |       `- note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 15 |
 16 |     private(set) var currentState: InternalUploadState = .ready
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:254:22: warning: type 'ChunkedFileUploader' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
252 |
253 |     func getAllUploads() async -> [ChunkedFileUploader] {
254 |         return await Task<[ChunkedFileUploader]?, Never> {
    |                      `- warning: type 'ChunkedFileUploader' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
255 |             return try? persistence.readAll().compactMap { it in
256 |                 ChunkedFileUploader(
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/Upload/ChunkedFileUploader.swift:14:7: note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 12 | /// This object is not externally thread-safe. Access its methods only from the main thread
 13 | /// If you need to start this over again from the beginning, make a new object (and cancel your old one)
 14 | class ChunkedFileUploader {
    |       `- note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 15 |
 16 |     private(set) var currentState: InternalUploadState = .ready
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:254:56: warning: type 'ChunkedFileUploader' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
252 |
253 |     func getAllUploads() async -> [ChunkedFileUploader] {
254 |         return await Task<[ChunkedFileUploader]?, Never> {
    |                                                        `- warning: type 'ChunkedFileUploader' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
255 |             return try? persistence.readAll().compactMap { it in
256 |                 ChunkedFileUploader(
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/Upload/ChunkedFileUploader.swift:14:7: note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 12 | /// This object is not externally thread-safe. Access its methods only from the main thread
 13 | /// If you need to start this over again from the beginning, make a new object (and cancel your old one)
 14 | class ChunkedFileUploader {
    |       `- note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 15 |
 16 |     private(set) var currentState: InternalUploadState = .ready
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:260:11: warning: type 'ChunkedFileUploader' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
258 |                 )
259 |             }
260 |         }.value ?? []
    |           `- warning: type 'ChunkedFileUploader' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
261 |     }
262 |
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/Upload/ChunkedFileUploader.swift:14:7: note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 12 | /// This object is not externally thread-safe. Access its methods only from the main thread
 13 | /// If you need to start this over again from the beginning, make a new object (and cancel your old one)
 14 | class ChunkedFileUploader {
    |       `- note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 15 |
 16 |     private(set) var currentState: InternalUploadState = .ready
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:254:22: warning: non-sendable type 'Task<[ChunkedFileUploader]?, Never>' cannot exit actor-isolated context in call to nonisolated property 'value'; this is an error in the Swift 6 language mode
252 |
253 |     func getAllUploads() async -> [ChunkedFileUploader] {
254 |         return await Task<[ChunkedFileUploader]?, Never> {
    |                      `- warning: non-sendable type 'Task<[ChunkedFileUploader]?, Never>' cannot exit actor-isolated context in call to nonisolated property 'value'; this is an error in the Swift 6 language mode
255 |             return try? persistence.readAll().compactMap { it in
256 |                 ChunkedFileUploader(
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/Upload/ChunkedFileUploader.swift:14:7: note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 12 | /// This object is not externally thread-safe. Access its methods only from the main thread
 13 | /// If you need to start this over again from the beginning, make a new object (and cancel your old one)
 14 | class ChunkedFileUploader {
    |       `- note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 15 |
 16 |     private(set) var currentState: InternalUploadState = .ready
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:260:11: warning: non-sendable type '[ChunkedFileUploader]?' of nonisolated property 'value' cannot be sent to actor-isolated context; this is an error in the Swift 6 language mode
258 |                 )
259 |             }
260 |         }.value ?? []
    |           `- warning: non-sendable type '[ChunkedFileUploader]?' of nonisolated property 'value' cannot be sent to actor-isolated context; this is an error in the Swift 6 language mode
261 |     }
262 |
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/Upload/ChunkedFileUploader.swift:14:7: note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 12 | /// This object is not externally thread-safe. Access its methods only from the main thread
 13 | /// If you need to start this over again from the beginning, make a new object (and cancel your old one)
 14 | class ChunkedFileUploader {
    |       `- note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 15 |
 16 |     private(set) var currentState: InternalUploadState = .ready
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/Options/DirectUploadOptions.swift:153:27: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'DirectUploadOptions.InputStandardization' may have shared mutable state; this is an error in the Swift 6 language mode
 90 |     /// to some inputs to minimize processing time during
 91 |     /// ingestion
 92 |     public struct InputStandardization {
    |                   `- note: consider making struct 'InputStandardization' conform to the 'Sendable' protocol
 93 |
 94 |         /// If requested the SDK will attempt to detect
    :
151 |         /// Default options where input standardization is
152 |         /// requested and the maximum resolution is set to 1080p.
153 |         public static let `default`: InputStandardization = InputStandardization(
    |                           |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'DirectUploadOptions.InputStandardization' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'default' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
154 |             isRequested: true,
155 |             maximumResolution: .default
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/Options/DirectUploadOptions.swift:166:27: warning: static property 'skipped' is not concurrency-safe because non-'Sendable' type 'DirectUploadOptions.InputStandardization' may have shared mutable state; this is an error in the Swift 6 language mode
 90 |     /// to some inputs to minimize processing time during
 91 |     /// ingestion
 92 |     public struct InputStandardization {
    |                   `- note: consider making struct 'InputStandardization' conform to the 'Sendable' protocol
 93 |
 94 |         /// If requested the SDK will attempt to detect
    :
164 |         /// still convert your input to a standard format
165 |         /// on the server when it is ingested.
166 |         public static let skipped: InputStandardization = InputStandardization(
    |                           |- warning: static property 'skipped' is not concurrency-safe because non-'Sendable' type 'DirectUploadOptions.InputStandardization' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'skipped' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
167 |             isRequested: false,
168 |             maximumResolution: .default
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:89:23: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 87 |     ///  If no upload was found in the cache, this method returns null without taking any action
 88 |     public func resumeDirectUpload(ofFile url: URL, completion: @escaping (DirectUpload) -> Void) {
 89 |         Task.detached {
    |                       `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 90 |             let upload = await self.resumeDirectUpload(ofFile: url)
    |                                `- note: closure captures 'self' which is accessible to code in the current task
 91 |             if let nonNilUpload = upload {
 92 |                 await MainActor.run { completion(nonNilUpload) }
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:92:39: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
 90 |             let upload = await self.resumeDirectUpload(ofFile: url)
 91 |             if let nonNilUpload = upload {
 92 |                 await MainActor.run { completion(nonNilUpload) }
    |                                       |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                                       `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 93 |             }
 94 |         }
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:92:50: warning: sending 'nonNilUpload' risks causing data races; this is an error in the Swift 6 language mode
 90 |             let upload = await self.resumeDirectUpload(ofFile: url)
 91 |             if let nonNilUpload = upload {
 92 |                 await MainActor.run { completion(nonNilUpload) }
    |                                                  |- warning: sending 'nonNilUpload' risks causing data races; this is an error in the Swift 6 language mode
    |                                                  `- note: task-isolated 'nonNilUpload' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 93 |             }
 94 |         }
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:100:23: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 98 |     /// It can be useful to call this during app initialization to resume uploads that have been killed by the process dying
 99 |     public func resumeAllDirectUploads() {
100 |         Task.detached { [self] in
    |                       `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
101 |             for upload in await uploadActor.getAllUploads() {
    |                                 `- note: closure captures 'self' which is accessible to code in the current task
102 |                 upload.addDelegate(withToken: UUID().uuidString, uploaderDelegate)
103 |             }
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:122:23: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
120 |             upload.fileWorker?.cancel()
121 |         }
122 |         Task.detached {
    |                       `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
123 |             await self.uploadActor.remove(uploadID: id)
    |                   `- note: closure captures 'self' which is accessible to code in the current task
124 |             self.notifyDelegates()
125 |         }
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:159:23: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
157 |
158 |     private func notifyDelegates() {
159 |         Task.detached {
    |                       `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
160 |             await MainActor.run {
161 |                 let delegates = self.uploadsUpdateDelegatesByToken.values
    |                                 `- note: closure captures 'self' which is accessible to code in the current task
162 |                 let allManagedUploads = self.allManagedDirectUploads()
163 |
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:149:23: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
147 |         fileWorker.addDelegate(withToken: UUID().uuidString, uploaderDelegate)
148 |         self.notifyDelegates()
149 |         Task.detached {
    |                       `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
150 |             await self.uploadActor.updateUpload(
    |                   `- note: closure captures 'self' which is accessible to code in the current task
151 |                 fileWorker.uploadInfo,
152 |                 fileInputURL: fileWorker.inputFileURL,
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:150:36: warning: sending 'fileWorker.uploadInfo' risks causing data races; this is an error in the Swift 6 language mode
148 |         self.notifyDelegates()
149 |         Task.detached {
150 |             await self.uploadActor.updateUpload(
    |                                    |- warning: sending 'fileWorker.uploadInfo' risks causing data races; this is an error in the Swift 6 language mode
    |                                    `- note: sending task-isolated 'fileWorker.uploadInfo' to actor-isolated instance method 'updateUpload(_:fileInputURL:withUpdate:)' risks causing data races between actor-isolated and task-isolated uses
151 |                 fileWorker.uploadInfo,
152 |                 fileInputURL: fileWorker.inputFileURL,
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:161:33: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
159 |         Task.detached {
160 |             await MainActor.run {
161 |                 let delegates = self.uploadsUpdateDelegatesByToken.values
    |                                 |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |                                 `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
162 |                 let allManagedUploads = self.allManagedDirectUploads()
163 |
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:181:35: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
179 |             stateUpdated state: ChunkedFileUploader.InternalUploadState
180 |         ) {
181 |             let _ = Task.detached {
    |                                   `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
182 |                 await manager.uploadActor.updateUpload(
    |                       `- note: closure captures 'self' which is accessible to code in the current task
183 |                     uploader.uploadInfo,
184 |                     fileInputURL: uploader.inputFileURL,
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:182:43: warning: sending 'uploader.uploadInfo' risks causing data races; this is an error in the Swift 6 language mode
180 |         ) {
181 |             let _ = Task.detached {
182 |                 await manager.uploadActor.updateUpload(
    |                                           |- warning: sending 'uploader.uploadInfo' risks causing data races; this is an error in the Swift 6 language mode
    |                                           `- note: sending task-isolated 'uploader.uploadInfo' to actor-isolated instance method 'updateUpload(_:fileInputURL:withUpdate:)' risks causing data races between actor-isolated and task-isolated uses
183 |                     uploader.uploadInfo,
184 |                     fileInputURL: uploader.inputFileURL,
[17/32] Compiling MuxUploadSDK PHAsset+DirectUpload.swift
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:172:23: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'DirectUploadManager' may have shared mutable state; this is an error in the Swift 6 language mode
 27 | /// ```
 28 | ///
 29 | public final class DirectUploadManager {
    |                    `- note: class 'DirectUploadManager' does not conform to the 'Sendable' protocol
 30 |
 31 |     private struct UploadStorage: Equatable, Hashable {
    :
170 |
171 |     /// The shared instance of this object that should be used
172 |     public static let shared = DirectUploadManager()
    |                       |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'DirectUploadManager' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
173 |
174 |     private struct FileUploaderDelegate : ChunkedFileUploaderDelegate {
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:77:46: warning: non-sendable result type 'ChunkedFileUploader?' cannot be sent from actor-isolated context in call to instance method 'getUpload(ofFileAt:)'; this is an error in the Swift 6 language mode
 75 |     ///  If no upload was found in the cache, this method returns null without taking any action
 76 |     public func resumeDirectUpload(ofFile url: URL) async -> DirectUpload? {
 77 |         let fileUploader = await uploadActor.getUpload(ofFileAt: url)
    |                                              `- warning: non-sendable result type 'ChunkedFileUploader?' cannot be sent from actor-isolated context in call to instance method 'getUpload(ofFileAt:)'; this is an error in the Swift 6 language mode
 78 |         if let nonNilUploader = fileUploader {
 79 |             nonNilUploader.addDelegate(withToken: UUID().uuidString, uploaderDelegate)
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/Upload/ChunkedFileUploader.swift:14:7: note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 12 | /// This object is not externally thread-safe. Access its methods only from the main thread
 13 | /// If you need to start this over again from the beginning, make a new object (and cancel your old one)
 14 | class ChunkedFileUploader {
    |       `- note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 15 |
 16 |     private(set) var currentState: InternalUploadState = .ready
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:101:45: warning: non-sendable result type '[ChunkedFileUploader]' cannot be sent from actor-isolated context in call to instance method 'getAllUploads()'; this is an error in the Swift 6 language mode
 99 |     public func resumeAllDirectUploads() {
100 |         Task.detached { [self] in
101 |             for upload in await uploadActor.getAllUploads() {
    |                                             `- warning: non-sendable result type '[ChunkedFileUploader]' cannot be sent from actor-isolated context in call to instance method 'getAllUploads()'; this is an error in the Swift 6 language mode
102 |                 upload.addDelegate(withToken: UUID().uuidString, uploaderDelegate)
103 |             }
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/Upload/ChunkedFileUploader.swift:14:7: note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 12 | /// This object is not externally thread-safe. Access its methods only from the main thread
 13 | /// If you need to start this over again from the beginning, make a new object (and cancel your old one)
 14 | class ChunkedFileUploader {
    |       `- note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 15 |
 16 |     private(set) var currentState: InternalUploadState = .ready
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:228:22: warning: type 'ChunkedFileUploader' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
226 |     func getUpload(uploadID: String) async -> ChunkedFileUploader? {
227 |         // reminder: doesn't start the uploader, just makes it
228 |         return await Task<ChunkedFileUploader?, Never> {
    |                      `- warning: type 'ChunkedFileUploader' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
229 |             try? persistence
230 |                 .readEntry(uploadID: uploadID)
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/Upload/ChunkedFileUploader.swift:14:7: note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 12 | /// This object is not externally thread-safe. Access its methods only from the main thread
 13 | /// If you need to start this over again from the beginning, make a new object (and cancel your old one)
 14 | class ChunkedFileUploader {
    |       `- note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 15 |
 16 |     private(set) var currentState: InternalUploadState = .ready
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:228:54: warning: type 'ChunkedFileUploader' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
226 |     func getUpload(uploadID: String) async -> ChunkedFileUploader? {
227 |         // reminder: doesn't start the uploader, just makes it
228 |         return await Task<ChunkedFileUploader?, Never> {
    |                                                      `- warning: type 'ChunkedFileUploader' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
229 |             try? persistence
230 |                 .readEntry(uploadID: uploadID)
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/Upload/ChunkedFileUploader.swift:14:7: note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 12 | /// This object is not externally thread-safe. Access its methods only from the main thread
 13 | /// If you need to start this over again from the beginning, make a new object (and cancel your old one)
 14 | class ChunkedFileUploader {
    |       `- note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 15 |
 16 |     private(set) var currentState: InternalUploadState = .ready
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:236:11: warning: type 'ChunkedFileUploader' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
234 |                     )
235 |                 })
236 |         }.value
    |           `- warning: type 'ChunkedFileUploader' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
237 |     }
238 |
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/Upload/ChunkedFileUploader.swift:14:7: note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 12 | /// This object is not externally thread-safe. Access its methods only from the main thread
 13 | /// If you need to start this over again from the beginning, make a new object (and cancel your old one)
 14 | class ChunkedFileUploader {
    |       `- note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 15 |
 16 |     private(set) var currentState: InternalUploadState = .ready
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:228:22: warning: non-sendable type 'Task<ChunkedFileUploader?, Never>' cannot exit actor-isolated context in call to nonisolated property 'value'; this is an error in the Swift 6 language mode
226 |     func getUpload(uploadID: String) async -> ChunkedFileUploader? {
227 |         // reminder: doesn't start the uploader, just makes it
228 |         return await Task<ChunkedFileUploader?, Never> {
    |                      `- warning: non-sendable type 'Task<ChunkedFileUploader?, Never>' cannot exit actor-isolated context in call to nonisolated property 'value'; this is an error in the Swift 6 language mode
229 |             try? persistence
230 |                 .readEntry(uploadID: uploadID)
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/Upload/ChunkedFileUploader.swift:14:7: note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 12 | /// This object is not externally thread-safe. Access its methods only from the main thread
 13 | /// If you need to start this over again from the beginning, make a new object (and cancel your old one)
 14 | class ChunkedFileUploader {
    |       `- note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 15 |
 16 |     private(set) var currentState: InternalUploadState = .ready
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:236:11: warning: non-sendable type 'ChunkedFileUploader?' of nonisolated property 'value' cannot be sent to actor-isolated context; this is an error in the Swift 6 language mode
234 |                     )
235 |                 })
236 |         }.value
    |           `- warning: non-sendable type 'ChunkedFileUploader?' of nonisolated property 'value' cannot be sent to actor-isolated context; this is an error in the Swift 6 language mode
237 |     }
238 |
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/Upload/ChunkedFileUploader.swift:14:7: note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 12 | /// This object is not externally thread-safe. Access its methods only from the main thread
 13 | /// If you need to start this over again from the beginning, make a new object (and cancel your old one)
 14 | class ChunkedFileUploader {
    |       `- note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 15 |
 16 |     private(set) var currentState: InternalUploadState = .ready
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:240:22: warning: type 'ChunkedFileUploader' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
238 |
239 |     func getUpload(ofFileAt: URL) async -> ChunkedFileUploader? {
240 |         return await Task<ChunkedFileUploader?, Never> {
    |                      `- warning: type 'ChunkedFileUploader' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
241 |             guard let matchingEntry = try? persistence.readAll().first(
242 |                 where: { $0.uploadInfo.uploadURL == ofFileAt }
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/Upload/ChunkedFileUploader.swift:14:7: note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 12 | /// This object is not externally thread-safe. Access its methods only from the main thread
 13 | /// If you need to start this over again from the beginning, make a new object (and cancel your old one)
 14 | class ChunkedFileUploader {
    |       `- note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 15 |
 16 |     private(set) var currentState: InternalUploadState = .ready
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:240:54: warning: type 'ChunkedFileUploader' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
238 |
239 |     func getUpload(ofFileAt: URL) async -> ChunkedFileUploader? {
240 |         return await Task<ChunkedFileUploader?, Never> {
    |                                                      `- warning: type 'ChunkedFileUploader' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
241 |             guard let matchingEntry = try? persistence.readAll().first(
242 |                 where: { $0.uploadInfo.uploadURL == ofFileAt }
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/Upload/ChunkedFileUploader.swift:14:7: note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 12 | /// This object is not externally thread-safe. Access its methods only from the main thread
 13 | /// If you need to start this over again from the beginning, make a new object (and cancel your old one)
 14 | class ChunkedFileUploader {
    |       `- note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 15 |
 16 |     private(set) var currentState: InternalUploadState = .ready
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:250:11: warning: type 'ChunkedFileUploader' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
248 |                 persistenceEntry: matchingEntry
249 |             )
250 |         }.value
    |           `- warning: type 'ChunkedFileUploader' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
251 |     }
252 |
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/Upload/ChunkedFileUploader.swift:14:7: note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 12 | /// This object is not externally thread-safe. Access its methods only from the main thread
 13 | /// If you need to start this over again from the beginning, make a new object (and cancel your old one)
 14 | class ChunkedFileUploader {
    |       `- note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 15 |
 16 |     private(set) var currentState: InternalUploadState = .ready
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:240:22: warning: non-sendable type 'Task<ChunkedFileUploader?, Never>' cannot exit actor-isolated context in call to nonisolated property 'value'; this is an error in the Swift 6 language mode
238 |
239 |     func getUpload(ofFileAt: URL) async -> ChunkedFileUploader? {
240 |         return await Task<ChunkedFileUploader?, Never> {
    |                      `- warning: non-sendable type 'Task<ChunkedFileUploader?, Never>' cannot exit actor-isolated context in call to nonisolated property 'value'; this is an error in the Swift 6 language mode
241 |             guard let matchingEntry = try? persistence.readAll().first(
242 |                 where: { $0.uploadInfo.uploadURL == ofFileAt }
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/Upload/ChunkedFileUploader.swift:14:7: note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 12 | /// This object is not externally thread-safe. Access its methods only from the main thread
 13 | /// If you need to start this over again from the beginning, make a new object (and cancel your old one)
 14 | class ChunkedFileUploader {
    |       `- note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 15 |
 16 |     private(set) var currentState: InternalUploadState = .ready
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:250:11: warning: non-sendable type 'ChunkedFileUploader?' of nonisolated property 'value' cannot be sent to actor-isolated context; this is an error in the Swift 6 language mode
248 |                 persistenceEntry: matchingEntry
249 |             )
250 |         }.value
    |           `- warning: non-sendable type 'ChunkedFileUploader?' of nonisolated property 'value' cannot be sent to actor-isolated context; this is an error in the Swift 6 language mode
251 |     }
252 |
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/Upload/ChunkedFileUploader.swift:14:7: note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 12 | /// This object is not externally thread-safe. Access its methods only from the main thread
 13 | /// If you need to start this over again from the beginning, make a new object (and cancel your old one)
 14 | class ChunkedFileUploader {
    |       `- note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 15 |
 16 |     private(set) var currentState: InternalUploadState = .ready
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:254:22: warning: type 'ChunkedFileUploader' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
252 |
253 |     func getAllUploads() async -> [ChunkedFileUploader] {
254 |         return await Task<[ChunkedFileUploader]?, Never> {
    |                      `- warning: type 'ChunkedFileUploader' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
255 |             return try? persistence.readAll().compactMap { it in
256 |                 ChunkedFileUploader(
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/Upload/ChunkedFileUploader.swift:14:7: note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 12 | /// This object is not externally thread-safe. Access its methods only from the main thread
 13 | /// If you need to start this over again from the beginning, make a new object (and cancel your old one)
 14 | class ChunkedFileUploader {
    |       `- note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 15 |
 16 |     private(set) var currentState: InternalUploadState = .ready
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:254:56: warning: type 'ChunkedFileUploader' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
252 |
253 |     func getAllUploads() async -> [ChunkedFileUploader] {
254 |         return await Task<[ChunkedFileUploader]?, Never> {
    |                                                        `- warning: type 'ChunkedFileUploader' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
255 |             return try? persistence.readAll().compactMap { it in
256 |                 ChunkedFileUploader(
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/Upload/ChunkedFileUploader.swift:14:7: note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 12 | /// This object is not externally thread-safe. Access its methods only from the main thread
 13 | /// If you need to start this over again from the beginning, make a new object (and cancel your old one)
 14 | class ChunkedFileUploader {
    |       `- note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 15 |
 16 |     private(set) var currentState: InternalUploadState = .ready
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:260:11: warning: type 'ChunkedFileUploader' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
258 |                 )
259 |             }
260 |         }.value ?? []
    |           `- warning: type 'ChunkedFileUploader' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
261 |     }
262 |
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/Upload/ChunkedFileUploader.swift:14:7: note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 12 | /// This object is not externally thread-safe. Access its methods only from the main thread
 13 | /// If you need to start this over again from the beginning, make a new object (and cancel your old one)
 14 | class ChunkedFileUploader {
    |       `- note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 15 |
 16 |     private(set) var currentState: InternalUploadState = .ready
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:254:22: warning: non-sendable type 'Task<[ChunkedFileUploader]?, Never>' cannot exit actor-isolated context in call to nonisolated property 'value'; this is an error in the Swift 6 language mode
252 |
253 |     func getAllUploads() async -> [ChunkedFileUploader] {
254 |         return await Task<[ChunkedFileUploader]?, Never> {
    |                      `- warning: non-sendable type 'Task<[ChunkedFileUploader]?, Never>' cannot exit actor-isolated context in call to nonisolated property 'value'; this is an error in the Swift 6 language mode
255 |             return try? persistence.readAll().compactMap { it in
256 |                 ChunkedFileUploader(
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/Upload/ChunkedFileUploader.swift:14:7: note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 12 | /// This object is not externally thread-safe. Access its methods only from the main thread
 13 | /// If you need to start this over again from the beginning, make a new object (and cancel your old one)
 14 | class ChunkedFileUploader {
    |       `- note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 15 |
 16 |     private(set) var currentState: InternalUploadState = .ready
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:260:11: warning: non-sendable type '[ChunkedFileUploader]?' of nonisolated property 'value' cannot be sent to actor-isolated context; this is an error in the Swift 6 language mode
258 |                 )
259 |             }
260 |         }.value ?? []
    |           `- warning: non-sendable type '[ChunkedFileUploader]?' of nonisolated property 'value' cannot be sent to actor-isolated context; this is an error in the Swift 6 language mode
261 |     }
262 |
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/Upload/ChunkedFileUploader.swift:14:7: note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 12 | /// This object is not externally thread-safe. Access its methods only from the main thread
 13 | /// If you need to start this over again from the beginning, make a new object (and cancel your old one)
 14 | class ChunkedFileUploader {
    |       `- note: class 'ChunkedFileUploader' does not conform to the 'Sendable' protocol
 15 |
 16 |     private(set) var currentState: InternalUploadState = .ready
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/Options/DirectUploadOptions.swift:153:27: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'DirectUploadOptions.InputStandardization' may have shared mutable state; this is an error in the Swift 6 language mode
 90 |     /// to some inputs to minimize processing time during
 91 |     /// ingestion
 92 |     public struct InputStandardization {
    |                   `- note: consider making struct 'InputStandardization' conform to the 'Sendable' protocol
 93 |
 94 |         /// If requested the SDK will attempt to detect
    :
151 |         /// Default options where input standardization is
152 |         /// requested and the maximum resolution is set to 1080p.
153 |         public static let `default`: InputStandardization = InputStandardization(
    |                           |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'DirectUploadOptions.InputStandardization' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'default' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
154 |             isRequested: true,
155 |             maximumResolution: .default
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/Options/DirectUploadOptions.swift:166:27: warning: static property 'skipped' is not concurrency-safe because non-'Sendable' type 'DirectUploadOptions.InputStandardization' may have shared mutable state; this is an error in the Swift 6 language mode
 90 |     /// to some inputs to minimize processing time during
 91 |     /// ingestion
 92 |     public struct InputStandardization {
    |                   `- note: consider making struct 'InputStandardization' conform to the 'Sendable' protocol
 93 |
 94 |         /// If requested the SDK will attempt to detect
    :
164 |         /// still convert your input to a standard format
165 |         /// on the server when it is ingested.
166 |         public static let skipped: InputStandardization = InputStandardization(
    |                           |- warning: static property 'skipped' is not concurrency-safe because non-'Sendable' type 'DirectUploadOptions.InputStandardization' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'skipped' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
167 |             isRequested: false,
168 |             maximumResolution: .default
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:89:23: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 87 |     ///  If no upload was found in the cache, this method returns null without taking any action
 88 |     public func resumeDirectUpload(ofFile url: URL, completion: @escaping (DirectUpload) -> Void) {
 89 |         Task.detached {
    |                       `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 90 |             let upload = await self.resumeDirectUpload(ofFile: url)
    |                                `- note: closure captures 'self' which is accessible to code in the current task
 91 |             if let nonNilUpload = upload {
 92 |                 await MainActor.run { completion(nonNilUpload) }
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:92:39: warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
 90 |             let upload = await self.resumeDirectUpload(ofFile: url)
 91 |             if let nonNilUpload = upload {
 92 |                 await MainActor.run { completion(nonNilUpload) }
    |                                       |- warning: sending 'completion' risks causing data races; this is an error in the Swift 6 language mode
    |                                       `- note: task-isolated 'completion' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 93 |             }
 94 |         }
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:92:50: warning: sending 'nonNilUpload' risks causing data races; this is an error in the Swift 6 language mode
 90 |             let upload = await self.resumeDirectUpload(ofFile: url)
 91 |             if let nonNilUpload = upload {
 92 |                 await MainActor.run { completion(nonNilUpload) }
    |                                                  |- warning: sending 'nonNilUpload' risks causing data races; this is an error in the Swift 6 language mode
    |                                                  `- note: task-isolated 'nonNilUpload' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
 93 |             }
 94 |         }
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:100:23: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 98 |     /// It can be useful to call this during app initialization to resume uploads that have been killed by the process dying
 99 |     public func resumeAllDirectUploads() {
100 |         Task.detached { [self] in
    |                       `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
101 |             for upload in await uploadActor.getAllUploads() {
    |                                 `- note: closure captures 'self' which is accessible to code in the current task
102 |                 upload.addDelegate(withToken: UUID().uuidString, uploaderDelegate)
103 |             }
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:122:23: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
120 |             upload.fileWorker?.cancel()
121 |         }
122 |         Task.detached {
    |                       `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
123 |             await self.uploadActor.remove(uploadID: id)
    |                   `- note: closure captures 'self' which is accessible to code in the current task
124 |             self.notifyDelegates()
125 |         }
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:159:23: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
157 |
158 |     private func notifyDelegates() {
159 |         Task.detached {
    |                       `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
160 |             await MainActor.run {
161 |                 let delegates = self.uploadsUpdateDelegatesByToken.values
    |                                 `- note: closure captures 'self' which is accessible to code in the current task
162 |                 let allManagedUploads = self.allManagedDirectUploads()
163 |
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:149:23: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
147 |         fileWorker.addDelegate(withToken: UUID().uuidString, uploaderDelegate)
148 |         self.notifyDelegates()
149 |         Task.detached {
    |                       `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
150 |             await self.uploadActor.updateUpload(
    |                   `- note: closure captures 'self' which is accessible to code in the current task
151 |                 fileWorker.uploadInfo,
152 |                 fileInputURL: fileWorker.inputFileURL,
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:150:36: warning: sending 'fileWorker.uploadInfo' risks causing data races; this is an error in the Swift 6 language mode
148 |         self.notifyDelegates()
149 |         Task.detached {
150 |             await self.uploadActor.updateUpload(
    |                                    |- warning: sending 'fileWorker.uploadInfo' risks causing data races; this is an error in the Swift 6 language mode
    |                                    `- note: sending task-isolated 'fileWorker.uploadInfo' to actor-isolated instance method 'updateUpload(_:fileInputURL:withUpdate:)' risks causing data races between actor-isolated and task-isolated uses
151 |                 fileWorker.uploadInfo,
152 |                 fileInputURL: fileWorker.inputFileURL,
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:161:33: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
159 |         Task.detached {
160 |             await MainActor.run {
161 |                 let delegates = self.uploadsUpdateDelegatesByToken.values
    |                                 |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |                                 `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
162 |                 let allManagedUploads = self.allManagedDirectUploads()
163 |
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:181:35: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
179 |             stateUpdated state: ChunkedFileUploader.InternalUploadState
180 |         ) {
181 |             let _ = Task.detached {
    |                                   `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
182 |                 await manager.uploadActor.updateUpload(
    |                       `- note: closure captures 'self' which is accessible to code in the current task
183 |                     uploader.uploadInfo,
184 |                     fileInputURL: uploader.inputFileURL,
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUploadManager.swift:182:43: warning: sending 'uploader.uploadInfo' risks causing data races; this is an error in the Swift 6 language mode
180 |         ) {
181 |             let _ = Task.detached {
182 |                 await manager.uploadActor.updateUpload(
    |                                           |- warning: sending 'uploader.uploadInfo' risks causing data races; this is an error in the Swift 6 language mode
    |                                           `- note: sending task-isolated 'uploader.uploadInfo' to actor-isolated instance method 'updateUpload(_:fileInputURL:withUpdate:)' risks causing data races between actor-isolated and task-isolated uses
183 |                     uploader.uploadInfo,
184 |                     fileInputURL: uploader.inputFileURL,
[18/32] Compiling MuxUploadSDK UploadInfo.swift
[19/32] Compiling MuxUploadSDK UploadPersistence.swift
[20/32] Compiling MuxUploadSDK UploadInputStandardizer.swift
[21/32] Compiling MuxUploadSDK ChunkedFile.swift
[22/32] Compiling MuxUploadSDK Error+InternalErrors.swift
[23/32] Compiling MuxUploadSDK UploadInputFormatInspectionResult.swift
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:27:16: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'AVFoundationUploadInputInspector' may have shared mutable state; this is an error in the Swift 6 language mode
 23 | }
 24 |
 25 | class AVFoundationUploadInputInspector: UploadInputInspector {
    |       `- note: class 'AVFoundationUploadInputInspector' does not conform to the 'Sendable' protocol
 26 |
 27 |     static let shared = AVFoundationUploadInputInspector()
    |                |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'AVFoundationUploadInputInspector' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 28 |
 29 |     // FIXME: Trying to avoid the callback pyramid of doom
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:45:21: warning: capture of 'completionHandler' with non-sendable type 'UploadInputInspectionCompletionHandler' (aka '(Optional<UploadInputFormatInspectionResult>, CMTime, Optional<any Error>) -> ()') in a '@Sendable' closure
 43 |             ) { tracks, error in
 44 |                 if error != nil {
 45 |                     completionHandler(
    |                     |- warning: capture of 'completionHandler' with non-sendable type 'UploadInputInspectionCompletionHandler' (aka '(Optional<UploadInputFormatInspectionResult>, CMTime, Optional<any Error>) -> ()') in a '@Sendable' closure
    |                     `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
 46 |                         nil,
 47 |                         CMTime.zero,
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:54:21: warning: capture of 'self' with non-sendable type 'AVFoundationUploadInputInspector' in a '@Sendable' closure
 23 | }
 24 |
 25 | class AVFoundationUploadInputInspector: UploadInputInspector {
    |       `- note: class 'AVFoundationUploadInputInspector' does not conform to the 'Sendable' protocol
 26 |
 27 |     static let shared = AVFoundationUploadInputInspector()
    :
 52 |
 53 |                 if let tracks {
 54 |                     self.inspect(
    |                     `- warning: capture of 'self' with non-sendable type 'AVFoundationUploadInputInspector' in a '@Sendable' closure
 55 |                         sourceInput: sourceInput,
 56 |                         tracks: tracks,
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:55:38: warning: capture of 'sourceInput' with non-sendable type 'AVAsset' in a '@Sendable' closure
 53 |                 if let tracks {
 54 |                     self.inspect(
 55 |                         sourceInput: sourceInput,
    |                                      `- warning: capture of 'sourceInput' with non-sendable type 'AVAsset' in a '@Sendable' closure
 56 |                         tracks: tracks,
 57 |                         maximumResolution: maximumResolution,
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVAsset.h:62:12: note: class 'AVAsset' does not conform to the 'Sendable' protocol
  60 |
  61 | API_AVAILABLE(macos(10.7), ios(4.0), tvos(9.0), watchos(1.0), visionos(1.0))
  62 | @interface AVAsset : NSObject <NSCopying, AVAsynchronousKeyValueLoading>
     |            `- note: class 'AVAsset' does not conform to the 'Sendable' protocol
  63 | {
  64 | @private
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:5:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'AVFoundation'
  3 | //
  4 |
  5 | import AVFoundation
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'AVFoundation'
  6 | import CoreMedia
  7 | import Foundation
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:57:44: warning: capture of 'maximumResolution' with non-sendable type 'DirectUploadOptions.InputStandardization.MaximumResolution' in a '@Sendable' closure
 55 |                         sourceInput: sourceInput,
 56 |                         tracks: tracks,
 57 |                         maximumResolution: maximumResolution,
    |                                            `- warning: capture of 'maximumResolution' with non-sendable type 'DirectUploadOptions.InputStandardization.MaximumResolution' in a '@Sendable' closure
 58 |                         completionHandler: completionHandler
 59 |                     )
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/Options/DirectUploadOptions.swift:104:21: note: consider making enum 'MaximumResolution' conform to the 'Sendable' protocol
102 |         /// won't be scaled up.
103 |         ///
104 |         public enum MaximumResolution {
    |                     `- note: consider making enum 'MaximumResolution' conform to the 'Sendable' protocol
105 |             /// By default the standardized input will be
106 |             /// scaled down to 1920x1080 (1080p) from a larger
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:69:30: warning: capture of 'sourceInput' with non-sendable type 'AVAsset' in a '@Sendable' closure
 67 |             ) {
 68 |                 // Non-blocking if "tracks" is already loaded
 69 |                 let tracks = sourceInput.tracks(
    |                              `- warning: capture of 'sourceInput' with non-sendable type 'AVAsset' in a '@Sendable' closure
 70 |                     withMediaType: .video
 71 |                 )
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVAsset.h:62:12: note: class 'AVAsset' does not conform to the 'Sendable' protocol
  60 |
  61 | API_AVAILABLE(macos(10.7), ios(4.0), tvos(9.0), watchos(1.0), visionos(1.0))
  62 | @interface AVAsset : NSObject <NSCopying, AVAsynchronousKeyValueLoading>
     |            `- note: class 'AVAsset' does not conform to the 'Sendable' protocol
  63 | {
  64 | @private
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:73:17: warning: capture of 'self' with non-sendable type 'AVFoundationUploadInputInspector' in a '@Sendable' closure
 23 | }
 24 |
 25 | class AVFoundationUploadInputInspector: UploadInputInspector {
    |       `- note: class 'AVFoundationUploadInputInspector' does not conform to the 'Sendable' protocol
 26 |
 27 |     static let shared = AVFoundationUploadInputInspector()
    :
 71 |                 )
 72 |
 73 |                 self.inspect(
    |                 `- warning: capture of 'self' with non-sendable type 'AVFoundationUploadInputInspector' in a '@Sendable' closure
 74 |                     sourceInput: sourceInput,
 75 |                     tracks: tracks,
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:76:40: warning: capture of 'maximumResolution' with non-sendable type 'DirectUploadOptions.InputStandardization.MaximumResolution' in a '@Sendable' closure
 74 |                     sourceInput: sourceInput,
 75 |                     tracks: tracks,
 76 |                     maximumResolution: maximumResolution,
    |                                        `- warning: capture of 'maximumResolution' with non-sendable type 'DirectUploadOptions.InputStandardization.MaximumResolution' in a '@Sendable' closure
 77 |                     completionHandler: completionHandler
 78 |                 )
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/Options/DirectUploadOptions.swift:104:21: note: consider making enum 'MaximumResolution' conform to the 'Sendable' protocol
102 |         /// won't be scaled up.
103 |         ///
104 |         public enum MaximumResolution {
    |                     `- note: consider making enum 'MaximumResolution' conform to the 'Sendable' protocol
105 |             /// By default the standardized input will be
106 |             /// scaled down to 1920x1080 (1080p) from a larger
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:77:40: warning: capture of 'completionHandler' with non-sendable type 'UploadInputInspectionCompletionHandler' (aka '(Optional<UploadInputFormatInspectionResult>, CMTime, Optional<any Error>) -> ()') in a '@Sendable' closure
 75 |                     tracks: tracks,
 76 |                     maximumResolution: maximumResolution,
 77 |                     completionHandler: completionHandler
    |                                        |- warning: capture of 'completionHandler' with non-sendable type 'UploadInputInspectionCompletionHandler' (aka '(Optional<UploadInputFormatInspectionResult>, CMTime, Optional<any Error>) -> ()') in a '@Sendable' closure
    |                                        `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
 78 |                 )
 79 |             }
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:100:25: warning: 'loadValuesAsynchronously(forKeys:completionHandler:)' was deprecated in macOS 13.0: Use load(_:) instead.  For non-deprecated properties that do not have an AVAsyncProperty equivalent, continue to query these properties synchronously
 98 |         case 1:
 99 |
100 |             sourceInput.loadValuesAsynchronously(
    |                         `- warning: 'loadValuesAsynchronously(forKeys:completionHandler:)' was deprecated in macOS 13.0: Use load(_:) instead.  For non-deprecated properties that do not have an AVAsyncProperty equivalent, continue to query these properties synchronously
101 |                 forKeys: [
102 |                     "duration"
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:105:55: warning: 'duration' was deprecated in macOS 13.0: Use load(.duration) instead
103 |                 ]
104 |             ) {
105 |                 let sourceInputDuration = sourceInput.duration
    |                                                       `- warning: 'duration' was deprecated in macOS 13.0: Use load(.duration) instead
106 |                 if let track = tracks.first {
107 |                     track.loadValuesAsynchronously(
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:107:27: warning: 'loadValuesAsynchronously(forKeys:completionHandler:)' was deprecated in macOS 13.0: Use load(_:) instead.  For non-deprecated properties that do not have an AVAsyncProperty equivalent, continue to query these properties synchronously
105 |                 let sourceInputDuration = sourceInput.duration
106 |                 if let track = tracks.first {
107 |                     track.loadValuesAsynchronously(
    |                           `- warning: 'loadValuesAsynchronously(forKeys:completionHandler:)' was deprecated in macOS 13.0: Use load(_:) instead.  For non-deprecated properties that do not have an AVAsyncProperty equivalent, continue to query these properties synchronously
108 |                         forKeys: [
109 |                             "formatDescriptions",
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:116:62: warning: 'formatDescriptions' was deprecated in macOS 13.0: Use load(.formatDescriptions) instead
114 |                         var nonStandardReasons: [UploadInputFormatInspectionResult.NonstandardInputReason] = []
115 |
116 |                         guard let formatDescriptions = track.formatDescriptions as? [CMFormatDescription] else {
    |                                                              `- warning: 'formatDescriptions' was deprecated in macOS 13.0: Use load(.formatDescriptions) instead
117 |                             completionHandler(
118 |                                 nil,
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:150:47: warning: 'nominalFrameRate' was deprecated in macOS 13.0: Use load(.nominalFrameRate) instead
148 |                         }
149 |
150 |                         let frameRate = track.nominalFrameRate
    |                                               `- warning: 'nominalFrameRate' was deprecated in macOS 13.0: Use load(.nominalFrameRate) instead
151 |
152 |                         if max(videoDimensions.width, videoDimensions.height) > 1920 {
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:162:54: warning: 'estimatedDataRate' was deprecated in macOS 13.0: Use load(.estimatedDataRate) instead
160 |                         }
161 |
162 |                         let estimatedBitrate = track.estimatedDataRate
    |                                                      `- warning: 'estimatedDataRate' was deprecated in macOS 13.0: Use load(.estimatedDataRate) instead
163 |
164 |                         if max(videoDimensions.width, videoDimensions.height) > 1920 {
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:105:43: warning: capture of 'sourceInput' with non-sendable type 'AVAsset' in a '@Sendable' closure
103 |                 ]
104 |             ) {
105 |                 let sourceInputDuration = sourceInput.duration
    |                                           `- warning: capture of 'sourceInput' with non-sendable type 'AVAsset' in a '@Sendable' closure
106 |                 if let track = tracks.first {
107 |                     track.loadValuesAsynchronously(
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVAsset.h:62:12: note: class 'AVAsset' does not conform to the 'Sendable' protocol
  60 |
  61 | API_AVAILABLE(macos(10.7), ios(4.0), tvos(9.0), watchos(1.0), visionos(1.0))
  62 | @interface AVAsset : NSObject <NSCopying, AVAsynchronousKeyValueLoading>
     |            `- note: class 'AVAsset' does not conform to the 'Sendable' protocol
  63 | {
  64 | @private
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:106:32: warning: capture of 'tracks' with non-sendable type '[AVAssetTrack]' in a '@Sendable' closure
104 |             ) {
105 |                 let sourceInputDuration = sourceInput.duration
106 |                 if let track = tracks.first {
    |                                `- warning: capture of 'tracks' with non-sendable type '[AVAssetTrack]' in a '@Sendable' closure
107 |                     track.loadValuesAsynchronously(
108 |                         forKeys: [
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVAssetTrack.h:35:12: note: class 'AVAssetTrack' does not conform to the 'Sendable' protocol
 33 |
 34 | API_AVAILABLE(macos(10.7), ios(4.0), tvos(9.0), watchos(1.0), visionos(1.0))
 35 | @interface AVAssetTrack : NSObject <NSCopying, AVAsynchronousKeyValueLoading>
    |            `- note: class 'AVAssetTrack' does not conform to the 'Sendable' protocol
 36 | {
 37 | @private
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:117:29: warning: capture of 'completionHandler' with non-sendable type 'UploadInputInspectionCompletionHandler' (aka '(Optional<UploadInputFormatInspectionResult>, CMTime, Optional<any Error>) -> ()') in a '@Sendable' closure
115 |
116 |                         guard let formatDescriptions = track.formatDescriptions as? [CMFormatDescription] else {
117 |                             completionHandler(
    |                             |- warning: capture of 'completionHandler' with non-sendable type 'UploadInputInspectionCompletionHandler' (aka '(Optional<UploadInputFormatInspectionResult>, CMTime, Optional<any Error>) -> ()') in a '@Sendable' closure
    |                             `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
118 |                                 nil,
119 |                                 sourceInputDuration,
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:178:69: warning: capture of 'maximumResolution' with non-sendable type 'DirectUploadOptions.InputStandardization.MaximumResolution' in a '@Sendable' closure
176 |                                 nonStandardInputReasons: nonStandardReasons,
177 |                                 rescalingDetails: UploadInputFormatInspectionResult.RescalingDetails(
178 |                                     maximumDesiredResolutionPreset: maximumResolution,
    |                                                                     `- warning: capture of 'maximumResolution' with non-sendable type 'DirectUploadOptions.InputStandardization.MaximumResolution' in a '@Sendable' closure
179 |                                     recordedResolution: videoDimensions
180 |                                 )
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/Options/DirectUploadOptions.swift:104:21: note: consider making enum 'MaximumResolution' conform to the 'Sendable' protocol
102 |         /// won't be scaled up.
103 |         ///
104 |         public enum MaximumResolution {
    |                     `- note: consider making enum 'MaximumResolution' conform to the 'Sendable' protocol
105 |             /// By default the standardized input will be
106 |             /// scaled down to 1920x1080 (1080p) from a larger
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:116:56: warning: capture of 'track' with non-sendable type 'AVAssetTrack' in a '@Sendable' closure
114 |                         var nonStandardReasons: [UploadInputFormatInspectionResult.NonstandardInputReason] = []
115 |
116 |                         guard let formatDescriptions = track.formatDescriptions as? [CMFormatDescription] else {
    |                                                        `- warning: capture of 'track' with non-sendable type 'AVAssetTrack' in a '@Sendable' closure
117 |                             completionHandler(
118 |                                 nil,
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVAssetTrack.h:35:12: note: class 'AVAssetTrack' does not conform to the 'Sendable' protocol
 33 |
 34 | API_AVAILABLE(macos(10.7), ios(4.0), tvos(9.0), watchos(1.0), visionos(1.0))
 35 | @interface AVAssetTrack : NSObject <NSCopying, AVAsynchronousKeyValueLoading>
    |            `- note: class 'AVAssetTrack' does not conform to the 'Sendable' protocol
 36 | {
 37 | @private
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:117:29: warning: capture of 'completionHandler' with non-sendable type 'UploadInputInspectionCompletionHandler' (aka '(Optional<UploadInputFormatInspectionResult>, CMTime, Optional<any Error>) -> ()') in a '@Sendable' closure
115 |
116 |                         guard let formatDescriptions = track.formatDescriptions as? [CMFormatDescription] else {
117 |                             completionHandler(
    |                             |- warning: capture of 'completionHandler' with non-sendable type 'UploadInputInspectionCompletionHandler' (aka '(Optional<UploadInputFormatInspectionResult>, CMTime, Optional<any Error>) -> ()') in a '@Sendable' closure
    |                             `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
118 |                                 nil,
119 |                                 sourceInputDuration,
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:178:69: warning: capture of 'maximumResolution' with non-sendable type 'DirectUploadOptions.InputStandardization.MaximumResolution' in a '@Sendable' closure
176 |                                 nonStandardInputReasons: nonStandardReasons,
177 |                                 rescalingDetails: UploadInputFormatInspectionResult.RescalingDetails(
178 |                                     maximumDesiredResolutionPreset: maximumResolution,
    |                                                                     `- warning: capture of 'maximumResolution' with non-sendable type 'DirectUploadOptions.InputStandardization.MaximumResolution' in a '@Sendable' closure
179 |                                     recordedResolution: videoDimensions
180 |                                 )
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/Options/DirectUploadOptions.swift:104:21: note: consider making enum 'MaximumResolution' conform to the 'Sendable' protocol
102 |         /// won't be scaled up.
103 |         ///
104 |         public enum MaximumResolution {
    |                     `- note: consider making enum 'MaximumResolution' conform to the 'Sendable' protocol
105 |             /// By default the standardized input will be
106 |             /// scaled down to 1920x1080 (1080p) from a larger
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputStandardization/UploadInputStandardizationWorker.swift:25:16: warning: static property 'missingExportPreset' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
23 |     var localizedDescription: String
24 |
25 |     static var missingExportPreset = StandardizationError(
   |                |- warning: static property 'missingExportPreset' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'missingExportPreset' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: add '@MainActor' to make static property 'missingExportPreset' part of global actor 'MainActor'
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
26 |         localizedDescription: "Missing export session preset"
27 |     )
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputStandardization/UploadInputStandardizationWorker.swift:29:16: warning: static property 'exportSessionInitializationFailure' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
27 |     )
28 |
29 |     static var exportSessionInitializationFailure = StandardizationError(
   |                |- warning: static property 'exportSessionInitializationFailure' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'exportSessionInitializationFailure' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: add '@MainActor' to make static property 'exportSessionInitializationFailure' part of global actor 'MainActor'
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
30 |         localizedDescription: "Export session failed to initialize"
31 |     )
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputStandardization/UploadInputStandardizationWorker.swift:33:16: warning: static property 'standardizedAssetExportFailure' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
31 |     )
32 |
33 |     static var standardizedAssetExportFailure = StandardizationError(
   |                |- warning: static property 'standardizedAssetExportFailure' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'standardizedAssetExportFailure' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: add '@MainActor' to make static property 'standardizedAssetExportFailure' part of global actor 'MainActor'
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
34 |         localizedDescription: "Failed to export standardized asset"
35 |     )
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputStandardization/UploadInputStandardizationWorker.swift:88:34: warning: capture of 'exportSession' with non-sendable type 'AVAssetExportSession' in a '@Sendable' closure
86 |         // TODO: Use Swift Concurrency
87 |         exportSession.exportAsynchronously {
88 |             if let exportError = exportSession.error {
   |                                  `- warning: capture of 'exportSession' with non-sendable type 'AVAssetExportSession' in a '@Sendable' closure
89 |                 completion(sourceAsset, nil, exportError)
90 |             } else if let standardizedAssetURL = exportSession.outputURL {
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVAssetExportSession.h:156:12: note: class 'AVAssetExportSession' does not conform to the 'Sendable' protocol
154 | NS_SWIFT_NONSENDABLE
155 | API_AVAILABLE(macos(10.7), ios(4.0), tvos(9.0), visionos(1.0)) API_UNAVAILABLE(watchos)
156 | @interface AVAssetExportSession : NSObject
    |            `- note: class 'AVAssetExportSession' does not conform to the 'Sendable' protocol
157 | {
158 | @private
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputStandardization/UploadInputStandardizationWorker.swift:89:17: warning: capture of 'completion' with non-sendable type '(AVURLAsset, AVAsset?, (any Error)?) -> ()' in a '@Sendable' closure
87 |         exportSession.exportAsynchronously {
88 |             if let exportError = exportSession.error {
89 |                 completion(sourceAsset, nil, exportError)
   |                 |- warning: capture of 'completion' with non-sendable type '(AVURLAsset, AVAsset?, (any Error)?) -> ()' in a '@Sendable' closure
   |                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
90 |             } else if let standardizedAssetURL = exportSession.outputURL {
91 |                 let standardizedAsset = AVAsset(url: standardizedAssetURL)
[24/32] Compiling MuxUploadSDK UploadInputInspector.swift
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:27:16: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'AVFoundationUploadInputInspector' may have shared mutable state; this is an error in the Swift 6 language mode
 23 | }
 24 |
 25 | class AVFoundationUploadInputInspector: UploadInputInspector {
    |       `- note: class 'AVFoundationUploadInputInspector' does not conform to the 'Sendable' protocol
 26 |
 27 |     static let shared = AVFoundationUploadInputInspector()
    |                |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'AVFoundationUploadInputInspector' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 28 |
 29 |     // FIXME: Trying to avoid the callback pyramid of doom
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:45:21: warning: capture of 'completionHandler' with non-sendable type 'UploadInputInspectionCompletionHandler' (aka '(Optional<UploadInputFormatInspectionResult>, CMTime, Optional<any Error>) -> ()') in a '@Sendable' closure
 43 |             ) { tracks, error in
 44 |                 if error != nil {
 45 |                     completionHandler(
    |                     |- warning: capture of 'completionHandler' with non-sendable type 'UploadInputInspectionCompletionHandler' (aka '(Optional<UploadInputFormatInspectionResult>, CMTime, Optional<any Error>) -> ()') in a '@Sendable' closure
    |                     `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
 46 |                         nil,
 47 |                         CMTime.zero,
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:54:21: warning: capture of 'self' with non-sendable type 'AVFoundationUploadInputInspector' in a '@Sendable' closure
 23 | }
 24 |
 25 | class AVFoundationUploadInputInspector: UploadInputInspector {
    |       `- note: class 'AVFoundationUploadInputInspector' does not conform to the 'Sendable' protocol
 26 |
 27 |     static let shared = AVFoundationUploadInputInspector()
    :
 52 |
 53 |                 if let tracks {
 54 |                     self.inspect(
    |                     `- warning: capture of 'self' with non-sendable type 'AVFoundationUploadInputInspector' in a '@Sendable' closure
 55 |                         sourceInput: sourceInput,
 56 |                         tracks: tracks,
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:55:38: warning: capture of 'sourceInput' with non-sendable type 'AVAsset' in a '@Sendable' closure
 53 |                 if let tracks {
 54 |                     self.inspect(
 55 |                         sourceInput: sourceInput,
    |                                      `- warning: capture of 'sourceInput' with non-sendable type 'AVAsset' in a '@Sendable' closure
 56 |                         tracks: tracks,
 57 |                         maximumResolution: maximumResolution,
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVAsset.h:62:12: note: class 'AVAsset' does not conform to the 'Sendable' protocol
  60 |
  61 | API_AVAILABLE(macos(10.7), ios(4.0), tvos(9.0), watchos(1.0), visionos(1.0))
  62 | @interface AVAsset : NSObject <NSCopying, AVAsynchronousKeyValueLoading>
     |            `- note: class 'AVAsset' does not conform to the 'Sendable' protocol
  63 | {
  64 | @private
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:5:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'AVFoundation'
  3 | //
  4 |
  5 | import AVFoundation
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'AVFoundation'
  6 | import CoreMedia
  7 | import Foundation
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:57:44: warning: capture of 'maximumResolution' with non-sendable type 'DirectUploadOptions.InputStandardization.MaximumResolution' in a '@Sendable' closure
 55 |                         sourceInput: sourceInput,
 56 |                         tracks: tracks,
 57 |                         maximumResolution: maximumResolution,
    |                                            `- warning: capture of 'maximumResolution' with non-sendable type 'DirectUploadOptions.InputStandardization.MaximumResolution' in a '@Sendable' closure
 58 |                         completionHandler: completionHandler
 59 |                     )
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/Options/DirectUploadOptions.swift:104:21: note: consider making enum 'MaximumResolution' conform to the 'Sendable' protocol
102 |         /// won't be scaled up.
103 |         ///
104 |         public enum MaximumResolution {
    |                     `- note: consider making enum 'MaximumResolution' conform to the 'Sendable' protocol
105 |             /// By default the standardized input will be
106 |             /// scaled down to 1920x1080 (1080p) from a larger
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:69:30: warning: capture of 'sourceInput' with non-sendable type 'AVAsset' in a '@Sendable' closure
 67 |             ) {
 68 |                 // Non-blocking if "tracks" is already loaded
 69 |                 let tracks = sourceInput.tracks(
    |                              `- warning: capture of 'sourceInput' with non-sendable type 'AVAsset' in a '@Sendable' closure
 70 |                     withMediaType: .video
 71 |                 )
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVAsset.h:62:12: note: class 'AVAsset' does not conform to the 'Sendable' protocol
  60 |
  61 | API_AVAILABLE(macos(10.7), ios(4.0), tvos(9.0), watchos(1.0), visionos(1.0))
  62 | @interface AVAsset : NSObject <NSCopying, AVAsynchronousKeyValueLoading>
     |            `- note: class 'AVAsset' does not conform to the 'Sendable' protocol
  63 | {
  64 | @private
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:73:17: warning: capture of 'self' with non-sendable type 'AVFoundationUploadInputInspector' in a '@Sendable' closure
 23 | }
 24 |
 25 | class AVFoundationUploadInputInspector: UploadInputInspector {
    |       `- note: class 'AVFoundationUploadInputInspector' does not conform to the 'Sendable' protocol
 26 |
 27 |     static let shared = AVFoundationUploadInputInspector()
    :
 71 |                 )
 72 |
 73 |                 self.inspect(
    |                 `- warning: capture of 'self' with non-sendable type 'AVFoundationUploadInputInspector' in a '@Sendable' closure
 74 |                     sourceInput: sourceInput,
 75 |                     tracks: tracks,
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:76:40: warning: capture of 'maximumResolution' with non-sendable type 'DirectUploadOptions.InputStandardization.MaximumResolution' in a '@Sendable' closure
 74 |                     sourceInput: sourceInput,
 75 |                     tracks: tracks,
 76 |                     maximumResolution: maximumResolution,
    |                                        `- warning: capture of 'maximumResolution' with non-sendable type 'DirectUploadOptions.InputStandardization.MaximumResolution' in a '@Sendable' closure
 77 |                     completionHandler: completionHandler
 78 |                 )
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/Options/DirectUploadOptions.swift:104:21: note: consider making enum 'MaximumResolution' conform to the 'Sendable' protocol
102 |         /// won't be scaled up.
103 |         ///
104 |         public enum MaximumResolution {
    |                     `- note: consider making enum 'MaximumResolution' conform to the 'Sendable' protocol
105 |             /// By default the standardized input will be
106 |             /// scaled down to 1920x1080 (1080p) from a larger
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:77:40: warning: capture of 'completionHandler' with non-sendable type 'UploadInputInspectionCompletionHandler' (aka '(Optional<UploadInputFormatInspectionResult>, CMTime, Optional<any Error>) -> ()') in a '@Sendable' closure
 75 |                     tracks: tracks,
 76 |                     maximumResolution: maximumResolution,
 77 |                     completionHandler: completionHandler
    |                                        |- warning: capture of 'completionHandler' with non-sendable type 'UploadInputInspectionCompletionHandler' (aka '(Optional<UploadInputFormatInspectionResult>, CMTime, Optional<any Error>) -> ()') in a '@Sendable' closure
    |                                        `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
 78 |                 )
 79 |             }
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:100:25: warning: 'loadValuesAsynchronously(forKeys:completionHandler:)' was deprecated in macOS 13.0: Use load(_:) instead.  For non-deprecated properties that do not have an AVAsyncProperty equivalent, continue to query these properties synchronously
 98 |         case 1:
 99 |
100 |             sourceInput.loadValuesAsynchronously(
    |                         `- warning: 'loadValuesAsynchronously(forKeys:completionHandler:)' was deprecated in macOS 13.0: Use load(_:) instead.  For non-deprecated properties that do not have an AVAsyncProperty equivalent, continue to query these properties synchronously
101 |                 forKeys: [
102 |                     "duration"
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:105:55: warning: 'duration' was deprecated in macOS 13.0: Use load(.duration) instead
103 |                 ]
104 |             ) {
105 |                 let sourceInputDuration = sourceInput.duration
    |                                                       `- warning: 'duration' was deprecated in macOS 13.0: Use load(.duration) instead
106 |                 if let track = tracks.first {
107 |                     track.loadValuesAsynchronously(
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:107:27: warning: 'loadValuesAsynchronously(forKeys:completionHandler:)' was deprecated in macOS 13.0: Use load(_:) instead.  For non-deprecated properties that do not have an AVAsyncProperty equivalent, continue to query these properties synchronously
105 |                 let sourceInputDuration = sourceInput.duration
106 |                 if let track = tracks.first {
107 |                     track.loadValuesAsynchronously(
    |                           `- warning: 'loadValuesAsynchronously(forKeys:completionHandler:)' was deprecated in macOS 13.0: Use load(_:) instead.  For non-deprecated properties that do not have an AVAsyncProperty equivalent, continue to query these properties synchronously
108 |                         forKeys: [
109 |                             "formatDescriptions",
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:116:62: warning: 'formatDescriptions' was deprecated in macOS 13.0: Use load(.formatDescriptions) instead
114 |                         var nonStandardReasons: [UploadInputFormatInspectionResult.NonstandardInputReason] = []
115 |
116 |                         guard let formatDescriptions = track.formatDescriptions as? [CMFormatDescription] else {
    |                                                              `- warning: 'formatDescriptions' was deprecated in macOS 13.0: Use load(.formatDescriptions) instead
117 |                             completionHandler(
118 |                                 nil,
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:150:47: warning: 'nominalFrameRate' was deprecated in macOS 13.0: Use load(.nominalFrameRate) instead
148 |                         }
149 |
150 |                         let frameRate = track.nominalFrameRate
    |                                               `- warning: 'nominalFrameRate' was deprecated in macOS 13.0: Use load(.nominalFrameRate) instead
151 |
152 |                         if max(videoDimensions.width, videoDimensions.height) > 1920 {
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:162:54: warning: 'estimatedDataRate' was deprecated in macOS 13.0: Use load(.estimatedDataRate) instead
160 |                         }
161 |
162 |                         let estimatedBitrate = track.estimatedDataRate
    |                                                      `- warning: 'estimatedDataRate' was deprecated in macOS 13.0: Use load(.estimatedDataRate) instead
163 |
164 |                         if max(videoDimensions.width, videoDimensions.height) > 1920 {
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:105:43: warning: capture of 'sourceInput' with non-sendable type 'AVAsset' in a '@Sendable' closure
103 |                 ]
104 |             ) {
105 |                 let sourceInputDuration = sourceInput.duration
    |                                           `- warning: capture of 'sourceInput' with non-sendable type 'AVAsset' in a '@Sendable' closure
106 |                 if let track = tracks.first {
107 |                     track.loadValuesAsynchronously(
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVAsset.h:62:12: note: class 'AVAsset' does not conform to the 'Sendable' protocol
  60 |
  61 | API_AVAILABLE(macos(10.7), ios(4.0), tvos(9.0), watchos(1.0), visionos(1.0))
  62 | @interface AVAsset : NSObject <NSCopying, AVAsynchronousKeyValueLoading>
     |            `- note: class 'AVAsset' does not conform to the 'Sendable' protocol
  63 | {
  64 | @private
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:106:32: warning: capture of 'tracks' with non-sendable type '[AVAssetTrack]' in a '@Sendable' closure
104 |             ) {
105 |                 let sourceInputDuration = sourceInput.duration
106 |                 if let track = tracks.first {
    |                                `- warning: capture of 'tracks' with non-sendable type '[AVAssetTrack]' in a '@Sendable' closure
107 |                     track.loadValuesAsynchronously(
108 |                         forKeys: [
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVAssetTrack.h:35:12: note: class 'AVAssetTrack' does not conform to the 'Sendable' protocol
 33 |
 34 | API_AVAILABLE(macos(10.7), ios(4.0), tvos(9.0), watchos(1.0), visionos(1.0))
 35 | @interface AVAssetTrack : NSObject <NSCopying, AVAsynchronousKeyValueLoading>
    |            `- note: class 'AVAssetTrack' does not conform to the 'Sendable' protocol
 36 | {
 37 | @private
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:117:29: warning: capture of 'completionHandler' with non-sendable type 'UploadInputInspectionCompletionHandler' (aka '(Optional<UploadInputFormatInspectionResult>, CMTime, Optional<any Error>) -> ()') in a '@Sendable' closure
115 |
116 |                         guard let formatDescriptions = track.formatDescriptions as? [CMFormatDescription] else {
117 |                             completionHandler(
    |                             |- warning: capture of 'completionHandler' with non-sendable type 'UploadInputInspectionCompletionHandler' (aka '(Optional<UploadInputFormatInspectionResult>, CMTime, Optional<any Error>) -> ()') in a '@Sendable' closure
    |                             `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
118 |                                 nil,
119 |                                 sourceInputDuration,
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:178:69: warning: capture of 'maximumResolution' with non-sendable type 'DirectUploadOptions.InputStandardization.MaximumResolution' in a '@Sendable' closure
176 |                                 nonStandardInputReasons: nonStandardReasons,
177 |                                 rescalingDetails: UploadInputFormatInspectionResult.RescalingDetails(
178 |                                     maximumDesiredResolutionPreset: maximumResolution,
    |                                                                     `- warning: capture of 'maximumResolution' with non-sendable type 'DirectUploadOptions.InputStandardization.MaximumResolution' in a '@Sendable' closure
179 |                                     recordedResolution: videoDimensions
180 |                                 )
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/Options/DirectUploadOptions.swift:104:21: note: consider making enum 'MaximumResolution' conform to the 'Sendable' protocol
102 |         /// won't be scaled up.
103 |         ///
104 |         public enum MaximumResolution {
    |                     `- note: consider making enum 'MaximumResolution' conform to the 'Sendable' protocol
105 |             /// By default the standardized input will be
106 |             /// scaled down to 1920x1080 (1080p) from a larger
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:116:56: warning: capture of 'track' with non-sendable type 'AVAssetTrack' in a '@Sendable' closure
114 |                         var nonStandardReasons: [UploadInputFormatInspectionResult.NonstandardInputReason] = []
115 |
116 |                         guard let formatDescriptions = track.formatDescriptions as? [CMFormatDescription] else {
    |                                                        `- warning: capture of 'track' with non-sendable type 'AVAssetTrack' in a '@Sendable' closure
117 |                             completionHandler(
118 |                                 nil,
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVAssetTrack.h:35:12: note: class 'AVAssetTrack' does not conform to the 'Sendable' protocol
 33 |
 34 | API_AVAILABLE(macos(10.7), ios(4.0), tvos(9.0), watchos(1.0), visionos(1.0))
 35 | @interface AVAssetTrack : NSObject <NSCopying, AVAsynchronousKeyValueLoading>
    |            `- note: class 'AVAssetTrack' does not conform to the 'Sendable' protocol
 36 | {
 37 | @private
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:117:29: warning: capture of 'completionHandler' with non-sendable type 'UploadInputInspectionCompletionHandler' (aka '(Optional<UploadInputFormatInspectionResult>, CMTime, Optional<any Error>) -> ()') in a '@Sendable' closure
115 |
116 |                         guard let formatDescriptions = track.formatDescriptions as? [CMFormatDescription] else {
117 |                             completionHandler(
    |                             |- warning: capture of 'completionHandler' with non-sendable type 'UploadInputInspectionCompletionHandler' (aka '(Optional<UploadInputFormatInspectionResult>, CMTime, Optional<any Error>) -> ()') in a '@Sendable' closure
    |                             `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
118 |                                 nil,
119 |                                 sourceInputDuration,
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:178:69: warning: capture of 'maximumResolution' with non-sendable type 'DirectUploadOptions.InputStandardization.MaximumResolution' in a '@Sendable' closure
176 |                                 nonStandardInputReasons: nonStandardReasons,
177 |                                 rescalingDetails: UploadInputFormatInspectionResult.RescalingDetails(
178 |                                     maximumDesiredResolutionPreset: maximumResolution,
    |                                                                     `- warning: capture of 'maximumResolution' with non-sendable type 'DirectUploadOptions.InputStandardization.MaximumResolution' in a '@Sendable' closure
179 |                                     recordedResolution: videoDimensions
180 |                                 )
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/Options/DirectUploadOptions.swift:104:21: note: consider making enum 'MaximumResolution' conform to the 'Sendable' protocol
102 |         /// won't be scaled up.
103 |         ///
104 |         public enum MaximumResolution {
    |                     `- note: consider making enum 'MaximumResolution' conform to the 'Sendable' protocol
105 |             /// By default the standardized input will be
106 |             /// scaled down to 1920x1080 (1080p) from a larger
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputStandardization/UploadInputStandardizationWorker.swift:25:16: warning: static property 'missingExportPreset' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
23 |     var localizedDescription: String
24 |
25 |     static var missingExportPreset = StandardizationError(
   |                |- warning: static property 'missingExportPreset' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'missingExportPreset' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: add '@MainActor' to make static property 'missingExportPreset' part of global actor 'MainActor'
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
26 |         localizedDescription: "Missing export session preset"
27 |     )
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputStandardization/UploadInputStandardizationWorker.swift:29:16: warning: static property 'exportSessionInitializationFailure' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
27 |     )
28 |
29 |     static var exportSessionInitializationFailure = StandardizationError(
   |                |- warning: static property 'exportSessionInitializationFailure' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'exportSessionInitializationFailure' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: add '@MainActor' to make static property 'exportSessionInitializationFailure' part of global actor 'MainActor'
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
30 |         localizedDescription: "Export session failed to initialize"
31 |     )
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputStandardization/UploadInputStandardizationWorker.swift:33:16: warning: static property 'standardizedAssetExportFailure' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
31 |     )
32 |
33 |     static var standardizedAssetExportFailure = StandardizationError(
   |                |- warning: static property 'standardizedAssetExportFailure' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'standardizedAssetExportFailure' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: add '@MainActor' to make static property 'standardizedAssetExportFailure' part of global actor 'MainActor'
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
34 |         localizedDescription: "Failed to export standardized asset"
35 |     )
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputStandardization/UploadInputStandardizationWorker.swift:88:34: warning: capture of 'exportSession' with non-sendable type 'AVAssetExportSession' in a '@Sendable' closure
86 |         // TODO: Use Swift Concurrency
87 |         exportSession.exportAsynchronously {
88 |             if let exportError = exportSession.error {
   |                                  `- warning: capture of 'exportSession' with non-sendable type 'AVAssetExportSession' in a '@Sendable' closure
89 |                 completion(sourceAsset, nil, exportError)
90 |             } else if let standardizedAssetURL = exportSession.outputURL {
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVAssetExportSession.h:156:12: note: class 'AVAssetExportSession' does not conform to the 'Sendable' protocol
154 | NS_SWIFT_NONSENDABLE
155 | API_AVAILABLE(macos(10.7), ios(4.0), tvos(9.0), visionos(1.0)) API_UNAVAILABLE(watchos)
156 | @interface AVAssetExportSession : NSObject
    |            `- note: class 'AVAssetExportSession' does not conform to the 'Sendable' protocol
157 | {
158 | @private
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputStandardization/UploadInputStandardizationWorker.swift:89:17: warning: capture of 'completion' with non-sendable type '(AVURLAsset, AVAsset?, (any Error)?) -> ()' in a '@Sendable' closure
87 |         exportSession.exportAsynchronously {
88 |             if let exportError = exportSession.error {
89 |                 completion(sourceAsset, nil, exportError)
   |                 |- warning: capture of 'completion' with non-sendable type '(AVURLAsset, AVAsset?, (any Error)?) -> ()' in a '@Sendable' closure
   |                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
90 |             } else if let standardizedAssetURL = exportSession.outputURL {
91 |                 let standardizedAsset = AVAsset(url: standardizedAssetURL)
[25/32] Compiling MuxUploadSDK UploadInputStandardizationWorker.swift
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:27:16: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'AVFoundationUploadInputInspector' may have shared mutable state; this is an error in the Swift 6 language mode
 23 | }
 24 |
 25 | class AVFoundationUploadInputInspector: UploadInputInspector {
    |       `- note: class 'AVFoundationUploadInputInspector' does not conform to the 'Sendable' protocol
 26 |
 27 |     static let shared = AVFoundationUploadInputInspector()
    |                |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'AVFoundationUploadInputInspector' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 28 |
 29 |     // FIXME: Trying to avoid the callback pyramid of doom
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:45:21: warning: capture of 'completionHandler' with non-sendable type 'UploadInputInspectionCompletionHandler' (aka '(Optional<UploadInputFormatInspectionResult>, CMTime, Optional<any Error>) -> ()') in a '@Sendable' closure
 43 |             ) { tracks, error in
 44 |                 if error != nil {
 45 |                     completionHandler(
    |                     |- warning: capture of 'completionHandler' with non-sendable type 'UploadInputInspectionCompletionHandler' (aka '(Optional<UploadInputFormatInspectionResult>, CMTime, Optional<any Error>) -> ()') in a '@Sendable' closure
    |                     `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
 46 |                         nil,
 47 |                         CMTime.zero,
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:54:21: warning: capture of 'self' with non-sendable type 'AVFoundationUploadInputInspector' in a '@Sendable' closure
 23 | }
 24 |
 25 | class AVFoundationUploadInputInspector: UploadInputInspector {
    |       `- note: class 'AVFoundationUploadInputInspector' does not conform to the 'Sendable' protocol
 26 |
 27 |     static let shared = AVFoundationUploadInputInspector()
    :
 52 |
 53 |                 if let tracks {
 54 |                     self.inspect(
    |                     `- warning: capture of 'self' with non-sendable type 'AVFoundationUploadInputInspector' in a '@Sendable' closure
 55 |                         sourceInput: sourceInput,
 56 |                         tracks: tracks,
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:55:38: warning: capture of 'sourceInput' with non-sendable type 'AVAsset' in a '@Sendable' closure
 53 |                 if let tracks {
 54 |                     self.inspect(
 55 |                         sourceInput: sourceInput,
    |                                      `- warning: capture of 'sourceInput' with non-sendable type 'AVAsset' in a '@Sendable' closure
 56 |                         tracks: tracks,
 57 |                         maximumResolution: maximumResolution,
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVAsset.h:62:12: note: class 'AVAsset' does not conform to the 'Sendable' protocol
  60 |
  61 | API_AVAILABLE(macos(10.7), ios(4.0), tvos(9.0), watchos(1.0), visionos(1.0))
  62 | @interface AVAsset : NSObject <NSCopying, AVAsynchronousKeyValueLoading>
     |            `- note: class 'AVAsset' does not conform to the 'Sendable' protocol
  63 | {
  64 | @private
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:5:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'AVFoundation'
  3 | //
  4 |
  5 | import AVFoundation
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'AVFoundation'
  6 | import CoreMedia
  7 | import Foundation
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:57:44: warning: capture of 'maximumResolution' with non-sendable type 'DirectUploadOptions.InputStandardization.MaximumResolution' in a '@Sendable' closure
 55 |                         sourceInput: sourceInput,
 56 |                         tracks: tracks,
 57 |                         maximumResolution: maximumResolution,
    |                                            `- warning: capture of 'maximumResolution' with non-sendable type 'DirectUploadOptions.InputStandardization.MaximumResolution' in a '@Sendable' closure
 58 |                         completionHandler: completionHandler
 59 |                     )
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/Options/DirectUploadOptions.swift:104:21: note: consider making enum 'MaximumResolution' conform to the 'Sendable' protocol
102 |         /// won't be scaled up.
103 |         ///
104 |         public enum MaximumResolution {
    |                     `- note: consider making enum 'MaximumResolution' conform to the 'Sendable' protocol
105 |             /// By default the standardized input will be
106 |             /// scaled down to 1920x1080 (1080p) from a larger
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:69:30: warning: capture of 'sourceInput' with non-sendable type 'AVAsset' in a '@Sendable' closure
 67 |             ) {
 68 |                 // Non-blocking if "tracks" is already loaded
 69 |                 let tracks = sourceInput.tracks(
    |                              `- warning: capture of 'sourceInput' with non-sendable type 'AVAsset' in a '@Sendable' closure
 70 |                     withMediaType: .video
 71 |                 )
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVAsset.h:62:12: note: class 'AVAsset' does not conform to the 'Sendable' protocol
  60 |
  61 | API_AVAILABLE(macos(10.7), ios(4.0), tvos(9.0), watchos(1.0), visionos(1.0))
  62 | @interface AVAsset : NSObject <NSCopying, AVAsynchronousKeyValueLoading>
     |            `- note: class 'AVAsset' does not conform to the 'Sendable' protocol
  63 | {
  64 | @private
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:73:17: warning: capture of 'self' with non-sendable type 'AVFoundationUploadInputInspector' in a '@Sendable' closure
 23 | }
 24 |
 25 | class AVFoundationUploadInputInspector: UploadInputInspector {
    |       `- note: class 'AVFoundationUploadInputInspector' does not conform to the 'Sendable' protocol
 26 |
 27 |     static let shared = AVFoundationUploadInputInspector()
    :
 71 |                 )
 72 |
 73 |                 self.inspect(
    |                 `- warning: capture of 'self' with non-sendable type 'AVFoundationUploadInputInspector' in a '@Sendable' closure
 74 |                     sourceInput: sourceInput,
 75 |                     tracks: tracks,
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:76:40: warning: capture of 'maximumResolution' with non-sendable type 'DirectUploadOptions.InputStandardization.MaximumResolution' in a '@Sendable' closure
 74 |                     sourceInput: sourceInput,
 75 |                     tracks: tracks,
 76 |                     maximumResolution: maximumResolution,
    |                                        `- warning: capture of 'maximumResolution' with non-sendable type 'DirectUploadOptions.InputStandardization.MaximumResolution' in a '@Sendable' closure
 77 |                     completionHandler: completionHandler
 78 |                 )
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/Options/DirectUploadOptions.swift:104:21: note: consider making enum 'MaximumResolution' conform to the 'Sendable' protocol
102 |         /// won't be scaled up.
103 |         ///
104 |         public enum MaximumResolution {
    |                     `- note: consider making enum 'MaximumResolution' conform to the 'Sendable' protocol
105 |             /// By default the standardized input will be
106 |             /// scaled down to 1920x1080 (1080p) from a larger
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:77:40: warning: capture of 'completionHandler' with non-sendable type 'UploadInputInspectionCompletionHandler' (aka '(Optional<UploadInputFormatInspectionResult>, CMTime, Optional<any Error>) -> ()') in a '@Sendable' closure
 75 |                     tracks: tracks,
 76 |                     maximumResolution: maximumResolution,
 77 |                     completionHandler: completionHandler
    |                                        |- warning: capture of 'completionHandler' with non-sendable type 'UploadInputInspectionCompletionHandler' (aka '(Optional<UploadInputFormatInspectionResult>, CMTime, Optional<any Error>) -> ()') in a '@Sendable' closure
    |                                        `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
 78 |                 )
 79 |             }
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:100:25: warning: 'loadValuesAsynchronously(forKeys:completionHandler:)' was deprecated in macOS 13.0: Use load(_:) instead.  For non-deprecated properties that do not have an AVAsyncProperty equivalent, continue to query these properties synchronously
 98 |         case 1:
 99 |
100 |             sourceInput.loadValuesAsynchronously(
    |                         `- warning: 'loadValuesAsynchronously(forKeys:completionHandler:)' was deprecated in macOS 13.0: Use load(_:) instead.  For non-deprecated properties that do not have an AVAsyncProperty equivalent, continue to query these properties synchronously
101 |                 forKeys: [
102 |                     "duration"
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:105:55: warning: 'duration' was deprecated in macOS 13.0: Use load(.duration) instead
103 |                 ]
104 |             ) {
105 |                 let sourceInputDuration = sourceInput.duration
    |                                                       `- warning: 'duration' was deprecated in macOS 13.0: Use load(.duration) instead
106 |                 if let track = tracks.first {
107 |                     track.loadValuesAsynchronously(
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:107:27: warning: 'loadValuesAsynchronously(forKeys:completionHandler:)' was deprecated in macOS 13.0: Use load(_:) instead.  For non-deprecated properties that do not have an AVAsyncProperty equivalent, continue to query these properties synchronously
105 |                 let sourceInputDuration = sourceInput.duration
106 |                 if let track = tracks.first {
107 |                     track.loadValuesAsynchronously(
    |                           `- warning: 'loadValuesAsynchronously(forKeys:completionHandler:)' was deprecated in macOS 13.0: Use load(_:) instead.  For non-deprecated properties that do not have an AVAsyncProperty equivalent, continue to query these properties synchronously
108 |                         forKeys: [
109 |                             "formatDescriptions",
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:116:62: warning: 'formatDescriptions' was deprecated in macOS 13.0: Use load(.formatDescriptions) instead
114 |                         var nonStandardReasons: [UploadInputFormatInspectionResult.NonstandardInputReason] = []
115 |
116 |                         guard let formatDescriptions = track.formatDescriptions as? [CMFormatDescription] else {
    |                                                              `- warning: 'formatDescriptions' was deprecated in macOS 13.0: Use load(.formatDescriptions) instead
117 |                             completionHandler(
118 |                                 nil,
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:150:47: warning: 'nominalFrameRate' was deprecated in macOS 13.0: Use load(.nominalFrameRate) instead
148 |                         }
149 |
150 |                         let frameRate = track.nominalFrameRate
    |                                               `- warning: 'nominalFrameRate' was deprecated in macOS 13.0: Use load(.nominalFrameRate) instead
151 |
152 |                         if max(videoDimensions.width, videoDimensions.height) > 1920 {
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:162:54: warning: 'estimatedDataRate' was deprecated in macOS 13.0: Use load(.estimatedDataRate) instead
160 |                         }
161 |
162 |                         let estimatedBitrate = track.estimatedDataRate
    |                                                      `- warning: 'estimatedDataRate' was deprecated in macOS 13.0: Use load(.estimatedDataRate) instead
163 |
164 |                         if max(videoDimensions.width, videoDimensions.height) > 1920 {
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:105:43: warning: capture of 'sourceInput' with non-sendable type 'AVAsset' in a '@Sendable' closure
103 |                 ]
104 |             ) {
105 |                 let sourceInputDuration = sourceInput.duration
    |                                           `- warning: capture of 'sourceInput' with non-sendable type 'AVAsset' in a '@Sendable' closure
106 |                 if let track = tracks.first {
107 |                     track.loadValuesAsynchronously(
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVAsset.h:62:12: note: class 'AVAsset' does not conform to the 'Sendable' protocol
  60 |
  61 | API_AVAILABLE(macos(10.7), ios(4.0), tvos(9.0), watchos(1.0), visionos(1.0))
  62 | @interface AVAsset : NSObject <NSCopying, AVAsynchronousKeyValueLoading>
     |            `- note: class 'AVAsset' does not conform to the 'Sendable' protocol
  63 | {
  64 | @private
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:106:32: warning: capture of 'tracks' with non-sendable type '[AVAssetTrack]' in a '@Sendable' closure
104 |             ) {
105 |                 let sourceInputDuration = sourceInput.duration
106 |                 if let track = tracks.first {
    |                                `- warning: capture of 'tracks' with non-sendable type '[AVAssetTrack]' in a '@Sendable' closure
107 |                     track.loadValuesAsynchronously(
108 |                         forKeys: [
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVAssetTrack.h:35:12: note: class 'AVAssetTrack' does not conform to the 'Sendable' protocol
 33 |
 34 | API_AVAILABLE(macos(10.7), ios(4.0), tvos(9.0), watchos(1.0), visionos(1.0))
 35 | @interface AVAssetTrack : NSObject <NSCopying, AVAsynchronousKeyValueLoading>
    |            `- note: class 'AVAssetTrack' does not conform to the 'Sendable' protocol
 36 | {
 37 | @private
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:117:29: warning: capture of 'completionHandler' with non-sendable type 'UploadInputInspectionCompletionHandler' (aka '(Optional<UploadInputFormatInspectionResult>, CMTime, Optional<any Error>) -> ()') in a '@Sendable' closure
115 |
116 |                         guard let formatDescriptions = track.formatDescriptions as? [CMFormatDescription] else {
117 |                             completionHandler(
    |                             |- warning: capture of 'completionHandler' with non-sendable type 'UploadInputInspectionCompletionHandler' (aka '(Optional<UploadInputFormatInspectionResult>, CMTime, Optional<any Error>) -> ()') in a '@Sendable' closure
    |                             `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
118 |                                 nil,
119 |                                 sourceInputDuration,
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:178:69: warning: capture of 'maximumResolution' with non-sendable type 'DirectUploadOptions.InputStandardization.MaximumResolution' in a '@Sendable' closure
176 |                                 nonStandardInputReasons: nonStandardReasons,
177 |                                 rescalingDetails: UploadInputFormatInspectionResult.RescalingDetails(
178 |                                     maximumDesiredResolutionPreset: maximumResolution,
    |                                                                     `- warning: capture of 'maximumResolution' with non-sendable type 'DirectUploadOptions.InputStandardization.MaximumResolution' in a '@Sendable' closure
179 |                                     recordedResolution: videoDimensions
180 |                                 )
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/Options/DirectUploadOptions.swift:104:21: note: consider making enum 'MaximumResolution' conform to the 'Sendable' protocol
102 |         /// won't be scaled up.
103 |         ///
104 |         public enum MaximumResolution {
    |                     `- note: consider making enum 'MaximumResolution' conform to the 'Sendable' protocol
105 |             /// By default the standardized input will be
106 |             /// scaled down to 1920x1080 (1080p) from a larger
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:116:56: warning: capture of 'track' with non-sendable type 'AVAssetTrack' in a '@Sendable' closure
114 |                         var nonStandardReasons: [UploadInputFormatInspectionResult.NonstandardInputReason] = []
115 |
116 |                         guard let formatDescriptions = track.formatDescriptions as? [CMFormatDescription] else {
    |                                                        `- warning: capture of 'track' with non-sendable type 'AVAssetTrack' in a '@Sendable' closure
117 |                             completionHandler(
118 |                                 nil,
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVAssetTrack.h:35:12: note: class 'AVAssetTrack' does not conform to the 'Sendable' protocol
 33 |
 34 | API_AVAILABLE(macos(10.7), ios(4.0), tvos(9.0), watchos(1.0), visionos(1.0))
 35 | @interface AVAssetTrack : NSObject <NSCopying, AVAsynchronousKeyValueLoading>
    |            `- note: class 'AVAssetTrack' does not conform to the 'Sendable' protocol
 36 | {
 37 | @private
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:117:29: warning: capture of 'completionHandler' with non-sendable type 'UploadInputInspectionCompletionHandler' (aka '(Optional<UploadInputFormatInspectionResult>, CMTime, Optional<any Error>) -> ()') in a '@Sendable' closure
115 |
116 |                         guard let formatDescriptions = track.formatDescriptions as? [CMFormatDescription] else {
117 |                             completionHandler(
    |                             |- warning: capture of 'completionHandler' with non-sendable type 'UploadInputInspectionCompletionHandler' (aka '(Optional<UploadInputFormatInspectionResult>, CMTime, Optional<any Error>) -> ()') in a '@Sendable' closure
    |                             `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
118 |                                 nil,
119 |                                 sourceInputDuration,
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputInspection/UploadInputInspector.swift:178:69: warning: capture of 'maximumResolution' with non-sendable type 'DirectUploadOptions.InputStandardization.MaximumResolution' in a '@Sendable' closure
176 |                                 nonStandardInputReasons: nonStandardReasons,
177 |                                 rescalingDetails: UploadInputFormatInspectionResult.RescalingDetails(
178 |                                     maximumDesiredResolutionPreset: maximumResolution,
    |                                                                     `- warning: capture of 'maximumResolution' with non-sendable type 'DirectUploadOptions.InputStandardization.MaximumResolution' in a '@Sendable' closure
179 |                                     recordedResolution: videoDimensions
180 |                                 )
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/Options/DirectUploadOptions.swift:104:21: note: consider making enum 'MaximumResolution' conform to the 'Sendable' protocol
102 |         /// won't be scaled up.
103 |         ///
104 |         public enum MaximumResolution {
    |                     `- note: consider making enum 'MaximumResolution' conform to the 'Sendable' protocol
105 |             /// By default the standardized input will be
106 |             /// scaled down to 1920x1080 (1080p) from a larger
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputStandardization/UploadInputStandardizationWorker.swift:25:16: warning: static property 'missingExportPreset' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
23 |     var localizedDescription: String
24 |
25 |     static var missingExportPreset = StandardizationError(
   |                |- warning: static property 'missingExportPreset' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'missingExportPreset' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: add '@MainActor' to make static property 'missingExportPreset' part of global actor 'MainActor'
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
26 |         localizedDescription: "Missing export session preset"
27 |     )
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputStandardization/UploadInputStandardizationWorker.swift:29:16: warning: static property 'exportSessionInitializationFailure' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
27 |     )
28 |
29 |     static var exportSessionInitializationFailure = StandardizationError(
   |                |- warning: static property 'exportSessionInitializationFailure' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'exportSessionInitializationFailure' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: add '@MainActor' to make static property 'exportSessionInitializationFailure' part of global actor 'MainActor'
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
30 |         localizedDescription: "Export session failed to initialize"
31 |     )
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputStandardization/UploadInputStandardizationWorker.swift:33:16: warning: static property 'standardizedAssetExportFailure' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
31 |     )
32 |
33 |     static var standardizedAssetExportFailure = StandardizationError(
   |                |- warning: static property 'standardizedAssetExportFailure' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'standardizedAssetExportFailure' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: add '@MainActor' to make static property 'standardizedAssetExportFailure' part of global actor 'MainActor'
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
34 |         localizedDescription: "Failed to export standardized asset"
35 |     )
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputStandardization/UploadInputStandardizationWorker.swift:88:34: warning: capture of 'exportSession' with non-sendable type 'AVAssetExportSession' in a '@Sendable' closure
86 |         // TODO: Use Swift Concurrency
87 |         exportSession.exportAsynchronously {
88 |             if let exportError = exportSession.error {
   |                                  `- warning: capture of 'exportSession' with non-sendable type 'AVAssetExportSession' in a '@Sendable' closure
89 |                 completion(sourceAsset, nil, exportError)
90 |             } else if let standardizedAssetURL = exportSession.outputURL {
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVAssetExportSession.h:156:12: note: class 'AVAssetExportSession' does not conform to the 'Sendable' protocol
154 | NS_SWIFT_NONSENDABLE
155 | API_AVAILABLE(macos(10.7), ios(4.0), tvos(9.0), visionos(1.0)) API_UNAVAILABLE(watchos)
156 | @interface AVAssetExportSession : NSObject
    |            `- note: class 'AVAssetExportSession' does not conform to the 'Sendable' protocol
157 | {
158 | @private
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InputStandardization/UploadInputStandardizationWorker.swift:89:17: warning: capture of 'completion' with non-sendable type '(AVURLAsset, AVAsset?, (any Error)?) -> ()' in a '@Sendable' closure
87 |         exportSession.exportAsynchronously {
88 |             if let exportError = exportSession.error {
89 |                 completion(sourceAsset, nil, exportError)
   |                 |- warning: capture of 'completion' with non-sendable type '(AVURLAsset, AVAsset?, (any Error)?) -> ()' in a '@Sendable' closure
   |                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
90 |             } else if let standardizedAssetURL = exportSession.outputURL {
91 |                 let standardizedAsset = AVAsset(url: standardizedAssetURL)
[26/32] Compiling MuxUploadSDK UploadInput.swift
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUpload.swift:952:16: warning: stored property 'kind' of 'Sendable'-conforming struct 'DirectUploadError' has non-sendable type 'DirectUploadError.Kind'; this is an error in the Swift 6 language mode
936 | public struct DirectUploadError : Error {
937 |     /// Represents the possible error cases from a ``DirectUpload``
938 |     public enum Kind : Int {
    |                 `- note: consider making enum 'Kind' conform to the 'Sendable' protocol
939 |         /// The cause of the error is not known
940 |         case unknown = -1
    :
950 |
951 |     public let lastStatus: DirectUpload.TransportStatus?
952 |     public let kind: Kind
    |                `- warning: stored property 'kind' of 'Sendable'-conforming struct 'DirectUploadError' has non-sendable type 'DirectUploadError.Kind'; this is an error in the Swift 6 language mode
953 |     public let message: String
954 |     public let reason: Error?
[27/32] Compiling MuxUploadSDK DirectUpload+AVFoundation.swift
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUpload.swift:952:16: warning: stored property 'kind' of 'Sendable'-conforming struct 'DirectUploadError' has non-sendable type 'DirectUploadError.Kind'; this is an error in the Swift 6 language mode
936 | public struct DirectUploadError : Error {
937 |     /// Represents the possible error cases from a ``DirectUpload``
938 |     public enum Kind : Int {
    |                 `- note: consider making enum 'Kind' conform to the 'Sendable' protocol
939 |         /// The cause of the error is not known
940 |         case unknown = -1
    :
950 |
951 |     public let lastStatus: DirectUpload.TransportStatus?
952 |     public let kind: Kind
    |                `- warning: stored property 'kind' of 'Sendable'-conforming struct 'DirectUploadError' has non-sendable type 'DirectUploadError.Kind'; this is an error in the Swift 6 language mode
953 |     public let message: String
954 |     public let reason: Error?
[28/32] Compiling MuxUploadSDK DirectUpload.swift
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/DirectUpload.swift:952:16: warning: stored property 'kind' of 'Sendable'-conforming struct 'DirectUploadError' has non-sendable type 'DirectUploadError.Kind'; this is an error in the Swift 6 language mode
936 | public struct DirectUploadError : Error {
937 |     /// Represents the possible error cases from a ``DirectUpload``
938 |     public enum Kind : Int {
    |                 `- note: consider making enum 'Kind' conform to the 'Sendable' protocol
939 |         /// The cause of the error is not known
940 |         case unknown = -1
    :
950 |
951 |     public let lastStatus: DirectUpload.TransportStatus?
952 |     public let kind: Kind
    |                `- warning: stored property 'kind' of 'Sendable'-conforming struct 'DirectUploadError' has non-sendable type 'DirectUploadError.Kind'; this is an error in the Swift 6 language mode
953 |     public let message: String
954 |     public let reason: Error?
[29/32] Compiling MuxUploadSDK SDKLogger.swift
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/SDKLogger.swift:20:16: warning: static property 'logger' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
18 |
19 |     /// The `Logger` being used to log events from this SDK
20 |     static var logger: os.Logger? = nil
   |                |- warning: static property 'logger' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'logger' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: add '@MainActor' to make static property 'logger' part of global actor 'MainActor'
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
21 |
22 |     /// Enables logging by adding a `Logger` with `subsystem: "Mux"` and `category: "Upload"`
[30/32] Compiling MuxUploadSDK SemanticVersion.swift
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/PublicAPI/SDKLogger.swift:20:16: warning: static property 'logger' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
18 |
19 |     /// The `Logger` being used to log events from this SDK
20 |     static var logger: os.Logger? = nil
   |                |- warning: static property 'logger' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'logger' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: add '@MainActor' to make static property 'logger' part of global actor 'MainActor'
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
21 |
22 |     /// Enables logging by adding a `Logger` with `subsystem: "Mux"` and `category: "Upload"`
[31/32] Compiling MuxUploadSDK ChunkWorker.swift
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/Upload/ChunkWorker.swift:216:19: warning: non-final class 'ProgressReportingURLSessionTaskDelegate' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
214 | }
215 |
216 | fileprivate class ProgressReportingURLSessionTaskDelegate : NSObject, URLSessionDataDelegate {
    |                   `- warning: non-final class 'ProgressReportingURLSessionTaskDelegate' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
217 |     let outerDelegate: ProgressReportHandler
218 |     let forURL: URL
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/Upload/ChunkWorker.swift:217:9: warning: stored property 'outerDelegate' of 'Sendable'-conforming class 'ProgressReportingURLSessionTaskDelegate' has non-sendable type 'ProgressReportingURLSessionTaskDelegate.ProgressReportHandler' (aka '(Int64, Int64, Int64) -> ()'); this is an error in the Swift 6 language mode
215 |
216 | fileprivate class ProgressReportingURLSessionTaskDelegate : NSObject, URLSessionDataDelegate {
217 |     let outerDelegate: ProgressReportHandler
    |         |- warning: stored property 'outerDelegate' of 'Sendable'-conforming class 'ProgressReportingURLSessionTaskDelegate' has non-sendable type 'ProgressReportingURLSessionTaskDelegate.ProgressReportHandler' (aka '(Int64, Int64, Int64) -> ()'); this is an error in the Swift 6 language mode
    |         `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
218 |     let forURL: URL
219 |
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/Upload/ChunkWorker.swift:110:21: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
108 |         chunk: FileChunk
109 |     ) -> Task<Success, Error> {
110 |         return Task { [self] in
    |                     `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
111 |             return try await self.directUpload(chunk: chunk) as! ChunkWorker.Success
    |                              `- note: closure captures 'self' which is accessible to code in the current task
112 |         }
113 |     }
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/Upload/ChunkedFileUploader.swift:97:34: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 95 |
 96 |     private func beginUpload() {
 97 |         let task = Task.detached { [self] in
    |                                  `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 98 |
 99 |             let asset = AVAsset(url: inputFileURL)
    |                                      `- note: closure captures 'self' which is accessible to code in the current task
100 |
101 |             var duration: CMTime
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/Upload/ChunkedFileUploader.swift:203:34: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
201 |
202 |     private func beginUpload(duration: CMTime) {
203 |         let task = Task.detached { [self] in
    |                                  `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
204 |             do {
205 |                 // It's fine if it's already open, that's handled by ignoring the call
206 |                 let fileSize = try FileManager.default.fileSizeOfItem(
207 |                     atPath: inputFileURL.path
    |                             `- note: closure captures 'self' which is accessible to code in the current task
208 |                 )
209 |                 let result = try await makeWorker().performUpload()
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/Upload/ChunkedFileUploader.swift:285:16: warning: sending 'self.uploadInfo' risks causing data races; this is an error in the Swift 6 language mode
283 |
284 |     private func makeWorker() -> Worker {
285 |         return Worker(
    |                |- warning: sending 'self.uploadInfo' risks causing data races; this is an error in the Swift 6 language mode
    |                `- note: sending task-isolated 'self.uploadInfo' to actor-isolated initializer 'init(uploadInfo:inputFileURL:chunkedFile:progress:startByte:_:)' risks causing data races between actor-isolated and task-isolated uses
286 |             uploadInfo: uploadInfo,
287 |             inputFileURL: inputFileURL,
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/Upload/ChunkedFileUploader.swift:285:16: warning: sending 'self.file' risks causing data races; this is an error in the Swift 6 language mode
283 |
284 |     private func makeWorker() -> Worker {
285 |         return Worker(
    |                |- warning: sending 'self.file' risks causing data races; this is an error in the Swift 6 language mode
    |                `- note: sending task-isolated 'self.file' to actor-isolated initializer 'init(uploadInfo:inputFileURL:chunkedFile:progress:startByte:_:)' risks causing data races between actor-isolated and task-isolated uses
286 |             uploadInfo: uploadInfo,
287 |             inputFileURL: inputFileURL,
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/Upload/ChunkedFileUploader.swift:285:16: warning: sending value of non-Sendable type '(Progress, TimeInterval, TimeInterval) -> Void' (aka '(Progress, Double, Double) -> ()') risks causing data races; this is an error in the Swift 6 language mode
283 |
284 |     private func makeWorker() -> Worker {
285 |         return Worker(
    |                |- warning: sending value of non-Sendable type '(Progress, TimeInterval, TimeInterval) -> Void' (aka '(Progress, Double, Double) -> ()') risks causing data races; this is an error in the Swift 6 language mode
    |                `- note: sending task-isolated value of non-Sendable type '(Progress, TimeInterval, TimeInterval) -> Void' (aka '(Progress, Double, Double) -> ()') to actor-isolated initializer 'init(uploadInfo:inputFileURL:chunkedFile:progress:startByte:_:)' risks causing races in between task-isolated and actor-isolated uses
286 |             uploadInfo: uploadInfo,
287 |             inputFileURL: inputFileURL,
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/Upload/ChunkedFileUploader.swift:469:53: warning: sending 'chunkWorker' risks causing data races; this is an error in the Swift 6 language mode
467 |
468 |             // Do not use task in a loop it will create an memory consumption issue.
469 |             let chunkResult = try await chunkWorker.directUpload(chunk: chunk)
    |                                                     |- warning: sending 'chunkWorker' risks causing data races; this is an error in the Swift 6 language mode
    |                                                     `- note: sending 'self'-isolated 'chunkWorker' to nonisolated instance method 'directUpload(chunk:)' risks causing data races between nonisolated and 'self'-isolated uses
470 |             SDKLogger.logger?.info("Completed Chunk:\n \(String(describing: chunkResult))")
471 |         } while (readBytes == uploadInfo.options.transport.chunkSizeInBytes)
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/Upload/ChunkedFileUploader.swift:328:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
326 |     private func notifyStateFromWorker(_ state: InternalUploadState) {
327 |         DispatchQueue.main.async {
328 |             self.notifyStateFromMain(state)
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
329 |         }
330 |     }
[32/32] Compiling MuxUploadSDK ChunkedFileUploader.swift
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/Upload/ChunkWorker.swift:216:19: warning: non-final class 'ProgressReportingURLSessionTaskDelegate' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
214 | }
215 |
216 | fileprivate class ProgressReportingURLSessionTaskDelegate : NSObject, URLSessionDataDelegate {
    |                   `- warning: non-final class 'ProgressReportingURLSessionTaskDelegate' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
217 |     let outerDelegate: ProgressReportHandler
218 |     let forURL: URL
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/Upload/ChunkWorker.swift:217:9: warning: stored property 'outerDelegate' of 'Sendable'-conforming class 'ProgressReportingURLSessionTaskDelegate' has non-sendable type 'ProgressReportingURLSessionTaskDelegate.ProgressReportHandler' (aka '(Int64, Int64, Int64) -> ()'); this is an error in the Swift 6 language mode
215 |
216 | fileprivate class ProgressReportingURLSessionTaskDelegate : NSObject, URLSessionDataDelegate {
217 |     let outerDelegate: ProgressReportHandler
    |         |- warning: stored property 'outerDelegate' of 'Sendable'-conforming class 'ProgressReportingURLSessionTaskDelegate' has non-sendable type 'ProgressReportingURLSessionTaskDelegate.ProgressReportHandler' (aka '(Int64, Int64, Int64) -> ()'); this is an error in the Swift 6 language mode
    |         `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
218 |     let forURL: URL
219 |
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/Upload/ChunkWorker.swift:110:21: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
108 |         chunk: FileChunk
109 |     ) -> Task<Success, Error> {
110 |         return Task { [self] in
    |                     `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
111 |             return try await self.directUpload(chunk: chunk) as! ChunkWorker.Success
    |                              `- note: closure captures 'self' which is accessible to code in the current task
112 |         }
113 |     }
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/Upload/ChunkedFileUploader.swift:97:34: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 95 |
 96 |     private func beginUpload() {
 97 |         let task = Task.detached { [self] in
    |                                  `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
 98 |
 99 |             let asset = AVAsset(url: inputFileURL)
    |                                      `- note: closure captures 'self' which is accessible to code in the current task
100 |
101 |             var duration: CMTime
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/Upload/ChunkedFileUploader.swift:203:34: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
201 |
202 |     private func beginUpload(duration: CMTime) {
203 |         let task = Task.detached { [self] in
    |                                  `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
204 |             do {
205 |                 // It's fine if it's already open, that's handled by ignoring the call
206 |                 let fileSize = try FileManager.default.fileSizeOfItem(
207 |                     atPath: inputFileURL.path
    |                             `- note: closure captures 'self' which is accessible to code in the current task
208 |                 )
209 |                 let result = try await makeWorker().performUpload()
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/Upload/ChunkedFileUploader.swift:285:16: warning: sending 'self.uploadInfo' risks causing data races; this is an error in the Swift 6 language mode
283 |
284 |     private func makeWorker() -> Worker {
285 |         return Worker(
    |                |- warning: sending 'self.uploadInfo' risks causing data races; this is an error in the Swift 6 language mode
    |                `- note: sending task-isolated 'self.uploadInfo' to actor-isolated initializer 'init(uploadInfo:inputFileURL:chunkedFile:progress:startByte:_:)' risks causing data races between actor-isolated and task-isolated uses
286 |             uploadInfo: uploadInfo,
287 |             inputFileURL: inputFileURL,
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/Upload/ChunkedFileUploader.swift:285:16: warning: sending 'self.file' risks causing data races; this is an error in the Swift 6 language mode
283 |
284 |     private func makeWorker() -> Worker {
285 |         return Worker(
    |                |- warning: sending 'self.file' risks causing data races; this is an error in the Swift 6 language mode
    |                `- note: sending task-isolated 'self.file' to actor-isolated initializer 'init(uploadInfo:inputFileURL:chunkedFile:progress:startByte:_:)' risks causing data races between actor-isolated and task-isolated uses
286 |             uploadInfo: uploadInfo,
287 |             inputFileURL: inputFileURL,
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/Upload/ChunkedFileUploader.swift:285:16: warning: sending value of non-Sendable type '(Progress, TimeInterval, TimeInterval) -> Void' (aka '(Progress, Double, Double) -> ()') risks causing data races; this is an error in the Swift 6 language mode
283 |
284 |     private func makeWorker() -> Worker {
285 |         return Worker(
    |                |- warning: sending value of non-Sendable type '(Progress, TimeInterval, TimeInterval) -> Void' (aka '(Progress, Double, Double) -> ()') risks causing data races; this is an error in the Swift 6 language mode
    |                `- note: sending task-isolated value of non-Sendable type '(Progress, TimeInterval, TimeInterval) -> Void' (aka '(Progress, Double, Double) -> ()') to actor-isolated initializer 'init(uploadInfo:inputFileURL:chunkedFile:progress:startByte:_:)' risks causing races in between task-isolated and actor-isolated uses
286 |             uploadInfo: uploadInfo,
287 |             inputFileURL: inputFileURL,
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/Upload/ChunkedFileUploader.swift:469:53: warning: sending 'chunkWorker' risks causing data races; this is an error in the Swift 6 language mode
467 |
468 |             // Do not use task in a loop it will create an memory consumption issue.
469 |             let chunkResult = try await chunkWorker.directUpload(chunk: chunk)
    |                                                     |- warning: sending 'chunkWorker' risks causing data races; this is an error in the Swift 6 language mode
    |                                                     `- note: sending 'self'-isolated 'chunkWorker' to nonisolated instance method 'directUpload(chunk:)' risks causing data races between nonisolated and 'self'-isolated uses
470 |             SDKLogger.logger?.info("Completed Chunk:\n \(String(describing: chunkResult))")
471 |         } while (readBytes == uploadInfo.options.transport.chunkSizeInBytes)
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/Upload/ChunkedFileUploader.swift:328:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
326 |     private func notifyStateFromWorker(_ state: InternalUploadState) {
327 |         DispatchQueue.main.async {
328 |             self.notifyStateFromMain(state)
    |             |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
    |             `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
329 |         }
330 |     }
Build complete! (21.85s)
Fetching https://github.com/apple/swift-docc-plugin
[1/2271] Fetching swift-docc-plugin
Fetched https://github.com/apple/swift-docc-plugin from cache (1.06s)
Computing version for https://github.com/apple/swift-docc-plugin
Computed https://github.com/apple/swift-docc-plugin at 1.4.6 (1.64s)
Fetching https://github.com/swiftlang/swift-docc-symbolkit from cache
Fetched https://github.com/swiftlang/swift-docc-symbolkit from cache (0.82s)
Computing version for https://github.com/swiftlang/swift-docc-symbolkit
Computed https://github.com/swiftlang/swift-docc-symbolkit at 1.0.0 (1.50s)
Creating working copy for https://github.com/swiftlang/swift-docc-symbolkit
Working copy of https://github.com/swiftlang/swift-docc-symbolkit resolved at 1.0.0
Creating working copy for https://github.com/apple/swift-docc-plugin
Working copy of https://github.com/apple/swift-docc-plugin resolved at 1.4.6
Build complete.
{
  "default_localization" : "en",
  "dependencies" : [
    {
      "identity" : "swift-docc-plugin",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.2.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/apple/swift-docc-plugin"
    }
  ],
  "manifest_display_name" : "MuxUploadSDK",
  "name" : "MuxUploadSDK",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "ios",
      "version" : "14.0"
    },
    {
      "name" : "macos",
      "version" : "13.0"
    }
  ],
  "products" : [
    {
      "name" : "MuxUploadSDK",
      "targets" : [
        "MuxUploadSDK"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "swift_languages_versions" : [
    "5"
  ],
  "targets" : [
    {
      "c99name" : "MuxUploadSDKTests",
      "module_type" : "SwiftTarget",
      "name" : "MuxUploadSDKTests",
      "path" : "Tests/MuxUploadSDKTests",
      "sources" : [
        "Helpers/DummyError.swift",
        "Helpers/FakeUploadsFile.swift",
        "Helpers/MockUploadInputInspector.swift",
        "Helpers/PersistenceEntry+Fixtures.swift",
        "Helpers/StubbedChunkedFile.swift",
        "Helpers/UploadInput+Fixtures.swift",
        "Internal Utilities Tests/ChunkedFileTests.swift",
        "PublicAPITests/DirectUploadTests.swift",
        "Upload Tests/ChunkWorkerTests.swift",
        "Upload Tests/ChunkedFileUploaderTests.swift",
        "Upload Tests/ReporterTests.swift",
        "Upload Tests/UploadPersistenceTests.swift",
        "UploadManagerTests/UploadManagerTests.swift"
      ],
      "target_dependencies" : [
        "MuxUploadSDK"
      ],
      "type" : "test"
    },
    {
      "c99name" : "MuxUploadSDK",
      "module_type" : "SwiftTarget",
      "name" : "MuxUploadSDK",
      "path" : "Sources/MuxUploadSDK",
      "product_memberships" : [
        "MuxUploadSDK"
      ],
      "sources" : [
        "Extensions/Bundle+Reporting.swift",
        "Extensions/FileManager+FileOperations.swift",
        "Extensions/NSMutableURLRequest+Reporting.swift",
        "InputInspection/UploadInputFormatInspectionResult.swift",
        "InputInspection/UploadInputInspector.swift",
        "InputStandardization/UploadInputStandardizationWorker.swift",
        "InputStandardization/UploadInputStandardizer.swift",
        "InternalUtilities/ChunkedFile.swift",
        "InternalUtilities/Error+InternalErrors.swift",
        "InternalUtilities/HttpError.swift",
        "InternalUtilities/Reporting/InputStandardizationFailedEvent.swift",
        "InternalUtilities/Reporting/InputStandardizationSucceededEvent.swift",
        "InternalUtilities/Reporting/Reporter.swift",
        "InternalUtilities/Reporting/UploadFailedEvent.swift",
        "InternalUtilities/Reporting/UploadSucceededEvent.swift",
        "InternalUtilities/UploadInput.swift",
        "PublicAPI/AVFoundation+DirectUpload/DirectUpload+AVFoundation.swift",
        "PublicAPI/DirectUpload.swift",
        "PublicAPI/DirectUploadManager.swift",
        "PublicAPI/Options/DirectUploadOptions.swift",
        "PublicAPI/PhotosKit+DirectUpload/PHAsset+DirectUpload.swift",
        "PublicAPI/SDKLogger.swift",
        "PublicAPI/SemanticVersion.swift",
        "Upload/ChunkWorker.swift",
        "Upload/ChunkedFileUploader.swift",
        "Upload/UploadInfo.swift",
        "Upload/UploadPersistence.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.7"
}
Done.