Build Information
Successful build of MuxUploadSDK, reference v1.1.0 (ffcf66), with Swift 6.1 for macOS (SPM) on 10 Apr 2026 02:05:29 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 InferSendableFromCapturesBuild Log
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)
[20/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)
[21/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)
[22/32] Compiling MuxUploadSDK Reporter.swift
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InternalUtilities/Reporting/Reporter.swift:40:7: warning: non-final class 'Reporter' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
38 | }
39 |
40 | class Reporter: NSObject {
| `- warning: non-final class 'Reporter' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
41 |
42 | static let shared: Reporter = Reporter()
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InternalUtilities/Reporting/Reporter.swift:44:9: warning: stored property 'session' of 'Sendable'-conforming class 'Reporter' is mutable; this is an error in the Swift 6 language mode
42 | static let shared: Reporter = Reporter()
43 |
44 | var session: URLSession?
| `- warning: stored property 'session' of 'Sendable'-conforming class 'Reporter' is mutable; this is an error in the Swift 6 language mode
45 |
46 | var pendingEvents: [ObjectIdentifier: Codable] = [:]
[23/32] Compiling MuxUploadSDK UploadFailedEvent.swift
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InternalUtilities/Reporting/Reporter.swift:40:7: warning: non-final class 'Reporter' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
38 | }
39 |
40 | class Reporter: NSObject {
| `- warning: non-final class 'Reporter' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
41 |
42 | static let shared: Reporter = Reporter()
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InternalUtilities/Reporting/Reporter.swift:44:9: warning: stored property 'session' of 'Sendable'-conforming class 'Reporter' is mutable; this is an error in the Swift 6 language mode
42 | static let shared: Reporter = Reporter()
43 |
44 | var session: URLSession?
| `- warning: stored property 'session' of 'Sendable'-conforming class 'Reporter' is mutable; this is an error in the Swift 6 language mode
45 |
46 | var pendingEvents: [ObjectIdentifier: Codable] = [:]
[24/32] Compiling MuxUploadSDK UploadSucceededEvent.swift
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InternalUtilities/Reporting/Reporter.swift:40:7: warning: non-final class 'Reporter' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
38 | }
39 |
40 | class Reporter: NSObject {
| `- warning: non-final class 'Reporter' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
41 |
42 | static let shared: Reporter = Reporter()
/Users/admin/builder/spi-builder-workspace/Sources/MuxUploadSDK/InternalUtilities/Reporting/Reporter.swift:44:9: warning: stored property 'session' of 'Sendable'-conforming class 'Reporter' is mutable; this is an error in the Swift 6 language mode
42 | static let shared: Reporter = Reporter()
43 |
44 | var session: URLSession?
| `- warning: stored property 'session' of 'Sendable'-conforming class 'Reporter' is mutable; this is an error in the Swift 6 language mode
45 |
46 | var pendingEvents: [ObjectIdentifier: Codable] = [:]
[25/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 | }
[26/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 | }
[27/32] Compiling MuxUploadSDK DirectUploadManager.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,
[28/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,
[29/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,
[30/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?
[31/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?
[32/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?
Build complete! (21.11s)
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.05s)
Computing version for https://github.com/apple/swift-docc-plugin
Computed https://github.com/apple/swift-docc-plugin at 1.4.6 (1.66s)
Fetching https://github.com/swiftlang/swift-docc-symbolkit from cache
Fetched https://github.com/swiftlang/swift-docc-symbolkit from cache (0.93s)
Computing version for https://github.com/swiftlang/swift-docc-symbolkit
Computed https://github.com/swiftlang/swift-docc-symbolkit at 1.0.0 (1.59s)
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.