Build Information
Successful build of Scout, reference 0.0.1 (b9d1b5
), with Swift 6.0 for macOS (SPM) on 31 Oct 2024 11:24:39 UTC.
Swift 6 data race errors: 3
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/bgerstle/scout.git
Reference: 0.0.1
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/bgerstle/scout
* tag 0.0.1 -> FETCH_HEAD
HEAD is now at b9d1b57 update TODO
Cloned https://github.com/bgerstle/scout.git
Revision (git rev-parse @):
b9d1b5724ea208044d37edb2d723c1fa072ab70c
SUCCESS checkout https://github.com/bgerstle/scout.git at 0.0.1
========================================
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": "scout",
"name": "Scout",
"url": "https://github.com/bgerstle/scout.git",
"version": "unspecified",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/scout",
"dependencies": [
]
}
]
}
Fetching https://github.com/bgerstle/scout.git
[1/730] Fetching scout
Fetched https://github.com/bgerstle/scout.git from cache (0.80s)
Creating working copy for https://github.com/bgerstle/scout.git
Working copy of https://github.com/bgerstle/scout.git resolved at 0.0.1 (b9d1b57)
warning: '.resolve-product-dependencies': dependency 'scout' 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/bgerstle/scout.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/12] Compiling Scout Mockable.swift
[4/12] Compiling Scout MockFailure.swift
[5/13] Compiling Scout ExpectVarDSL.swift
[6/13] Compiling Scout CallDSL.swift
[7/13] Compiling Scout Mock.swift
[8/13] Compiling Scout Expectation.swift
<unknown>:0: note: a function type must be marked '@Sendable' to conform to 'Sendable'
/Users/admin/builder/spi-builder-workspace/Sources/Scout/Expect/Expectation.swift:23:5: warning: let 'returnValue' is not concurrency-safe because non-'Sendable' type '(Any?, UInt) -> any Expectation' may have shared mutable state; this is an error in the Swift 6 language mode
21 |
22 | // Alias for `return` if people don't want to use backticks.
23 | let returnValue = `return`
| |- warning: let 'returnValue' is not concurrency-safe because non-'Sendable' type '(Any?, UInt) -> any Expectation' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'returnValue' 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
24 |
25 | /// Return the same value every time.
/Users/admin/builder/spi-builder-workspace/Sources/Scout/Expect/Expectation.swift:48:30: warning: using 'class' keyword to define a class-constrained protocol is deprecated; use 'AnyObject' instead
46 |
47 | // Interface for all expectations of a mock.
48 | public protocol Expectation: class {
| `- warning: using 'class' keyword to define a class-constrained protocol is deprecated; use 'AnyObject' instead
49 | func hasNext() -> Bool
50 | func nextValue() -> Any?
[9/13] Compiling Scout ExpectFuncDSL.swift
<unknown>:0: note: a function type must be marked '@Sendable' to conform to 'Sendable'
/Users/admin/builder/spi-builder-workspace/Sources/Scout/Expect/ExpectFuncDSL.swift:128:5: warning: let 'throwError' is not concurrency-safe because non-'Sendable' type '(@autoclosure @escaping () -> any Error) -> FuncExpectationBlock' (aka '(@autoclosure @escaping () -> any Error) -> (KeyValuePairs<String, Optional<Any>>) throws -> Optional<Any>') may have shared mutable state; this is an error in the Swift 6 language mode
126 |
127 | // Alias in case backticks aren't desired.
128 | let throwError = `throw`
| |- warning: let 'throwError' is not concurrency-safe because non-'Sendable' type '(@autoclosure @escaping () -> any Error) -> FuncExpectationBlock' (aka '(@autoclosure @escaping () -> any Error) -> (KeyValuePairs<String, Optional<Any>>) throws -> Optional<Any>') may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'throwError' 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
129 |
130 | protocol MockFuncContext {
[10/13] Compiling Scout ArgMatcher.swift
/Users/admin/builder/spi-builder-workspace/Sources/Scout/Expect/ArgMatcher.swift:15:5: warning: let 'nil' is not concurrency-safe because non-'Sendable' type 'NilMatcher' may have shared mutable state; this is an error in the Swift 6 language mode
13 | }
14 |
15 | let `nil` = NilMatcher()
| |- warning: let 'nil' is not concurrency-safe because non-'Sendable' type 'NilMatcher' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'nil' 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
16 |
17 | class NilMatcher : ArgMatcher {
| `- note: class 'NilMatcher' does not conform to the 'Sendable' protocol
18 | public func matches(arg: Any?) -> Bool {
19 | return arg == nil
[11/13] Emitting module Scout
/Users/admin/builder/spi-builder-workspace/Sources/Scout/Expect/ArgMatcher.swift:15:5: warning: let 'nil' is not concurrency-safe because non-'Sendable' type 'NilMatcher' may have shared mutable state; this is an error in the Swift 6 language mode
13 | }
14 |
15 | let `nil` = NilMatcher()
| |- warning: let 'nil' is not concurrency-safe because non-'Sendable' type 'NilMatcher' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'nil' 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
16 |
17 | class NilMatcher : ArgMatcher {
| `- note: class 'NilMatcher' does not conform to the 'Sendable' protocol
18 | public func matches(arg: Any?) -> Bool {
19 | return arg == nil
<unknown>:0: note: a function type must be marked '@Sendable' to conform to 'Sendable'
/Users/admin/builder/spi-builder-workspace/Sources/Scout/Expect/ExpectFuncDSL.swift:128:5: warning: let 'throwError' is not concurrency-safe because non-'Sendable' type '(@autoclosure @escaping () -> any Error) -> FuncExpectationBlock' (aka '(@autoclosure @escaping () -> any Error) -> (KeyValuePairs<String, Optional<Any>>) throws -> Optional<Any>') may have shared mutable state; this is an error in the Swift 6 language mode
126 |
127 | // Alias in case backticks aren't desired.
128 | let throwError = `throw`
| |- warning: let 'throwError' is not concurrency-safe because non-'Sendable' type '(@autoclosure @escaping () -> any Error) -> FuncExpectationBlock' (aka '(@autoclosure @escaping () -> any Error) -> (KeyValuePairs<String, Optional<Any>>) throws -> Optional<Any>') may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'throwError' 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
129 |
130 | protocol MockFuncContext {
<unknown>:0: note: a function type must be marked '@Sendable' to conform to 'Sendable'
/Users/admin/builder/spi-builder-workspace/Sources/Scout/Expect/Expectation.swift:23:5: warning: let 'returnValue' is not concurrency-safe because non-'Sendable' type '(Any?, UInt) -> any Expectation' may have shared mutable state; this is an error in the Swift 6 language mode
21 |
22 | // Alias for `return` if people don't want to use backticks.
23 | let returnValue = `return`
| |- warning: let 'returnValue' is not concurrency-safe because non-'Sendable' type '(Any?, UInt) -> any Expectation' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'returnValue' 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
24 |
25 | /// Return the same value every time.
/Users/admin/builder/spi-builder-workspace/Sources/Scout/Expect/Expectation.swift:48:30: warning: using 'class' keyword to define a class-constrained protocol is deprecated; use 'AnyObject' instead
46 |
47 | // Interface for all expectations of a mock.
48 | public protocol Expectation: class {
| `- warning: using 'class' keyword to define a class-constrained protocol is deprecated; use 'AnyObject' instead
49 | func hasNext() -> Bool
50 | func nextValue() -> Any?
[12/13] Compiling Scout ExpectDSL.swift
[13/13] Compiling Scout VarDSL.swift
Build complete! (20.95s)
Build complete.
{
"dependencies" : [
],
"manifest_display_name" : "Scout",
"name" : "Scout",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
],
"products" : [
{
"name" : "Scout",
"targets" : [
"Scout"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "ScoutTests",
"module_type" : "SwiftTarget",
"name" : "ScoutTests",
"path" : "Tests/ScoutTests",
"sources" : [
"Func/ArgMatcherTests.swift",
"Func/ExpectFuncTests.swift",
"Helpers/MockExample.swift",
"Helpers/ScoutTestCase.swift",
"Mock/MockAssertionTests.swift",
"Var/ExpectVarTests.swift",
"XCTestManifests.swift"
],
"target_dependencies" : [
"Scout"
],
"type" : "test"
},
{
"c99name" : "Scout",
"module_type" : "SwiftTarget",
"name" : "Scout",
"path" : "Sources/Scout",
"product_memberships" : [
"Scout"
],
"sources" : [
"Expect/ArgMatcher.swift",
"Expect/ExpectDSL.swift",
"Expect/ExpectFuncDSL.swift",
"Expect/ExpectVarDSL.swift",
"Expect/Expectation.swift",
"Mock/CallDSL.swift",
"Mock/Mock.swift",
"Mock/MockFailure.swift",
"Mock/Mockable.swift",
"Mock/VarDSL.swift"
],
"type" : "library"
}
],
"tools_version" : "5.0"
}
Done.