The Swift Package Index logo.Swift Package Index

Track the adoption of Swift 6 strict concurrency checks for data race safety. How many packages are Ready for Swift 6?

Build Information

Failed to build XPCConnectionSession, reference main (7286e3), with Swift 6.0 for Linux on 3 Nov 2024 14:10:23 UTC.

Build Command

bash -c docker run --pull=always --rm -v "checkouts-4606859-2":/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.56.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:  $PWD
https://github.com/ChimeHQ/XPCConnectionSession.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4606859-2":/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:47d26c99ca4f1ac0a332c85fd5b13ff4390e72115219984a57a68fe9d1063a05
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.0-latest
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version-24593BA9C3E375BF.txt
[3/6] Compiling XPCConnectionSession XPCSession+Async.swift
error: emit-module command failed with exit code 1 (use -v to see invocation)
[4/6] Compiling XPCConnectionSession XPCReceivedConnectionMessage.swift
[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 |
/host/spi-builder-workspace/Sources/XPCConnectionSession/XPCConnectionSession.swift:145:14: warning: @_unsafeInheritExecutor attribute is deprecated; consider an 'isolated' parameter defaulted to '#isolation' instead; this is an error in the Swift 6 language mode
143 | 	/// Sends a message to the remote service.
144 | 	@_unsafeInheritExecutor
145 | 	public func send<Message: Encodable, Reply: Decodable & Sendable>(_ message: Message) async throws -> Reply {
    |              `- warning: @_unsafeInheritExecutor attribute is deprecated; consider an 'isolated' parameter defaulted to '#isolation' instead; this is an error in the Swift 6 language mode
146 | 		try await withCheckedThrowingContinuation { (continuation: CheckedContinuation<Reply, any Error>) in
147 | 			do {
[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:145:14: warning: @_unsafeInheritExecutor attribute is deprecated; consider an 'isolated' parameter defaulted to '#isolation' instead; this is an error in the Swift 6 language mode
143 | 	/// Sends a message to the remote service.
144 | 	@_unsafeInheritExecutor
145 | 	public func send<Message: Encodable, Reply: Decodable & Sendable>(_ message: Message) async throws -> Reply {
    |              `- warning: @_unsafeInheritExecutor attribute is deprecated; consider an 'isolated' parameter defaulted to '#isolation' instead; this is an error in the Swift 6 language mode
146 | 		try await withCheckedThrowingContinuation { (continuation: CheckedContinuation<Reply, any Error>) in
147 | 			do {
/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