Build Information
Failed to build Replacer, reference 0.1.0 (2042d6
), with Swift 6.1 for macOS (SPM) on 25 Apr 2025 20:06:06 UTC.
Build Command
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64
Build Log
========================================
RunAll
========================================
Builder version: 4.61.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/tattn/Replacer.git
Reference: 0.1.0
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/tattn/Replacer
* tag 0.1.0 -> FETCH_HEAD
HEAD is now at 2042d67 Update Swift 5.0
Cloned https://github.com/tattn/Replacer.git
Revision (git rev-parse @):
2042d67080e9de57673f8bdf25788510377f975e
SUCCESS checkout https://github.com/tattn/Replacer.git at 0.1.0
Fetching https://github.com/Alamofire/Alamofire.git
[1/30137] Fetching alamofire
Fetched https://github.com/Alamofire/Alamofire.git from cache (2.38s)
Computing version for https://github.com/Alamofire/Alamofire.git
Computed https://github.com/Alamofire/Alamofire.git at 4.9.1 (2.99s)
Creating working copy for https://github.com/Alamofire/Alamofire.git
Working copy of https://github.com/Alamofire/Alamofire.git resolved at 4.9.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": "replacer",
"name": "Replacer",
"url": "https://github.com/tattn/Replacer.git",
"version": "unspecified",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/Replacer",
"dependencies": [
{
"identity": "alamofire",
"name": "Alamofire",
"url": "https://github.com/Alamofire/Alamofire.git",
"version": "4.9.1",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/Alamofire",
"dependencies": [
]
}
]
}
]
}
Fetching https://github.com/tattn/Replacer.git
[3/216] Fetching replacer
Fetched https://github.com/tattn/Replacer.git from cache (0.65s)
Fetching https://github.com/Alamofire/Alamofire.git from cache
Fetched https://github.com/Alamofire/Alamofire.git from cache (0.62s)
Computing version for https://github.com/Alamofire/Alamofire.git
Computed https://github.com/Alamofire/Alamofire.git at 4.9.1 (0.69s)
Creating working copy for https://github.com/tattn/Replacer.git
Working copy of https://github.com/tattn/Replacer.git resolved at 0.1.0 (2042d67)
Creating working copy for https://github.com/Alamofire/Alamofire.git
Working copy of https://github.com/Alamofire/Alamofire.git resolved at 4.9.1
warning: '.resolve-product-dependencies': dependency 'replacer' is not used by any target
Found 1 product dependencies
- Alamofire
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.1
Building package at path: $PWD
https://github.com/tattn/Replacer.git
https://github.com/tattn/Replacer.git
{
"dependencies" : [
{
"identity" : "alamofire",
"requirement" : {
"range" : [
{
"lower_bound" : "4.9.0",
"upper_bound" : "5.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/Alamofire/Alamofire.git"
}
],
"manifest_display_name" : "Replacer",
"name" : "Replacer",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
],
"products" : [
{
"name" : "Replacer",
"targets" : [
"Replacer"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "TestReplacer",
"targets" : [
"TestReplacer"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "TestReplacer",
"module_type" : "SwiftTarget",
"name" : "TestReplacer",
"path" : "Sources/TestReplacer",
"product_memberships" : [
"TestReplacer"
],
"sources" : [
"XCTest+.swift"
],
"target_dependencies" : [
"Replacer"
],
"type" : "library"
},
{
"c99name" : "ReplacerTests",
"module_type" : "SwiftTarget",
"name" : "ReplacerTests",
"path" : "Tests/ReplacerTests",
"product_dependencies" : [
"Alamofire"
],
"sources" : [
"ReplacerTests.swift"
],
"target_dependencies" : [
"Replacer"
],
"type" : "test"
},
{
"c99name" : "Replacer",
"module_type" : "SwiftTarget",
"name" : "Replacer",
"path" : "Sources/Replacer",
"product_memberships" : [
"Replacer",
"TestReplacer"
],
"sources" : [
"Replacer.swift",
"URLSessionConfiguration+.swift",
"URLStub.swift",
"URLStubManager.swift",
"URLStubProtocol.swift"
],
"type" : "library"
}
],
"tools_version" : "5.0"
}
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures
Building for debugging...
[0/3] Write sources
[2/3] Write swift-version-2F0A5646E1D333AE.txt
[4/9] Compiling Replacer URLStubManager.swift
/Users/admin/builder/spi-builder-workspace/Sources/Replacer/URLStubManager.swift:13:23: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'URLStubManager' may have shared mutable state; this is an error in the Swift 6 language mode
9 | import Foundation
10 |
11 | public final class URLStubManager {
| `- note: class 'URLStubManager' does not conform to the 'Sendable' protocol
12 |
13 | public static let shared = URLStubManager()
| |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'URLStubManager' 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
14 |
15 | fileprivate var stubs: [URLStub] = []
[5/9] Emitting module Replacer
/Users/admin/builder/spi-builder-workspace/Sources/Replacer/URLStubManager.swift:13:23: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'URLStubManager' may have shared mutable state; this is an error in the Swift 6 language mode
9 | import Foundation
10 |
11 | public final class URLStubManager {
| `- note: class 'URLStubManager' does not conform to the 'Sendable' protocol
12 |
13 | public static let shared = URLStubManager()
| |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'URLStubManager' 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
14 |
15 | fileprivate var stubs: [URLStub] = []
[6/9] Compiling Replacer Replacer.swift
[7/9] Compiling Replacer URLStubProtocol.swift
/Users/admin/builder/spi-builder-workspace/Sources/Replacer/URLStubProtocol.swift:24:36: warning: capture of 'stub' with non-sendable type 'URLStub' in a '@Sendable' closure
22 | let stub = URLStubManager.shared.findStub(by: request)!
23 | DispatchQueue.global().asyncAfter(deadline: DispatchTime.now() + stub._delay) {
24 | if let responseBlock = stub._responseBlock {
| `- warning: capture of 'stub' with non-sendable type 'URLStub' in a '@Sendable' closure
25 | (stub._data, stub._error) = responseBlock(self.request)
26 | stub._responseBlock = nil
/Users/admin/builder/spi-builder-workspace/Sources/Replacer/URLStub.swift:11:14: note: class 'URLStub' does not conform to the 'Sendable' protocol
9 | import Foundation
10 |
11 | public class URLStub {
| `- note: class 'URLStub' does not conform to the 'Sendable' protocol
12 | var _url: String = ""
13 | var _method: HTTPMethod = .get
/Users/admin/builder/spi-builder-workspace/Sources/Replacer/URLStubProtocol.swift:25:59: warning: capture of 'self' with non-sendable type 'URLStubProtocol' in a '@Sendable' closure
9 | import Foundation
10 |
11 | public class URLStubProtocol: URLProtocol {
| `- note: class 'URLStubProtocol' does not conform to the 'Sendable' protocol
12 |
13 | override open class func canInit(with request: URLRequest) -> Bool {
:
23 | DispatchQueue.global().asyncAfter(deadline: DispatchTime.now() + stub._delay) {
24 | if let responseBlock = stub._responseBlock {
25 | (stub._data, stub._error) = responseBlock(self.request)
| `- warning: capture of 'self' with non-sendable type 'URLStubProtocol' in a '@Sendable' closure
26 | stub._responseBlock = nil
27 | }
[8/9] Compiling Replacer URLSessionConfiguration+.swift
[9/9] Compiling Replacer URLStub.swift
error: emit-module command failed with exit code 1 (use -v to see invocation)
[10/11] Emitting module TestReplacer
/Users/admin/builder/spi-builder-workspace/Sources/TestReplacer/XCTest+.swift:16:78: error: ambiguous use of 'tearDown'
14 |
15 | private static let swizzleTearDown: Void = {
16 | let tearDown = class_getInstanceMethod(XCTest.self, #selector(XCTest.tearDown))!
| `- error: ambiguous use of 'tearDown'
17 | let replacerTearDown = class_getInstanceMethod(XCTest.self, #selector(XCTest.autoResetTearDown))!
18 | method_exchangeImplementations(tearDown, replacerTearDown)
XCTest.XCTest.tearDown:2:11: note: found this candidate in module 'XCTest'
1 | class XCTest {
2 | open func tearDown()}
| `- note: found this candidate in module 'XCTest'
3 |
XCTest.XCTest.tearDown:2:11: note: found this candidate in module 'XCTest'
1 | class XCTest {
2 | open func tearDown(completion: @escaping ((any Error)?) -> Void)}
| `- note: found this candidate in module 'XCTest'
3 |
[11/11] Compiling TestReplacer XCTest+.swift
/Users/admin/builder/spi-builder-workspace/Sources/TestReplacer/XCTest+.swift:16:78: error: ambiguous use of 'tearDown'
14 |
15 | private static let swizzleTearDown: Void = {
16 | let tearDown = class_getInstanceMethod(XCTest.self, #selector(XCTest.tearDown))!
| `- error: ambiguous use of 'tearDown'
17 | let replacerTearDown = class_getInstanceMethod(XCTest.self, #selector(XCTest.autoResetTearDown))!
18 | method_exchangeImplementations(tearDown, replacerTearDown)
XCTest.XCTest.tearDown:2:11: note: found this candidate in module 'XCTest'
1 | class XCTest {
2 | open func tearDown()}
| `- note: found this candidate in module 'XCTest'
3 |
XCTest.XCTest.tearDown:2:11: note: found this candidate in module 'XCTest'
1 | class XCTest {
2 | open func tearDown(completion: @escaping ((any Error)?) -> Void)}
| `- note: found this candidate in module 'XCTest'
3 |
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64
[0/1] Planning build
Building for debugging...
[0/1] Write swift-version-2F0A5646E1D333AE.txt
[2/7] Compiling Replacer URLStubProtocol.swift
[3/7] Compiling Replacer URLStub.swift
[4/7] Compiling Replacer Replacer.swift
[5/7] Emitting module Replacer
[6/7] Compiling Replacer URLStubManager.swift
[7/7] Compiling Replacer URLSessionConfiguration+.swift
error: emit-module command failed with exit code 1 (use -v to see invocation)
[8/9] Emitting module TestReplacer
/Users/admin/builder/spi-builder-workspace/Sources/TestReplacer/XCTest+.swift:16:78: error: ambiguous use of 'tearDown'
14 |
15 | private static let swizzleTearDown: Void = {
16 | let tearDown = class_getInstanceMethod(XCTest.self, #selector(XCTest.tearDown))!
| `- error: ambiguous use of 'tearDown'
17 | let replacerTearDown = class_getInstanceMethod(XCTest.self, #selector(XCTest.autoResetTearDown))!
18 | method_exchangeImplementations(tearDown, replacerTearDown)
XCTest.XCTest.tearDown:2:11: note: found this candidate in module 'XCTest'
1 | class XCTest {
2 | open func tearDown()}
| `- note: found this candidate in module 'XCTest'
3 |
XCTest.XCTest.tearDown:2:11: note: found this candidate in module 'XCTest'
1 | class XCTest {
2 | open func tearDown(completion: @escaping ((any Error)?) -> Void)}
| `- note: found this candidate in module 'XCTest'
3 |
[9/9] Compiling TestReplacer XCTest+.swift
/Users/admin/builder/spi-builder-workspace/Sources/TestReplacer/XCTest+.swift:16:78: error: ambiguous use of 'tearDown'
14 |
15 | private static let swizzleTearDown: Void = {
16 | let tearDown = class_getInstanceMethod(XCTest.self, #selector(XCTest.tearDown))!
| `- error: ambiguous use of 'tearDown'
17 | let replacerTearDown = class_getInstanceMethod(XCTest.self, #selector(XCTest.autoResetTearDown))!
18 | method_exchangeImplementations(tearDown, replacerTearDown)
XCTest.XCTest.tearDown:2:11: note: found this candidate in module 'XCTest'
1 | class XCTest {
2 | open func tearDown()}
| `- note: found this candidate in module 'XCTest'
3 |
XCTest.XCTest.tearDown:2:11: note: found this candidate in module 'XCTest'
1 | class XCTest {
2 | open func tearDown(completion: @escaping ((any Error)?) -> Void)}
| `- note: found this candidate in module 'XCTest'
3 |
BUILD FAILURE 6.1 macosSpm