Build Information
Failed to build kubrick, reference 1.1.5 (018556
), with Swift 6.0 for Linux on 11 Sep 2024 08:47:39 UTC.
Build Command
bash -c docker run --pull=always --rm -v "checkouts-4606859-0":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.0-latest swift build --triple x86_64-unknown-linux-gnu -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete 2>&1
Build Log
========================================
RunAll
========================================
Builder version: 4.53.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/krad/kubrick.git
Reference: 1.1.5
Initialized empty Git repository in /host/spi-builder-workspace/.git/
hint: Using 'master' as the name for the initial branch. This default branch name
hint: is subject to change. To configure the initial branch name to use in all
hint: of your new repositories, which will suppress this warning, call:
hint:
hint: git config --global init.defaultBranch <name>
hint:
hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
hint: 'development'. The just-created branch can be renamed via this command:
hint:
hint: git branch -m <name>
From https://github.com/krad/kubrick
* tag 1.1.5 -> FETCH_HEAD
HEAD is now at 018556f Ok done with that. I think this is better math
Cloned https://github.com/krad/kubrick.git
Revision (git rev-parse @):
018556f5e196ccfde895d27006a56aea3f7f5ed0
SUCCESS checkout https://github.com/krad/kubrick.git at 1.1.5
========================================
Build
========================================
Selected platform: linux
Swift version: 6.0
Building package at path: $PWD
https://github.com/krad/kubrick.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4606859-0":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.0-latest swift build --triple x86_64-unknown-linux-gnu -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete 2>&1
basic-6.0-latest: Pulling from finestructure/spi-images
Digest: sha256:9d7dab235f2b0b46edadd73b1fb0c3b5323df02053420324a4a2f8ca89cb54a5
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.0-latest
Fetching https://github.com/krad/grip.git
[1/176] Fetching grip
Fetched https://github.com/krad/grip.git from cache (0.58s)
Computing version for https://github.com/krad/grip.git
Computed https://github.com/krad/grip.git at 1.3.5 (0.52s)
Creating working copy for https://github.com/krad/grip.git
Working copy of https://github.com/krad/grip.git resolved at 1.3.5
Building for debugging...
[0/3] Write sources
[2/3] Write swift-version-24593BA9C3E375BF.txt
[4/16] Compiling grip Packets.swift
[5/16] Compiling grip StreamTypePacket.swift
[6/17] Compiling grip Writeable.swift
[7/17] Compiling grip StreamType.swift
[8/17] Compiling grip VideoDimensionsPacket.swift
[9/17] Compiling grip VideoParamSetPacket.swift
[10/17] Compiling grip VideoSamplePacket.swift
[11/17] Compiling grip CompressedSample.swift
[12/17] Compiling grip ByteHelpers.swift
[13/17] Emitting module grip
[14/17] Compiling grip BinaryEncodable.swift
[15/17] Compiling grip BinaryEncodableExtensions.swift
[16/17] Compiling grip NALU.swift
[17/17] Compiling grip AudioSamplePacket.swift
[19/45] Compiling kubrick MuxerSink.swift
/host/spi-builder-workspace/Sources/kubrick/Sinks/MuxerSink.swift:21:26: error: cannot find 'AudioSamplePacket' in scope
19 | switch input.type {
20 | case .audio:
21 | let packet = AudioSamplePacket(duration: input.duration.numerator,
| `- error: cannot find 'AudioSamplePacket' in scope
22 | timescale: UInt32(input.duration.denominator),
23 | data: input.bytes)
/host/spi-builder-workspace/Sources/kubrick/Sinks/MuxerSink.swift:26:26: error: cannot find 'VideoSamplePacket' in scope
24 | self.send(packet)
25 | case .video:
26 | var packet = VideoSamplePacket(duration: input.duration.numerator,
| `- error: cannot find 'VideoSamplePacket' in scope
27 | timescale: UInt32(input.duration.denominator),
28 | data: input.bytes)
[20/45] Compiling kubrick PrettyPortraitSink.swift
/host/spi-builder-workspace/Sources/kubrick/Sinks/MuxerSink.swift:21:26: error: cannot find 'AudioSamplePacket' in scope
19 | switch input.type {
20 | case .audio:
21 | let packet = AudioSamplePacket(duration: input.duration.numerator,
| `- error: cannot find 'AudioSamplePacket' in scope
22 | timescale: UInt32(input.duration.denominator),
23 | data: input.bytes)
/host/spi-builder-workspace/Sources/kubrick/Sinks/MuxerSink.swift:26:26: error: cannot find 'VideoSamplePacket' in scope
24 | self.send(packet)
25 | case .video:
26 | var packet = VideoSamplePacket(duration: input.duration.numerator,
| `- error: cannot find 'VideoSamplePacket' in scope
27 | timescale: UInt32(input.duration.denominator),
28 | data: input.bytes)
[21/45] Compiling kubrick Sink.swift
/host/spi-builder-workspace/Sources/kubrick/Sinks/MuxerSink.swift:21:26: error: cannot find 'AudioSamplePacket' in scope
19 | switch input.type {
20 | case .audio:
21 | let packet = AudioSamplePacket(duration: input.duration.numerator,
| `- error: cannot find 'AudioSamplePacket' in scope
22 | timescale: UInt32(input.duration.denominator),
23 | data: input.bytes)
/host/spi-builder-workspace/Sources/kubrick/Sinks/MuxerSink.swift:26:26: error: cannot find 'VideoSamplePacket' in scope
24 | self.send(packet)
25 | case .video:
26 | var packet = VideoSamplePacket(duration: input.duration.numerator,
| `- error: cannot find 'VideoSamplePacket' in scope
27 | timescale: UInt32(input.duration.denominator),
28 | data: input.bytes)
[22/45] Compiling kubrick Camera.swift
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/Camera.swift:9:23: error: value of type 'Camera' has no member 'update'
7 |
8 | public var frameRate: Float64 {
9 | didSet { self.update(frameRate: self.frameRate) }
| `- error: value of type 'Camera' has no member 'update'
10 | }
11 |
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/Camera.swift:13:23: error: value of type 'Camera' has no member 'update'
11 |
12 | public var orientation: CameraOrientation = .unknown {
13 | didSet { self.update(orientation: self.orientation) }
| `- error: value of type 'Camera' has no member 'update'
14 | }
15 |
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/Camera.swift:1:14: error: type 'Camera' does not conform to protocol 'MediaDevice'
1 | public class Camera: MediaDevice {
| `- error: type 'Camera' does not conform to protocol 'MediaDevice'
2 |
3 | public var source: Source
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/MediaDevice.swift:10:19: note: protocol requires function 'createInput(onCreate:)' with type '((any MediaDeviceInput) -> Void) -> ()'
8 | var reader: MediaDeviceReader? { get set }
9 |
10 | mutating func createInput(onCreate: MediaDeviceInputClosure)
| `- note: protocol requires function 'createInput(onCreate:)' with type '((any MediaDeviceInput) -> Void) -> ()'
11 | mutating func createOutput(onCreate: MediaDeviceOutputClosure)
| `- note: protocol requires function 'createOutput(onCreate:)' with type '((any MediaDeviceOutput) -> Void) -> ()'
12 | mutating func set(reader: MediaDeviceReader) throws
13 | }
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/Camera.swift:19:14: error: value of type 'Camera' has no member 'update'
17 | self.source = source
18 | self.frameRate = 30
19 | self.update(frameRate: self.frameRate)
| `- error: value of type 'Camera' has no member 'update'
20 | }
21 | }
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/Display.swift:1:14: error: type 'Display' does not conform to protocol 'MediaDevice'
1 | public class Display: MediaDevice {
| `- error: type 'Display' does not conform to protocol 'MediaDevice'
2 | public var source: Source
3 | public var input: MediaDeviceInput?
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/MediaDevice.swift:10:19: note: protocol requires function 'createInput(onCreate:)' with type '((any MediaDeviceInput) -> Void) -> ()'
8 | var reader: MediaDeviceReader? { get set }
9 |
10 | mutating func createInput(onCreate: MediaDeviceInputClosure)
| `- note: protocol requires function 'createInput(onCreate:)' with type '((any MediaDeviceInput) -> Void) -> ()'
11 | mutating func createOutput(onCreate: MediaDeviceOutputClosure)
| `- note: protocol requires function 'createOutput(onCreate:)' with type '((any MediaDeviceOutput) -> Void) -> ()'
12 | mutating func set(reader: MediaDeviceReader) throws
13 | }
[23/45] Compiling kubrick Display.swift
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/Camera.swift:9:23: error: value of type 'Camera' has no member 'update'
7 |
8 | public var frameRate: Float64 {
9 | didSet { self.update(frameRate: self.frameRate) }
| `- error: value of type 'Camera' has no member 'update'
10 | }
11 |
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/Camera.swift:13:23: error: value of type 'Camera' has no member 'update'
11 |
12 | public var orientation: CameraOrientation = .unknown {
13 | didSet { self.update(orientation: self.orientation) }
| `- error: value of type 'Camera' has no member 'update'
14 | }
15 |
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/Camera.swift:1:14: error: type 'Camera' does not conform to protocol 'MediaDevice'
1 | public class Camera: MediaDevice {
| `- error: type 'Camera' does not conform to protocol 'MediaDevice'
2 |
3 | public var source: Source
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/MediaDevice.swift:10:19: note: protocol requires function 'createInput(onCreate:)' with type '((any MediaDeviceInput) -> Void) -> ()'
8 | var reader: MediaDeviceReader? { get set }
9 |
10 | mutating func createInput(onCreate: MediaDeviceInputClosure)
| `- note: protocol requires function 'createInput(onCreate:)' with type '((any MediaDeviceInput) -> Void) -> ()'
11 | mutating func createOutput(onCreate: MediaDeviceOutputClosure)
| `- note: protocol requires function 'createOutput(onCreate:)' with type '((any MediaDeviceOutput) -> Void) -> ()'
12 | mutating func set(reader: MediaDeviceReader) throws
13 | }
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/Camera.swift:19:14: error: value of type 'Camera' has no member 'update'
17 | self.source = source
18 | self.frameRate = 30
19 | self.update(frameRate: self.frameRate)
| `- error: value of type 'Camera' has no member 'update'
20 | }
21 | }
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/Display.swift:1:14: error: type 'Display' does not conform to protocol 'MediaDevice'
1 | public class Display: MediaDevice {
| `- error: type 'Display' does not conform to protocol 'MediaDevice'
2 | public var source: Source
3 | public var input: MediaDeviceInput?
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/MediaDevice.swift:10:19: note: protocol requires function 'createInput(onCreate:)' with type '((any MediaDeviceInput) -> Void) -> ()'
8 | var reader: MediaDeviceReader? { get set }
9 |
10 | mutating func createInput(onCreate: MediaDeviceInputClosure)
| `- note: protocol requires function 'createInput(onCreate:)' with type '((any MediaDeviceInput) -> Void) -> ()'
11 | mutating func createOutput(onCreate: MediaDeviceOutputClosure)
| `- note: protocol requires function 'createOutput(onCreate:)' with type '((any MediaDeviceOutput) -> Void) -> ()'
12 | mutating func set(reader: MediaDeviceReader) throws
13 | }
[24/45] Compiling kubrick MediaDevice.swift
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/Camera.swift:9:23: error: value of type 'Camera' has no member 'update'
7 |
8 | public var frameRate: Float64 {
9 | didSet { self.update(frameRate: self.frameRate) }
| `- error: value of type 'Camera' has no member 'update'
10 | }
11 |
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/Camera.swift:13:23: error: value of type 'Camera' has no member 'update'
11 |
12 | public var orientation: CameraOrientation = .unknown {
13 | didSet { self.update(orientation: self.orientation) }
| `- error: value of type 'Camera' has no member 'update'
14 | }
15 |
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/Camera.swift:1:14: error: type 'Camera' does not conform to protocol 'MediaDevice'
1 | public class Camera: MediaDevice {
| `- error: type 'Camera' does not conform to protocol 'MediaDevice'
2 |
3 | public var source: Source
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/MediaDevice.swift:10:19: note: protocol requires function 'createInput(onCreate:)' with type '((any MediaDeviceInput) -> Void) -> ()'
8 | var reader: MediaDeviceReader? { get set }
9 |
10 | mutating func createInput(onCreate: MediaDeviceInputClosure)
| `- note: protocol requires function 'createInput(onCreate:)' with type '((any MediaDeviceInput) -> Void) -> ()'
11 | mutating func createOutput(onCreate: MediaDeviceOutputClosure)
| `- note: protocol requires function 'createOutput(onCreate:)' with type '((any MediaDeviceOutput) -> Void) -> ()'
12 | mutating func set(reader: MediaDeviceReader) throws
13 | }
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/Camera.swift:19:14: error: value of type 'Camera' has no member 'update'
17 | self.source = source
18 | self.frameRate = 30
19 | self.update(frameRate: self.frameRate)
| `- error: value of type 'Camera' has no member 'update'
20 | }
21 | }
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/Display.swift:1:14: error: type 'Display' does not conform to protocol 'MediaDevice'
1 | public class Display: MediaDevice {
| `- error: type 'Display' does not conform to protocol 'MediaDevice'
2 | public var source: Source
3 | public var input: MediaDeviceInput?
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/MediaDevice.swift:10:19: note: protocol requires function 'createInput(onCreate:)' with type '((any MediaDeviceInput) -> Void) -> ()'
8 | var reader: MediaDeviceReader? { get set }
9 |
10 | mutating func createInput(onCreate: MediaDeviceInputClosure)
| `- note: protocol requires function 'createInput(onCreate:)' with type '((any MediaDeviceInput) -> Void) -> ()'
11 | mutating func createOutput(onCreate: MediaDeviceOutputClosure)
| `- note: protocol requires function 'createOutput(onCreate:)' with type '((any MediaDeviceOutput) -> Void) -> ()'
12 | mutating func set(reader: MediaDeviceReader) throws
13 | }
[25/45] Compiling kubrick MediaDeviceInput.swift
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/Camera.swift:9:23: error: value of type 'Camera' has no member 'update'
7 |
8 | public var frameRate: Float64 {
9 | didSet { self.update(frameRate: self.frameRate) }
| `- error: value of type 'Camera' has no member 'update'
10 | }
11 |
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/Camera.swift:13:23: error: value of type 'Camera' has no member 'update'
11 |
12 | public var orientation: CameraOrientation = .unknown {
13 | didSet { self.update(orientation: self.orientation) }
| `- error: value of type 'Camera' has no member 'update'
14 | }
15 |
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/Camera.swift:1:14: error: type 'Camera' does not conform to protocol 'MediaDevice'
1 | public class Camera: MediaDevice {
| `- error: type 'Camera' does not conform to protocol 'MediaDevice'
2 |
3 | public var source: Source
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/MediaDevice.swift:10:19: note: protocol requires function 'createInput(onCreate:)' with type '((any MediaDeviceInput) -> Void) -> ()'
8 | var reader: MediaDeviceReader? { get set }
9 |
10 | mutating func createInput(onCreate: MediaDeviceInputClosure)
| `- note: protocol requires function 'createInput(onCreate:)' with type '((any MediaDeviceInput) -> Void) -> ()'
11 | mutating func createOutput(onCreate: MediaDeviceOutputClosure)
| `- note: protocol requires function 'createOutput(onCreate:)' with type '((any MediaDeviceOutput) -> Void) -> ()'
12 | mutating func set(reader: MediaDeviceReader) throws
13 | }
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/Camera.swift:19:14: error: value of type 'Camera' has no member 'update'
17 | self.source = source
18 | self.frameRate = 30
19 | self.update(frameRate: self.frameRate)
| `- error: value of type 'Camera' has no member 'update'
20 | }
21 | }
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/Display.swift:1:14: error: type 'Display' does not conform to protocol 'MediaDevice'
1 | public class Display: MediaDevice {
| `- error: type 'Display' does not conform to protocol 'MediaDevice'
2 | public var source: Source
3 | public var input: MediaDeviceInput?
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/MediaDevice.swift:10:19: note: protocol requires function 'createInput(onCreate:)' with type '((any MediaDeviceInput) -> Void) -> ()'
8 | var reader: MediaDeviceReader? { get set }
9 |
10 | mutating func createInput(onCreate: MediaDeviceInputClosure)
| `- note: protocol requires function 'createInput(onCreate:)' with type '((any MediaDeviceInput) -> Void) -> ()'
11 | mutating func createOutput(onCreate: MediaDeviceOutputClosure)
| `- note: protocol requires function 'createOutput(onCreate:)' with type '((any MediaDeviceOutput) -> Void) -> ()'
12 | mutating func set(reader: MediaDeviceReader) throws
13 | }
[26/45] Compiling kubrick MediaDeviceOutput.swift
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/Microphone.swift:1:14: error: type 'Microphone' does not conform to protocol 'MediaDevice'
1 | public class Microphone: MediaDevice {
| `- error: type 'Microphone' does not conform to protocol 'MediaDevice'
2 |
3 | public var source: Source
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/MediaDevice.swift:10:19: note: protocol requires function 'createInput(onCreate:)' with type '((any MediaDeviceInput) -> Void) -> ()'
8 | var reader: MediaDeviceReader? { get set }
9 |
10 | mutating func createInput(onCreate: MediaDeviceInputClosure)
| `- note: protocol requires function 'createInput(onCreate:)' with type '((any MediaDeviceInput) -> Void) -> ()'
11 | mutating func createOutput(onCreate: MediaDeviceOutputClosure)
| `- note: protocol requires function 'createOutput(onCreate:)' with type '((any MediaDeviceOutput) -> Void) -> ()'
12 | mutating func set(reader: MediaDeviceReader) throws
13 | }
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/Readers/AudioReader.swift:9:21: error: initializer does not override a designated initializer from its superclass
7 | public var sinks: [Sink<Sample>] = []
8 |
9 | public override init() { super.init() }
| `- error: initializer does not override a designated initializer from its superclass
10 |
11 | }
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/Readers/AudioReader.swift:3:27: error: cannot find type 'NSObject' in scope
1 | import Dispatch
2 |
3 | public class AudioReader: NSObject, MediaDeviceReader {
| `- error: cannot find type 'NSObject' in scope
4 |
5 | public var q = DispatchQueue(label: "audio.reader.q")
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/Readers/AudioReader.swift:9:30: error: 'super' members cannot be referenced in a root class
7 | public var sinks: [Sink<Sample>] = []
8 |
9 | public override init() { super.init() }
| `- error: 'super' members cannot be referenced in a root class
10 |
11 | }
[27/45] Compiling kubrick MediaDeviceReader.swift
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/Microphone.swift:1:14: error: type 'Microphone' does not conform to protocol 'MediaDevice'
1 | public class Microphone: MediaDevice {
| `- error: type 'Microphone' does not conform to protocol 'MediaDevice'
2 |
3 | public var source: Source
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/MediaDevice.swift:10:19: note: protocol requires function 'createInput(onCreate:)' with type '((any MediaDeviceInput) -> Void) -> ()'
8 | var reader: MediaDeviceReader? { get set }
9 |
10 | mutating func createInput(onCreate: MediaDeviceInputClosure)
| `- note: protocol requires function 'createInput(onCreate:)' with type '((any MediaDeviceInput) -> Void) -> ()'
11 | mutating func createOutput(onCreate: MediaDeviceOutputClosure)
| `- note: protocol requires function 'createOutput(onCreate:)' with type '((any MediaDeviceOutput) -> Void) -> ()'
12 | mutating func set(reader: MediaDeviceReader) throws
13 | }
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/Readers/AudioReader.swift:9:21: error: initializer does not override a designated initializer from its superclass
7 | public var sinks: [Sink<Sample>] = []
8 |
9 | public override init() { super.init() }
| `- error: initializer does not override a designated initializer from its superclass
10 |
11 | }
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/Readers/AudioReader.swift:3:27: error: cannot find type 'NSObject' in scope
1 | import Dispatch
2 |
3 | public class AudioReader: NSObject, MediaDeviceReader {
| `- error: cannot find type 'NSObject' in scope
4 |
5 | public var q = DispatchQueue(label: "audio.reader.q")
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/Readers/AudioReader.swift:9:30: error: 'super' members cannot be referenced in a root class
7 | public var sinks: [Sink<Sample>] = []
8 |
9 | public override init() { super.init() }
| `- error: 'super' members cannot be referenced in a root class
10 |
11 | }
[28/45] Compiling kubrick Microphone.swift
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/Microphone.swift:1:14: error: type 'Microphone' does not conform to protocol 'MediaDevice'
1 | public class Microphone: MediaDevice {
| `- error: type 'Microphone' does not conform to protocol 'MediaDevice'
2 |
3 | public var source: Source
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/MediaDevice.swift:10:19: note: protocol requires function 'createInput(onCreate:)' with type '((any MediaDeviceInput) -> Void) -> ()'
8 | var reader: MediaDeviceReader? { get set }
9 |
10 | mutating func createInput(onCreate: MediaDeviceInputClosure)
| `- note: protocol requires function 'createInput(onCreate:)' with type '((any MediaDeviceInput) -> Void) -> ()'
11 | mutating func createOutput(onCreate: MediaDeviceOutputClosure)
| `- note: protocol requires function 'createOutput(onCreate:)' with type '((any MediaDeviceOutput) -> Void) -> ()'
12 | mutating func set(reader: MediaDeviceReader) throws
13 | }
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/Readers/AudioReader.swift:9:21: error: initializer does not override a designated initializer from its superclass
7 | public var sinks: [Sink<Sample>] = []
8 |
9 | public override init() { super.init() }
| `- error: initializer does not override a designated initializer from its superclass
10 |
11 | }
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/Readers/AudioReader.swift:3:27: error: cannot find type 'NSObject' in scope
1 | import Dispatch
2 |
3 | public class AudioReader: NSObject, MediaDeviceReader {
| `- error: cannot find type 'NSObject' in scope
4 |
5 | public var q = DispatchQueue(label: "audio.reader.q")
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/Readers/AudioReader.swift:9:30: error: 'super' members cannot be referenced in a root class
7 | public var sinks: [Sink<Sample>] = []
8 |
9 | public override init() { super.init() }
| `- error: 'super' members cannot be referenced in a root class
10 |
11 | }
[29/45] Compiling kubrick AudioReader.swift
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/Microphone.swift:1:14: error: type 'Microphone' does not conform to protocol 'MediaDevice'
1 | public class Microphone: MediaDevice {
| `- error: type 'Microphone' does not conform to protocol 'MediaDevice'
2 |
3 | public var source: Source
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/MediaDevice.swift:10:19: note: protocol requires function 'createInput(onCreate:)' with type '((any MediaDeviceInput) -> Void) -> ()'
8 | var reader: MediaDeviceReader? { get set }
9 |
10 | mutating func createInput(onCreate: MediaDeviceInputClosure)
| `- note: protocol requires function 'createInput(onCreate:)' with type '((any MediaDeviceInput) -> Void) -> ()'
11 | mutating func createOutput(onCreate: MediaDeviceOutputClosure)
| `- note: protocol requires function 'createOutput(onCreate:)' with type '((any MediaDeviceOutput) -> Void) -> ()'
12 | mutating func set(reader: MediaDeviceReader) throws
13 | }
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/Readers/AudioReader.swift:9:21: error: initializer does not override a designated initializer from its superclass
7 | public var sinks: [Sink<Sample>] = []
8 |
9 | public override init() { super.init() }
| `- error: initializer does not override a designated initializer from its superclass
10 |
11 | }
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/Readers/AudioReader.swift:3:27: error: cannot find type 'NSObject' in scope
1 | import Dispatch
2 |
3 | public class AudioReader: NSObject, MediaDeviceReader {
| `- error: cannot find type 'NSObject' in scope
4 |
5 | public var q = DispatchQueue(label: "audio.reader.q")
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/Readers/AudioReader.swift:9:30: error: 'super' members cannot be referenced in a root class
7 | public var sinks: [Sink<Sample>] = []
8 |
9 | public override init() { super.init() }
| `- error: 'super' members cannot be referenced in a root class
10 |
11 | }
[30/48] Compiling kubrick VideoReader.swift
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/Readers/VideoReader.swift:9:21: error: initializer does not override a designated initializer from its superclass
7 | public var sinks: [Sink<Sample>] = []
8 |
9 | public override init() { super.init() }
| `- error: initializer does not override a designated initializer from its superclass
10 |
11 | }
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/Readers/VideoReader.swift:3:27: error: cannot find type 'NSObject' in scope
1 | import Dispatch
2 |
3 | public class VideoReader: NSObject, MediaDeviceReader {
| `- error: cannot find type 'NSObject' in scope
4 |
5 | public var q = DispatchQueue(label: "video.reader.q")
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/Readers/VideoReader.swift:9:30: error: 'super' members cannot be referenced in a root class
7 | public var sinks: [Sink<Sample>] = []
8 |
9 | public override init() { super.init() }
| `- error: 'super' members cannot be referenced in a root class
10 |
11 | }
/host/spi-builder-workspace/Sources/kubrick/Samples/Session.swift:25:14: error: type 'CaptureSession' does not conform to protocol 'Session'
4 |
5 | public protocol Session {
6 | associatedtype Base: BaseSession
| `- note: protocol requires nested type 'Base'; add nested type 'Base' for conformance
7 | func startRunning()
8 | func stopRunning()
:
23 | }
24 |
25 | public class CaptureSession: Session {
| `- error: type 'CaptureSession' does not conform to protocol 'Session'
26 | public let base = Base()
27 |
[31/48] Compiling kubrick MediaFormat.swift
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/Readers/VideoReader.swift:9:21: error: initializer does not override a designated initializer from its superclass
7 | public var sinks: [Sink<Sample>] = []
8 |
9 | public override init() { super.init() }
| `- error: initializer does not override a designated initializer from its superclass
10 |
11 | }
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/Readers/VideoReader.swift:3:27: error: cannot find type 'NSObject' in scope
1 | import Dispatch
2 |
3 | public class VideoReader: NSObject, MediaDeviceReader {
| `- error: cannot find type 'NSObject' in scope
4 |
5 | public var q = DispatchQueue(label: "video.reader.q")
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/Readers/VideoReader.swift:9:30: error: 'super' members cannot be referenced in a root class
7 | public var sinks: [Sink<Sample>] = []
8 |
9 | public override init() { super.init() }
| `- error: 'super' members cannot be referenced in a root class
10 |
11 | }
/host/spi-builder-workspace/Sources/kubrick/Samples/Session.swift:25:14: error: type 'CaptureSession' does not conform to protocol 'Session'
4 |
5 | public protocol Session {
6 | associatedtype Base: BaseSession
| `- note: protocol requires nested type 'Base'; add nested type 'Base' for conformance
7 | func startRunning()
8 | func stopRunning()
:
23 | }
24 |
25 | public class CaptureSession: Session {
| `- error: type 'CaptureSession' does not conform to protocol 'Session'
26 | public let base = Base()
27 |
[32/48] Compiling kubrick Sample.swift
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/Readers/VideoReader.swift:9:21: error: initializer does not override a designated initializer from its superclass
7 | public var sinks: [Sink<Sample>] = []
8 |
9 | public override init() { super.init() }
| `- error: initializer does not override a designated initializer from its superclass
10 |
11 | }
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/Readers/VideoReader.swift:3:27: error: cannot find type 'NSObject' in scope
1 | import Dispatch
2 |
3 | public class VideoReader: NSObject, MediaDeviceReader {
| `- error: cannot find type 'NSObject' in scope
4 |
5 | public var q = DispatchQueue(label: "video.reader.q")
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/Readers/VideoReader.swift:9:30: error: 'super' members cannot be referenced in a root class
7 | public var sinks: [Sink<Sample>] = []
8 |
9 | public override init() { super.init() }
| `- error: 'super' members cannot be referenced in a root class
10 |
11 | }
/host/spi-builder-workspace/Sources/kubrick/Samples/Session.swift:25:14: error: type 'CaptureSession' does not conform to protocol 'Session'
4 |
5 | public protocol Session {
6 | associatedtype Base: BaseSession
| `- note: protocol requires nested type 'Base'; add nested type 'Base' for conformance
7 | func startRunning()
8 | func stopRunning()
:
23 | }
24 |
25 | public class CaptureSession: Session {
| `- error: type 'CaptureSession' does not conform to protocol 'Session'
26 | public let base = Base()
27 |
[33/48] Compiling kubrick Session.swift
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/Readers/VideoReader.swift:9:21: error: initializer does not override a designated initializer from its superclass
7 | public var sinks: [Sink<Sample>] = []
8 |
9 | public override init() { super.init() }
| `- error: initializer does not override a designated initializer from its superclass
10 |
11 | }
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/Readers/VideoReader.swift:3:27: error: cannot find type 'NSObject' in scope
1 | import Dispatch
2 |
3 | public class VideoReader: NSObject, MediaDeviceReader {
| `- error: cannot find type 'NSObject' in scope
4 |
5 | public var q = DispatchQueue(label: "video.reader.q")
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/Readers/VideoReader.swift:9:30: error: 'super' members cannot be referenced in a root class
7 | public var sinks: [Sink<Sample>] = []
8 |
9 | public override init() { super.init() }
| `- error: 'super' members cannot be referenced in a root class
10 |
11 | }
/host/spi-builder-workspace/Sources/kubrick/Samples/Session.swift:25:14: error: type 'CaptureSession' does not conform to protocol 'Session'
4 |
5 | public protocol Session {
6 | associatedtype Base: BaseSession
| `- note: protocol requires nested type 'Base'; add nested type 'Base' for conformance
7 | func startRunning()
8 | func stopRunning()
:
23 | }
24 |
25 | public class CaptureSession: Session {
| `- error: type 'CaptureSession' does not conform to protocol 'Session'
26 | public let base = Base()
27 |
[34/48] Compiling kubrick AACEncoder.swift
/host/spi-builder-workspace/Sources/kubrick/Encoders/H264Encoder.swift:11:9: warning: no calls to throwing functions occur within 'try' expression
9 | init(_ settings: H264Settings) throws {
10 | self.settings = settings
11 | try self.configure()
| `- warning: no calls to throwing functions occur within 'try' expression
12 | }
13 |
[35/48] Compiling kubrick AudioEncoder.swift
/host/spi-builder-workspace/Sources/kubrick/Encoders/H264Encoder.swift:11:9: warning: no calls to throwing functions occur within 'try' expression
9 | init(_ settings: H264Settings) throws {
10 | self.settings = settings
11 | try self.configure()
| `- warning: no calls to throwing functions occur within 'try' expression
12 | }
13 |
[36/48] Compiling kubrick H264Encoder.swift
/host/spi-builder-workspace/Sources/kubrick/Encoders/H264Encoder.swift:11:9: warning: no calls to throwing functions occur within 'try' expression
9 | init(_ settings: H264Settings) throws {
10 | self.settings = settings
11 | try self.configure()
| `- warning: no calls to throwing functions occur within 'try' expression
12 | }
13 |
[37/48] Compiling kubrick H264Settings.swift
/host/spi-builder-workspace/Sources/kubrick/Encoders/H264Encoder.swift:11:9: warning: no calls to throwing functions occur within 'try' expression
9 | init(_ settings: H264Settings) throws {
10 | self.settings = settings
11 | try self.configure()
| `- warning: no calls to throwing functions occur within 'try' expression
12 | }
13 |
[38/48] Compiling kubrick VideoEncoder.swift
/host/spi-builder-workspace/Sources/kubrick/Helpers/Bytes.swift:104:11: error: cannot find type 'Data' in scope
102 | }
103 |
104 | extension Data {
| `- error: cannot find type 'Data' in scope
105 |
106 | var bytes: [UInt8] {
/host/spi-builder-workspace/Sources/kubrick/Helpers/Rational.swift:7:16: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'Rational' to 'Hashable' by implementing 'hash(into:)' instead
5 |
6 | extension Rational: Hashable {
7 | public var hashValue: Int {
| `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'Rational' to 'Hashable' by implementing 'hash(into:)' instead
8 | return Int(self.numerator ^ Int64(self.denominator))
9 | }
/host/spi-builder-workspace/Sources/kubrick/Helpers/ThreadSafeArray.swift:18:36: warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public class ThreadSafeArray<T>: Collection {
| `- note: generic class 'ThreadSafeArray' does not conform to the 'Sendable' protocol
4 |
5 | public var startIndex: Int = 0
:
16 |
17 | public func append(_ newElement: T) {
18 | q.async(flags: .barrier) { self.array.append(newElement) }
| `- warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
19 | }
20 |
/host/spi-builder-workspace/Sources/kubrick/Helpers/ThreadSafeArray.swift:18:54: warning: capture of 'newElement' with non-sendable type 'T' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public class ThreadSafeArray<T>: Collection {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
4 |
5 | public var startIndex: Int = 0
:
16 |
17 | public func append(_ newElement: T) {
18 | q.async(flags: .barrier) { self.array.append(newElement) }
| `- warning: capture of 'newElement' with non-sendable type 'T' in a `@Sendable` closure; this is an error in the Swift 6 language mode
19 | }
20 |
/host/spi-builder-workspace/Sources/kubrick/Helpers/ThreadSafeArray.swift:22:36: warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public class ThreadSafeArray<T>: Collection {
| `- note: generic class 'ThreadSafeArray' does not conform to the 'Sendable' protocol
4 |
5 | public var startIndex: Int = 0
:
20 |
21 | public func append(contentsOf: [T]) {
22 | q.async(flags: .barrier) { self.array.append(contentsOf: contentsOf) }
| `- warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
23 | }
24 |
/host/spi-builder-workspace/Sources/kubrick/Helpers/ThreadSafeArray.swift:22:66: warning: capture of 'contentsOf' with non-sendable type '[T]' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public class ThreadSafeArray<T>: Collection {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
4 |
5 | public var startIndex: Int = 0
:
20 |
21 | public func append(contentsOf: [T]) {
22 | q.async(flags: .barrier) { self.array.append(contentsOf: contentsOf) }
| `- warning: capture of 'contentsOf' with non-sendable type '[T]' in a `@Sendable` closure; this is an error in the Swift 6 language mode
23 | }
24 |
/host/spi-builder-workspace/Sources/kubrick/Helpers/ThreadSafeArray.swift:26:36: warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public class ThreadSafeArray<T>: Collection {
| `- note: generic class 'ThreadSafeArray' does not conform to the 'Sendable' protocol
4 |
5 | public var startIndex: Int = 0
:
24 |
25 | public func remove(at index: Int) {
26 | q.async(flags: .barrier) { self.array.remove(at: index) }
| `- warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
27 | }
28 |
/host/spi-builder-workspace/Sources/kubrick/Helpers/ThreadSafeArray.swift:30:36: warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public class ThreadSafeArray<T>: Collection {
| `- note: generic class 'ThreadSafeArray' does not conform to the 'Sendable' protocol
4 |
5 | public var startIndex: Int = 0
:
28 |
29 | public func removeFirst(n: Int) {
30 | q.async(flags: .barrier) { self.array.removeFirst(n) }
| `- warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
31 | }
32 |
/host/spi-builder-workspace/Sources/kubrick/Helpers/ThreadSafeArray.swift:34:36: warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public class ThreadSafeArray<T>: Collection {
| `- note: generic class 'ThreadSafeArray' does not conform to the 'Sendable' protocol
4 |
5 | public var startIndex: Int = 0
:
32 |
33 | public func removeLast() {
34 | q.async(flags: .barrier) { self.array.removeLast() }
| `- warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
35 | }
36 |
/host/spi-builder-workspace/Sources/kubrick/Helpers/ThreadSafeArray.swift:38:36: warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public class ThreadSafeArray<T>: Collection {
| `- note: generic class 'ThreadSafeArray' does not conform to the 'Sendable' protocol
4 |
5 | public var startIndex: Int = 0
:
36 |
37 | public func removeLast(n: Int) {
38 | q.async(flags: .barrier) { self.array.removeLast(n) }
| `- warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
39 | }
40 |
/host/spi-builder-workspace/Sources/kubrick/Helpers/ThreadSafeArray.swift:73:40: warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public class ThreadSafeArray<T>: Collection {
| `- note: generic class 'ThreadSafeArray' does not conform to the 'Sendable' protocol
4 |
5 | public var startIndex: Int = 0
:
71 | public subscript(index: Int) -> T {
72 | set {
73 | q.async(flags: .barrier) { self.array[index] = newValue }
| `- warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
74 | }
75 |
/host/spi-builder-workspace/Sources/kubrick/Helpers/ThreadSafeArray.swift:73:60: warning: capture of 'newValue' with non-sendable type 'T' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public class ThreadSafeArray<T>: Collection {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
4 |
5 | public var startIndex: Int = 0
:
71 | public subscript(index: Int) -> T {
72 | set {
73 | q.async(flags: .barrier) { self.array[index] = newValue }
| `- warning: capture of 'newValue' with non-sendable type 'T' in a `@Sendable` closure; this is an error in the Swift 6 language mode
74 | }
75 |
[39/48] Compiling kubrick Bytes.swift
/host/spi-builder-workspace/Sources/kubrick/Helpers/Bytes.swift:104:11: error: cannot find type 'Data' in scope
102 | }
103 |
104 | extension Data {
| `- error: cannot find type 'Data' in scope
105 |
106 | var bytes: [UInt8] {
/host/spi-builder-workspace/Sources/kubrick/Helpers/Rational.swift:7:16: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'Rational' to 'Hashable' by implementing 'hash(into:)' instead
5 |
6 | extension Rational: Hashable {
7 | public var hashValue: Int {
| `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'Rational' to 'Hashable' by implementing 'hash(into:)' instead
8 | return Int(self.numerator ^ Int64(self.denominator))
9 | }
/host/spi-builder-workspace/Sources/kubrick/Helpers/ThreadSafeArray.swift:18:36: warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public class ThreadSafeArray<T>: Collection {
| `- note: generic class 'ThreadSafeArray' does not conform to the 'Sendable' protocol
4 |
5 | public var startIndex: Int = 0
:
16 |
17 | public func append(_ newElement: T) {
18 | q.async(flags: .barrier) { self.array.append(newElement) }
| `- warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
19 | }
20 |
/host/spi-builder-workspace/Sources/kubrick/Helpers/ThreadSafeArray.swift:18:54: warning: capture of 'newElement' with non-sendable type 'T' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public class ThreadSafeArray<T>: Collection {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
4 |
5 | public var startIndex: Int = 0
:
16 |
17 | public func append(_ newElement: T) {
18 | q.async(flags: .barrier) { self.array.append(newElement) }
| `- warning: capture of 'newElement' with non-sendable type 'T' in a `@Sendable` closure; this is an error in the Swift 6 language mode
19 | }
20 |
/host/spi-builder-workspace/Sources/kubrick/Helpers/ThreadSafeArray.swift:22:36: warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public class ThreadSafeArray<T>: Collection {
| `- note: generic class 'ThreadSafeArray' does not conform to the 'Sendable' protocol
4 |
5 | public var startIndex: Int = 0
:
20 |
21 | public func append(contentsOf: [T]) {
22 | q.async(flags: .barrier) { self.array.append(contentsOf: contentsOf) }
| `- warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
23 | }
24 |
/host/spi-builder-workspace/Sources/kubrick/Helpers/ThreadSafeArray.swift:22:66: warning: capture of 'contentsOf' with non-sendable type '[T]' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public class ThreadSafeArray<T>: Collection {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
4 |
5 | public var startIndex: Int = 0
:
20 |
21 | public func append(contentsOf: [T]) {
22 | q.async(flags: .barrier) { self.array.append(contentsOf: contentsOf) }
| `- warning: capture of 'contentsOf' with non-sendable type '[T]' in a `@Sendable` closure; this is an error in the Swift 6 language mode
23 | }
24 |
/host/spi-builder-workspace/Sources/kubrick/Helpers/ThreadSafeArray.swift:26:36: warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public class ThreadSafeArray<T>: Collection {
| `- note: generic class 'ThreadSafeArray' does not conform to the 'Sendable' protocol
4 |
5 | public var startIndex: Int = 0
:
24 |
25 | public func remove(at index: Int) {
26 | q.async(flags: .barrier) { self.array.remove(at: index) }
| `- warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
27 | }
28 |
/host/spi-builder-workspace/Sources/kubrick/Helpers/ThreadSafeArray.swift:30:36: warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public class ThreadSafeArray<T>: Collection {
| `- note: generic class 'ThreadSafeArray' does not conform to the 'Sendable' protocol
4 |
5 | public var startIndex: Int = 0
:
28 |
29 | public func removeFirst(n: Int) {
30 | q.async(flags: .barrier) { self.array.removeFirst(n) }
| `- warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
31 | }
32 |
/host/spi-builder-workspace/Sources/kubrick/Helpers/ThreadSafeArray.swift:34:36: warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public class ThreadSafeArray<T>: Collection {
| `- note: generic class 'ThreadSafeArray' does not conform to the 'Sendable' protocol
4 |
5 | public var startIndex: Int = 0
:
32 |
33 | public func removeLast() {
34 | q.async(flags: .barrier) { self.array.removeLast() }
| `- warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
35 | }
36 |
/host/spi-builder-workspace/Sources/kubrick/Helpers/ThreadSafeArray.swift:38:36: warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public class ThreadSafeArray<T>: Collection {
| `- note: generic class 'ThreadSafeArray' does not conform to the 'Sendable' protocol
4 |
5 | public var startIndex: Int = 0
:
36 |
37 | public func removeLast(n: Int) {
38 | q.async(flags: .barrier) { self.array.removeLast(n) }
| `- warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
39 | }
40 |
/host/spi-builder-workspace/Sources/kubrick/Helpers/ThreadSafeArray.swift:73:40: warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public class ThreadSafeArray<T>: Collection {
| `- note: generic class 'ThreadSafeArray' does not conform to the 'Sendable' protocol
4 |
5 | public var startIndex: Int = 0
:
71 | public subscript(index: Int) -> T {
72 | set {
73 | q.async(flags: .barrier) { self.array[index] = newValue }
| `- warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
74 | }
75 |
/host/spi-builder-workspace/Sources/kubrick/Helpers/ThreadSafeArray.swift:73:60: warning: capture of 'newValue' with non-sendable type 'T' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public class ThreadSafeArray<T>: Collection {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
4 |
5 | public var startIndex: Int = 0
:
71 | public subscript(index: Int) -> T {
72 | set {
73 | q.async(flags: .barrier) { self.array[index] = newValue }
| `- warning: capture of 'newValue' with non-sendable type 'T' in a `@Sendable` closure; this is an error in the Swift 6 language mode
74 | }
75 |
[40/48] Compiling kubrick Rational.swift
/host/spi-builder-workspace/Sources/kubrick/Helpers/Bytes.swift:104:11: error: cannot find type 'Data' in scope
102 | }
103 |
104 | extension Data {
| `- error: cannot find type 'Data' in scope
105 |
106 | var bytes: [UInt8] {
/host/spi-builder-workspace/Sources/kubrick/Helpers/Rational.swift:7:16: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'Rational' to 'Hashable' by implementing 'hash(into:)' instead
5 |
6 | extension Rational: Hashable {
7 | public var hashValue: Int {
| `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'Rational' to 'Hashable' by implementing 'hash(into:)' instead
8 | return Int(self.numerator ^ Int64(self.denominator))
9 | }
/host/spi-builder-workspace/Sources/kubrick/Helpers/ThreadSafeArray.swift:18:36: warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public class ThreadSafeArray<T>: Collection {
| `- note: generic class 'ThreadSafeArray' does not conform to the 'Sendable' protocol
4 |
5 | public var startIndex: Int = 0
:
16 |
17 | public func append(_ newElement: T) {
18 | q.async(flags: .barrier) { self.array.append(newElement) }
| `- warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
19 | }
20 |
/host/spi-builder-workspace/Sources/kubrick/Helpers/ThreadSafeArray.swift:18:54: warning: capture of 'newElement' with non-sendable type 'T' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public class ThreadSafeArray<T>: Collection {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
4 |
5 | public var startIndex: Int = 0
:
16 |
17 | public func append(_ newElement: T) {
18 | q.async(flags: .barrier) { self.array.append(newElement) }
| `- warning: capture of 'newElement' with non-sendable type 'T' in a `@Sendable` closure; this is an error in the Swift 6 language mode
19 | }
20 |
/host/spi-builder-workspace/Sources/kubrick/Helpers/ThreadSafeArray.swift:22:36: warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public class ThreadSafeArray<T>: Collection {
| `- note: generic class 'ThreadSafeArray' does not conform to the 'Sendable' protocol
4 |
5 | public var startIndex: Int = 0
:
20 |
21 | public func append(contentsOf: [T]) {
22 | q.async(flags: .barrier) { self.array.append(contentsOf: contentsOf) }
| `- warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
23 | }
24 |
/host/spi-builder-workspace/Sources/kubrick/Helpers/ThreadSafeArray.swift:22:66: warning: capture of 'contentsOf' with non-sendable type '[T]' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public class ThreadSafeArray<T>: Collection {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
4 |
5 | public var startIndex: Int = 0
:
20 |
21 | public func append(contentsOf: [T]) {
22 | q.async(flags: .barrier) { self.array.append(contentsOf: contentsOf) }
| `- warning: capture of 'contentsOf' with non-sendable type '[T]' in a `@Sendable` closure; this is an error in the Swift 6 language mode
23 | }
24 |
/host/spi-builder-workspace/Sources/kubrick/Helpers/ThreadSafeArray.swift:26:36: warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public class ThreadSafeArray<T>: Collection {
| `- note: generic class 'ThreadSafeArray' does not conform to the 'Sendable' protocol
4 |
5 | public var startIndex: Int = 0
:
24 |
25 | public func remove(at index: Int) {
26 | q.async(flags: .barrier) { self.array.remove(at: index) }
| `- warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
27 | }
28 |
/host/spi-builder-workspace/Sources/kubrick/Helpers/ThreadSafeArray.swift:30:36: warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public class ThreadSafeArray<T>: Collection {
| `- note: generic class 'ThreadSafeArray' does not conform to the 'Sendable' protocol
4 |
5 | public var startIndex: Int = 0
:
28 |
29 | public func removeFirst(n: Int) {
30 | q.async(flags: .barrier) { self.array.removeFirst(n) }
| `- warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
31 | }
32 |
/host/spi-builder-workspace/Sources/kubrick/Helpers/ThreadSafeArray.swift:34:36: warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public class ThreadSafeArray<T>: Collection {
| `- note: generic class 'ThreadSafeArray' does not conform to the 'Sendable' protocol
4 |
5 | public var startIndex: Int = 0
:
32 |
33 | public func removeLast() {
34 | q.async(flags: .barrier) { self.array.removeLast() }
| `- warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
35 | }
36 |
/host/spi-builder-workspace/Sources/kubrick/Helpers/ThreadSafeArray.swift:38:36: warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public class ThreadSafeArray<T>: Collection {
| `- note: generic class 'ThreadSafeArray' does not conform to the 'Sendable' protocol
4 |
5 | public var startIndex: Int = 0
:
36 |
37 | public func removeLast(n: Int) {
38 | q.async(flags: .barrier) { self.array.removeLast(n) }
| `- warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
39 | }
40 |
/host/spi-builder-workspace/Sources/kubrick/Helpers/ThreadSafeArray.swift:73:40: warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public class ThreadSafeArray<T>: Collection {
| `- note: generic class 'ThreadSafeArray' does not conform to the 'Sendable' protocol
4 |
5 | public var startIndex: Int = 0
:
71 | public subscript(index: Int) -> T {
72 | set {
73 | q.async(flags: .barrier) { self.array[index] = newValue }
| `- warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
74 | }
75 |
/host/spi-builder-workspace/Sources/kubrick/Helpers/ThreadSafeArray.swift:73:60: warning: capture of 'newValue' with non-sendable type 'T' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public class ThreadSafeArray<T>: Collection {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
4 |
5 | public var startIndex: Int = 0
:
71 | public subscript(index: Int) -> T {
72 | set {
73 | q.async(flags: .barrier) { self.array[index] = newValue }
| `- warning: capture of 'newValue' with non-sendable type 'T' in a `@Sendable` closure; this is an error in the Swift 6 language mode
74 | }
75 |
[41/48] Compiling kubrick ThreadSafeArray.swift
/host/spi-builder-workspace/Sources/kubrick/Helpers/Bytes.swift:104:11: error: cannot find type 'Data' in scope
102 | }
103 |
104 | extension Data {
| `- error: cannot find type 'Data' in scope
105 |
106 | var bytes: [UInt8] {
/host/spi-builder-workspace/Sources/kubrick/Helpers/Rational.swift:7:16: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'Rational' to 'Hashable' by implementing 'hash(into:)' instead
5 |
6 | extension Rational: Hashable {
7 | public var hashValue: Int {
| `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'Rational' to 'Hashable' by implementing 'hash(into:)' instead
8 | return Int(self.numerator ^ Int64(self.denominator))
9 | }
/host/spi-builder-workspace/Sources/kubrick/Helpers/ThreadSafeArray.swift:18:36: warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public class ThreadSafeArray<T>: Collection {
| `- note: generic class 'ThreadSafeArray' does not conform to the 'Sendable' protocol
4 |
5 | public var startIndex: Int = 0
:
16 |
17 | public func append(_ newElement: T) {
18 | q.async(flags: .barrier) { self.array.append(newElement) }
| `- warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
19 | }
20 |
/host/spi-builder-workspace/Sources/kubrick/Helpers/ThreadSafeArray.swift:18:54: warning: capture of 'newElement' with non-sendable type 'T' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public class ThreadSafeArray<T>: Collection {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
4 |
5 | public var startIndex: Int = 0
:
16 |
17 | public func append(_ newElement: T) {
18 | q.async(flags: .barrier) { self.array.append(newElement) }
| `- warning: capture of 'newElement' with non-sendable type 'T' in a `@Sendable` closure; this is an error in the Swift 6 language mode
19 | }
20 |
/host/spi-builder-workspace/Sources/kubrick/Helpers/ThreadSafeArray.swift:22:36: warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public class ThreadSafeArray<T>: Collection {
| `- note: generic class 'ThreadSafeArray' does not conform to the 'Sendable' protocol
4 |
5 | public var startIndex: Int = 0
:
20 |
21 | public func append(contentsOf: [T]) {
22 | q.async(flags: .barrier) { self.array.append(contentsOf: contentsOf) }
| `- warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
23 | }
24 |
/host/spi-builder-workspace/Sources/kubrick/Helpers/ThreadSafeArray.swift:22:66: warning: capture of 'contentsOf' with non-sendable type '[T]' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public class ThreadSafeArray<T>: Collection {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
4 |
5 | public var startIndex: Int = 0
:
20 |
21 | public func append(contentsOf: [T]) {
22 | q.async(flags: .barrier) { self.array.append(contentsOf: contentsOf) }
| `- warning: capture of 'contentsOf' with non-sendable type '[T]' in a `@Sendable` closure; this is an error in the Swift 6 language mode
23 | }
24 |
/host/spi-builder-workspace/Sources/kubrick/Helpers/ThreadSafeArray.swift:26:36: warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public class ThreadSafeArray<T>: Collection {
| `- note: generic class 'ThreadSafeArray' does not conform to the 'Sendable' protocol
4 |
5 | public var startIndex: Int = 0
:
24 |
25 | public func remove(at index: Int) {
26 | q.async(flags: .barrier) { self.array.remove(at: index) }
| `- warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
27 | }
28 |
/host/spi-builder-workspace/Sources/kubrick/Helpers/ThreadSafeArray.swift:30:36: warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public class ThreadSafeArray<T>: Collection {
| `- note: generic class 'ThreadSafeArray' does not conform to the 'Sendable' protocol
4 |
5 | public var startIndex: Int = 0
:
28 |
29 | public func removeFirst(n: Int) {
30 | q.async(flags: .barrier) { self.array.removeFirst(n) }
| `- warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
31 | }
32 |
/host/spi-builder-workspace/Sources/kubrick/Helpers/ThreadSafeArray.swift:34:36: warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public class ThreadSafeArray<T>: Collection {
| `- note: generic class 'ThreadSafeArray' does not conform to the 'Sendable' protocol
4 |
5 | public var startIndex: Int = 0
:
32 |
33 | public func removeLast() {
34 | q.async(flags: .barrier) { self.array.removeLast() }
| `- warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
35 | }
36 |
/host/spi-builder-workspace/Sources/kubrick/Helpers/ThreadSafeArray.swift:38:36: warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public class ThreadSafeArray<T>: Collection {
| `- note: generic class 'ThreadSafeArray' does not conform to the 'Sendable' protocol
4 |
5 | public var startIndex: Int = 0
:
36 |
37 | public func removeLast(n: Int) {
38 | q.async(flags: .barrier) { self.array.removeLast(n) }
| `- warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
39 | }
40 |
/host/spi-builder-workspace/Sources/kubrick/Helpers/ThreadSafeArray.swift:73:40: warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public class ThreadSafeArray<T>: Collection {
| `- note: generic class 'ThreadSafeArray' does not conform to the 'Sendable' protocol
4 |
5 | public var startIndex: Int = 0
:
71 | public subscript(index: Int) -> T {
72 | set {
73 | q.async(flags: .barrier) { self.array[index] = newValue }
| `- warning: capture of 'self' with non-sendable type 'ThreadSafeArray<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
74 | }
75 |
/host/spi-builder-workspace/Sources/kubrick/Helpers/ThreadSafeArray.swift:73:60: warning: capture of 'newValue' with non-sendable type 'T' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | public class ThreadSafeArray<T>: Collection {
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
4 |
5 | public var startIndex: Int = 0
:
71 | public subscript(index: Int) -> T {
72 | set {
73 | q.async(flags: .barrier) { self.array[index] = newValue }
| `- warning: capture of 'newValue' with non-sendable type 'T' in a `@Sendable` closure; this is an error in the Swift 6 language mode
74 | }
75 |
error: emit-module command failed with exit code 1 (use -v to see invocation)
[42/48] Emitting module kubrick
/host/spi-builder-workspace/Sources/kubrick/Helpers/Bytes.swift:104:11: error: cannot find type 'Data' in scope
102 | }
103 |
104 | extension Data {
| `- error: cannot find type 'Data' in scope
105 |
106 | var bytes: [UInt8] {
/host/spi-builder-workspace/Sources/kubrick/Helpers/Rational.swift:7:16: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'Rational' to 'Hashable' by implementing 'hash(into:)' instead
5 |
6 | extension Rational: Hashable {
7 | public var hashValue: Int {
| `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'Rational' to 'Hashable' by implementing 'hash(into:)' instead
8 | return Int(self.numerator ^ Int64(self.denominator))
9 | }
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/Camera.swift:9:23: error: value of type 'Camera' has no member 'update'
7 |
8 | public var frameRate: Float64 {
9 | didSet { self.update(frameRate: self.frameRate) }
| `- error: value of type 'Camera' has no member 'update'
10 | }
11 |
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/Camera.swift:13:23: error: value of type 'Camera' has no member 'update'
11 |
12 | public var orientation: CameraOrientation = .unknown {
13 | didSet { self.update(orientation: self.orientation) }
| `- error: value of type 'Camera' has no member 'update'
14 | }
15 |
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/Camera.swift:1:14: error: type 'Camera' does not conform to protocol 'MediaDevice'
1 | public class Camera: MediaDevice {
| `- error: type 'Camera' does not conform to protocol 'MediaDevice'
2 |
3 | public var source: Source
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/MediaDevice.swift:10:19: note: protocol requires function 'createInput(onCreate:)' with type '((any MediaDeviceInput) -> Void) -> ()'
8 | var reader: MediaDeviceReader? { get set }
9 |
10 | mutating func createInput(onCreate: MediaDeviceInputClosure)
| `- note: protocol requires function 'createInput(onCreate:)' with type '((any MediaDeviceInput) -> Void) -> ()'
11 | mutating func createOutput(onCreate: MediaDeviceOutputClosure)
| `- note: protocol requires function 'createOutput(onCreate:)' with type '((any MediaDeviceOutput) -> Void) -> ()'
12 | mutating func set(reader: MediaDeviceReader) throws
13 | }
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/Display.swift:1:14: error: type 'Display' does not conform to protocol 'MediaDevice'
1 | public class Display: MediaDevice {
| `- error: type 'Display' does not conform to protocol 'MediaDevice'
2 | public var source: Source
3 | public var input: MediaDeviceInput?
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/MediaDevice.swift:10:19: note: protocol requires function 'createInput(onCreate:)' with type '((any MediaDeviceInput) -> Void) -> ()'
8 | var reader: MediaDeviceReader? { get set }
9 |
10 | mutating func createInput(onCreate: MediaDeviceInputClosure)
| `- note: protocol requires function 'createInput(onCreate:)' with type '((any MediaDeviceInput) -> Void) -> ()'
11 | mutating func createOutput(onCreate: MediaDeviceOutputClosure)
| `- note: protocol requires function 'createOutput(onCreate:)' with type '((any MediaDeviceOutput) -> Void) -> ()'
12 | mutating func set(reader: MediaDeviceReader) throws
13 | }
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/Microphone.swift:1:14: error: type 'Microphone' does not conform to protocol 'MediaDevice'
1 | public class Microphone: MediaDevice {
| `- error: type 'Microphone' does not conform to protocol 'MediaDevice'
2 |
3 | public var source: Source
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/MediaDevice.swift:10:19: note: protocol requires function 'createInput(onCreate:)' with type '((any MediaDeviceInput) -> Void) -> ()'
8 | var reader: MediaDeviceReader? { get set }
9 |
10 | mutating func createInput(onCreate: MediaDeviceInputClosure)
| `- note: protocol requires function 'createInput(onCreate:)' with type '((any MediaDeviceInput) -> Void) -> ()'
11 | mutating func createOutput(onCreate: MediaDeviceOutputClosure)
| `- note: protocol requires function 'createOutput(onCreate:)' with type '((any MediaDeviceOutput) -> Void) -> ()'
12 | mutating func set(reader: MediaDeviceReader) throws
13 | }
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/Readers/AudioReader.swift:9:21: error: initializer does not override a designated initializer from its superclass
7 | public var sinks: [Sink<Sample>] = []
8 |
9 | public override init() { super.init() }
| `- error: initializer does not override a designated initializer from its superclass
10 |
11 | }
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/Readers/AudioReader.swift:3:27: error: cannot find type 'NSObject' in scope
1 | import Dispatch
2 |
3 | public class AudioReader: NSObject, MediaDeviceReader {
| `- error: cannot find type 'NSObject' in scope
4 |
5 | public var q = DispatchQueue(label: "audio.reader.q")
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/Readers/VideoReader.swift:9:21: error: initializer does not override a designated initializer from its superclass
7 | public var sinks: [Sink<Sample>] = []
8 |
9 | public override init() { super.init() }
| `- error: initializer does not override a designated initializer from its superclass
10 |
11 | }
/host/spi-builder-workspace/Sources/kubrick/MediaDevices/Readers/VideoReader.swift:3:27: error: cannot find type 'NSObject' in scope
1 | import Dispatch
2 |
3 | public class VideoReader: NSObject, MediaDeviceReader {
| `- error: cannot find type 'NSObject' in scope
4 |
5 | public var q = DispatchQueue(label: "video.reader.q")
/host/spi-builder-workspace/Sources/kubrick/Samples/Session.swift:25:14: error: type 'CaptureSession' does not conform to protocol 'Session'
4 |
5 | public protocol Session {
6 | associatedtype Base: BaseSession
| `- note: protocol requires nested type 'Base'; add nested type 'Base' for conformance
7 | func startRunning()
8 | func stopRunning()
:
23 | }
24 |
25 | public class CaptureSession: Session {
| `- error: type 'CaptureSession' does not conform to protocol 'Session'
26 | public let base = Base()
27 |
/host/spi-builder-workspace/Sources/kubrick/Sources/SourceDiscoverer.swift:28:46: error: default argument value of type 'SystemMediaSource' does not conform to 'MediaSource'
26 | public private(set) var mediaSource: MediaSource
27 |
28 | public init(_ mediaSource: MediaSource = SystemMediaSource()) {
| `- error: default argument value of type 'SystemMediaSource' does not conform to 'MediaSource'
29 | self.mediaSource = mediaSource
30 | }
[43/48] Compiling kubrick AACEncoderSink.swift
[44/48] Compiling kubrick EndpointSink.swift
[45/48] Compiling kubrick H264EncoderSink.swift
[46/48] Compiling kubrick AVStream.swift
/host/spi-builder-workspace/Sources/kubrick/Sources/AVStream.swift:61:57: warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
59 |
60 | // Create readers for each of the devices
61 | let readers: [MediaDeviceReader] = self.devices.flatMap {
| |- warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
| `- note: use 'compactMap(_:)' instead
62 | if $0.source.type == .audio { return AudioReader() }
63 | if $0.source.type == .video { return VideoReader() }
/host/spi-builder-workspace/Sources/kubrick/Sources/AVStream.swift:151:44: error: cannot find 'VideoDimensionPacket' in scope
149 | do {
150 | let paramsPacket = try VideoParamSetPacket(params: videoFormat.params)
151 | let dimensionsPacket = VideoDimensionPacket(width: videoFormat.dimensions.width,
| `- error: cannot find 'VideoDimensionPacket' in scope
152 | height: videoFormat.dimensions.height)
153 |
/host/spi-builder-workspace/Sources/kubrick/Sources/SourceDiscoverer.swift:28:46: error: default argument value of type 'SystemMediaSource' does not conform to 'MediaSource'
26 | public private(set) var mediaSource: MediaSource
27 |
28 | public init(_ mediaSource: MediaSource = SystemMediaSource()) {
| `- error: default argument value of type 'SystemMediaSource' does not conform to 'MediaSource'
29 | self.mediaSource = mediaSource
30 | }
/host/spi-builder-workspace/Sources/kubrick/Sources/SourceDiscoverer.swift:50:36: warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
48 |
49 | public func devices(_ scope: MediaSourceScope) -> [MediaDevice] {
50 | return self.sources(scope).flatMap {
| |- warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
| `- note: use 'compactMap(_:)' instead
51 | switch $0.type {
52 | case .video?: return Camera($0)
[47/48] Compiling kubrick Source.swift
/host/spi-builder-workspace/Sources/kubrick/Sources/AVStream.swift:61:57: warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
59 |
60 | // Create readers for each of the devices
61 | let readers: [MediaDeviceReader] = self.devices.flatMap {
| |- warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
| `- note: use 'compactMap(_:)' instead
62 | if $0.source.type == .audio { return AudioReader() }
63 | if $0.source.type == .video { return VideoReader() }
/host/spi-builder-workspace/Sources/kubrick/Sources/AVStream.swift:151:44: error: cannot find 'VideoDimensionPacket' in scope
149 | do {
150 | let paramsPacket = try VideoParamSetPacket(params: videoFormat.params)
151 | let dimensionsPacket = VideoDimensionPacket(width: videoFormat.dimensions.width,
| `- error: cannot find 'VideoDimensionPacket' in scope
152 | height: videoFormat.dimensions.height)
153 |
/host/spi-builder-workspace/Sources/kubrick/Sources/SourceDiscoverer.swift:28:46: error: default argument value of type 'SystemMediaSource' does not conform to 'MediaSource'
26 | public private(set) var mediaSource: MediaSource
27 |
28 | public init(_ mediaSource: MediaSource = SystemMediaSource()) {
| `- error: default argument value of type 'SystemMediaSource' does not conform to 'MediaSource'
29 | self.mediaSource = mediaSource
30 | }
/host/spi-builder-workspace/Sources/kubrick/Sources/SourceDiscoverer.swift:50:36: warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
48 |
49 | public func devices(_ scope: MediaSourceScope) -> [MediaDevice] {
50 | return self.sources(scope).flatMap {
| |- warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
| `- note: use 'compactMap(_:)' instead
51 | switch $0.type {
52 | case .video?: return Camera($0)
[48/48] Compiling kubrick SourceDiscoverer.swift
/host/spi-builder-workspace/Sources/kubrick/Sources/AVStream.swift:61:57: warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
59 |
60 | // Create readers for each of the devices
61 | let readers: [MediaDeviceReader] = self.devices.flatMap {
| |- warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
| `- note: use 'compactMap(_:)' instead
62 | if $0.source.type == .audio { return AudioReader() }
63 | if $0.source.type == .video { return VideoReader() }
/host/spi-builder-workspace/Sources/kubrick/Sources/AVStream.swift:151:44: error: cannot find 'VideoDimensionPacket' in scope
149 | do {
150 | let paramsPacket = try VideoParamSetPacket(params: videoFormat.params)
151 | let dimensionsPacket = VideoDimensionPacket(width: videoFormat.dimensions.width,
| `- error: cannot find 'VideoDimensionPacket' in scope
152 | height: videoFormat.dimensions.height)
153 |
/host/spi-builder-workspace/Sources/kubrick/Sources/SourceDiscoverer.swift:28:46: error: default argument value of type 'SystemMediaSource' does not conform to 'MediaSource'
26 | public private(set) var mediaSource: MediaSource
27 |
28 | public init(_ mediaSource: MediaSource = SystemMediaSource()) {
| `- error: default argument value of type 'SystemMediaSource' does not conform to 'MediaSource'
29 | self.mediaSource = mediaSource
30 | }
/host/spi-builder-workspace/Sources/kubrick/Sources/SourceDiscoverer.swift:50:36: warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
48 |
49 | public func devices(_ scope: MediaSourceScope) -> [MediaDevice] {
50 | return self.sources(scope).flatMap {
| |- warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
| `- note: use 'compactMap(_:)' instead
51 | switch $0.type {
52 | case .video?: return Camera($0)
BUILD FAILURE 6.0 linux