Build Information
Failed to build VideoIO, reference master (1623b3), with Swift 6.3 for macOS (SPM) on 13 Apr 2026 17:40:57 UTC.
Build Command
env DEVELOPER_DIR=/Applications/Xcode-26.4.0.app xcrun swift build --arch arm64Build Log
========================================
RunAll
========================================
Builder version: 4.70.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/MetalPetal/VideoIO.git
Reference: master
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/MetalPetal/VideoIO
* branch master -> FETCH_HEAD
* [new branch] master -> origin/master
HEAD is now at 1623b3d [Camera] Add method to switch to a specific video device
Cloned https://github.com/MetalPetal/VideoIO.git
Revision (git rev-parse @):
1623b3d597d8ae987979ce8ac7b1ce0d085d2855
SUCCESS checkout https://github.com/MetalPetal/VideoIO.git at master
========================================
ResolveProductDependencies
========================================
Resolving dependencies ...
{
"identity": ".resolve-product-dependencies",
"name": "resolve-dependencies",
"url": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
"version": "unspecified",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
"traits": [
"default"
],
"dependencies": [
{
"identity": "videoio",
"name": "VideoIO",
"url": "https://github.com/MetalPetal/VideoIO.git",
"version": "unspecified",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/VideoIO",
"traits": [
"default"
],
"dependencies": [
]
}
]
}
Fetching https://github.com/MetalPetal/VideoIO.git
[9/885] Fetching videoio
Fetched https://github.com/MetalPetal/VideoIO.git from cache (1.11s)
Creating working copy for https://github.com/MetalPetal/VideoIO.git
Working copy of https://github.com/MetalPetal/VideoIO.git resolved at master (1623b3d)
warning: '.resolve-product-dependencies': dependency 'videoio' is not used by any target
Found 0 product dependencies
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.3
Building package at path: $PWD
https://github.com/MetalPetal/VideoIO.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-26.4.0.app xcrun swift build --arch arm64
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version--6988338F2F200930.txt
[3/19] Compiling VideoIO MovieMerger.swift
[4/19] Compiling VideoIO MultitrackMovieRecorder.swift
[5/19] Compiling VideoIO UnfairLock.swift
[6/19] Compiling VideoIO VideoComposition.swift
/Users/admin/builder/spi-builder-workspace/Sources/VideoIO/VideoComposition.swift:31:20: warning: stored property 'requiredSourceTrackIDs' of 'Sendable'-conforming class 'Instruction' has non-Sendable type '[NSValue]?'
29 | public let containsTweening: Bool = true
30 |
31 | public let requiredSourceTrackIDs: [NSValue]?
| `- warning: stored property 'requiredSourceTrackIDs' of 'Sendable'-conforming class 'Instruction' has non-Sendable type '[NSValue]?'
32 |
33 | public let passthroughTrackID: CMPersistentTrackID = kCMPersistentTrackID_Invalid
Swift.Optional:1:21: note: generic enum 'Optional' does not conform to the 'Sendable' protocol
1 | @frozen public enum Optional<Wrapped> : ~Copyable, ~Escapable where Wrapped : ~Copyable, Wrapped : ~Escapable {
| `- note: generic enum 'Optional' does not conform to the 'Sendable' protocol
2 | case none
3 | case some(Wrapped)
/Users/admin/builder/spi-builder-workspace/Sources/VideoIO/VideoComposition.swift:48:16: warning: sendability of function types in property 'sourcePixelBufferAttributes' does not match requirement in protocol 'AVVideoCompositing'; this is an error in the Swift 6 language mode
46 | }
47 |
48 | public let sourcePixelBufferAttributes: [String : Any]? = [kCVPixelBufferPixelFormatTypeKey as String: [kCVPixelFormatType_420YpCbCr8BiPlanarFullRange, kCVPixelFormatType_32BGRA, kCVPixelFormatType_420YpCbCr8BiPlanarVideoRange]]
| `- warning: sendability of function types in property 'sourcePixelBufferAttributes' does not match requirement in protocol 'AVVideoCompositing'; this is an error in the Swift 6 language mode
49 |
50 | public let requiredPixelBufferAttributesForRenderContext: [String : Any] = [kCVPixelBufferPixelFormatTypeKey as String: kCVPixelFormatType_32BGRA]
/Applications/Xcode-26.4.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX26.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVVideoCompositing.h:123:91: note: expected sendability to match requirement here
121 | ///
122 | /// Missing attributes will be set by the composition engine to values allowing the best performance. This property is queried once before any composition request is sent to the compositor. Changing source buffer attributes afterwards is not supported.
123 | @property (nonatomic, readonly, nullable) NSDictionary<NSString *, id> NS_SWIFT_SENDABLE *sourcePixelBufferAttributes;
| `- note: expected sendability to match requirement here
124 |
125 | /// Indicates the pixel buffer attributes required by the video compositor for new buffers that it creates for processing.
/Users/admin/builder/spi-builder-workspace/Sources/VideoIO/VideoComposition.swift:50:16: warning: sendability of function types in property 'requiredPixelBufferAttributesForRenderContext' does not match requirement in protocol 'AVVideoCompositing'; this is an error in the Swift 6 language mode
48 | public let sourcePixelBufferAttributes: [String : Any]? = [kCVPixelBufferPixelFormatTypeKey as String: [kCVPixelFormatType_420YpCbCr8BiPlanarFullRange, kCVPixelFormatType_32BGRA, kCVPixelFormatType_420YpCbCr8BiPlanarVideoRange]]
49 |
50 | public let requiredPixelBufferAttributesForRenderContext: [String : Any] = [kCVPixelBufferPixelFormatTypeKey as String: kCVPixelFormatType_32BGRA]
| `- warning: sendability of function types in property 'requiredPixelBufferAttributesForRenderContext' does not match requirement in protocol 'AVVideoCompositing'; this is an error in the Swift 6 language mode
51 |
52 | public func renderContextChanged(_ newRenderContext: AVVideoCompositionRenderContext) {
/Applications/Xcode-26.4.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX26.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVVideoCompositing.h:130:81: note: expected sendability to match requirement here
128 | ///
129 | /// This property is queried once before any composition request is sent to the compositor. Changing required buffer attributes afterwards is not supported.
130 | @property (nonatomic, readonly) NSDictionary<NSString *, id> NS_SWIFT_SENDABLE *requiredPixelBufferAttributesForRenderContext;
| `- note: expected sendability to match requirement here
131 |
132 | /// Called to notify the custom compositor that a composition will switch to a different render context
[7/19] Compiling VideoIO PlayerVideoOutput.swift
[8/19] Compiling VideoIO SampleBufferUtilities.swift
[9/20] Compiling VideoIO DeviceOrientationTracker.swift
[10/20] Compiling VideoIO MovieFileType.swift
[11/20] Compiling VideoIO AVAsset.swift
/Users/admin/builder/spi-builder-workspace/Sources/VideoIO/AssetExportSession.swift:216:18: warning: class 'ExportProgress' must restate inherited '@unchecked Sendable' conformance
214 |
215 |
216 | public class ExportProgress: Progress {
| `- warning: class 'ExportProgress' must restate inherited '@unchecked Sendable' conformance
217 | public let videoEncodingProgress: Progress?
218 | public let audioEncodingProgress: Progress?
[12/20] Compiling VideoIO AssetExportSession.swift
/Users/admin/builder/spi-builder-workspace/Sources/VideoIO/AssetExportSession.swift:216:18: warning: class 'ExportProgress' must restate inherited '@unchecked Sendable' conformance
214 |
215 |
216 | public class ExportProgress: Progress {
| `- warning: class 'ExportProgress' must restate inherited '@unchecked Sendable' conformance
217 | public let videoEncodingProgress: Progress?
218 | public let audioEncodingProgress: Progress?
[13/20] Compiling VideoIO Camera+PhotoCapture.swift
/Users/admin/builder/spi-builder-workspace/Sources/VideoIO/Camera.swift:403:6: error: stored properties cannot be marked unavailable with '@available'
401 | internal var photoCaptureDelegateHandlers: [AnyObject] = []
402 |
403 | @available(macOS, unavailable)
| `- error: stored properties cannot be marked unavailable with '@available'
404 | internal var audioQueueCaptureSession: AudioQueueCaptureSession?
405 | }
/Users/admin/builder/spi-builder-workspace/Sources/VideoIO/Camera.swift:404:44: error: 'AudioQueueCaptureSession' is unavailable in macOS
402 |
403 | @available(macOS, unavailable)
404 | internal var audioQueueCaptureSession: AudioQueueCaptureSession?
| `- error: 'AudioQueueCaptureSession' is unavailable in macOS
405 | }
406 |
/Users/admin/builder/spi-builder-workspace/Sources/VideoIO/AudioQueueCaptureSession.swift:17:14: note: 'AudioQueueCaptureSession' has been explicitly marked unavailable here
15 |
16 | @available(macOS, unavailable)
17 | public class AudioQueueCaptureSession {
| `- note: 'AudioQueueCaptureSession' has been explicitly marked unavailable here
18 |
19 | public enum Error: Swift.Error {
[14/20] Compiling VideoIO Camera.swift
/Users/admin/builder/spi-builder-workspace/Sources/VideoIO/Camera.swift:403:6: error: stored properties cannot be marked unavailable with '@available'
401 | internal var photoCaptureDelegateHandlers: [AnyObject] = []
402 |
403 | @available(macOS, unavailable)
| `- error: stored properties cannot be marked unavailable with '@available'
404 | internal var audioQueueCaptureSession: AudioQueueCaptureSession?
405 | }
/Users/admin/builder/spi-builder-workspace/Sources/VideoIO/Camera.swift:404:44: error: 'AudioQueueCaptureSession' is unavailable in macOS
402 |
403 | @available(macOS, unavailable)
404 | internal var audioQueueCaptureSession: AudioQueueCaptureSession?
| `- error: 'AudioQueueCaptureSession' is unavailable in macOS
405 | }
406 |
/Users/admin/builder/spi-builder-workspace/Sources/VideoIO/AudioQueueCaptureSession.swift:17:14: note: 'AudioQueueCaptureSession' has been explicitly marked unavailable here
15 |
16 | @available(macOS, unavailable)
17 | public class AudioQueueCaptureSession {
| `- note: 'AudioQueueCaptureSession' has been explicitly marked unavailable here
18 |
19 | public enum Error: Swift.Error {
[15/20] Compiling VideoIO Camera+AudioQueueCapture.swift
[16/20] Compiling VideoIO Camera+FocusExposure.swift
error: emit-module command failed with exit code 1 (use -v to see invocation)
[17/20] Emitting module VideoIO
/Users/admin/builder/spi-builder-workspace/Sources/VideoIO/AssetExportSession.swift:216:18: warning: class 'ExportProgress' must restate inherited '@unchecked Sendable' conformance
214 |
215 |
216 | public class ExportProgress: Progress {
| `- warning: class 'ExportProgress' must restate inherited '@unchecked Sendable' conformance
217 | public let videoEncodingProgress: Progress?
218 | public let audioEncodingProgress: Progress?
/Users/admin/builder/spi-builder-workspace/Sources/VideoIO/AudioVideoSettings.swift:12:1: warning: extension declares a conformance of imported type 'AVVideoCodecType' to imported protocols 'Decodable', 'Encodable'; this will not behave correctly if the owners of 'AVFoundation' introduce this conformance in the future
10 | import VideoToolbox
11 |
12 | extension AVVideoCodecType: Codable {
| |- warning: extension declares a conformance of imported type 'AVVideoCodecType' to imported protocols 'Decodable', 'Encodable'; this will not behave correctly if the owners of 'AVFoundation' introduce this conformance in the future
| `- note: add '@retroactive' to silence this warning
13 |
14 | }
/Users/admin/builder/spi-builder-workspace/Sources/VideoIO/Camera.swift:403:6: error: stored properties cannot be marked unavailable with '@available'
401 | internal var photoCaptureDelegateHandlers: [AnyObject] = []
402 |
403 | @available(macOS, unavailable)
| `- error: stored properties cannot be marked unavailable with '@available'
404 | internal var audioQueueCaptureSession: AudioQueueCaptureSession?
405 | }
/Users/admin/builder/spi-builder-workspace/Sources/VideoIO/Camera.swift:404:44: error: 'AudioQueueCaptureSession' is unavailable in macOS
402 |
403 | @available(macOS, unavailable)
404 | internal var audioQueueCaptureSession: AudioQueueCaptureSession?
| `- error: 'AudioQueueCaptureSession' is unavailable in macOS
405 | }
406 |
/Users/admin/builder/spi-builder-workspace/Sources/VideoIO/AudioQueueCaptureSession.swift:17:14: note: 'AudioQueueCaptureSession' has been explicitly marked unavailable here
15 |
16 | @available(macOS, unavailable)
17 | public class AudioQueueCaptureSession {
| `- note: 'AudioQueueCaptureSession' has been explicitly marked unavailable here
18 |
19 | public enum Error: Swift.Error {
/Users/admin/builder/spi-builder-workspace/Sources/VideoIO/VideoComposition.swift:31:20: warning: stored property 'requiredSourceTrackIDs' of 'Sendable'-conforming class 'Instruction' has non-Sendable type '[NSValue]?'
29 | public let containsTweening: Bool = true
30 |
31 | public let requiredSourceTrackIDs: [NSValue]?
| `- warning: stored property 'requiredSourceTrackIDs' of 'Sendable'-conforming class 'Instruction' has non-Sendable type '[NSValue]?'
32 |
33 | public let passthroughTrackID: CMPersistentTrackID = kCMPersistentTrackID_Invalid
Swift.Optional:1:21: note: generic enum 'Optional' does not conform to the 'Sendable' protocol
1 | @frozen public enum Optional<Wrapped> : ~Copyable, ~Escapable where Wrapped : ~Copyable, Wrapped : ~Escapable {
| `- note: generic enum 'Optional' does not conform to the 'Sendable' protocol
2 | case none
3 | case some(Wrapped)
/Users/admin/builder/spi-builder-workspace/Sources/VideoIO/VideoComposition.swift:48:16: warning: sendability of function types in property 'sourcePixelBufferAttributes' does not match requirement in protocol 'AVVideoCompositing'; this is an error in the Swift 6 language mode
46 | }
47 |
48 | public let sourcePixelBufferAttributes: [String : Any]? = [kCVPixelBufferPixelFormatTypeKey as String: [kCVPixelFormatType_420YpCbCr8BiPlanarFullRange, kCVPixelFormatType_32BGRA, kCVPixelFormatType_420YpCbCr8BiPlanarVideoRange]]
| `- warning: sendability of function types in property 'sourcePixelBufferAttributes' does not match requirement in protocol 'AVVideoCompositing'; this is an error in the Swift 6 language mode
49 |
50 | public let requiredPixelBufferAttributesForRenderContext: [String : Any] = [kCVPixelBufferPixelFormatTypeKey as String: kCVPixelFormatType_32BGRA]
/Applications/Xcode-26.4.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX26.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVVideoCompositing.h:123:91: note: expected sendability to match requirement here
121 | ///
122 | /// Missing attributes will be set by the composition engine to values allowing the best performance. This property is queried once before any composition request is sent to the compositor. Changing source buffer attributes afterwards is not supported.
123 | @property (nonatomic, readonly, nullable) NSDictionary<NSString *, id> NS_SWIFT_SENDABLE *sourcePixelBufferAttributes;
| `- note: expected sendability to match requirement here
124 |
125 | /// Indicates the pixel buffer attributes required by the video compositor for new buffers that it creates for processing.
/Users/admin/builder/spi-builder-workspace/Sources/VideoIO/VideoComposition.swift:50:16: warning: sendability of function types in property 'requiredPixelBufferAttributesForRenderContext' does not match requirement in protocol 'AVVideoCompositing'; this is an error in the Swift 6 language mode
48 | public let sourcePixelBufferAttributes: [String : Any]? = [kCVPixelBufferPixelFormatTypeKey as String: [kCVPixelFormatType_420YpCbCr8BiPlanarFullRange, kCVPixelFormatType_32BGRA, kCVPixelFormatType_420YpCbCr8BiPlanarVideoRange]]
49 |
50 | public let requiredPixelBufferAttributesForRenderContext: [String : Any] = [kCVPixelBufferPixelFormatTypeKey as String: kCVPixelFormatType_32BGRA]
| `- warning: sendability of function types in property 'requiredPixelBufferAttributesForRenderContext' does not match requirement in protocol 'AVVideoCompositing'; this is an error in the Swift 6 language mode
51 |
52 | public func renderContextChanged(_ newRenderContext: AVVideoCompositionRenderContext) {
/Applications/Xcode-26.4.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX26.4.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVVideoCompositing.h:130:81: note: expected sendability to match requirement here
128 | ///
129 | /// This property is queried once before any composition request is sent to the compositor. Changing required buffer attributes afterwards is not supported.
130 | @property (nonatomic, readonly) NSDictionary<NSString *, id> NS_SWIFT_SENDABLE *requiredPixelBufferAttributesForRenderContext;
| `- note: expected sendability to match requirement here
131 |
132 | /// Called to notify the custom compositor that a composition will switch to a different render context
[18/20] Compiling VideoIO AudioQueueCaptureSession.swift
/Users/admin/builder/spi-builder-workspace/Sources/VideoIO/AudioVideoSettings.swift:12:1: warning: extension declares a conformance of imported type 'AVVideoCodecType' to imported protocols 'Decodable', 'Encodable'; this will not behave correctly if the owners of 'AVFoundation' introduce this conformance in the future
10 | import VideoToolbox
11 |
12 | extension AVVideoCodecType: Codable {
| |- warning: extension declares a conformance of imported type 'AVVideoCodecType' to imported protocols 'Decodable', 'Encodable'; this will not behave correctly if the owners of 'AVFoundation' introduce this conformance in the future
| `- note: add '@retroactive' to silence this warning
13 |
14 | }
/Users/admin/builder/spi-builder-workspace/Sources/VideoIO/AudioQueueCaptureSession.swift:48:42: warning: forming 'UnsafeRawPointer' to an inout variable of type String exposes the internal representation rather than the string contents.
46 | static func attach(to: AnyObject, callback: @escaping () -> Void) {
47 | let tracker = LifetimeTracker(callback: callback)
48 | objc_setAssociatedObject(to, &Key.tracker, tracker, .OBJC_ASSOCIATION_RETAIN_NONATOMIC)
| `- warning: forming 'UnsafeRawPointer' to an inout variable of type String exposes the internal representation rather than the string contents.
49 | }
50 | }
/Users/admin/builder/spi-builder-workspace/Sources/VideoIO/AudioQueueCaptureSession.swift:206:16: warning: forming 'UnsafeMutableRawPointer' to a variable of type 'Optional<AudioQueueCaptureSession.ClientInfo>'; this is likely incorrect because 'Optional<AudioQueueCaptureSession.ClientInfo>' may contain an object reference.
204 | }
205 | AudioQueueEnqueueBuffer(inAudioQueue, bufferRef, 0, nil)
206 | }, &self.clientInfo, nil, nil, 0, &audioQueue)
| `- warning: forming 'UnsafeMutableRawPointer' to a variable of type 'Optional<AudioQueueCaptureSession.ClientInfo>'; this is likely incorrect because 'Optional<AudioQueueCaptureSession.ClientInfo>' may contain an object reference.
207 |
208 | if status != 0 {
[19/20] Compiling VideoIO AudioVideoSettings.swift
/Users/admin/builder/spi-builder-workspace/Sources/VideoIO/AudioVideoSettings.swift:12:1: warning: extension declares a conformance of imported type 'AVVideoCodecType' to imported protocols 'Decodable', 'Encodable'; this will not behave correctly if the owners of 'AVFoundation' introduce this conformance in the future
10 | import VideoToolbox
11 |
12 | extension AVVideoCodecType: Codable {
| |- warning: extension declares a conformance of imported type 'AVVideoCodecType' to imported protocols 'Decodable', 'Encodable'; this will not behave correctly if the owners of 'AVFoundation' introduce this conformance in the future
| `- note: add '@retroactive' to silence this warning
13 |
14 | }
/Users/admin/builder/spi-builder-workspace/Sources/VideoIO/AudioQueueCaptureSession.swift:48:42: warning: forming 'UnsafeRawPointer' to an inout variable of type String exposes the internal representation rather than the string contents.
46 | static func attach(to: AnyObject, callback: @escaping () -> Void) {
47 | let tracker = LifetimeTracker(callback: callback)
48 | objc_setAssociatedObject(to, &Key.tracker, tracker, .OBJC_ASSOCIATION_RETAIN_NONATOMIC)
| `- warning: forming 'UnsafeRawPointer' to an inout variable of type String exposes the internal representation rather than the string contents.
49 | }
50 | }
/Users/admin/builder/spi-builder-workspace/Sources/VideoIO/AudioQueueCaptureSession.swift:206:16: warning: forming 'UnsafeMutableRawPointer' to a variable of type 'Optional<AudioQueueCaptureSession.ClientInfo>'; this is likely incorrect because 'Optional<AudioQueueCaptureSession.ClientInfo>' may contain an object reference.
204 | }
205 | AudioQueueEnqueueBuffer(inAudioQueue, bufferRef, 0, nil)
206 | }, &self.clientInfo, nil, nil, 0, &audioQueue)
| `- warning: forming 'UnsafeMutableRawPointer' to a variable of type 'Optional<AudioQueueCaptureSession.ClientInfo>'; this is likely incorrect because 'Optional<AudioQueueCaptureSession.ClientInfo>' may contain an object reference.
207 |
208 | if status != 0 {
[20/20] Compiling VideoIO VideoOrientationUtilities.swift
BUILD FAILURE 6.3 macosSpm