Build Information
Failed to build XPCConnectionSession with Swift 6.0 for Linux.
Build Command
bash -c docker run --rm -v "checkouts-4609320-0":/host -w "$workDir" 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.40.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/ChimeHQ/XPCConnectionSession.git
Reference: main
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/ChimeHQ/XPCConnectionSession
* branch main -> FETCH_HEAD
* [new branch] main -> origin/main
HEAD is now at 7286e38 funding
Cloned https://github.com/ChimeHQ/XPCConnectionSession.git
Revision (git rev-parse @):
7286e38e7c8a6abb2b2dea5c172509c55f470409
SUCCESS checkout https://github.com/ChimeHQ/XPCConnectionSession.git at main
========================================
Build
========================================
Selected platform: linux
Swift version: 6.0
Building package at path: $workDir
https://github.com/ChimeHQ/XPCConnectionSession.git
Running build ...
bash -c docker run --rm -v "checkouts-4609320-0":/host -w "$workDir" 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
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version-24593BA9C3E375BF.txt
[3/6] Compiling XPCConnectionSession XPCSession+Async.swift
[4/6] Compiling XPCConnectionSession XPCReceivedConnectionMessage.swift
error: emit-module command failed with exit code 1 (use -v to see invocation)
[5/6] Emitting module XPCConnectionSession
/host/spi-builder-workspace/Sources/XPCConnectionSession/XPCConnectionSession.swift:6:2: error: Objective-C interoperability is disabled
4 | ///
5 | /// Both the remote and local systems must use this protocol.
6 | @objc public protocol XPCConnectionSessionCommunicationProtocol {
| `- error: Objective-C interoperability is disabled
7 | typealias Reply = @Sendable (Data) -> Void
8 |
/host/spi-builder-workspace/Sources/XPCConnectionSession/XPCConnectionSession.swift:52:26: error: cannot find type 'NSXPCConnection' in scope
50 | /// A type that emulates the behavior and API of `XPCSession`.
51 | public final class XPCConnectionSession: @unchecked Sendable {
52 | private let connection: NSXPCConnection
| `- error: cannot find type 'NSXPCConnection' in scope
53 | private let queue = DispatchQueue(label: "com.chimehq.XPCConnectionSession")
54 | private let channelHandler = IncomingHandler()
/host/spi-builder-workspace/Sources/XPCConnectionSession/XPCConnectionSession.swift:59:26: error: cannot find type 'NSXPCConnection' in scope
57 | ///
58 | /// The initializing session **must** never be used once this is done. Effectively, this is a consuming operation, but that is currently not possible to express.
59 | public init(connection: NSXPCConnection) {
| `- error: cannot find type 'NSXPCConnection' in scope
60 | self.connection = connection
61 |
[6/6] Compiling XPCConnectionSession XPCConnectionSession.swift
/host/spi-builder-workspace/Sources/XPCConnectionSession/XPCConnectionSession.swift:6:2: error: Objective-C interoperability is disabled
4 | ///
5 | /// Both the remote and local systems must use this protocol.
6 | @objc public protocol XPCConnectionSessionCommunicationProtocol {
| `- error: Objective-C interoperability is disabled
7 | typealias Reply = @Sendable (Data) -> Void
8 |
/host/spi-builder-workspace/Sources/XPCConnectionSession/XPCConnectionSession.swift:52:26: error: cannot find type 'NSXPCConnection' in scope
50 | /// A type that emulates the behavior and API of `XPCSession`.
51 | public final class XPCConnectionSession: @unchecked Sendable {
52 | private let connection: NSXPCConnection
| `- error: cannot find type 'NSXPCConnection' in scope
53 | private let queue = DispatchQueue(label: "com.chimehq.XPCConnectionSession")
54 | private let channelHandler = IncomingHandler()
/host/spi-builder-workspace/Sources/XPCConnectionSession/XPCConnectionSession.swift:59:26: error: cannot find type 'NSXPCConnection' in scope
57 | ///
58 | /// The initializing session **must** never be used once this is done. Effectively, this is a consuming operation, but that is currently not possible to express.
59 | public init(connection: NSXPCConnection) {
| `- error: cannot find type 'NSXPCConnection' in scope
60 | self.connection = connection
61 |
/host/spi-builder-workspace/Sources/XPCConnectionSession/XPCConnectionSession.swift:67:20: error: cannot find 'NSXPCInterface' in scope
65 |
66 | queue.async {
67 | let interface = NSXPCInterface(with: XPCConnectionSessionCommunicationProtocol.self)
| `- error: cannot find 'NSXPCInterface' in scope
68 |
69 | self.connection.exportedInterface = interface
/host/spi-builder-workspace/Sources/XPCConnectionSession/XPCConnectionSession.swift:82:25: error: cannot find 'NSXPCConnection' in scope
80 |
81 | public convenience init(serviceName: String) {
82 | self.init(connection: NSXPCConnection(serviceName: serviceName))
| `- error: cannot find 'NSXPCConnection' in scope
83 | }
84 |
/host/spi-builder-workspace/Sources/XPCConnectionSession/XPCConnectionSession.swift:82:12: error: incorrect argument label in call (have 'connection:', expected 'serviceName:')
80 |
81 | public convenience init(serviceName: String) {
82 | self.init(connection: NSXPCConnection(serviceName: serviceName))
| `- error: incorrect argument label in call (have 'connection:', expected 'serviceName:')
83 | }
84 |
/host/spi-builder-workspace/Sources/XPCConnectionSession/XPCConnectionSession.swift:137:41: warning: capture of 'incomingMessageHandler' with non-sendable type '(XPCReceivedConnectionMessage) -> (any Encodable)?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
135 | queue.async {
136 | // I'm not sure how, or even if it is possible to get rid of this warning and also maintain backwards compatibility
137 | self.channelHandler.messageHandler = incomingMessageHandler
| |- warning: capture of 'incomingMessageHandler' with non-sendable type '(XPCReceivedConnectionMessage) -> (any Encodable)?' 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'
138 | }
139 | }
BUILD FAILURE 6.0 linux