Build Information
Successful build of Ditto, reference master (8db3fe
), with Swift 6.0 for macOS (SPM) on 31 Oct 2024 10:10:05 UTC.
Swift 6 data race errors: 2
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
Build Log
========================================
RunAll
========================================
Builder version: 4.56.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/xspyhack/ditto.git
Reference: master
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/xspyhack/ditto
* branch master -> FETCH_HEAD
* [new branch] master -> origin/master
HEAD is now at 8db3fee Rename routing to router
Cloned https://github.com/xspyhack/ditto.git
Revision (git rev-parse @):
8db3feeca356eb3d5debb63dd1bdb1e1d58b2c9f
SUCCESS checkout https://github.com/xspyhack/ditto.git at master
========================================
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": "ditto",
"name": "Ditto",
"url": "https://github.com/xspyhack/ditto.git",
"version": "unspecified",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/ditto",
"dependencies": [
]
}
]
}
Fetching https://github.com/xspyhack/ditto.git
[1/202] Fetching ditto
Fetched https://github.com/xspyhack/ditto.git from cache (0.86s)
Creating working copy for https://github.com/xspyhack/ditto.git
Working copy of https://github.com/xspyhack/ditto.git resolved at master (8db3fee)
warning: '.resolve-product-dependencies': dependency 'ditto' is not used by any target
Found 0 product dependencies
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.0
Building package at path: $PWD
https://github.com/xspyhack/ditto.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
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version--7754E27361AE5C74.txt
[3/11] Compiling Ditto Route.swift
[4/11] Emitting module Ditto
/Users/admin/builder/spi-builder-workspace/Sources/Ditto/Router.swift:80:14: warning: associated value 'registerFailed(reason:)' of 'Sendable'-conforming enum 'Error' has non-sendable type 'Router<Coordinator>.Error.RegisterFailureReason'; this is an error in the Swift 6 language mode
73 | public extension Router {
74 | enum Error: Swift.Error, Equatable {
75 | public enum RegisterFailureReason: Equatable {
| `- note: consider making enum 'RegisterFailureReason' conform to the 'Sendable' protocol
76 | case invalidScheme
77 | case invalidHost
78 | }
79 |
80 | case registerFailed(reason: RegisterFailureReason)
| `- warning: associated value 'registerFailed(reason:)' of 'Sendable'-conforming enum 'Error' has non-sendable type 'Router<Coordinator>.Error.RegisterFailureReason'; this is an error in the Swift 6 language mode
81 |
82 | public static func ==(lhs: Error, rhs: Error) -> Bool {
/Users/admin/builder/spi-builder-workspace/Sources/Ditto/SIL.swift:181:16: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'SIL' may have shared mutable state; this is an error in the Swift 6 language mode
177 |
178 | // A C function pointer cannot be formed from a closure that captures generic parameters
179 | class SIL {
| `- note: class 'SIL' does not conform to the 'Sendable' protocol
180 | private(set) var symbols: [String: UnsafeMutableRawPointer?] = [:]
181 | static let shared = SIL()
| |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'SIL' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'shared' 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
182 |
183 | static func install() {
[5/11] Compiling Ditto Routing.swift
[6/11] Compiling Ditto Extractable.swift
[7/11] Compiling Ditto Routable.swift
[8/11] Compiling Ditto Router.swift
/Users/admin/builder/spi-builder-workspace/Sources/Ditto/Router.swift:80:14: warning: associated value 'registerFailed(reason:)' of 'Sendable'-conforming enum 'Error' has non-sendable type 'Router<Coordinator>.Error.RegisterFailureReason'; this is an error in the Swift 6 language mode
73 | public extension Router {
74 | enum Error: Swift.Error, Equatable {
75 | public enum RegisterFailureReason: Equatable {
| `- note: consider making enum 'RegisterFailureReason' conform to the 'Sendable' protocol
76 | case invalidScheme
77 | case invalidHost
78 | }
79 |
80 | case registerFailed(reason: RegisterFailureReason)
| `- warning: associated value 'registerFailed(reason:)' of 'Sendable'-conforming enum 'Error' has non-sendable type 'Router<Coordinator>.Error.RegisterFailureReason'; this is an error in the Swift 6 language mode
81 |
82 | public static func ==(lhs: Error, rhs: Error) -> Bool {
/Users/admin/builder/spi-builder-workspace/Sources/Ditto/Router.swift:122:13: warning: capture of 'self' with non-sendable type 'Router<Coordinator>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
11 | public typealias SimpleRouter = Router<Void>
12 |
13 | public final class Router<Coordinator>: Routing {
| `- note: generic class 'Router' does not conform to the 'Sendable' protocol
14 | private let schemes: Set<String>
15 | private let hosts: Set<String>
:
120 | SIL.install()
121 | DispatchQueue.main.async {
122 | self.register(prefix: prefix, symbols: SIL.shared.symbols)
| `- warning: capture of 'self' with non-sendable type 'Router<Coordinator>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
123 | }
124 | }
/Users/admin/builder/spi-builder-workspace/Sources/Ditto/SIL.swift:181:16: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'SIL' may have shared mutable state; this is an error in the Swift 6 language mode
177 |
178 | // A C function pointer cannot be formed from a closure that captures generic parameters
179 | class SIL {
| `- note: class 'SIL' does not conform to the 'Sendable' protocol
180 | private(set) var symbols: [String: UnsafeMutableRawPointer?] = [:]
181 | static let shared = SIL()
| |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'SIL' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'shared' 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
182 |
183 | static func install() {
/Users/admin/builder/spi-builder-workspace/Sources/Ditto/Router.swift:122:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
120 | SIL.install()
121 | DispatchQueue.main.async {
122 | self.register(prefix: prefix, symbols: SIL.shared.symbols)
| |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
123 | }
124 | }
[9/11] Compiling Ditto SIL.swift
/Users/admin/builder/spi-builder-workspace/Sources/Ditto/SIL.swift:181:16: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'SIL' may have shared mutable state; this is an error in the Swift 6 language mode
177 |
178 | // A C function pointer cannot be formed from a closure that captures generic parameters
179 | class SIL {
| `- note: class 'SIL' does not conform to the 'Sendable' protocol
180 | private(set) var symbols: [String: UnsafeMutableRawPointer?] = [:]
181 | static let shared = SIL()
| |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'SIL' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'shared' 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
182 |
183 | static func install() {
[10/11] Compiling Ditto Endpoint.swift
[11/11] Compiling Ditto Context.swift
Build complete! (14.12s)
Build complete.
{
"dependencies" : [
],
"manifest_display_name" : "Ditto",
"name" : "Ditto",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
],
"products" : [
{
"name" : "Ditto",
"targets" : [
"Ditto"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "DittoTests",
"module_type" : "SwiftTarget",
"name" : "DittoTests",
"path" : "Tests/DittoTests",
"sources" : [
"ContextTests.swift",
"EndpointTests.swift",
"RouteTests.swift",
"RouterTests.swift"
],
"target_dependencies" : [
"Ditto"
],
"type" : "test"
},
{
"c99name" : "Ditto",
"module_type" : "SwiftTarget",
"name" : "Ditto",
"path" : "Sources/Ditto",
"product_memberships" : [
"Ditto"
],
"sources" : [
"Context.swift",
"Endpoint.swift",
"Extractable.swift",
"Routable.swift",
"Route.swift",
"Router.swift",
"Routing.swift",
"SIL.swift"
],
"type" : "library"
}
],
"tools_version" : "5.0"
}
Done.