Build Information
Successful build of MultiPeer, reference 0.2.0 (77914e
), with Swift 6.1 for macOS (SPM) on 26 Apr 2025 12:00:05 UTC.
Swift 6 data race errors: 1
Build Command
env DEVELOPER_DIR=/Applications/Xcode-16.3.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.61.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/dingwilson/MultiPeer.git
Reference: 0.2.0
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/dingwilson/MultiPeer
* tag 0.2.0 -> FETCH_HEAD
HEAD is now at 77914e6 update podspec (#35)
Cloned https://github.com/dingwilson/MultiPeer.git
Revision (git rev-parse @):
77914e66c16088f8dbf153423d2dafc288d8bcb7
SUCCESS checkout https://github.com/dingwilson/MultiPeer.git at 0.2.0
========================================
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": "multipeer",
"name": "MultiPeer",
"url": "https://github.com/dingwilson/MultiPeer.git",
"version": "unspecified",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/MultiPeer",
"dependencies": [
]
}
]
}
Fetching https://github.com/dingwilson/MultiPeer.git
[1/1394] Fetching multipeer
Fetched https://github.com/dingwilson/MultiPeer.git from cache (1.03s)
Creating working copy for https://github.com/dingwilson/MultiPeer.git
Working copy of https://github.com/dingwilson/MultiPeer.git resolved at 0.2.0 (77914e6)
warning: '.resolve-product-dependencies': dependency 'multipeer' is not used by any target
Found 0 product dependencies
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.1
Building package at path: $PWD
https://github.com/dingwilson/MultiPeer.git
https://github.com/dingwilson/MultiPeer.git
{
"dependencies" : [
],
"manifest_display_name" : "MultiPeer",
"name" : "MultiPeer",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
],
"products" : [
{
"name" : "MultiPeer",
"targets" : [
"MultiPeer"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "MultiPeer",
"module_type" : "SwiftTarget",
"name" : "MultiPeer",
"path" : "Sources",
"product_memberships" : [
"MultiPeer"
],
"sources" : [
"MultiPeer.swift",
"MultiPeerDelegate.swift",
"Peer.swift"
],
"type" : "library"
}
],
"tools_version" : "4.0"
}
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.3.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/2] Write sources
[1/2] Write swift-version-2F0A5646E1D333AE.txt
[3/6] Compiling MultiPeer MultiPeerDelegate.swift
[4/6] Compiling MultiPeer Peer.swift
[5/6] Compiling MultiPeer MultiPeer.swift
/Users/admin/builder/spi-builder-workspace/Sources/MultiPeer.swift:15:23: warning: static property 'instance' is not concurrency-safe because non-'Sendable' type 'MultiPeer' may have shared mutable state; this is an error in the Swift 6 language mode
10 |
11 | /// Main Class for MultiPeer
12 | public class MultiPeer: NSObject {
| `- note: class 'MultiPeer' does not conform to the 'Sendable' protocol
13 |
14 | /// Singleton instance - call via MultiPeer.instance
15 | public static let instance = MultiPeer()
| |- warning: static property 'instance' is not concurrency-safe because non-'Sendable' type 'MultiPeer' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'instance' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
16 |
17 | // MARK: Properties
/Users/admin/builder/spi-builder-workspace/Sources/MultiPeer.swift:198:13: warning: capture of 'invitationHandler' with non-sendable type '(Bool, MCSession?) -> Void' in a '@Sendable' closure
196 |
197 | OperationQueue.main.addOperation {
198 | invitationHandler(true, self.session)
| |- warning: capture of 'invitationHandler' with non-sendable type '(Bool, MCSession?) -> Void' in a '@Sendable' closure
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
199 | }
200 | }
/Users/admin/builder/spi-builder-workspace/Sources/MultiPeer.swift:198:37: warning: capture of 'self' with non-sendable type 'MultiPeer' in a '@Sendable' closure
10 |
11 | /// Main Class for MultiPeer
12 | public class MultiPeer: NSObject {
| `- note: class 'MultiPeer' does not conform to the 'Sendable' protocol
13 |
14 | /// Singleton instance - call via MultiPeer.instance
:
196 |
197 | OperationQueue.main.addOperation {
198 | invitationHandler(true, self.session)
| `- warning: capture of 'self' with non-sendable type 'MultiPeer' in a '@Sendable' closure
199 | }
200 | }
/Users/admin/builder/spi-builder-workspace/Sources/MultiPeer.swift:257:13: warning: capture of 'self' with non-sendable type 'MultiPeer' in a '@Sendable' closure
10 |
11 | /// Main Class for MultiPeer
12 | public class MultiPeer: NSObject {
| `- note: class 'MultiPeer' does not conform to the 'Sendable' protocol
13 |
14 | /// Singleton instance - call via MultiPeer.instance
:
255 | // Send new connection list to delegate
256 | OperationQueue.main.addOperation {
257 | self.delegate?.multiPeer(connectedDevicesChanged: session.connectedPeers.map({$0.displayName}))
| `- warning: capture of 'self' with non-sendable type 'MultiPeer' in a '@Sendable' closure
258 | }
259 | }
/Users/admin/builder/spi-builder-workspace/Sources/MultiPeer.swift:257:63: warning: capture of 'session' with non-sendable type 'MCSession' in a '@Sendable' closure
255 | // Send new connection list to delegate
256 | OperationQueue.main.addOperation {
257 | self.delegate?.multiPeer(connectedDevicesChanged: session.connectedPeers.map({$0.displayName}))
| `- warning: capture of 'session' with non-sendable type 'MCSession' in a '@Sendable' closure
258 | }
259 | }
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/MultipeerConnectivity.framework/Headers/MCSession.h:84:12: note: class 'MCSession' does not conform to the 'Sendable' protocol
82 | NS_ASSUME_NONNULL_BEGIN
83 | NS_CLASS_AVAILABLE(10_10, 7_0)
84 | @interface MCSession : NSObject
| `- note: class 'MCSession' does not conform to the 'Sendable' protocol
85 |
86 | // Create a session with an MCPeerID for the local peer.
/Users/admin/builder/spi-builder-workspace/Sources/MultiPeer.swift:9:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'MultipeerConnectivity'
7 |
8 | import Foundation
9 | import MultipeerConnectivity
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'MultipeerConnectivity'
10 |
11 | /// Main Class for MultiPeer
/Users/admin/builder/spi-builder-workspace/Sources/MultiPeer.swift:270:13: warning: capture of 'self' with non-sendable type 'MultiPeer' in a '@Sendable' closure
10 |
11 | /// Main Class for MultiPeer
12 | public class MultiPeer: NSObject {
| `- note: class 'MultiPeer' does not conform to the 'Sendable' protocol
13 |
14 | /// Singleton instance - call via MultiPeer.instance
:
268 |
269 | OperationQueue.main.addOperation {
270 | self.delegate?.multiPeer(didReceiveData: item, ofType: type, from: peerID)
| `- warning: capture of 'self' with non-sendable type 'MultiPeer' in a '@Sendable' closure
271 | }
272 |
/Users/admin/builder/spi-builder-workspace/Sources/MultiPeer.swift:270:80: warning: capture of 'peerID' with non-sendable type 'MCPeerID' in a '@Sendable' closure
268 |
269 | OperationQueue.main.addOperation {
270 | self.delegate?.multiPeer(didReceiveData: item, ofType: type, from: peerID)
| `- warning: capture of 'peerID' with non-sendable type 'MCPeerID' in a '@Sendable' closure
271 | }
272 |
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/System/Library/Frameworks/MultipeerConnectivity.framework/Headers/MCPeerID.h:32:12: note: class 'MCPeerID' does not conform to the 'Sendable' protocol
30 | NS_ASSUME_NONNULL_BEGIN
31 | NS_CLASS_AVAILABLE(10_10, 7_0)
32 | @interface MCPeerID : NSObject <NSCopying, NSSecureCoding>
| `- note: class 'MCPeerID' does not conform to the 'Sendable' protocol
33 | - (instancetype)initWithDisplayName:(NSString *)myDisplayName NS_DESIGNATED_INITIALIZER;
34 |
[6/6] Emitting module MultiPeer
/Users/admin/builder/spi-builder-workspace/Sources/MultiPeer.swift:15:23: warning: static property 'instance' is not concurrency-safe because non-'Sendable' type 'MultiPeer' may have shared mutable state; this is an error in the Swift 6 language mode
10 |
11 | /// Main Class for MultiPeer
12 | public class MultiPeer: NSObject {
| `- note: class 'MultiPeer' does not conform to the 'Sendable' protocol
13 |
14 | /// Singleton instance - call via MultiPeer.instance
15 | public static let instance = MultiPeer()
| |- warning: static property 'instance' is not concurrency-safe because non-'Sendable' type 'MultiPeer' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'instance' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
16 |
17 | // MARK: Properties
Build complete! (6.62s)
Build complete.
{
"dependencies" : [
],
"manifest_display_name" : "MultiPeer",
"name" : "MultiPeer",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
],
"products" : [
{
"name" : "MultiPeer",
"targets" : [
"MultiPeer"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "MultiPeer",
"module_type" : "SwiftTarget",
"name" : "MultiPeer",
"path" : "Sources",
"product_memberships" : [
"MultiPeer"
],
"sources" : [
"MultiPeer.swift",
"MultiPeerDelegate.swift",
"Peer.swift"
],
"type" : "library"
}
],
"tools_version" : "4.0"
}
Done.