Build Information
Failed to build VCR, reference main (aee80c), with Swift 6.4 for Linux on 23 Sep 2026 07:15:45 UTC.
Build Command
bash -c docker run --pull=always --rm -v "checkouts-54344847-1":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/saguaro1/spi-images:basic-6.4-latest swift build --triple x86_64-unknown-linux-gnu 2>&1Build Log
========================================
RunAll
========================================
Builder version: 5.1.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/grdsdev/swift-vcr.git
Reference: main
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/grdsdev/swift-vcr
* branch main -> FETCH_HEAD
* [new branch] main -> origin/main
HEAD is now at aee80c9 Add support for binary request bodies via httpBodyStream
Cloned https://github.com/grdsdev/swift-vcr.git
Revision (git rev-parse @):
aee80c9b638cde25bb8cfd47705a37d48f375597
SUCCESS checkout https://github.com/grdsdev/swift-vcr.git at main
========================================
Build
========================================
Selected platform: linux
Swift version: 6.4
Building package at path: $PWD
https://github.com/grdsdev/swift-vcr.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-54344847-1":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/saguaro1/spi-images:basic-6.4-latest swift build --triple x86_64-unknown-linux-gnu 2>&1
basic-6.4-latest: Pulling from saguaro1/spi-images
Digest: sha256:c77fcce225e223ac0fafed844619173fc6de8d62dd560eeb28db3182af6a282b
Status: Image is up to date for registry.gitlab.com/saguaro1/spi-images:basic-6.4-latest
Building for debugging...
[Planning deferred tasks]
error: SwiftCompile normal x86_64 failed with a nonzero exit code. Command line: cd /host
/host/spi-builder-workspace/Sources/VCR/Cassette.swift:40:37: [1;31merror: [1;39mcannot find type 'URLRequest' in scope[0;0m
[0;36m38 |[0;0m
[0;36m39 |[0;0m /// Find a matching interaction for the given request
[0;36m40 |[0;0m func findInteraction(for request: [4;39mURLRequest[0;0m) -> HTTPInteraction? {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'URLRequest' in scope[0;0m
[0;36m41 |[0;0m let matcher = self.matcher.createMatcher()
[0;36m42 |[0;0m return _interactions.value.first { interaction in
/host/spi-builder-workspace/Sources/VCR/RequestMatcher.swift:5:27: [1;31merror: [1;39mcannot find type 'URLRequest' in scope[0;0m
[0;36m3 |[0;0m /// Protocol for matching HTTP requests
[0;36m4 |[0;0m public protocol RequestMatcher: Sendable {
[0;36m5 |[0;0m func matches(_ request: [4;39mURLRequest[0;0m, recorded: RecordedRequest) -> Bool
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'URLRequest' in scope[0;0m
[0;36m6 |[0;0m }
[0;36m7 |[0;0m
/host/spi-builder-workspace/Sources/VCR/HTTPInteraction.swift:17:25: [1;31merror: [1;39mcannot find type 'URLRequest' in scope[0;0m
[0;36m15 |[0;0m }
[0;36m16 |[0;0m
[0;36m17 |[0;0m init(from urlRequest: [4;39mURLRequest[0;0m) {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'URLRequest' in scope[0;0m
[0;36m18 |[0;0m self.method = urlRequest.httpMethod ?? "GET"
[0;36m19 |[0;0m self.url = urlRequest.url?.absoluteString ?? ""
/host/spi-builder-workspace/Sources/VCR/HTTPInteraction.swift:37:27: [1;31merror: [1;39m'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.[0;0m
[0;36m35 |[0;0m }
[0;36m36 |[0;0m
[0;36m37 |[0;0m init(from httpResponse: [4;39mHTTPURLResponse[0;0m, body: Data?) {
[0;36m|[0;0m `- [1;31merror: [1;39m'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.[0;0m
[0;36m38 |[0;0m self.statusCode = httpResponse.statusCode
[0;36m39 |[0;0m self.headers = httpResponse.allHeaderFields.reduce(into: [:]) { result, pair in
Foundation.HTTPURLResponse:2:18: [1;39mnote: [1;39m'HTTPURLResponse' has been explicitly marked unavailable here[0;0m
[0;36m1 |[0;0m @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
[0;36m2 |[0;0m public typealias HTTPURLResponse = AnyObject
[0;36m|[0;0m `- [1;39mnote: [1;39m'HTTPURLResponse' has been explicitly marked unavailable here[0;0m
/host/spi-builder-workspace/Sources/VCR/HTTPInteraction.swift:61:11: [1;31merror: [1;39mcannot find type 'URLRequest' in scope[0;0m
[0;36m59 |[0;0m }
[0;36m60 |[0;0m
[0;36m61 |[0;0m extension [4;39mURLRequest[0;0m {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'URLRequest' in scope[0;0m
[0;36m62 |[0;0m fileprivate var data: Data? {
[0;36m63 |[0;0m httpBody ?? httpBodyStream.map { Data(reading: $0, withBufferSize: 1024) }
/host/spi-builder-workspace/Sources/VCR/RequestMatcher.swift:12:34: [1;31merror: [1;39mcannot find type 'URLRequest' in scope[0;0m
[0;36m10 |[0;0m public init() {}
[0;36m11 |[0;0m
[0;36m12 |[0;0m public func matches(_ request: [4;39mURLRequest[0;0m, recorded: RecordedRequest) -> Bool {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'URLRequest' in scope[0;0m
[0;36m13 |[0;0m let method = request.httpMethod ?? "GET"
[0;36m14 |[0;0m let url = request.url?.absoluteString ?? ""
/host/spi-builder-workspace/Sources/VCR/RequestMatcher.swift:23:34: [1;31merror: [1;39mcannot find type 'URLRequest' in scope[0;0m
[0;36m21 |[0;0m public init() {}
[0;36m22 |[0;0m
[0;36m23 |[0;0m public func matches(_ request: [4;39mURLRequest[0;0m, recorded: RecordedRequest) -> Bool {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'URLRequest' in scope[0;0m
[0;36m24 |[0;0m let method = request.httpMethod ?? "GET"
[0;36m25 |[0;0m let url = request.url?.absoluteString ?? ""
/host/spi-builder-workspace/Sources/VCR/RequestMatcher.swift:46:34: [1;31merror: [1;39mcannot find type 'URLRequest' in scope[0;0m
[0;36m44 |[0;0m }
[0;36m45 |[0;0m
[0;36m46 |[0;0m public func matches(_ request: [4;39mURLRequest[0;0m, recorded: RecordedRequest) -> Bool {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'URLRequest' in scope[0;0m
[0;36m47 |[0;0m let method = request.httpMethod ?? "GET"
[0;36m48 |[0;0m let url = request.url?.absoluteString ?? ""
/host/spi-builder-workspace/Sources/VCR/RequestMatcher.swift:74:34: [1;31merror: [1;39mcannot find type 'URLRequest' in scope[0;0m
[0;36m72 |[0;0m }
[0;36m73 |[0;0m
[0;36m74 |[0;0m public func matches(_ request: [4;39mURLRequest[0;0m, recorded: RecordedRequest) -> Bool {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'URLRequest' in scope[0;0m
[0;36m75 |[0;0m matchers.allSatisfy { $0.matches(request, recorded: recorded) }
[0;36m76 |[0;0m }
/host/spi-builder-workspace/Sources/VCR/VCR.swift:220:20: [1;31merror: [1;39m'URLSessionConfiguration' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.[0;0m
[0;36m218 |[0;0m /// - Returns: URLSession with VCR protocol registered
[0;36m219 |[0;0m public static func urlSession(
[0;36m220 |[0;0m configuration: [4;39mURLSessionConfiguration[0;0m = .default
[0;36m|[0;0m `- [1;31merror: [1;39m'URLSessionConfiguration' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.[0;0m
[0;36m221 |[0;0m ) -> URLSession {
[0;36m222 |[0;0m let config = configuration
Foundation.URLSessionConfiguration:2:18: [1;39mnote: [1;39m'URLSessionConfiguration' has been explicitly marked unavailable here[0;0m
[0;36m1 |[0;0m @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
[0;36m2 |[0;0m public typealias URLSessionConfiguration = AnyObject
[0;36m|[0;0m `- [1;39mnote: [1;39m'URLSessionConfiguration' has been explicitly marked unavailable here[0;0m
/host/spi-builder-workspace/Sources/VCR/VCR.swift:221:8: [1;31merror: [1;39m'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.[0;0m
[0;36m219 |[0;0m public static func urlSession(
[0;36m220 |[0;0m configuration: URLSessionConfiguration = .default
[0;36m221 |[0;0m ) -> [4;39mURLSession[0;0m {
[0;36m|[0;0m `- [1;31merror: [1;39m'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.[0;0m
[0;36m222 |[0;0m let config = configuration
[0;36m223 |[0;0m var protocolClasses = config.protocolClasses ?? []
Foundation.URLSession:2:18: [1;39mnote: [1;39m'URLSession' has been explicitly marked unavailable here[0;0m
[0;36m1 |[0;0m @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
[0;36m2 |[0;0m public typealias URLSession = AnyObject
[0;36m|[0;0m `- [1;39mnote: [1;39m'URLSession' has been explicitly marked unavailable here[0;0m
/host/spi-builder-workspace/Sources/VCR/VCR.swift:220:47: [1;31merror: [1;39mvalue of type '_' expected to be instance of class or class-constrained type[0;0m
[0;36m218 |[0;0m /// - Returns: URLSession with VCR protocol registered
[0;36m219 |[0;0m public static func urlSession(
[0;36m220 |[0;0m configuration: URLSessionConfiguration = .default
[0;36m|[0;0m `- [1;31merror: [1;39mvalue of type '_' expected to be instance of class or class-constrained type[0;0m
[0;36m221 |[0;0m ) -> URLSession {
[0;36m222 |[0;0m let config = configuration
/host/spi-builder-workspace/Sources/VCR/VCR.swift:220:47: [1;31merror: [1;39mtype 'URLSessionConfiguration' (aka 'AnyObject') has no member 'default'[0;0m
[0;36m218 |[0;0m /// - Returns: URLSession with VCR protocol registered
[0;36m219 |[0;0m public static func urlSession(
[0;36m220 |[0;0m configuration: URLSessionConfiguration = [4;39m.default[0;0m
[0;36m|[0;0m `- [1;31merror: [1;39mtype 'URLSessionConfiguration' (aka 'AnyObject') has no member 'default'[0;0m
[0;36m221 |[0;0m ) -> URLSession {
[0;36m222 |[0;0m let config = configuration
/host/spi-builder-workspace/Sources/VCR/VCRURLProtocol.swift:5:25: [1;31merror: [1;39m'URLSessionDataTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.[0;0m
[0;36m3 |[0;0m /// URLProtocol subclass that intercepts URLSession requests for VCR recording/playback
[0;36m4 |[0;0m final class VCRURLProtocol: URLProtocol {
[0;36m5 |[0;0m private var dataTask: [4;39mURLSessionDataTask[0;0m?
[0;36m|[0;0m `- [1;31merror: [1;39m'URLSessionDataTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.[0;0m
[0;36m6 |[0;0m private static let internalSessionKey = "VCRURLProtocol.InternalSession"
[0;36m7 |[0;0m
Foundation.URLSessionDataTask:2:18: [1;39mnote: [1;39m'URLSessionDataTask' has been explicitly marked unavailable here[0;0m
[0;36m1 |[0;0m @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
[0;36m2 |[0;0m public typealias URLSessionDataTask = AnyObject
[0;36m|[0;0m `- [1;39mnote: [1;39m'URLSessionDataTask' has been explicitly marked unavailable here[0;0m
/host/spi-builder-workspace/Sources/VCR/VCRURLProtocol.swift:8:45: [1;31merror: [1;39mcannot find type 'URLRequest' in scope[0;0m
[0;36m6 |[0;0m private static let internalSessionKey = "VCRURLProtocol.InternalSession"
[0;36m7 |[0;0m
[0;36m8 |[0;0m override class func canInit(with request: [4;39mURLRequest[0;0m) -> Bool {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'URLRequest' in scope[0;0m
[0;36m9 |[0;0m // Don't intercept our own internal requests
[0;36m10 |[0;0m if URLProtocol.property(forKey: internalSessionKey, in: request) != nil {
/host/spi-builder-workspace/Sources/VCR/VCRURLProtocol.swift:24:68: [1;31merror: [1;39mcannot find type 'URLRequest' in scope[0;0m
[0;36m22 |[0;0m }
[0;36m23 |[0;0m
[0;36m24 |[0;0m override class func canonicalRequest(for request: URLRequest) -> [4;39mURLRequest[0;0m {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'URLRequest' in scope[0;0m
[0;36m25 |[0;0m return request
[0;36m26 |[0;0m }
/host/spi-builder-workspace/Sources/VCR/VCRURLProtocol.swift:24:53: [1;31merror: [1;39mcannot find type 'URLRequest' in scope[0;0m
[0;36m22 |[0;0m }
[0;36m23 |[0;0m
[0;36m24 |[0;0m override class func canonicalRequest(for request: [4;39mURLRequest[0;0m) -> URLRequest {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'URLRequest' in scope[0;0m
[0;36m25 |[0;0m return request
[0;36m26 |[0;0m }
/host/spi-builder-workspace/Sources/VCR/VCRURLProtocol.swift:28:17: [1;31merror: [1;39mmethod does not override any method from its superclass[0;0m
[0;36m26 |[0;0m }
[0;36m27 |[0;0m
[0;36m28 |[0;0m [4;39moverride[0;0m func startLoading() {
[0;36m|[0;0m `- [1;31merror: [1;39mmethod does not override any method from its superclass[0;0m
[0;36m29 |[0;0m guard let cassette = VCR.shared.currentCassette else {
[0;36m30 |[0;0m // No cassette inserted, pass through
/host/spi-builder-workspace/Sources/VCR/VCRURLProtocol.swift:52:17: [1;31merror: [1;39mmethod does not override any method from its superclass[0;0m
[0;36m50 |[0;0m }
[0;36m51 |[0;0m
[0;36m52 |[0;0m [4;39moverride[0;0m func stopLoading() {
[0;36m|[0;0m `- [1;31merror: [1;39mmethod does not override any method from its superclass[0;0m
[0;36m53 |[0;0m dataTask?.cancel()
[0;36m54 |[0;0m dataTask = nil
/host/spi-builder-workspace/Sources/VCR/VCRURLProtocol.swift:4:29: [1;31merror: [1;39m'URLProtocol' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.[0;0m
[0;36m2 |[0;0m
[0;36m3 |[0;0m /// URLProtocol subclass that intercepts URLSession requests for VCR recording/playback
[0;36m4 |[0;0m final class VCRURLProtocol: [4;39mURLProtocol[0;0m {
[0;36m|[0;0m `- [1;31merror: [1;39m'URLProtocol' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.[0;0m
[0;36m5 |[0;0m private var dataTask: URLSessionDataTask?
[0;36m6 |[0;0m private static let internalSessionKey = "VCRURLProtocol.InternalSession"
Foundation.URLProtocol:2:18: [1;39mnote: [1;39m'URLProtocol' has been explicitly marked unavailable here[0;0m
[0;36m1 |[0;0m @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
[0;36m2 |[0;0m public typealias URLProtocol = AnyObject
[0;36m|[0;0m `- [1;39mnote: [1;39m'URLProtocol' has been explicitly marked unavailable here[0;0m
Failed frontend command:
/usr/bin/swift-frontend -frontend -emit-module -experimental-skip-non-inlinable-function-bodies-without-types /host/spi-builder-workspace/Sources/VCR/Cassette.swift /host/spi-builder-workspace/Sources/VCR/HTTPInteraction.swift /host/spi-builder-workspace/Sources/VCR/RecordMode.swift /host/spi-builder-workspace/Sources/VCR/RequestMatcher.swift /host/spi-builder-workspace/Sources/VCR/VCR.swift /host/spi-builder-workspace/Sources/VCR/VCRConfiguration.swift /host/spi-builder-workspace/Sources/VCR/VCRURLProtocol.swift -target x86_64-unknown-linux-gnu -disable-objc-interop -I /host/spi-builder-workspace/.build/out/Products/Debug-linux-x86_64 -module-cache-path /host/spi-builder-workspace/.build/out/ModuleCache.noindex -color-diagnostics -Xcc -fcolor-diagnostics -enable-testing -g -debug-info-format\=dwarf -dwarf-version\=4 -swift-version 6 -Onone -D SWIFT_PACKAGE -D DEBUG -D SWIFT_MODULE_RESOURCE_BUNDLE_UNAVAILABLE -D Xcode -serialize-debugging-options -enable-experimental-feature DebugDescriptionMacro -empty-abi-descriptor -external-plugin-path /usr/lib/swift/host/plugins/testing\#/usr/bin/swift-plugin-server -validate-clang-modules-once -clang-build-session-file /host/spi-builder-workspace/.build/out/ModuleCache.noindex/Session.modulevalidation -Xcc -working-directory -Xcc /host -enable-anonymous-context-mangled-names -file-compilation-dir /host -Xcc -fno-omit-frame-pointer -Xcc -D_LIBCPP_HARDENING_MODE\=_LIBCPP_HARDENING_MODE_DEBUG -Xcc -fmodules-prune-interval\=86400 -Xcc -fmodules-prune-after\=345600 -Xcc -I/host/spi-builder-workspace/.build/out/Products/Debug-linux-x86_64/include -Xcc -I/host/spi-builder-workspace/.build/out/Intermediates.noindex/VCR.build/Debug-linux-x86_64/VCR-t.build/DerivedSources-normal/x86_64 -Xcc -I/host/spi-builder-workspace/.build/out/Intermediates.noindex/VCR.build/Debug-linux-x86_64/VCR-t.build/DerivedSources/x86_64 -Xcc -I/host/spi-builder-workspace/.build/out/Intermediates.noindex/VCR.build/Debug-linux-x86_64/VCR-t.build/DerivedSources -Xcc -DSWIFT_PACKAGE -Xcc -DDEBUG\=1 -no-auto-bridging-header-chaining -module-name VCR -package-name spi_builder_workspace -const-gather-protocols-file /host/spi-builder-workspace/.build/out/Intermediates.noindex/VCR.build/Debug-linux-x86_64/VCR-t.build/Objects-normal/x86_64/VCR_const_extract_protocols.json -in-process-plugin-server-path /usr/lib/swift/host/libSwiftInProcPluginServer.so -plugin-path /usr/lib/swift/host/plugins -plugin-path /usr/local/lib/swift/host/plugins -emit-module-doc-path /host/spi-builder-workspace/.build/out/Intermediates.noindex/VCR.build/Debug-linux-x86_64/VCR-t.build/Objects-normal/x86_64/Modules/VCR.swiftdoc -emit-module-source-info-path /host/spi-builder-workspace/.build/out/Intermediates.noindex/VCR.build/Debug-linux-x86_64/VCR-t.build/Objects-normal/x86_64/Modules/VCR.swiftsourceinfo -emit-objc-header-path /host/spi-builder-workspace/.build/out/Intermediates.noindex/VCR.build/Debug-linux-x86_64/VCR-t.build/Objects-normal/x86_64/VCR-Swift.h -serialize-diagnostics-path /host/spi-builder-workspace/.build/out/Intermediates.noindex/VCR.build/Debug-linux-x86_64/VCR-t.build/Objects-normal/x86_64/VCR-primary-emit-module.dia -emit-dependencies-path /host/spi-builder-workspace/.build/out/Intermediates.noindex/VCR.build/Debug-linux-x86_64/VCR-t.build/Objects-normal/x86_64/VCR-primary-emit-module.d -parse-as-library -o /host/spi-builder-workspace/.build/out/Intermediates.noindex/VCR.build/Debug-linux-x86_64/VCR-t.build/Objects-normal/x86_64/Modules/VCR.swiftmodule
error: Build failed
BUILD FAILURE 6.4 linux