Build Information
Successful build of webber-tools, reference 1.4.3 (d342e5
), with Swift 6.0 for macOS (SPM) on 3 Nov 2024 23:30:48 UTC.
Swift 6 data race errors: 5
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/swifweb/webber-tools.git
Reference: 1.4.3
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/swifweb/webber-tools
* tag 1.4.3 -> FETCH_HEAD
HEAD is now at d342e52 🛠 Improve swift errors printing
Cloned https://github.com/swifweb/webber-tools.git
Revision (git rev-parse @):
d342e526c7b924f5aef5d190e09a6370b098ea80
SUCCESS checkout https://github.com/swifweb/webber-tools.git at 1.4.3
Fetching https://github.com/apple/swift-crypto.git
[1/10416] Fetching swift-crypto
Fetched https://github.com/apple/swift-crypto.git from cache (1.87s)
Computing version for https://github.com/apple/swift-crypto.git
Computed https://github.com/apple/swift-crypto.git at 2.6.0 (0.69s)
Creating working copy for https://github.com/apple/swift-crypto.git
Working copy of https://github.com/apple/swift-crypto.git resolved at 2.6.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": "webber-tools",
"name": "webber-tools",
"url": "https://github.com/swifweb/webber-tools.git",
"version": "unspecified",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/webber-tools",
"dependencies": [
{
"identity": "swift-crypto",
"name": "swift-crypto",
"url": "https://github.com/apple/swift-crypto.git",
"version": "2.6.0",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/swift-crypto",
"dependencies": [
]
}
]
}
]
}
Fetching https://github.com/swifweb/webber-tools.git
[1/103] Fetching webber-tools
Fetched https://github.com/swifweb/webber-tools.git from cache (0.67s)
Fetching https://github.com/apple/swift-crypto.git from cache
Fetched https://github.com/apple/swift-crypto.git from cache (0.62s)
Computing version for https://github.com/apple/swift-crypto.git
Computed https://github.com/apple/swift-crypto.git at 2.6.0 (0.02s)
Creating working copy for https://github.com/swifweb/webber-tools.git
Working copy of https://github.com/swifweb/webber-tools.git resolved at 1.4.3 (d342e52)
Creating working copy for https://github.com/apple/swift-crypto.git
Working copy of https://github.com/apple/swift-crypto.git resolved at 2.6.0
warning: '.resolve-product-dependencies': dependency 'webber-tools' is not used by any target
Found 1 product dependencies
- swift-crypto
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.0
Building package at path: $PWD
https://github.com/swifweb/webber-tools.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/3] Write sources
[2/3] Write swift-version--7754E27361AE5C74.txt
[4/65] Emitting module Crypto
[5/71] Compiling Crypto EdDSA.swift
[6/71] Compiling Crypto Signature.swift
[7/71] Compiling Crypto ArbitraryPrecisionInteger_boring.swift
[8/71] Compiling Crypto CryptoKitErrors_boring.swift
[9/71] Compiling Crypto FiniteFieldArithmeticContext_boring.swift
[10/71] Compiling Crypto RNG_boring.swift
[11/71] Compiling Crypto AESWrap.swift
[12/71] Compiling Crypto AESWrap_boring.swift
[13/71] Compiling Crypto Ed25519_boring.swift
[14/71] Compiling Crypto EllipticCurvePoint_boring.swift
[15/71] Compiling Crypto EllipticCurve_boring.swift
[16/71] Compiling Crypto NISTCurvesKeys_boring.swift
[17/71] Compiling Crypto X25519Keys_boring.swift
[18/71] Compiling Crypto AES-GCM.swift
[19/71] Compiling Crypto AES-GCM_boring.swift
[20/71] Compiling Crypto ChaChaPoly_boring.swift
[21/71] Compiling Crypto ChaChaPoly.swift
[22/71] Compiling Crypto Cipher.swift
[23/71] Compiling Crypto Nonces.swift
[24/71] Compiling Crypto ASN1.swift
[25/71] Compiling Crypto ASN1Any.swift
[26/71] Compiling Crypto ASN1BitString.swift
[27/71] Compiling Crypto ASN1Boolean.swift
[28/71] Compiling Crypto ASN1Identifier.swift
[29/71] Compiling Crypto ASN1Integer.swift
[30/71] Compiling Crypto ASN1Null.swift
[31/71] Compiling Crypto ASN1OctetString.swift
[32/71] Compiling Crypto HashFunctions_SHA2.swift
[33/71] Compiling Crypto Insecure.swift
[34/71] Compiling Crypto Insecure_HashFunctions.swift
[35/71] Compiling Crypto ECDH_boring.swift
[36/71] Compiling Crypto DH.swift
[37/71] Compiling Crypto ECDH.swift
[38/71] Compiling Crypto HKDF.swift
[39/71] Compiling Crypto MessageAuthenticationCode.swift
[40/71] Compiling Crypto AES.swift
[41/71] Compiling Crypto ECDSASignature_boring.swift
[42/71] Compiling Crypto ECDSA_boring.swift
[43/71] Compiling Crypto EdDSA_boring.swift
[44/71] Compiling Crypto ECDSA.swift
[45/71] Compiling Crypto ASN1Strings.swift
[46/71] Compiling Crypto ArraySliceBigint.swift
[47/71] Compiling Crypto GeneralizedTime.swift
[48/71] Compiling Crypto ObjectIdentifier.swift
[49/71] Compiling Crypto ECDSASignature.swift
[50/71] Compiling Crypto PEMDocument.swift
[51/71] Compiling Crypto PKCS8PrivateKey.swift
[52/71] Compiling Crypto SEC1PrivateKey.swift
[53/71] Compiling Crypto SubjectPublicKeyInfo.swift
[54/71] Compiling Crypto CryptoKitErrors.swift
[55/71] Compiling Crypto Digest_boring.swift
[56/71] Compiling Crypto Digest.swift
[57/71] Compiling Crypto Digests.swift
[58/71] Compiling Crypto HashFunctions.swift
[59/71] Compiling Crypto Curve25519.swift
[60/71] Compiling Crypto Ed25519.swift
[61/71] Compiling Crypto NISTCurvesKeys.swift
[62/71] Compiling Crypto X25519Keys.swift
[63/71] Compiling Crypto SymmetricKeys.swift
[64/71] Compiling Crypto HMAC.swift
[65/71] Compiling Crypto MACFunctions.swift
[66/71] Compiling Crypto SafeCompare_boring.swift
[67/71] Compiling Crypto Zeroization_boring.swift
[68/71] Compiling Crypto PrettyBytes.swift
[69/71] Compiling Crypto SafeCompare.swift
[70/71] Compiling Crypto SecureBytes.swift
[71/71] Compiling Crypto Zeroization.swift
[72/81] Compiling WebberTools SwiftPackage.swift
[73/81] Compiling WebberTools Preview.swift
[74/81] Compiling WebberTools FS.swift
/Users/admin/builder/spi-builder-workspace/Sources/WebberTools/FS.swift:10:13: warning: let '_fs' is not concurrency-safe because non-'Sendable' type 'FS' may have shared mutable state; this is an error in the Swift 6 language mode
8 | import Foundation
9 |
10 | private let _fs = FS()
| |- warning: let '_fs' is not concurrency-safe because non-'Sendable' type 'FS' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate '_fs' 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
11 | private var _networkCache: [URL: Data] = [:]
12 |
13 | public final class FS {
| `- note: class 'FS' does not conform to the 'Sendable' protocol
14 | private var monitors: [DirectoryMonitor] = []
15 |
/Users/admin/builder/spi-builder-workspace/Sources/WebberTools/FS.swift:11:13: warning: var '_networkCache' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
9 |
10 | private let _fs = FS()
11 | private var _networkCache: [URL: Data] = [:]
| |- warning: var '_networkCache' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert '_networkCache' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate '_networkCache' 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
12 |
13 | public final class FS {
[75/81] Compiling WebberTools DirectoryMonitor.swift
/Users/admin/builder/spi-builder-workspace/Sources/WebberTools/DirectoryMonitor.swift:33:23: warning: capture of 'self' with non-sendable type 'DirectoryMonitor' in a `@Sendable` closure; this is an error in the Swift 6 language mode
8 | import Foundation
9 |
10 | public class DirectoryMonitor {
| `- note: class 'DirectoryMonitor' does not conform to the 'Sendable' protocol
11 | lazy var dispatchQueue = DispatchQueue(label: "xlivepreview.directorymonitor", attributes: .concurrent)
12 |
:
31 | _childChanged = newValue
32 | Timer.scheduledTimer(withTimeInterval: 1, repeats: false) { _ in
33 | guard self._childChanged else { return }
| `- warning: capture of 'self' with non-sendable type 'DirectoryMonitor' in a `@Sendable` closure; this is an error in the Swift 6 language mode
34 | self._childChanged = false
35 | }
/Users/admin/builder/spi-builder-workspace/Sources/WebberTools/DirectoryMonitor.swift:101:25: warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
8 | import Foundation
9 |
10 | public class DirectoryMonitor {
| `- note: class 'DirectoryMonitor' does not conform to the 'Sendable' protocol
11 | lazy var dispatchQueue = DispatchQueue(label: "xlivepreview.directorymonitor", attributes: .concurrent)
12 |
:
99 | self.dispatchSource?.cancel()
100 | self.dispatchQueue.asyncAfter(deadline: .now() + 1) {
101 | self.startMonitoring(closure)
| `- warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
102 | }
103 | }
/Users/admin/builder/spi-builder-workspace/Sources/WebberTools/DirectoryMonitor.swift:101:46: warning: capture of 'closure' with non-sendable type '(URL) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
99 | self.dispatchSource?.cancel()
100 | self.dispatchQueue.asyncAfter(deadline: .now() + 1) {
101 | self.startMonitoring(closure)
| |- warning: capture of 'closure' with non-sendable type '(URL) -> Void' 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'
102 | }
103 | }
[76/81] Compiling WebberTools CompilationErrorsParser.swift
[77/81] Compiling WebberTools String+SHA.swift
[78/81] Compiling WebberTools CompilationError.swift
[79/81] Emitting module WebberTools
/Users/admin/builder/spi-builder-workspace/Sources/WebberTools/DirectoryMonitor.swift:101:25: warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
8 | import Foundation
9 |
10 | public class DirectoryMonitor {
| `- note: class 'DirectoryMonitor' does not conform to the 'Sendable' protocol
11 | lazy var dispatchQueue = DispatchQueue(label: "xlivepreview.directorymonitor", attributes: .concurrent)
12 |
:
99 | self.dispatchSource?.cancel()
100 | self.dispatchQueue.asyncAfter(deadline: .now() + 1) {
101 | self.startMonitoring(closure)
| `- warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
102 | }
103 | }
/Users/admin/builder/spi-builder-workspace/Sources/WebberTools/DirectoryMonitor.swift:101:46: warning: capture of 'closure' with non-sendable type '(URL) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
99 | self.dispatchSource?.cancel()
100 | self.dispatchQueue.asyncAfter(deadline: .now() + 1) {
101 | self.startMonitoring(closure)
| |- warning: capture of 'closure' with non-sendable type '(URL) -> Void' 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'
102 | }
103 | }
/Users/admin/builder/spi-builder-workspace/Sources/WebberTools/FS.swift:10:13: warning: let '_fs' is not concurrency-safe because non-'Sendable' type 'FS' may have shared mutable state; this is an error in the Swift 6 language mode
8 | import Foundation
9 |
10 | private let _fs = FS()
| |- warning: let '_fs' is not concurrency-safe because non-'Sendable' type 'FS' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate '_fs' 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
11 | private var _networkCache: [URL: Data] = [:]
12 |
13 | public final class FS {
| `- note: class 'FS' does not conform to the 'Sendable' protocol
14 | private var monitors: [DirectoryMonitor] = []
15 |
/Users/admin/builder/spi-builder-workspace/Sources/WebberTools/FS.swift:11:13: warning: var '_networkCache' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
9 |
10 | private let _fs = FS()
11 | private var _networkCache: [URL: Data] = [:]
| |- warning: var '_networkCache' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert '_networkCache' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate '_networkCache' 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
12 |
13 | public final class FS {
/Users/admin/builder/spi-builder-workspace/Sources/WebberTools/Swift.swift:48:14: warning: associated value 'errors' of 'Sendable'-conforming enum 'SwiftError' has non-sendable type 'CompilationError'; this is an error in the Swift 6 language mode
46 | case text(String)
47 | case raw(String)
48 | case errors([CompilationError])
| `- warning: associated value 'errors' of 'Sendable'-conforming enum 'SwiftError' has non-sendable type 'CompilationError'; this is an error in the Swift 6 language mode
49 |
50 | public var description: String {
/Users/admin/builder/spi-builder-workspace/Sources/WebberTools/CompilationError.swift:10:14: note: class 'CompilationError' does not conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public class CompilationError {
| `- note: class 'CompilationError' does not conform to the 'Sendable' protocol
11 | public let file: URL
12 | public struct Place {
[80/81] Compiling WebberTools Bash.swift
[81/81] Compiling WebberTools Swift.swift
/Users/admin/builder/spi-builder-workspace/Sources/WebberTools/Swift.swift:48:14: warning: associated value 'errors' of 'Sendable'-conforming enum 'SwiftError' has non-sendable type 'CompilationError'; this is an error in the Swift 6 language mode
46 | case text(String)
47 | case raw(String)
48 | case errors([CompilationError])
| `- warning: associated value 'errors' of 'Sendable'-conforming enum 'SwiftError' has non-sendable type 'CompilationError'; this is an error in the Swift 6 language mode
49 |
50 | public var description: String {
/Users/admin/builder/spi-builder-workspace/Sources/WebberTools/CompilationError.swift:10:14: note: class 'CompilationError' does not conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public class CompilationError {
| `- note: class 'CompilationError' does not conform to the 'Sendable' protocol
11 | public let file: URL
12 | public struct Place {
/Users/admin/builder/spi-builder-workspace/Sources/WebberTools/Swift.swift:120:17: warning: mutation of captured var 'resultData' in concurrently-executing code; this is an error in the Swift 6 language mode
118 | group.leave()
119 | } else {
120 | resultData.append(data)
| `- warning: mutation of captured var 'resultData' in concurrently-executing code; this is an error in the Swift 6 language mode
121 | }
122 | }
Build complete! (23.63s)
Build complete.
{
"dependencies" : [
{
"identity" : "swift-crypto",
"requirement" : {
"range" : [
{
"lower_bound" : "1.0.0",
"upper_bound" : "3.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/apple/swift-crypto.git"
}
],
"manifest_display_name" : "webber-tools",
"name" : "webber-tools",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "macos",
"version" : "10.15"
}
],
"products" : [
{
"name" : "WebberTools",
"targets" : [
"WebberTools"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "WebberToolsTests",
"module_type" : "SwiftTarget",
"name" : "WebberToolsTests",
"path" : "Tests/WebberToolsTests",
"sources" : [
"WebberToolsTests.swift",
"XCTestManifests.swift"
],
"target_dependencies" : [
"WebberTools"
],
"type" : "test"
},
{
"c99name" : "WebberTools",
"module_type" : "SwiftTarget",
"name" : "WebberTools",
"path" : "Sources/WebberTools",
"product_dependencies" : [
"Crypto"
],
"product_memberships" : [
"WebberTools"
],
"sources" : [
"Bash.swift",
"CompilationError.swift",
"CompilationErrorsParser.swift",
"DirectoryMonitor.swift",
"FS.swift",
"Preview.swift",
"String+SHA.swift",
"Swift.swift",
"SwiftPackage.swift"
],
"type" : "library"
}
],
"tools_version" : "5.7"
}
Done.