Build Information
Failed to build kubrick, reference 1.1.5 (018556
), with Swift 6.0 for macOS (SPM) on 26 Nov 2024 23:21:17 UTC.
Build Command
env DEVELOPER_DIR=/Applications/Xcode-16.1.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures
Build Log
========================================
RunAll
========================================
Builder version: 4.58.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/krad/kubrick.git
Reference: 1.1.5
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
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
Fetching https://github.com/krad/grip.git
[1/176] Fetching grip
Fetched https://github.com/krad/grip.git from cache (0.67s)
Computing version for https://github.com/krad/grip.git
Computed https://github.com/krad/grip.git at 1.3.5 (0.56s)
Creating working copy for https://github.com/krad/grip.git
Working copy of https://github.com/krad/grip.git resolved at 1.3.5
========================================
ResolveProductDependencies
========================================
Resolving dependencies ...
{
"identity": ".resolve-product-dependencies",
"name": "resolve-dependencies",
"url": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
"version": "unspecified",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
"dependencies": [
{
"identity": "kubrick",
"name": "kubrick",
"url": "https://github.com/krad/kubrick.git",
"version": "unspecified",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/kubrick",
"dependencies": [
{
"identity": "grip",
"name": "grip",
"url": "https://github.com/krad/grip.git",
"version": "1.3.5",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/grip",
"dependencies": [
]
}
]
}
]
}
Fetching https://github.com/krad/kubrick.git
[1/1241] Fetching kubrick
Fetched https://github.com/krad/kubrick.git from cache (0.78s)
Fetching https://github.com/krad/grip.git from cache
Fetched https://github.com/krad/grip.git from cache (0.43s)
Computing version for https://github.com/krad/grip.git
Computed https://github.com/krad/grip.git at 1.3.5 (0.02s)
Creating working copy for https://github.com/krad/kubrick.git
Working copy of https://github.com/krad/kubrick.git resolved at 1.1.5 (018556f)
Creating working copy for https://github.com/krad/grip.git
Working copy of https://github.com/krad/grip.git resolved at 1.3.5
warning: '.resolve-product-dependencies': dependency 'kubrick' is not used by any target
Found 1 product dependencies
- grip
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.0
Building package at path: $PWD
https://github.com/krad/kubrick.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.1.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures
Building for debugging...
[0/3] Write sources
[2/3] Write swift-version--7754E27361AE5C74.txt
[4/16] Compiling grip StreamType.swift
[5/16] Compiling grip StreamTypePacket.swift
[6/16] Compiling grip VideoParamSetPacket.swift
[7/16] Compiling grip VideoDimensionsPacket.swift
[8/16] Compiling grip VideoSamplePacket.swift
[9/17] Compiling grip Packets.swift
[10/17] Compiling grip NALU.swift
[11/17] Compiling grip AudioSamplePacket.swift
[12/17] Compiling grip CompressedSample.swift
[13/17] Compiling grip ByteHelpers.swift
[14/17] Compiling grip BinaryEncodable.swift
[15/17] Compiling grip BinaryEncodableExtensions.swift
[16/17] Emitting module grip
[17/17] Compiling grip Writeable.swift
[18/45] Compiling kubrick EndpointSink.swift
/Users/admin/builder/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)
/Users/admin/builder/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)
[19/45] Compiling kubrick H264EncoderSink.swift
/Users/admin/builder/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)
/Users/admin/builder/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 MuxerSink.swift
/Users/admin/builder/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)
/Users/admin/builder/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/47] Emitting module kubrick
/Users/admin/builder/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 | }
/Users/admin/builder/spi-builder-workspace/Sources/kubrick/MediaDevices/MediaDeviceInput.swift:16:9: warning: var 'makeInput' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 | import AVFoundation
15 |
16 | var makeInput: MakeMediaDeviceInput = { src, onCreate in
| |- warning: var 'makeInput' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'makeInput' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'makeInput' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 | let input = try AVCaptureDeviceInput.makeInput(device: src)
18 | onCreate(input)
/Users/admin/builder/spi-builder-workspace/Sources/kubrick/MediaDevices/MediaDeviceOutput.swift:16:9: warning: var 'makeOutput' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 | import AVFoundation
15 |
16 | var makeOutput: MakeMediaDeviceOutput = { src, onCreate in
| |- warning: var 'makeOutput' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'makeOutput' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'makeOutput' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 | switch src.type {
18 | case .video?:
[22/47] Compiling kubrick H264Settings.swift
[23/47] Compiling kubrick VideoEncoder.swift
[24/47] Compiling kubrick Bytes.swift
[25/47] Compiling kubrick MediaDeviceOutput.swift
/Users/admin/builder/spi-builder-workspace/Sources/kubrick/MediaDevices/MediaDeviceOutput.swift:16:9: warning: var 'makeOutput' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 | import AVFoundation
15 |
16 | var makeOutput: MakeMediaDeviceOutput = { src, onCreate in
| |- warning: var 'makeOutput' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'makeOutput' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'makeOutput' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 | switch src.type {
18 | case .video?:
[26/47] Compiling kubrick MediaDeviceReader.swift
/Users/admin/builder/spi-builder-workspace/Sources/kubrick/MediaDevices/MediaDeviceOutput.swift:16:9: warning: var 'makeOutput' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 | import AVFoundation
15 |
16 | var makeOutput: MakeMediaDeviceOutput = { src, onCreate in
| |- warning: var 'makeOutput' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'makeOutput' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'makeOutput' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 | switch src.type {
18 | case .video?:
[27/47] Compiling kubrick Microphone.swift
/Users/admin/builder/spi-builder-workspace/Sources/kubrick/MediaDevices/MediaDeviceOutput.swift:16:9: warning: var 'makeOutput' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 | import AVFoundation
15 |
16 | var makeOutput: MakeMediaDeviceOutput = { src, onCreate in
| |- warning: var 'makeOutput' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'makeOutput' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'makeOutput' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 | switch src.type {
18 | case .video?:
[28/47] Compiling kubrick Display.swift
/Users/admin/builder/spi-builder-workspace/Sources/kubrick/MediaDevices/MediaDeviceInput.swift:16:9: warning: var 'makeInput' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 | import AVFoundation
15 |
16 | var makeInput: MakeMediaDeviceInput = { src, onCreate in
| |- warning: var 'makeInput' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'makeInput' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'makeInput' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 | let input = try AVCaptureDeviceInput.makeInput(device: src)
18 | onCreate(input)
[29/47] Compiling kubrick MediaDevice.swift
/Users/admin/builder/spi-builder-workspace/Sources/kubrick/MediaDevices/MediaDeviceInput.swift:16:9: warning: var 'makeInput' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 | import AVFoundation
15 |
16 | var makeInput: MakeMediaDeviceInput = { src, onCreate in
| |- warning: var 'makeInput' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'makeInput' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'makeInput' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 | let input = try AVCaptureDeviceInput.makeInput(device: src)
18 | onCreate(input)
[30/47] Compiling kubrick MediaDeviceInput.swift
/Users/admin/builder/spi-builder-workspace/Sources/kubrick/MediaDevices/MediaDeviceInput.swift:16:9: warning: var 'makeInput' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 | import AVFoundation
15 |
16 | var makeInput: MakeMediaDeviceInput = { src, onCreate in
| |- warning: var 'makeInput' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'makeInput' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'makeInput' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 | let input = try AVCaptureDeviceInput.makeInput(device: src)
18 | onCreate(input)
[31/47] Compiling kubrick AACEncoder.swift
/Users/admin/builder/spi-builder-workspace/Sources/kubrick/Encoders/AACEncoder.swift:81:17: warning: capture of 'self' with non-sendable type 'AACEncoder' in a `@Sendable` closure; this is an error in the Swift 6 language mode
6 | import CoreMedia
7 |
8 | internal class AACEncoder: AudioEncoder {
| `- note: class 'AACEncoder' does not conform to the 'Sendable' protocol
9 |
10 | public var configured: Bool = false
:
79 | func encode(_ sample: Sample, onComplete: @escaping AudioEncodedCallback) {
80 | self.encoderQ.async {
81 | if !self.configured { do { try self.setup(using: sample) } catch { } }
| `- warning: capture of 'self' with non-sendable type 'AACEncoder' in a `@Sendable` closure; this is an error in the Swift 6 language mode
82 | guard let encoder = self.audioConverter,
83 | sample.bytes.count > 0 else { return }
/Users/admin/builder/spi-builder-workspace/Sources/kubrick/Encoders/AACEncoder.swift:81:62: warning: capture of 'sample' with non-sendable type 'any Sample' in a `@Sendable` closure; this is an error in the Swift 6 language mode
79 | func encode(_ sample: Sample, onComplete: @escaping AudioEncodedCallback) {
80 | self.encoderQ.async {
81 | if !self.configured { do { try self.setup(using: sample) } catch { } }
| `- warning: capture of 'sample' with non-sendable type 'any Sample' in a `@Sendable` closure; this is an error in the Swift 6 language mode
82 | guard let encoder = self.audioConverter,
83 | sample.bytes.count > 0 else { return }
/Users/admin/builder/spi-builder-workspace/Sources/kubrick/Samples/Sample.swift:1:17: note: protocol 'Sample' does not conform to the 'Sendable' protocol
1 | public protocol Sample {
| `- note: protocol 'Sample' does not conform to the 'Sendable' protocol
2 | var bytes: [UInt8] { get }
3 | var pts: Rational { get }
/Users/admin/builder/spi-builder-workspace/Sources/kubrick/Encoders/AACEncoder.swift:124:21: warning: capture of 'onComplete' with non-sendable type 'AudioEncodedCallback' (aka '(any Sample) -> ()') in a `@Sendable` closure; this is an error in the Swift 6 language mode
122 | numberOfSamples: sample.numberOfSamples)
123 | {
124 | onComplete(newSample)
| |- warning: capture of 'onComplete' with non-sendable type 'AudioEncodedCallback' (aka '(any Sample) -> ()') in a `@Sendable` closure; this is an error in the Swift 6 language mode
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
125 | }
126 | case -1:
[32/47] Compiling kubrick AudioEncoder.swift
/Users/admin/builder/spi-builder-workspace/Sources/kubrick/Encoders/AACEncoder.swift:81:17: warning: capture of 'self' with non-sendable type 'AACEncoder' in a `@Sendable` closure; this is an error in the Swift 6 language mode
6 | import CoreMedia
7 |
8 | internal class AACEncoder: AudioEncoder {
| `- note: class 'AACEncoder' does not conform to the 'Sendable' protocol
9 |
10 | public var configured: Bool = false
:
79 | func encode(_ sample: Sample, onComplete: @escaping AudioEncodedCallback) {
80 | self.encoderQ.async {
81 | if !self.configured { do { try self.setup(using: sample) } catch { } }
| `- warning: capture of 'self' with non-sendable type 'AACEncoder' in a `@Sendable` closure; this is an error in the Swift 6 language mode
82 | guard let encoder = self.audioConverter,
83 | sample.bytes.count > 0 else { return }
/Users/admin/builder/spi-builder-workspace/Sources/kubrick/Encoders/AACEncoder.swift:81:62: warning: capture of 'sample' with non-sendable type 'any Sample' in a `@Sendable` closure; this is an error in the Swift 6 language mode
79 | func encode(_ sample: Sample, onComplete: @escaping AudioEncodedCallback) {
80 | self.encoderQ.async {
81 | if !self.configured { do { try self.setup(using: sample) } catch { } }
| `- warning: capture of 'sample' with non-sendable type 'any Sample' in a `@Sendable` closure; this is an error in the Swift 6 language mode
82 | guard let encoder = self.audioConverter,
83 | sample.bytes.count > 0 else { return }
/Users/admin/builder/spi-builder-workspace/Sources/kubrick/Samples/Sample.swift:1:17: note: protocol 'Sample' does not conform to the 'Sendable' protocol
1 | public protocol Sample {
| `- note: protocol 'Sample' does not conform to the 'Sendable' protocol
2 | var bytes: [UInt8] { get }
3 | var pts: Rational { get }
/Users/admin/builder/spi-builder-workspace/Sources/kubrick/Encoders/AACEncoder.swift:124:21: warning: capture of 'onComplete' with non-sendable type 'AudioEncodedCallback' (aka '(any Sample) -> ()') in a `@Sendable` closure; this is an error in the Swift 6 language mode
122 | numberOfSamples: sample.numberOfSamples)
123 | {
124 | onComplete(newSample)
| |- warning: capture of 'onComplete' with non-sendable type 'AudioEncodedCallback' (aka '(any Sample) -> ()') in a `@Sendable` closure; this is an error in the Swift 6 language mode
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
125 | }
126 | case -1:
[33/47] Compiling kubrick H264Encoder.swift
/Users/admin/builder/spi-builder-workspace/Sources/kubrick/Encoders/AACEncoder.swift:81:17: warning: capture of 'self' with non-sendable type 'AACEncoder' in a `@Sendable` closure; this is an error in the Swift 6 language mode
6 | import CoreMedia
7 |
8 | internal class AACEncoder: AudioEncoder {
| `- note: class 'AACEncoder' does not conform to the 'Sendable' protocol
9 |
10 | public var configured: Bool = false
:
79 | func encode(_ sample: Sample, onComplete: @escaping AudioEncodedCallback) {
80 | self.encoderQ.async {
81 | if !self.configured { do { try self.setup(using: sample) } catch { } }
| `- warning: capture of 'self' with non-sendable type 'AACEncoder' in a `@Sendable` closure; this is an error in the Swift 6 language mode
82 | guard let encoder = self.audioConverter,
83 | sample.bytes.count > 0 else { return }
/Users/admin/builder/spi-builder-workspace/Sources/kubrick/Encoders/AACEncoder.swift:81:62: warning: capture of 'sample' with non-sendable type 'any Sample' in a `@Sendable` closure; this is an error in the Swift 6 language mode
79 | func encode(_ sample: Sample, onComplete: @escaping AudioEncodedCallback) {
80 | self.encoderQ.async {
81 | if !self.configured { do { try self.setup(using: sample) } catch { } }
| `- warning: capture of 'sample' with non-sendable type 'any Sample' in a `@Sendable` closure; this is an error in the Swift 6 language mode
82 | guard let encoder = self.audioConverter,
83 | sample.bytes.count > 0 else { return }
/Users/admin/builder/spi-builder-workspace/Sources/kubrick/Samples/Sample.swift:1:17: note: protocol 'Sample' does not conform to the 'Sendable' protocol
1 | public protocol Sample {
| `- note: protocol 'Sample' does not conform to the 'Sendable' protocol
2 | var bytes: [UInt8] { get }
3 | var pts: Rational { get }
/Users/admin/builder/spi-builder-workspace/Sources/kubrick/Encoders/AACEncoder.swift:124:21: warning: capture of 'onComplete' with non-sendable type 'AudioEncodedCallback' (aka '(any Sample) -> ()') in a `@Sendable` closure; this is an error in the Swift 6 language mode
122 | numberOfSamples: sample.numberOfSamples)
123 | {
124 | onComplete(newSample)
| |- warning: capture of 'onComplete' with non-sendable type 'AudioEncodedCallback' (aka '(any Sample) -> ()') in a `@Sendable` closure; this is an error in the Swift 6 language mode
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
125 | }
126 | case -1:
[34/47] Compiling kubrick Sample.swift
[35/47] Compiling kubrick Session.swift
[36/47] Compiling kubrick AACEncoderSink.swift
[37/47] Compiling kubrick AudioReader.swift
/Users/admin/builder/spi-builder-workspace/Sources/kubrick/MediaDevices/Readers/AudioReader.swift:20:28: warning: capture of 'self' with non-sendable type 'AudioReader' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1 | import Dispatch
2 |
3 | public class AudioReader: NSObject, MediaDeviceReader {
| `- note: class 'AudioReader' does not conform to the 'Sendable' protocol
4 |
5 | public var q = DispatchQueue(label: "audio.reader.q")
:
18 | from connection: AVCaptureConnection)
19 | {
20 | self.q.async { self.push(input: sampleBuffer) }
| `- warning: capture of 'self' with non-sendable type 'AudioReader' in a `@Sendable` closure; this is an error in the Swift 6 language mode
21 | }
22 | }
/Users/admin/builder/spi-builder-workspace/Sources/kubrick/MediaDevices/Readers/AudioReader.swift:20:45: warning: capture of 'sampleBuffer' with non-sendable type 'CMSampleBuffer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
18 | from connection: AVCaptureConnection)
19 | {
20 | self.q.async { self.push(input: sampleBuffer) }
| `- warning: capture of 'sampleBuffer' with non-sendable type 'CMSampleBuffer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
21 | }
22 | }
CoreMedia.CMSampleBuffer:2:14: note: class 'CMSampleBuffer' does not conform to the 'Sendable' protocol
1 | @available(macOS 10.7, *)
2 | public class CMSampleBuffer : _CFObject {
| `- note: class 'CMSampleBuffer' does not conform to the 'Sendable' protocol
3 | }
/Users/admin/builder/spi-builder-workspace/Sources/kubrick/MediaDevices/Readers/VideoReader.swift:20:28: warning: capture of 'self' with non-sendable type 'VideoReader' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1 | import Dispatch
2 |
3 | public class VideoReader: NSObject, MediaDeviceReader {
| `- note: class 'VideoReader' does not conform to the 'Sendable' protocol
4 |
5 | public var q = DispatchQueue(label: "video.reader.q")
:
18 | from connection: AVCaptureConnection)
19 | {
20 | self.q.async { self.push(input: sampleBuffer) }
| `- warning: capture of 'self' with non-sendable type 'VideoReader' in a `@Sendable` closure; this is an error in the Swift 6 language mode
21 | }
22 | }
/Users/admin/builder/spi-builder-workspace/Sources/kubrick/MediaDevices/Readers/VideoReader.swift:20:45: warning: capture of 'sampleBuffer' with non-sendable type 'CMSampleBuffer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
18 | from connection: AVCaptureConnection)
19 | {
20 | self.q.async { self.push(input: sampleBuffer) }
| `- warning: capture of 'sampleBuffer' with non-sendable type 'CMSampleBuffer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
21 | }
22 | }
CoreMedia.CMSampleBuffer:2:14: note: class 'CMSampleBuffer' does not conform to the 'Sendable' protocol
1 | @available(macOS 10.7, *)
2 | public class CMSampleBuffer : _CFObject {
| `- note: class 'CMSampleBuffer' does not conform to the 'Sendable' protocol
3 | }
[38/47] Compiling kubrick VideoReader.swift
/Users/admin/builder/spi-builder-workspace/Sources/kubrick/MediaDevices/Readers/AudioReader.swift:20:28: warning: capture of 'self' with non-sendable type 'AudioReader' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1 | import Dispatch
2 |
3 | public class AudioReader: NSObject, MediaDeviceReader {
| `- note: class 'AudioReader' does not conform to the 'Sendable' protocol
4 |
5 | public var q = DispatchQueue(label: "audio.reader.q")
:
18 | from connection: AVCaptureConnection)
19 | {
20 | self.q.async { self.push(input: sampleBuffer) }
| `- warning: capture of 'self' with non-sendable type 'AudioReader' in a `@Sendable` closure; this is an error in the Swift 6 language mode
21 | }
22 | }
/Users/admin/builder/spi-builder-workspace/Sources/kubrick/MediaDevices/Readers/AudioReader.swift:20:45: warning: capture of 'sampleBuffer' with non-sendable type 'CMSampleBuffer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
18 | from connection: AVCaptureConnection)
19 | {
20 | self.q.async { self.push(input: sampleBuffer) }
| `- warning: capture of 'sampleBuffer' with non-sendable type 'CMSampleBuffer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
21 | }
22 | }
CoreMedia.CMSampleBuffer:2:14: note: class 'CMSampleBuffer' does not conform to the 'Sendable' protocol
1 | @available(macOS 10.7, *)
2 | public class CMSampleBuffer : _CFObject {
| `- note: class 'CMSampleBuffer' does not conform to the 'Sendable' protocol
3 | }
/Users/admin/builder/spi-builder-workspace/Sources/kubrick/MediaDevices/Readers/VideoReader.swift:20:28: warning: capture of 'self' with non-sendable type 'VideoReader' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1 | import Dispatch
2 |
3 | public class VideoReader: NSObject, MediaDeviceReader {
| `- note: class 'VideoReader' does not conform to the 'Sendable' protocol
4 |
5 | public var q = DispatchQueue(label: "video.reader.q")
:
18 | from connection: AVCaptureConnection)
19 | {
20 | self.q.async { self.push(input: sampleBuffer) }
| `- warning: capture of 'self' with non-sendable type 'VideoReader' in a `@Sendable` closure; this is an error in the Swift 6 language mode
21 | }
22 | }
/Users/admin/builder/spi-builder-workspace/Sources/kubrick/MediaDevices/Readers/VideoReader.swift:20:45: warning: capture of 'sampleBuffer' with non-sendable type 'CMSampleBuffer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
18 | from connection: AVCaptureConnection)
19 | {
20 | self.q.async { self.push(input: sampleBuffer) }
| `- warning: capture of 'sampleBuffer' with non-sendable type 'CMSampleBuffer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
21 | }
22 | }
CoreMedia.CMSampleBuffer:2:14: note: class 'CMSampleBuffer' does not conform to the 'Sendable' protocol
1 | @available(macOS 10.7, *)
2 | public class CMSampleBuffer : _CFObject {
| `- note: class 'CMSampleBuffer' does not conform to the 'Sendable' protocol
3 | }
[39/47] Compiling kubrick MediaFormat.swift
/Users/admin/builder/spi-builder-workspace/Sources/kubrick/MediaDevices/Readers/AudioReader.swift:20:28: warning: capture of 'self' with non-sendable type 'AudioReader' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1 | import Dispatch
2 |
3 | public class AudioReader: NSObject, MediaDeviceReader {
| `- note: class 'AudioReader' does not conform to the 'Sendable' protocol
4 |
5 | public var q = DispatchQueue(label: "audio.reader.q")
:
18 | from connection: AVCaptureConnection)
19 | {
20 | self.q.async { self.push(input: sampleBuffer) }
| `- warning: capture of 'self' with non-sendable type 'AudioReader' in a `@Sendable` closure; this is an error in the Swift 6 language mode
21 | }
22 | }
/Users/admin/builder/spi-builder-workspace/Sources/kubrick/MediaDevices/Readers/AudioReader.swift:20:45: warning: capture of 'sampleBuffer' with non-sendable type 'CMSampleBuffer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
18 | from connection: AVCaptureConnection)
19 | {
20 | self.q.async { self.push(input: sampleBuffer) }
| `- warning: capture of 'sampleBuffer' with non-sendable type 'CMSampleBuffer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
21 | }
22 | }
CoreMedia.CMSampleBuffer:2:14: note: class 'CMSampleBuffer' does not conform to the 'Sendable' protocol
1 | @available(macOS 10.7, *)
2 | public class CMSampleBuffer : _CFObject {
| `- note: class 'CMSampleBuffer' does not conform to the 'Sendable' protocol
3 | }
/Users/admin/builder/spi-builder-workspace/Sources/kubrick/MediaDevices/Readers/VideoReader.swift:20:28: warning: capture of 'self' with non-sendable type 'VideoReader' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1 | import Dispatch
2 |
3 | public class VideoReader: NSObject, MediaDeviceReader {
| `- note: class 'VideoReader' does not conform to the 'Sendable' protocol
4 |
5 | public var q = DispatchQueue(label: "video.reader.q")
:
18 | from connection: AVCaptureConnection)
19 | {
20 | self.q.async { self.push(input: sampleBuffer) }
| `- warning: capture of 'self' with non-sendable type 'VideoReader' in a `@Sendable` closure; this is an error in the Swift 6 language mode
21 | }
22 | }
/Users/admin/builder/spi-builder-workspace/Sources/kubrick/MediaDevices/Readers/VideoReader.swift:20:45: warning: capture of 'sampleBuffer' with non-sendable type 'CMSampleBuffer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
18 | from connection: AVCaptureConnection)
19 | {
20 | self.q.async { self.push(input: sampleBuffer) }
| `- warning: capture of 'sampleBuffer' with non-sendable type 'CMSampleBuffer' in a `@Sendable` closure; this is an error in the Swift 6 language mode
21 | }
22 | }
CoreMedia.CMSampleBuffer:2:14: note: class 'CMSampleBuffer' does not conform to the 'Sendable' protocol
1 | @available(macOS 10.7, *)
2 | public class CMSampleBuffer : _CFObject {
| `- note: class 'CMSampleBuffer' does not conform to the 'Sendable' protocol
3 | }
[40/47] Compiling kubrick PrettyPortraitSink.swift
/Users/admin/builder/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() }
/Users/admin/builder/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 |
[41/47] Compiling kubrick Sink.swift
/Users/admin/builder/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() }
/Users/admin/builder/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 |
[42/47] Compiling kubrick AVStream.swift
/Users/admin/builder/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() }
/Users/admin/builder/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 |
[43/47] Compiling kubrick Rational.swift
/Users/admin/builder/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 | }
/Users/admin/builder/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 |
/Users/admin/builder/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 |
/Users/admin/builder/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 |
/Users/admin/builder/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 |
/Users/admin/builder/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 |
/Users/admin/builder/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 |
/Users/admin/builder/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 |
/Users/admin/builder/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 |
/Users/admin/builder/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 |
/Users/admin/builder/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 |
[44/47] Compiling kubrick ThreadSafeArray.swift
/Users/admin/builder/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 | }
/Users/admin/builder/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 |
/Users/admin/builder/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 |
/Users/admin/builder/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 |
/Users/admin/builder/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 |
/Users/admin/builder/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 |
/Users/admin/builder/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 |
/Users/admin/builder/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 |
/Users/admin/builder/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 |
/Users/admin/builder/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 |
/Users/admin/builder/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 |
[45/47] Compiling kubrick Camera.swift
/Users/admin/builder/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 | }
/Users/admin/builder/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 |
/Users/admin/builder/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 |
/Users/admin/builder/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 |
/Users/admin/builder/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 |
/Users/admin/builder/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 |
/Users/admin/builder/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 |
/Users/admin/builder/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 |
/Users/admin/builder/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 |
/Users/admin/builder/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 |
/Users/admin/builder/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 |
[46/47] Compiling kubrick Source.swift
/Users/admin/builder/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)
/Users/admin/builder/spi-builder-workspace/Sources/kubrick/Sources/SourceDiscoverer.swift:83:38: warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
81 |
82 | public func displays() -> [DisplaySource] {
83 | return self.displayIDs().flatMap { DisplaySource($0) }
| |- warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
| `- note: use 'compactMap(_:)' instead
84 | }
85 | }
[47/47] Compiling kubrick SourceDiscoverer.swift
/Users/admin/builder/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)
/Users/admin/builder/spi-builder-workspace/Sources/kubrick/Sources/SourceDiscoverer.swift:83:38: warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
81 |
82 | public func displays() -> [DisplaySource] {
83 | return self.displayIDs().flatMap { DisplaySource($0) }
| |- warning: 'flatMap' is deprecated: Please use compactMap(_:) for the case where closure returns an optional value
| `- note: use 'compactMap(_:)' instead
84 | }
85 | }
BUILD FAILURE 6.0 macosSpm