Build Information
Failed to build sMock, reference 1.2.0 (831a80
), with Swift 6.1 for Wasm on 28 May 2025 14:52:56 UTC.
Build Command
bash -c docker run --pull=always --rm -v "checkouts-4606859-3":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:wasm-6.1-latest swift build --swift-sdk wasm32-unknown-wasi 2>&1
Build Log
========================================
RunAll
========================================
Builder version: 4.63.1
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/Alkenso/sMock.git
Reference: 1.2.0
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/Alkenso/sMock
* tag 1.2.0 -> FETCH_HEAD
HEAD is now at 831a80a Merge branch 'refactoring'
Cloned https://github.com/Alkenso/sMock.git
Revision (git rev-parse @):
831a80a4cef948c0b0a4bbaf812f7b6f4b101ba1
SUCCESS checkout https://github.com/Alkenso/sMock.git at 1.2.0
========================================
Build
========================================
Selected platform: wasm
Swift version: 6.1
Building package at path: $PWD
https://github.com/Alkenso/sMock.git
https://github.com/Alkenso/sMock.git
WARNING: environment variable SUPPRESS_SWIFT_6_FLAGS is not set
{
"dependencies" : [
],
"manifest_display_name" : "sMock",
"name" : "sMock",
"path" : "/host/spi-builder-workspace",
"platforms" : [
],
"products" : [
{
"name" : "sMock",
"targets" : [
"sMock"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "sMockTests",
"module_type" : "SwiftTarget",
"name" : "sMockTests",
"path" : "Sources/sMockTests",
"sources" : [
"ClosureTests.swift",
"MatcherTests.swift"
],
"target_dependencies" : [
"sMock"
],
"type" : "test"
},
{
"c99name" : "sMock",
"module_type" : "SwiftTarget",
"name" : "sMock",
"path" : "Sources/sMock",
"product_memberships" : [
"sMock"
],
"sources" : [
"Matcher.swift",
"MockClosure.swift",
"MockMethod.swift",
"_MockFunctionBase.swift",
"sMock.swift"
],
"type" : "library"
}
],
"tools_version" : "5.1"
}
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4606859-3":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:wasm-6.1-latest swift build --swift-sdk wasm32-unknown-wasi -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 2>&1
wasm-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:7e37457820e5f17452a98118754f345f2619722c485f2db0d8b666940a83afd2
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:wasm-6.1-latest
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version-24593BA9C3E375BF.txt
[3/8] Compiling sMock sMock.swift
/host/spi-builder-workspace/Sources/sMock/sMock.swift:45:23: warning: static property 'unexpectedCallBehavior' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
43 | /// By default, in such cases sMock will trigger XCTFail.
44 | /// Change this handler in 'setUp' method either on each test case or in the very beginning of the individual test.
45 | public static var unexpectedCallBehavior: UnexpectedCallBehavior = .failTest
| |- warning: static property 'unexpectedCallBehavior' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'unexpectedCallBehavior' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'unexpectedCallBehavior' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
46 |
47 | /// Timeout used when calling `waitForExpectations() -> Bool` method.
/host/spi-builder-workspace/Sources/sMock/sMock.swift:49:23: warning: static property 'waitTimeout' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
47 | /// Timeout used when calling `waitForExpectations() -> Bool` method.
48 | /// Change this value in 'setUp' method either on each test case or in the very beginning of the individual test.
49 | public static var waitTimeout: TimeInterval = 0.5
| |- warning: static property 'waitTimeout' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'waitTimeout' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'waitTimeout' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
50 |
51 | /// Wait for currently registered sMock expectations.
/host/spi-builder-workspace/Sources/sMock/sMock.swift:59:165: error: cannot find type 'XCTWaiter' in scope
57 |
58 | /// Wait for currently registered sMock expectations. Extended version.
59 | public static func waitForExpectations(timeout seconds: TimeInterval, enforceOrder enforceOrderOfFulfillment: Bool, file: String = #file, line: Int = #line) -> XCTWaiter.Result {
| `- error: cannot find type 'XCTWaiter' in scope
60 | let delegate = FailureReporter(file: file, line: line, timeout: seconds)
61 | let waiter = XCTWaiter(delegate: delegate)
/host/spi-builder-workspace/Sources/sMock/sMock.swift:68:50: error: cannot find type 'XCTestExpectation' in scope
66 |
67 | /// Extracts all current sMock expectations, transferring them to the caller.
68 | public static func extractExpectations() -> [XCTestExpectation] {
| `- error: cannot find type 'XCTestExpectation' in scope
69 | expectationsSyncQueue.sync {
70 | let currentExpectations = expectations
/host/spi-builder-workspace/Sources/sMock/sMock.swift:80:23: warning: static property 'explicitCurrentTestCase' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
78 | /// Set this variable before using any mock objects.
79 | /// Usually set it in 'setUp' method of concrete XCTestCase, assigning 'self' to it.
80 | public static var explicitCurrentTestCase: XCTestCase? = nil
| |- warning: static property 'explicitCurrentTestCase' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'explicitCurrentTestCase' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'explicitCurrentTestCase' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
81 | }
82 |
/host/spi-builder-workspace/Sources/sMock/sMock.swift:84:58: error: cannot find type 'XCTestExpectation' in scope
82 |
83 | extension sMock {
84 | static func expectation(description: String = "") -> XCTestExpectation {
| `- error: cannot find type 'XCTestExpectation' in scope
85 | expectationsSyncQueue.sync {
86 | let exp = XCTestExpectation(description: description)
/host/spi-builder-workspace/Sources/sMock/sMock.swift:93:48: error: cannot find 'DispatchQueue' in scope
91 | }
92 |
93 | private static let expectationsSyncQueue = DispatchQueue(label: "sMock.expectationsSyncQueue")
| `- error: cannot find 'DispatchQueue' in scope
94 | private static var expectations: [XCTestExpectation] = []
95 | }
/host/spi-builder-workspace/Sources/sMock/sMock.swift:94:39: error: cannot find type 'XCTestExpectation' in scope
92 |
93 | private static let expectationsSyncQueue = DispatchQueue(label: "sMock.expectationsSyncQueue")
94 | private static var expectations: [XCTestExpectation] = []
| `- error: cannot find type 'XCTestExpectation' in scope
95 | }
96 |
/host/spi-builder-workspace/Sources/sMock/sMock.swift:94:24: warning: static property 'expectations' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
92 |
93 | private static let expectationsSyncQueue = DispatchQueue(label: "sMock.expectationsSyncQueue")
94 | private static var expectations: [XCTestExpectation] = []
| |- warning: static property 'expectations' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'expectations' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'expectations' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
95 | }
96 |
/host/spi-builder-workspace/Sources/sMock/sMock.swift:112:16: warning: static property 'defaultUnexpectedCallBehavior' is not concurrency-safe because non-'Sendable' type 'sMock.UnexpectedCallBehavior' may have shared mutable state; this is an error in the Swift 6 language mode
29 | /// sMock configuration.
30 | extension sMock {
31 | public enum UnexpectedCallBehavior {
| `- note: consider making enum 'UnexpectedCallBehavior' conform to the 'Sendable' protocol
32 | /// Only warns (print) about unexpected call of mocked entities.
33 | case warning
:
110 |
111 | private extension sMock {
112 | static let defaultUnexpectedCallBehavior: UnexpectedCallBehavior = .failTest
| |- warning: static property 'defaultUnexpectedCallBehavior' is not concurrency-safe because non-'Sendable' type 'sMock.UnexpectedCallBehavior' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'defaultUnexpectedCallBehavior' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
113 | static var defaultWaitTimeout: TimeInterval = 0.5
114 | }
/host/spi-builder-workspace/Sources/sMock/sMock.swift:113:16: warning: static property 'defaultWaitTimeout' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
111 | private extension sMock {
112 | static let defaultUnexpectedCallBehavior: UnexpectedCallBehavior = .failTest
113 | static var defaultWaitTimeout: TimeInterval = 0.5
| |- warning: static property 'defaultWaitTimeout' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'defaultWaitTimeout' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'defaultWaitTimeout' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
114 | }
115 |
/host/spi-builder-workspace/Sources/sMock/sMock.swift:119:16: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'MocksSupport' may have shared mutable state; this is an error in the Swift 6 language mode
116 | // MARK: - MocksSupport
117 |
118 | class MocksSupport {
| `- note: class 'MocksSupport' does not conform to the 'Sendable' protocol
119 | static let shared = MocksSupport()
| |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'MocksSupport' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
120 |
121 | var currentTestCase: XCTestCase {
/host/spi-builder-workspace/Sources/sMock/sMock.swift:192:38: error: cannot find type 'XCTWaiterDelegate' in scope
190 |
191 | private extension sMock {
192 | class FailureReporter: NSObject, XCTWaiterDelegate {
| `- error: cannot find type 'XCTWaiterDelegate' in scope
193 | private let _file: String
194 | private let _line: Int
/host/spi-builder-workspace/Sources/sMock/sMock.swift:203:31: error: cannot find type 'XCTWaiter' in scope
201 | }
202 |
203 | func waiter(_ waiter: XCTWaiter, didTimeoutWithUnfulfilledExpectations unfulfilledExpectations: [XCTestExpectation]) {
| `- error: cannot find type 'XCTWaiter' in scope
204 | let expectationsDescription = unfulfilledExpectations.map { "\"\($0.expectationDescription)\"" }.joined(separator: ", ")
205 | reportFailure("Asynchronous wait failed: Exceeded timeout of \(_timeout) seconds, with unfulfilled expectations: \(expectationsDescription).")
/host/spi-builder-workspace/Sources/sMock/sMock.swift:203:106: error: cannot find type 'XCTestExpectation' in scope
201 | }
202 |
203 | func waiter(_ waiter: XCTWaiter, didTimeoutWithUnfulfilledExpectations unfulfilledExpectations: [XCTestExpectation]) {
| `- error: cannot find type 'XCTestExpectation' in scope
204 | let expectationsDescription = unfulfilledExpectations.map { "\"\($0.expectationDescription)\"" }.joined(separator: ", ")
205 | reportFailure("Asynchronous wait failed: Exceeded timeout of \(_timeout) seconds, with unfulfilled expectations: \(expectationsDescription).")
/host/spi-builder-workspace/Sources/sMock/sMock.swift:208:31: error: cannot find type 'XCTWaiter' in scope
206 | }
207 |
208 | func waiter(_ waiter: XCTWaiter, fulfillmentDidViolateOrderingConstraintsFor expectation: XCTestExpectation, requiredExpectation: XCTestExpectation) {
| `- error: cannot find type 'XCTWaiter' in scope
209 | reportFailure("Failed due to expectation fulfilled in incorrect order: requires \"\(requiredExpectation.expectationDescription)\", actually fulfilled \"\(expectation.expectationDescription)\".")
210 | }
/host/spi-builder-workspace/Sources/sMock/sMock.swift:208:99: error: cannot find type 'XCTestExpectation' in scope
206 | }
207 |
208 | func waiter(_ waiter: XCTWaiter, fulfillmentDidViolateOrderingConstraintsFor expectation: XCTestExpectation, requiredExpectation: XCTestExpectation) {
| `- error: cannot find type 'XCTestExpectation' in scope
209 | reportFailure("Failed due to expectation fulfilled in incorrect order: requires \"\(requiredExpectation.expectationDescription)\", actually fulfilled \"\(expectation.expectationDescription)\".")
210 | }
/host/spi-builder-workspace/Sources/sMock/sMock.swift:208:139: error: cannot find type 'XCTestExpectation' in scope
206 | }
207 |
208 | func waiter(_ waiter: XCTWaiter, fulfillmentDidViolateOrderingConstraintsFor expectation: XCTestExpectation, requiredExpectation: XCTestExpectation) {
| `- error: cannot find type 'XCTestExpectation' in scope
209 | reportFailure("Failed due to expectation fulfilled in incorrect order: requires \"\(requiredExpectation.expectationDescription)\", actually fulfilled \"\(expectation.expectationDescription)\".")
210 | }
/host/spi-builder-workspace/Sources/sMock/sMock.swift:212:31: error: cannot find type 'XCTWaiter' in scope
210 | }
211 |
212 | func waiter(_ waiter: XCTWaiter, didFulfillInvertedExpectation expectation: XCTestExpectation) {
| `- error: cannot find type 'XCTWaiter' in scope
213 | reportFailure("Fulfilled inverted expectation \"\(expectation.expectationDescription)\".")
214 | }
/host/spi-builder-workspace/Sources/sMock/sMock.swift:212:85: error: cannot find type 'XCTestExpectation' in scope
210 | }
211 |
212 | func waiter(_ waiter: XCTWaiter, didFulfillInvertedExpectation expectation: XCTestExpectation) {
| `- error: cannot find type 'XCTestExpectation' in scope
213 | reportFailure("Fulfilled inverted expectation \"\(expectation.expectationDescription)\".")
214 | }
/host/spi-builder-workspace/Sources/sMock/sMock.swift:216:37: error: cannot find type 'XCTWaiter' in scope
214 | }
215 |
216 | func nestedWaiter(_ waiter: XCTWaiter, wasInterruptedByTimedOutWaiter outerWaiter: XCTWaiter) {
| `- error: cannot find type 'XCTWaiter' in scope
217 | reportFailure("Asynchronous waiter \(waiter) failed: interrupted by timeout of containing waiter \(outerWaiter).");
218 | }
/host/spi-builder-workspace/Sources/sMock/sMock.swift:216:92: error: cannot find type 'XCTWaiter' in scope
214 | }
215 |
216 | func nestedWaiter(_ waiter: XCTWaiter, wasInterruptedByTimedOutWaiter outerWaiter: XCTWaiter) {
| `- error: cannot find type 'XCTWaiter' in scope
217 | reportFailure("Asynchronous waiter \(waiter) failed: interrupted by timeout of containing waiter \(outerWaiter).");
218 | }
/host/spi-builder-workspace/Sources/sMock/sMock.swift:55:28: error: extra arguments at positions #1, #2 in call
52 | /// - returns: Boolean indicating if all expectations has been waited.
53 | @discardableResult
54 | public static func waitForExpectations(file: String = #file, line: Int = #line) -> Bool {
| `- note: 'waitForExpectations(file:line:)' declared here
55 | waitForExpectations(timeout: waitTimeout, enforceOrder: false, file: file, line: line) == .completed
| `- error: extra arguments at positions #1, #2 in call
56 | }
57 |
/host/spi-builder-workspace/Sources/sMock/sMock.swift:55:100: error: type 'Bool' has no member 'completed'
53 | @discardableResult
54 | public static func waitForExpectations(file: String = #file, line: Int = #line) -> Bool {
55 | waitForExpectations(timeout: waitTimeout, enforceOrder: false, file: file, line: line) == .completed
| `- error: type 'Bool' has no member 'completed'
56 | }
57 |
/host/spi-builder-workspace/Sources/sMock/sMock.swift:61:22: error: cannot find 'XCTWaiter' in scope
59 | public static func waitForExpectations(timeout seconds: TimeInterval, enforceOrder enforceOrderOfFulfillment: Bool, file: String = #file, line: Int = #line) -> XCTWaiter.Result {
60 | let delegate = FailureReporter(file: file, line: line, timeout: seconds)
61 | let waiter = XCTWaiter(delegate: delegate)
| `- error: cannot find 'XCTWaiter' in scope
62 | let waitResult = waiter.wait(for: extractExpectations(), timeout: seconds, enforceOrder: enforceOrderOfFulfillment)
63 |
/host/spi-builder-workspace/Sources/sMock/sMock.swift:170:12: error: cannot find 'Thread' in scope
168 | private enum Utils {
169 | static func syncOnMainNonblock<T>(execute work: () throws -> T) rethrows -> T {
170 | if Thread.isMainThread {
| `- error: cannot find 'Thread' in scope
171 | return try work()
172 | } else {
/host/spi-builder-workspace/Sources/sMock/sMock.swift:173:24: error: cannot find 'DispatchQueue' in scope
171 | return try work()
172 | } else {
173 | return try DispatchQueue.main.sync(execute: work)
| `- error: cannot find 'DispatchQueue' in scope
174 | }
175 | }
/host/spi-builder-workspace/Sources/sMock/sMock.swift:179:75: error: cannot find 'NSSelectorFromString' in scope
177 | static func extractCurrentTestCase() -> XCTestCase? {
178 | guard let cl: AnyClass = NSClassFromString("XCTestMisuseObserver"),
179 | let builtInObservers = XCTestObservationCenter.shared.perform(NSSelectorFromString("observers")),
| `- error: cannot find 'NSSelectorFromString' in scope
180 | let builtInObserverArray = builtInObservers.takeUnretainedValue() as? [NSObject],
181 | let misuseObserver = builtInObserverArray.first(where: { $0.isKind(of: cl) }),
/host/spi-builder-workspace/Sources/sMock/sMock.swift:179:67: error: value of type 'XCTestObservationCenter' has no member 'perform'
177 | static func extractCurrentTestCase() -> XCTestCase? {
178 | guard let cl: AnyClass = NSClassFromString("XCTestMisuseObserver"),
179 | let builtInObservers = XCTestObservationCenter.shared.perform(NSSelectorFromString("observers")),
| `- error: value of type 'XCTestObservationCenter' has no member 'perform'
180 | let builtInObserverArray = builtInObservers.takeUnretainedValue() as? [NSObject],
181 | let misuseObserver = builtInObserverArray.first(where: { $0.isKind(of: cl) }),
/host/spi-builder-workspace/Sources/sMock/sMock.swift:182:57: error: cannot find 'NSSelectorFromString' in scope
180 | let builtInObserverArray = builtInObservers.takeUnretainedValue() as? [NSObject],
181 | let misuseObserver = builtInObserverArray.first(where: { $0.isKind(of: cl) }),
182 | let currentCaseAny = misuseObserver.perform(NSSelectorFromString("currentTestCase")),
| `- error: cannot find 'NSSelectorFromString' in scope
183 | let currentCase = currentCaseAny.takeUnretainedValue() as? XCTestCase else {
184 | return nil
/host/spi-builder-workspace/Sources/sMock/sMock.swift:221:28: error: cannot find 'XCTSourceCodeLocation' in scope
219 |
220 | private func reportFailure(_ description: String) {
221 | let location = XCTSourceCodeLocation(filePath: _file, lineNumber: _line)
| `- error: cannot find 'XCTSourceCodeLocation' in scope
222 | let context = XCTSourceCodeContext(location: location)
223 | let issue = XCTIssue(type: .assertionFailure, compactDescription: description, detailedDescription: nil, sourceCodeContext: context, associatedError: nil, attachments: [])
/host/spi-builder-workspace/Sources/sMock/sMock.swift:222:27: error: cannot find 'XCTSourceCodeContext' in scope
220 | private func reportFailure(_ description: String) {
221 | let location = XCTSourceCodeLocation(filePath: _file, lineNumber: _line)
222 | let context = XCTSourceCodeContext(location: location)
| `- error: cannot find 'XCTSourceCodeContext' in scope
223 | let issue = XCTIssue(type: .assertionFailure, compactDescription: description, detailedDescription: nil, sourceCodeContext: context, associatedError: nil, attachments: [])
224 | MocksSupport.shared.currentTestCase.record(issue)
/host/spi-builder-workspace/Sources/sMock/sMock.swift:223:25: error: cannot find 'XCTIssue' in scope
221 | let location = XCTSourceCodeLocation(filePath: _file, lineNumber: _line)
222 | let context = XCTSourceCodeContext(location: location)
223 | let issue = XCTIssue(type: .assertionFailure, compactDescription: description, detailedDescription: nil, sourceCodeContext: context, associatedError: nil, attachments: [])
| `- error: cannot find 'XCTIssue' in scope
224 | MocksSupport.shared.currentTestCase.record(issue)
225 | }
/host/spi-builder-workspace/Sources/sMock/sMock.swift:223:41: error: cannot infer contextual base in reference to member 'assertionFailure'
221 | let location = XCTSourceCodeLocation(filePath: _file, lineNumber: _line)
222 | let context = XCTSourceCodeContext(location: location)
223 | let issue = XCTIssue(type: .assertionFailure, compactDescription: description, detailedDescription: nil, sourceCodeContext: context, associatedError: nil, attachments: [])
| `- error: cannot infer contextual base in reference to member 'assertionFailure'
224 | MocksSupport.shared.currentTestCase.record(issue)
225 | }
/host/spi-builder-workspace/Sources/sMock/sMock.swift:223:113: error: 'nil' requires a contextual type
221 | let location = XCTSourceCodeLocation(filePath: _file, lineNumber: _line)
222 | let context = XCTSourceCodeContext(location: location)
223 | let issue = XCTIssue(type: .assertionFailure, compactDescription: description, detailedDescription: nil, sourceCodeContext: context, associatedError: nil, attachments: [])
| `- error: 'nil' requires a contextual type
224 | MocksSupport.shared.currentTestCase.record(issue)
225 | }
/host/spi-builder-workspace/Sources/sMock/sMock.swift:223:163: error: 'nil' requires a contextual type
221 | let location = XCTSourceCodeLocation(filePath: _file, lineNumber: _line)
222 | let context = XCTSourceCodeContext(location: location)
223 | let issue = XCTIssue(type: .assertionFailure, compactDescription: description, detailedDescription: nil, sourceCodeContext: context, associatedError: nil, attachments: [])
| `- error: 'nil' requires a contextual type
224 | MocksSupport.shared.currentTestCase.record(issue)
225 | }
/host/spi-builder-workspace/Sources/sMock/sMock.swift:224:49: error: value of type 'XCTestCase' has no member 'record'
222 | let context = XCTSourceCodeContext(location: location)
223 | let issue = XCTIssue(type: .assertionFailure, compactDescription: description, detailedDescription: nil, sourceCodeContext: context, associatedError: nil, attachments: [])
224 | MocksSupport.shared.currentTestCase.record(issue)
| `- error: value of type 'XCTestCase' has no member 'record'
225 | }
226 | }
error: emit-module command failed with exit code 1 (use -v to see invocation)
[4/8] Emitting module sMock
/host/spi-builder-workspace/Sources/sMock/_MockFunctionBase.swift:101:33: error: cannot find type 'XCTestExpectation' in scope
99 | class ArmedExpectation<Args, R> {
100 | private let expectation: Expectation<Args, R>
101 | private let xctExpectation: XCTestExpectation?
| `- error: cannot find type 'XCTestExpectation' in scope
102 | private let queue = DispatchQueue(label: "ArmedExpectation.queue")
103 | private var count: Int = 0
/host/spi-builder-workspace/Sources/sMock/_MockFunctionBase.swift:102:25: error: cannot find 'DispatchQueue' in scope
100 | private let expectation: Expectation<Args, R>
101 | private let xctExpectation: XCTestExpectation?
102 | private let queue = DispatchQueue(label: "ArmedExpectation.queue")
| `- error: cannot find 'DispatchQueue' in scope
103 | private var count: Int = 0
104 |
/host/spi-builder-workspace/Sources/sMock/_MockFunctionBase.swift:227:46: error: cannot find type 'XCTestExpectation' in scope
225 |
226 | private extension ExpectTimes {
227 | func expectation(description: String) -> XCTestExpectation? {
| `- error: cannot find type 'XCTestExpectation' in scope
228 | switch self {
229 | case .unlimited:
/host/spi-builder-workspace/Sources/sMock/_MockFunctionBase.swift:275:25: error: cannot find 'DispatchQueue' in scope
273 |
274 | public class ArgumentCaptor<Args> {
275 | private var queue = DispatchQueue(label: "ArgumentCaptor")
| `- error: cannot find 'DispatchQueue' in scope
276 | private var capturedArgs: [Args] = []
277 |
/host/spi-builder-workspace/Sources/sMock/sMock.swift:45:23: warning: static property 'unexpectedCallBehavior' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
43 | /// By default, in such cases sMock will trigger XCTFail.
44 | /// Change this handler in 'setUp' method either on each test case or in the very beginning of the individual test.
45 | public static var unexpectedCallBehavior: UnexpectedCallBehavior = .failTest
| |- warning: static property 'unexpectedCallBehavior' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'unexpectedCallBehavior' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'unexpectedCallBehavior' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
46 |
47 | /// Timeout used when calling `waitForExpectations() -> Bool` method.
/host/spi-builder-workspace/Sources/sMock/sMock.swift:49:23: warning: static property 'waitTimeout' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
47 | /// Timeout used when calling `waitForExpectations() -> Bool` method.
48 | /// Change this value in 'setUp' method either on each test case or in the very beginning of the individual test.
49 | public static var waitTimeout: TimeInterval = 0.5
| |- warning: static property 'waitTimeout' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'waitTimeout' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'waitTimeout' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
50 |
51 | /// Wait for currently registered sMock expectations.
/host/spi-builder-workspace/Sources/sMock/sMock.swift:59:165: error: cannot find type 'XCTWaiter' in scope
57 |
58 | /// Wait for currently registered sMock expectations. Extended version.
59 | public static func waitForExpectations(timeout seconds: TimeInterval, enforceOrder enforceOrderOfFulfillment: Bool, file: String = #file, line: Int = #line) -> XCTWaiter.Result {
| `- error: cannot find type 'XCTWaiter' in scope
60 | let delegate = FailureReporter(file: file, line: line, timeout: seconds)
61 | let waiter = XCTWaiter(delegate: delegate)
/host/spi-builder-workspace/Sources/sMock/sMock.swift:68:50: error: cannot find type 'XCTestExpectation' in scope
66 |
67 | /// Extracts all current sMock expectations, transferring them to the caller.
68 | public static func extractExpectations() -> [XCTestExpectation] {
| `- error: cannot find type 'XCTestExpectation' in scope
69 | expectationsSyncQueue.sync {
70 | let currentExpectations = expectations
/host/spi-builder-workspace/Sources/sMock/sMock.swift:80:23: warning: static property 'explicitCurrentTestCase' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
78 | /// Set this variable before using any mock objects.
79 | /// Usually set it in 'setUp' method of concrete XCTestCase, assigning 'self' to it.
80 | public static var explicitCurrentTestCase: XCTestCase? = nil
| |- warning: static property 'explicitCurrentTestCase' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'explicitCurrentTestCase' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'explicitCurrentTestCase' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
81 | }
82 |
/host/spi-builder-workspace/Sources/sMock/sMock.swift:84:58: error: cannot find type 'XCTestExpectation' in scope
82 |
83 | extension sMock {
84 | static func expectation(description: String = "") -> XCTestExpectation {
| `- error: cannot find type 'XCTestExpectation' in scope
85 | expectationsSyncQueue.sync {
86 | let exp = XCTestExpectation(description: description)
/host/spi-builder-workspace/Sources/sMock/sMock.swift:93:48: error: cannot find 'DispatchQueue' in scope
91 | }
92 |
93 | private static let expectationsSyncQueue = DispatchQueue(label: "sMock.expectationsSyncQueue")
| `- error: cannot find 'DispatchQueue' in scope
94 | private static var expectations: [XCTestExpectation] = []
95 | }
/host/spi-builder-workspace/Sources/sMock/sMock.swift:94:39: error: cannot find type 'XCTestExpectation' in scope
92 |
93 | private static let expectationsSyncQueue = DispatchQueue(label: "sMock.expectationsSyncQueue")
94 | private static var expectations: [XCTestExpectation] = []
| `- error: cannot find type 'XCTestExpectation' in scope
95 | }
96 |
/host/spi-builder-workspace/Sources/sMock/sMock.swift:94:24: warning: static property 'expectations' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
92 |
93 | private static let expectationsSyncQueue = DispatchQueue(label: "sMock.expectationsSyncQueue")
94 | private static var expectations: [XCTestExpectation] = []
| |- warning: static property 'expectations' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'expectations' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'expectations' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
95 | }
96 |
/host/spi-builder-workspace/Sources/sMock/sMock.swift:112:16: warning: static property 'defaultUnexpectedCallBehavior' is not concurrency-safe because non-'Sendable' type 'sMock.UnexpectedCallBehavior' may have shared mutable state; this is an error in the Swift 6 language mode
29 | /// sMock configuration.
30 | extension sMock {
31 | public enum UnexpectedCallBehavior {
| `- note: consider making enum 'UnexpectedCallBehavior' conform to the 'Sendable' protocol
32 | /// Only warns (print) about unexpected call of mocked entities.
33 | case warning
:
110 |
111 | private extension sMock {
112 | static let defaultUnexpectedCallBehavior: UnexpectedCallBehavior = .failTest
| |- warning: static property 'defaultUnexpectedCallBehavior' is not concurrency-safe because non-'Sendable' type 'sMock.UnexpectedCallBehavior' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'defaultUnexpectedCallBehavior' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
113 | static var defaultWaitTimeout: TimeInterval = 0.5
114 | }
/host/spi-builder-workspace/Sources/sMock/sMock.swift:113:16: warning: static property 'defaultWaitTimeout' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
111 | private extension sMock {
112 | static let defaultUnexpectedCallBehavior: UnexpectedCallBehavior = .failTest
113 | static var defaultWaitTimeout: TimeInterval = 0.5
| |- warning: static property 'defaultWaitTimeout' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'defaultWaitTimeout' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'defaultWaitTimeout' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
114 | }
115 |
/host/spi-builder-workspace/Sources/sMock/sMock.swift:119:16: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'MocksSupport' may have shared mutable state; this is an error in the Swift 6 language mode
116 | // MARK: - MocksSupport
117 |
118 | class MocksSupport {
| `- note: class 'MocksSupport' does not conform to the 'Sendable' protocol
119 | static let shared = MocksSupport()
| |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'MocksSupport' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
120 |
121 | var currentTestCase: XCTestCase {
/host/spi-builder-workspace/Sources/sMock/sMock.swift:192:38: error: cannot find type 'XCTWaiterDelegate' in scope
190 |
191 | private extension sMock {
192 | class FailureReporter: NSObject, XCTWaiterDelegate {
| `- error: cannot find type 'XCTWaiterDelegate' in scope
193 | private let _file: String
194 | private let _line: Int
/host/spi-builder-workspace/Sources/sMock/sMock.swift:203:31: error: cannot find type 'XCTWaiter' in scope
201 | }
202 |
203 | func waiter(_ waiter: XCTWaiter, didTimeoutWithUnfulfilledExpectations unfulfilledExpectations: [XCTestExpectation]) {
| `- error: cannot find type 'XCTWaiter' in scope
204 | let expectationsDescription = unfulfilledExpectations.map { "\"\($0.expectationDescription)\"" }.joined(separator: ", ")
205 | reportFailure("Asynchronous wait failed: Exceeded timeout of \(_timeout) seconds, with unfulfilled expectations: \(expectationsDescription).")
/host/spi-builder-workspace/Sources/sMock/sMock.swift:203:106: error: cannot find type 'XCTestExpectation' in scope
201 | }
202 |
203 | func waiter(_ waiter: XCTWaiter, didTimeoutWithUnfulfilledExpectations unfulfilledExpectations: [XCTestExpectation]) {
| `- error: cannot find type 'XCTestExpectation' in scope
204 | let expectationsDescription = unfulfilledExpectations.map { "\"\($0.expectationDescription)\"" }.joined(separator: ", ")
205 | reportFailure("Asynchronous wait failed: Exceeded timeout of \(_timeout) seconds, with unfulfilled expectations: \(expectationsDescription).")
/host/spi-builder-workspace/Sources/sMock/sMock.swift:208:31: error: cannot find type 'XCTWaiter' in scope
206 | }
207 |
208 | func waiter(_ waiter: XCTWaiter, fulfillmentDidViolateOrderingConstraintsFor expectation: XCTestExpectation, requiredExpectation: XCTestExpectation) {
| `- error: cannot find type 'XCTWaiter' in scope
209 | reportFailure("Failed due to expectation fulfilled in incorrect order: requires \"\(requiredExpectation.expectationDescription)\", actually fulfilled \"\(expectation.expectationDescription)\".")
210 | }
/host/spi-builder-workspace/Sources/sMock/sMock.swift:208:99: error: cannot find type 'XCTestExpectation' in scope
206 | }
207 |
208 | func waiter(_ waiter: XCTWaiter, fulfillmentDidViolateOrderingConstraintsFor expectation: XCTestExpectation, requiredExpectation: XCTestExpectation) {
| `- error: cannot find type 'XCTestExpectation' in scope
209 | reportFailure("Failed due to expectation fulfilled in incorrect order: requires \"\(requiredExpectation.expectationDescription)\", actually fulfilled \"\(expectation.expectationDescription)\".")
210 | }
/host/spi-builder-workspace/Sources/sMock/sMock.swift:208:139: error: cannot find type 'XCTestExpectation' in scope
206 | }
207 |
208 | func waiter(_ waiter: XCTWaiter, fulfillmentDidViolateOrderingConstraintsFor expectation: XCTestExpectation, requiredExpectation: XCTestExpectation) {
| `- error: cannot find type 'XCTestExpectation' in scope
209 | reportFailure("Failed due to expectation fulfilled in incorrect order: requires \"\(requiredExpectation.expectationDescription)\", actually fulfilled \"\(expectation.expectationDescription)\".")
210 | }
/host/spi-builder-workspace/Sources/sMock/sMock.swift:212:31: error: cannot find type 'XCTWaiter' in scope
210 | }
211 |
212 | func waiter(_ waiter: XCTWaiter, didFulfillInvertedExpectation expectation: XCTestExpectation) {
| `- error: cannot find type 'XCTWaiter' in scope
213 | reportFailure("Fulfilled inverted expectation \"\(expectation.expectationDescription)\".")
214 | }
/host/spi-builder-workspace/Sources/sMock/sMock.swift:212:85: error: cannot find type 'XCTestExpectation' in scope
210 | }
211 |
212 | func waiter(_ waiter: XCTWaiter, didFulfillInvertedExpectation expectation: XCTestExpectation) {
| `- error: cannot find type 'XCTestExpectation' in scope
213 | reportFailure("Fulfilled inverted expectation \"\(expectation.expectationDescription)\".")
214 | }
/host/spi-builder-workspace/Sources/sMock/sMock.swift:216:37: error: cannot find type 'XCTWaiter' in scope
214 | }
215 |
216 | func nestedWaiter(_ waiter: XCTWaiter, wasInterruptedByTimedOutWaiter outerWaiter: XCTWaiter) {
| `- error: cannot find type 'XCTWaiter' in scope
217 | reportFailure("Asynchronous waiter \(waiter) failed: interrupted by timeout of containing waiter \(outerWaiter).");
218 | }
/host/spi-builder-workspace/Sources/sMock/sMock.swift:216:92: error: cannot find type 'XCTWaiter' in scope
214 | }
215 |
216 | func nestedWaiter(_ waiter: XCTWaiter, wasInterruptedByTimedOutWaiter outerWaiter: XCTWaiter) {
| `- error: cannot find type 'XCTWaiter' in scope
217 | reportFailure("Asynchronous waiter \(waiter) failed: interrupted by timeout of containing waiter \(outerWaiter).");
218 | }
[5/8] Compiling sMock Matcher.swift
[6/8] Compiling sMock MockClosure.swift
[7/8] Compiling sMock _MockFunctionBase.swift
/host/spi-builder-workspace/Sources/sMock/_MockFunctionBase.swift:101:33: error: cannot find type 'XCTestExpectation' in scope
99 | class ArmedExpectation<Args, R> {
100 | private let expectation: Expectation<Args, R>
101 | private let xctExpectation: XCTestExpectation?
| `- error: cannot find type 'XCTestExpectation' in scope
102 | private let queue = DispatchQueue(label: "ArmedExpectation.queue")
103 | private var count: Int = 0
/host/spi-builder-workspace/Sources/sMock/_MockFunctionBase.swift:102:25: error: cannot find 'DispatchQueue' in scope
100 | private let expectation: Expectation<Args, R>
101 | private let xctExpectation: XCTestExpectation?
102 | private let queue = DispatchQueue(label: "ArmedExpectation.queue")
| `- error: cannot find 'DispatchQueue' in scope
103 | private var count: Int = 0
104 |
/host/spi-builder-workspace/Sources/sMock/_MockFunctionBase.swift:227:46: error: cannot find type 'XCTestExpectation' in scope
225 |
226 | private extension ExpectTimes {
227 | func expectation(description: String) -> XCTestExpectation? {
| `- error: cannot find type 'XCTestExpectation' in scope
228 | switch self {
229 | case .unlimited:
/host/spi-builder-workspace/Sources/sMock/_MockFunctionBase.swift:275:25: error: cannot find 'DispatchQueue' in scope
273 |
274 | public class ArgumentCaptor<Args> {
275 | private var queue = DispatchQueue(label: "ArgumentCaptor")
| `- error: cannot find 'DispatchQueue' in scope
276 | private var capturedArgs: [Args] = []
277 |
/host/spi-builder-workspace/Sources/sMock/sMock.swift:84:58: error: cannot find type 'XCTestExpectation' in scope
82 |
83 | extension sMock {
84 | static func expectation(description: String = "") -> XCTestExpectation {
| `- error: cannot find type 'XCTestExpectation' in scope
85 | expectationsSyncQueue.sync {
86 | let exp = XCTestExpectation(description: description)
[8/8] Compiling sMock MockMethod.swift
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4606859-3":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:wasm-6.1-latest swift build --swift-sdk wasm32-unknown-wasi 2>&1
wasm-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:7e37457820e5f17452a98118754f345f2619722c485f2db0d8b666940a83afd2
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:wasm-6.1-latest
[0/1] Planning build
Building for debugging...
[0/1] Write swift-version-24593BA9C3E375BF.txt
[2/7] Compiling sMock MockMethod.swift
[3/7] Compiling sMock sMock.swift
/host/spi-builder-workspace/Sources/sMock/sMock.swift:59:165: error: cannot find type 'XCTWaiter' in scope
57 |
58 | /// Wait for currently registered sMock expectations. Extended version.
59 | public static func waitForExpectations(timeout seconds: TimeInterval, enforceOrder enforceOrderOfFulfillment: Bool, file: String = #file, line: Int = #line) -> XCTWaiter.Result {
| `- error: cannot find type 'XCTWaiter' in scope
60 | let delegate = FailureReporter(file: file, line: line, timeout: seconds)
61 | let waiter = XCTWaiter(delegate: delegate)
/host/spi-builder-workspace/Sources/sMock/sMock.swift:68:50: error: cannot find type 'XCTestExpectation' in scope
66 |
67 | /// Extracts all current sMock expectations, transferring them to the caller.
68 | public static func extractExpectations() -> [XCTestExpectation] {
| `- error: cannot find type 'XCTestExpectation' in scope
69 | expectationsSyncQueue.sync {
70 | let currentExpectations = expectations
/host/spi-builder-workspace/Sources/sMock/sMock.swift:84:58: error: cannot find type 'XCTestExpectation' in scope
82 |
83 | extension sMock {
84 | static func expectation(description: String = "") -> XCTestExpectation {
| `- error: cannot find type 'XCTestExpectation' in scope
85 | expectationsSyncQueue.sync {
86 | let exp = XCTestExpectation(description: description)
/host/spi-builder-workspace/Sources/sMock/sMock.swift:93:48: error: cannot find 'DispatchQueue' in scope
91 | }
92 |
93 | private static let expectationsSyncQueue = DispatchQueue(label: "sMock.expectationsSyncQueue")
| `- error: cannot find 'DispatchQueue' in scope
94 | private static var expectations: [XCTestExpectation] = []
95 | }
/host/spi-builder-workspace/Sources/sMock/sMock.swift:94:39: error: cannot find type 'XCTestExpectation' in scope
92 |
93 | private static let expectationsSyncQueue = DispatchQueue(label: "sMock.expectationsSyncQueue")
94 | private static var expectations: [XCTestExpectation] = []
| `- error: cannot find type 'XCTestExpectation' in scope
95 | }
96 |
/host/spi-builder-workspace/Sources/sMock/sMock.swift:192:38: error: cannot find type 'XCTWaiterDelegate' in scope
190 |
191 | private extension sMock {
192 | class FailureReporter: NSObject, XCTWaiterDelegate {
| `- error: cannot find type 'XCTWaiterDelegate' in scope
193 | private let _file: String
194 | private let _line: Int
/host/spi-builder-workspace/Sources/sMock/sMock.swift:203:31: error: cannot find type 'XCTWaiter' in scope
201 | }
202 |
203 | func waiter(_ waiter: XCTWaiter, didTimeoutWithUnfulfilledExpectations unfulfilledExpectations: [XCTestExpectation]) {
| `- error: cannot find type 'XCTWaiter' in scope
204 | let expectationsDescription = unfulfilledExpectations.map { "\"\($0.expectationDescription)\"" }.joined(separator: ", ")
205 | reportFailure("Asynchronous wait failed: Exceeded timeout of \(_timeout) seconds, with unfulfilled expectations: \(expectationsDescription).")
/host/spi-builder-workspace/Sources/sMock/sMock.swift:203:106: error: cannot find type 'XCTestExpectation' in scope
201 | }
202 |
203 | func waiter(_ waiter: XCTWaiter, didTimeoutWithUnfulfilledExpectations unfulfilledExpectations: [XCTestExpectation]) {
| `- error: cannot find type 'XCTestExpectation' in scope
204 | let expectationsDescription = unfulfilledExpectations.map { "\"\($0.expectationDescription)\"" }.joined(separator: ", ")
205 | reportFailure("Asynchronous wait failed: Exceeded timeout of \(_timeout) seconds, with unfulfilled expectations: \(expectationsDescription).")
/host/spi-builder-workspace/Sources/sMock/sMock.swift:208:31: error: cannot find type 'XCTWaiter' in scope
206 | }
207 |
208 | func waiter(_ waiter: XCTWaiter, fulfillmentDidViolateOrderingConstraintsFor expectation: XCTestExpectation, requiredExpectation: XCTestExpectation) {
| `- error: cannot find type 'XCTWaiter' in scope
209 | reportFailure("Failed due to expectation fulfilled in incorrect order: requires \"\(requiredExpectation.expectationDescription)\", actually fulfilled \"\(expectation.expectationDescription)\".")
210 | }
/host/spi-builder-workspace/Sources/sMock/sMock.swift:208:99: error: cannot find type 'XCTestExpectation' in scope
206 | }
207 |
208 | func waiter(_ waiter: XCTWaiter, fulfillmentDidViolateOrderingConstraintsFor expectation: XCTestExpectation, requiredExpectation: XCTestExpectation) {
| `- error: cannot find type 'XCTestExpectation' in scope
209 | reportFailure("Failed due to expectation fulfilled in incorrect order: requires \"\(requiredExpectation.expectationDescription)\", actually fulfilled \"\(expectation.expectationDescription)\".")
210 | }
/host/spi-builder-workspace/Sources/sMock/sMock.swift:208:139: error: cannot find type 'XCTestExpectation' in scope
206 | }
207 |
208 | func waiter(_ waiter: XCTWaiter, fulfillmentDidViolateOrderingConstraintsFor expectation: XCTestExpectation, requiredExpectation: XCTestExpectation) {
| `- error: cannot find type 'XCTestExpectation' in scope
209 | reportFailure("Failed due to expectation fulfilled in incorrect order: requires \"\(requiredExpectation.expectationDescription)\", actually fulfilled \"\(expectation.expectationDescription)\".")
210 | }
/host/spi-builder-workspace/Sources/sMock/sMock.swift:212:31: error: cannot find type 'XCTWaiter' in scope
210 | }
211 |
212 | func waiter(_ waiter: XCTWaiter, didFulfillInvertedExpectation expectation: XCTestExpectation) {
| `- error: cannot find type 'XCTWaiter' in scope
213 | reportFailure("Fulfilled inverted expectation \"\(expectation.expectationDescription)\".")
214 | }
/host/spi-builder-workspace/Sources/sMock/sMock.swift:212:85: error: cannot find type 'XCTestExpectation' in scope
210 | }
211 |
212 | func waiter(_ waiter: XCTWaiter, didFulfillInvertedExpectation expectation: XCTestExpectation) {
| `- error: cannot find type 'XCTestExpectation' in scope
213 | reportFailure("Fulfilled inverted expectation \"\(expectation.expectationDescription)\".")
214 | }
/host/spi-builder-workspace/Sources/sMock/sMock.swift:216:37: error: cannot find type 'XCTWaiter' in scope
214 | }
215 |
216 | func nestedWaiter(_ waiter: XCTWaiter, wasInterruptedByTimedOutWaiter outerWaiter: XCTWaiter) {
| `- error: cannot find type 'XCTWaiter' in scope
217 | reportFailure("Asynchronous waiter \(waiter) failed: interrupted by timeout of containing waiter \(outerWaiter).");
218 | }
/host/spi-builder-workspace/Sources/sMock/sMock.swift:216:92: error: cannot find type 'XCTWaiter' in scope
214 | }
215 |
216 | func nestedWaiter(_ waiter: XCTWaiter, wasInterruptedByTimedOutWaiter outerWaiter: XCTWaiter) {
| `- error: cannot find type 'XCTWaiter' in scope
217 | reportFailure("Asynchronous waiter \(waiter) failed: interrupted by timeout of containing waiter \(outerWaiter).");
218 | }
/host/spi-builder-workspace/Sources/sMock/sMock.swift:55:28: error: extra arguments at positions #1, #2 in call
52 | /// - returns: Boolean indicating if all expectations has been waited.
53 | @discardableResult
54 | public static func waitForExpectations(file: String = #file, line: Int = #line) -> Bool {
| `- note: 'waitForExpectations(file:line:)' declared here
55 | waitForExpectations(timeout: waitTimeout, enforceOrder: false, file: file, line: line) == .completed
| `- error: extra arguments at positions #1, #2 in call
56 | }
57 |
/host/spi-builder-workspace/Sources/sMock/sMock.swift:55:100: error: type 'Bool' has no member 'completed'
53 | @discardableResult
54 | public static func waitForExpectations(file: String = #file, line: Int = #line) -> Bool {
55 | waitForExpectations(timeout: waitTimeout, enforceOrder: false, file: file, line: line) == .completed
| `- error: type 'Bool' has no member 'completed'
56 | }
57 |
/host/spi-builder-workspace/Sources/sMock/sMock.swift:61:22: error: cannot find 'XCTWaiter' in scope
59 | public static func waitForExpectations(timeout seconds: TimeInterval, enforceOrder enforceOrderOfFulfillment: Bool, file: String = #file, line: Int = #line) -> XCTWaiter.Result {
60 | let delegate = FailureReporter(file: file, line: line, timeout: seconds)
61 | let waiter = XCTWaiter(delegate: delegate)
| `- error: cannot find 'XCTWaiter' in scope
62 | let waitResult = waiter.wait(for: extractExpectations(), timeout: seconds, enforceOrder: enforceOrderOfFulfillment)
63 |
/host/spi-builder-workspace/Sources/sMock/sMock.swift:170:12: error: cannot find 'Thread' in scope
168 | private enum Utils {
169 | static func syncOnMainNonblock<T>(execute work: () throws -> T) rethrows -> T {
170 | if Thread.isMainThread {
| `- error: cannot find 'Thread' in scope
171 | return try work()
172 | } else {
/host/spi-builder-workspace/Sources/sMock/sMock.swift:173:24: error: cannot find 'DispatchQueue' in scope
171 | return try work()
172 | } else {
173 | return try DispatchQueue.main.sync(execute: work)
| `- error: cannot find 'DispatchQueue' in scope
174 | }
175 | }
/host/spi-builder-workspace/Sources/sMock/sMock.swift:179:75: error: cannot find 'NSSelectorFromString' in scope
177 | static func extractCurrentTestCase() -> XCTestCase? {
178 | guard let cl: AnyClass = NSClassFromString("XCTestMisuseObserver"),
179 | let builtInObservers = XCTestObservationCenter.shared.perform(NSSelectorFromString("observers")),
| `- error: cannot find 'NSSelectorFromString' in scope
180 | let builtInObserverArray = builtInObservers.takeUnretainedValue() as? [NSObject],
181 | let misuseObserver = builtInObserverArray.first(where: { $0.isKind(of: cl) }),
/host/spi-builder-workspace/Sources/sMock/sMock.swift:179:67: error: value of type 'XCTestObservationCenter' has no member 'perform'
177 | static func extractCurrentTestCase() -> XCTestCase? {
178 | guard let cl: AnyClass = NSClassFromString("XCTestMisuseObserver"),
179 | let builtInObservers = XCTestObservationCenter.shared.perform(NSSelectorFromString("observers")),
| `- error: value of type 'XCTestObservationCenter' has no member 'perform'
180 | let builtInObserverArray = builtInObservers.takeUnretainedValue() as? [NSObject],
181 | let misuseObserver = builtInObserverArray.first(where: { $0.isKind(of: cl) }),
/host/spi-builder-workspace/Sources/sMock/sMock.swift:182:57: error: cannot find 'NSSelectorFromString' in scope
180 | let builtInObserverArray = builtInObservers.takeUnretainedValue() as? [NSObject],
181 | let misuseObserver = builtInObserverArray.first(where: { $0.isKind(of: cl) }),
182 | let currentCaseAny = misuseObserver.perform(NSSelectorFromString("currentTestCase")),
| `- error: cannot find 'NSSelectorFromString' in scope
183 | let currentCase = currentCaseAny.takeUnretainedValue() as? XCTestCase else {
184 | return nil
/host/spi-builder-workspace/Sources/sMock/sMock.swift:221:28: error: cannot find 'XCTSourceCodeLocation' in scope
219 |
220 | private func reportFailure(_ description: String) {
221 | let location = XCTSourceCodeLocation(filePath: _file, lineNumber: _line)
| `- error: cannot find 'XCTSourceCodeLocation' in scope
222 | let context = XCTSourceCodeContext(location: location)
223 | let issue = XCTIssue(type: .assertionFailure, compactDescription: description, detailedDescription: nil, sourceCodeContext: context, associatedError: nil, attachments: [])
/host/spi-builder-workspace/Sources/sMock/sMock.swift:222:27: error: cannot find 'XCTSourceCodeContext' in scope
220 | private func reportFailure(_ description: String) {
221 | let location = XCTSourceCodeLocation(filePath: _file, lineNumber: _line)
222 | let context = XCTSourceCodeContext(location: location)
| `- error: cannot find 'XCTSourceCodeContext' in scope
223 | let issue = XCTIssue(type: .assertionFailure, compactDescription: description, detailedDescription: nil, sourceCodeContext: context, associatedError: nil, attachments: [])
224 | MocksSupport.shared.currentTestCase.record(issue)
/host/spi-builder-workspace/Sources/sMock/sMock.swift:223:25: error: cannot find 'XCTIssue' in scope
221 | let location = XCTSourceCodeLocation(filePath: _file, lineNumber: _line)
222 | let context = XCTSourceCodeContext(location: location)
223 | let issue = XCTIssue(type: .assertionFailure, compactDescription: description, detailedDescription: nil, sourceCodeContext: context, associatedError: nil, attachments: [])
| `- error: cannot find 'XCTIssue' in scope
224 | MocksSupport.shared.currentTestCase.record(issue)
225 | }
/host/spi-builder-workspace/Sources/sMock/sMock.swift:223:41: error: cannot infer contextual base in reference to member 'assertionFailure'
221 | let location = XCTSourceCodeLocation(filePath: _file, lineNumber: _line)
222 | let context = XCTSourceCodeContext(location: location)
223 | let issue = XCTIssue(type: .assertionFailure, compactDescription: description, detailedDescription: nil, sourceCodeContext: context, associatedError: nil, attachments: [])
| `- error: cannot infer contextual base in reference to member 'assertionFailure'
224 | MocksSupport.shared.currentTestCase.record(issue)
225 | }
/host/spi-builder-workspace/Sources/sMock/sMock.swift:223:113: error: 'nil' requires a contextual type
221 | let location = XCTSourceCodeLocation(filePath: _file, lineNumber: _line)
222 | let context = XCTSourceCodeContext(location: location)
223 | let issue = XCTIssue(type: .assertionFailure, compactDescription: description, detailedDescription: nil, sourceCodeContext: context, associatedError: nil, attachments: [])
| `- error: 'nil' requires a contextual type
224 | MocksSupport.shared.currentTestCase.record(issue)
225 | }
/host/spi-builder-workspace/Sources/sMock/sMock.swift:223:163: error: 'nil' requires a contextual type
221 | let location = XCTSourceCodeLocation(filePath: _file, lineNumber: _line)
222 | let context = XCTSourceCodeContext(location: location)
223 | let issue = XCTIssue(type: .assertionFailure, compactDescription: description, detailedDescription: nil, sourceCodeContext: context, associatedError: nil, attachments: [])
| `- error: 'nil' requires a contextual type
224 | MocksSupport.shared.currentTestCase.record(issue)
225 | }
/host/spi-builder-workspace/Sources/sMock/sMock.swift:224:49: error: value of type 'XCTestCase' has no member 'record'
222 | let context = XCTSourceCodeContext(location: location)
223 | let issue = XCTIssue(type: .assertionFailure, compactDescription: description, detailedDescription: nil, sourceCodeContext: context, associatedError: nil, attachments: [])
224 | MocksSupport.shared.currentTestCase.record(issue)
| `- error: value of type 'XCTestCase' has no member 'record'
225 | }
226 | }
[4/7] Compiling sMock _MockFunctionBase.swift
/host/spi-builder-workspace/Sources/sMock/_MockFunctionBase.swift:101:33: error: cannot find type 'XCTestExpectation' in scope
99 | class ArmedExpectation<Args, R> {
100 | private let expectation: Expectation<Args, R>
101 | private let xctExpectation: XCTestExpectation?
| `- error: cannot find type 'XCTestExpectation' in scope
102 | private let queue = DispatchQueue(label: "ArmedExpectation.queue")
103 | private var count: Int = 0
/host/spi-builder-workspace/Sources/sMock/_MockFunctionBase.swift:102:25: error: cannot find 'DispatchQueue' in scope
100 | private let expectation: Expectation<Args, R>
101 | private let xctExpectation: XCTestExpectation?
102 | private let queue = DispatchQueue(label: "ArmedExpectation.queue")
| `- error: cannot find 'DispatchQueue' in scope
103 | private var count: Int = 0
104 |
/host/spi-builder-workspace/Sources/sMock/_MockFunctionBase.swift:227:46: error: cannot find type 'XCTestExpectation' in scope
225 |
226 | private extension ExpectTimes {
227 | func expectation(description: String) -> XCTestExpectation? {
| `- error: cannot find type 'XCTestExpectation' in scope
228 | switch self {
229 | case .unlimited:
/host/spi-builder-workspace/Sources/sMock/_MockFunctionBase.swift:275:25: error: cannot find 'DispatchQueue' in scope
273 |
274 | public class ArgumentCaptor<Args> {
275 | private var queue = DispatchQueue(label: "ArgumentCaptor")
| `- error: cannot find 'DispatchQueue' in scope
276 | private var capturedArgs: [Args] = []
277 |
/host/spi-builder-workspace/Sources/sMock/sMock.swift:84:58: error: cannot find type 'XCTestExpectation' in scope
82 |
83 | extension sMock {
84 | static func expectation(description: String = "") -> XCTestExpectation {
| `- error: cannot find type 'XCTestExpectation' in scope
85 | expectationsSyncQueue.sync {
86 | let exp = XCTestExpectation(description: description)
error: emit-module command failed with exit code 1 (use -v to see invocation)
[5/7] Compiling sMock MockClosure.swift
[6/7] Compiling sMock Matcher.swift
[7/7] Emitting module sMock
/host/spi-builder-workspace/Sources/sMock/_MockFunctionBase.swift:101:33: error: cannot find type 'XCTestExpectation' in scope
99 | class ArmedExpectation<Args, R> {
100 | private let expectation: Expectation<Args, R>
101 | private let xctExpectation: XCTestExpectation?
| `- error: cannot find type 'XCTestExpectation' in scope
102 | private let queue = DispatchQueue(label: "ArmedExpectation.queue")
103 | private var count: Int = 0
/host/spi-builder-workspace/Sources/sMock/_MockFunctionBase.swift:102:25: error: cannot find 'DispatchQueue' in scope
100 | private let expectation: Expectation<Args, R>
101 | private let xctExpectation: XCTestExpectation?
102 | private let queue = DispatchQueue(label: "ArmedExpectation.queue")
| `- error: cannot find 'DispatchQueue' in scope
103 | private var count: Int = 0
104 |
/host/spi-builder-workspace/Sources/sMock/_MockFunctionBase.swift:227:46: error: cannot find type 'XCTestExpectation' in scope
225 |
226 | private extension ExpectTimes {
227 | func expectation(description: String) -> XCTestExpectation? {
| `- error: cannot find type 'XCTestExpectation' in scope
228 | switch self {
229 | case .unlimited:
/host/spi-builder-workspace/Sources/sMock/_MockFunctionBase.swift:275:25: error: cannot find 'DispatchQueue' in scope
273 |
274 | public class ArgumentCaptor<Args> {
275 | private var queue = DispatchQueue(label: "ArgumentCaptor")
| `- error: cannot find 'DispatchQueue' in scope
276 | private var capturedArgs: [Args] = []
277 |
/host/spi-builder-workspace/Sources/sMock/sMock.swift:59:165: error: cannot find type 'XCTWaiter' in scope
57 |
58 | /// Wait for currently registered sMock expectations. Extended version.
59 | public static func waitForExpectations(timeout seconds: TimeInterval, enforceOrder enforceOrderOfFulfillment: Bool, file: String = #file, line: Int = #line) -> XCTWaiter.Result {
| `- error: cannot find type 'XCTWaiter' in scope
60 | let delegate = FailureReporter(file: file, line: line, timeout: seconds)
61 | let waiter = XCTWaiter(delegate: delegate)
/host/spi-builder-workspace/Sources/sMock/sMock.swift:68:50: error: cannot find type 'XCTestExpectation' in scope
66 |
67 | /// Extracts all current sMock expectations, transferring them to the caller.
68 | public static func extractExpectations() -> [XCTestExpectation] {
| `- error: cannot find type 'XCTestExpectation' in scope
69 | expectationsSyncQueue.sync {
70 | let currentExpectations = expectations
/host/spi-builder-workspace/Sources/sMock/sMock.swift:84:58: error: cannot find type 'XCTestExpectation' in scope
82 |
83 | extension sMock {
84 | static func expectation(description: String = "") -> XCTestExpectation {
| `- error: cannot find type 'XCTestExpectation' in scope
85 | expectationsSyncQueue.sync {
86 | let exp = XCTestExpectation(description: description)
/host/spi-builder-workspace/Sources/sMock/sMock.swift:93:48: error: cannot find 'DispatchQueue' in scope
91 | }
92 |
93 | private static let expectationsSyncQueue = DispatchQueue(label: "sMock.expectationsSyncQueue")
| `- error: cannot find 'DispatchQueue' in scope
94 | private static var expectations: [XCTestExpectation] = []
95 | }
/host/spi-builder-workspace/Sources/sMock/sMock.swift:94:39: error: cannot find type 'XCTestExpectation' in scope
92 |
93 | private static let expectationsSyncQueue = DispatchQueue(label: "sMock.expectationsSyncQueue")
94 | private static var expectations: [XCTestExpectation] = []
| `- error: cannot find type 'XCTestExpectation' in scope
95 | }
96 |
/host/spi-builder-workspace/Sources/sMock/sMock.swift:192:38: error: cannot find type 'XCTWaiterDelegate' in scope
190 |
191 | private extension sMock {
192 | class FailureReporter: NSObject, XCTWaiterDelegate {
| `- error: cannot find type 'XCTWaiterDelegate' in scope
193 | private let _file: String
194 | private let _line: Int
/host/spi-builder-workspace/Sources/sMock/sMock.swift:203:31: error: cannot find type 'XCTWaiter' in scope
201 | }
202 |
203 | func waiter(_ waiter: XCTWaiter, didTimeoutWithUnfulfilledExpectations unfulfilledExpectations: [XCTestExpectation]) {
| `- error: cannot find type 'XCTWaiter' in scope
204 | let expectationsDescription = unfulfilledExpectations.map { "\"\($0.expectationDescription)\"" }.joined(separator: ", ")
205 | reportFailure("Asynchronous wait failed: Exceeded timeout of \(_timeout) seconds, with unfulfilled expectations: \(expectationsDescription).")
/host/spi-builder-workspace/Sources/sMock/sMock.swift:203:106: error: cannot find type 'XCTestExpectation' in scope
201 | }
202 |
203 | func waiter(_ waiter: XCTWaiter, didTimeoutWithUnfulfilledExpectations unfulfilledExpectations: [XCTestExpectation]) {
| `- error: cannot find type 'XCTestExpectation' in scope
204 | let expectationsDescription = unfulfilledExpectations.map { "\"\($0.expectationDescription)\"" }.joined(separator: ", ")
205 | reportFailure("Asynchronous wait failed: Exceeded timeout of \(_timeout) seconds, with unfulfilled expectations: \(expectationsDescription).")
/host/spi-builder-workspace/Sources/sMock/sMock.swift:208:31: error: cannot find type 'XCTWaiter' in scope
206 | }
207 |
208 | func waiter(_ waiter: XCTWaiter, fulfillmentDidViolateOrderingConstraintsFor expectation: XCTestExpectation, requiredExpectation: XCTestExpectation) {
| `- error: cannot find type 'XCTWaiter' in scope
209 | reportFailure("Failed due to expectation fulfilled in incorrect order: requires \"\(requiredExpectation.expectationDescription)\", actually fulfilled \"\(expectation.expectationDescription)\".")
210 | }
/host/spi-builder-workspace/Sources/sMock/sMock.swift:208:99: error: cannot find type 'XCTestExpectation' in scope
206 | }
207 |
208 | func waiter(_ waiter: XCTWaiter, fulfillmentDidViolateOrderingConstraintsFor expectation: XCTestExpectation, requiredExpectation: XCTestExpectation) {
| `- error: cannot find type 'XCTestExpectation' in scope
209 | reportFailure("Failed due to expectation fulfilled in incorrect order: requires \"\(requiredExpectation.expectationDescription)\", actually fulfilled \"\(expectation.expectationDescription)\".")
210 | }
/host/spi-builder-workspace/Sources/sMock/sMock.swift:208:139: error: cannot find type 'XCTestExpectation' in scope
206 | }
207 |
208 | func waiter(_ waiter: XCTWaiter, fulfillmentDidViolateOrderingConstraintsFor expectation: XCTestExpectation, requiredExpectation: XCTestExpectation) {
| `- error: cannot find type 'XCTestExpectation' in scope
209 | reportFailure("Failed due to expectation fulfilled in incorrect order: requires \"\(requiredExpectation.expectationDescription)\", actually fulfilled \"\(expectation.expectationDescription)\".")
210 | }
/host/spi-builder-workspace/Sources/sMock/sMock.swift:212:31: error: cannot find type 'XCTWaiter' in scope
210 | }
211 |
212 | func waiter(_ waiter: XCTWaiter, didFulfillInvertedExpectation expectation: XCTestExpectation) {
| `- error: cannot find type 'XCTWaiter' in scope
213 | reportFailure("Fulfilled inverted expectation \"\(expectation.expectationDescription)\".")
214 | }
/host/spi-builder-workspace/Sources/sMock/sMock.swift:212:85: error: cannot find type 'XCTestExpectation' in scope
210 | }
211 |
212 | func waiter(_ waiter: XCTWaiter, didFulfillInvertedExpectation expectation: XCTestExpectation) {
| `- error: cannot find type 'XCTestExpectation' in scope
213 | reportFailure("Fulfilled inverted expectation \"\(expectation.expectationDescription)\".")
214 | }
/host/spi-builder-workspace/Sources/sMock/sMock.swift:216:37: error: cannot find type 'XCTWaiter' in scope
214 | }
215 |
216 | func nestedWaiter(_ waiter: XCTWaiter, wasInterruptedByTimedOutWaiter outerWaiter: XCTWaiter) {
| `- error: cannot find type 'XCTWaiter' in scope
217 | reportFailure("Asynchronous waiter \(waiter) failed: interrupted by timeout of containing waiter \(outerWaiter).");
218 | }
/host/spi-builder-workspace/Sources/sMock/sMock.swift:216:92: error: cannot find type 'XCTWaiter' in scope
214 | }
215 |
216 | func nestedWaiter(_ waiter: XCTWaiter, wasInterruptedByTimedOutWaiter outerWaiter: XCTWaiter) {
| `- error: cannot find type 'XCTWaiter' in scope
217 | reportFailure("Asynchronous waiter \(waiter) failed: interrupted by timeout of containing waiter \(outerWaiter).");
218 | }
BUILD FAILURE 6.1 wasm