Build Information
Failed to build PerfectLogger, reference 4.0.0 (733b69), with Swift 6.4 for Wasm on 17 Oct 2026 18:24:17 UTC.
Build Command
bash -c docker run --pull=always --rm -v "checkouts-54344845-0":/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:wasm-6.4-latest swift build --swift-sdk swift-6.4.0-RELEASE_wasm 2>&1Build Log
========================================
RunAll
========================================
Builder version: 5.1.3
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/perfectlysoft/perfect-logger.git
Reference: 4.0.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/perfectlysoft/perfect-logger
* tag 4.0.0 -> FETCH_HEAD
HEAD is now at 733b69f Merge pull request #10 from PerfectlySoft/release-4.0.0
Cloned https://github.com/perfectlysoft/perfect-logger.git
Revision (git rev-parse @):
733b69f55fb8e30256ff85f2ffd39af60a41e141
SUCCESS checkout https://github.com/perfectlysoft/perfect-logger.git at 4.0.0
========================================
Build
========================================
Selected platform: wasm
Swift version: 6.4
Building package at path: $PWD
https://github.com/perfectlysoft/perfect-logger.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-54344845-0":/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:wasm-6.4-latest swift build --swift-sdk swift-6.4.0-RELEASE_wasm 2>&1
wasm-6.4-latest: Pulling from saguaro1/spi-images
Digest: sha256:7a2e5502d3bb6640f9b2bbb1dadf9967024364ce9ed0ed0bd80cf1b699d193fd
Status: Image is up to date for registry.gitlab.com/saguaro1/spi-images:wasm-6.4-latest
Fetching https://github.com/apple/swift-log.git
[1/8305] Fetching swift-log
Fetched https://github.com/apple/swift-log.git (0.54s)
Computing version for https://github.com/apple/swift-log.git
Computed https://github.com/apple/swift-log.git at 1.16.1 (0.70s)
Creating working copy for https://github.com/apple/swift-log.git
Working copy of https://github.com/apple/swift-log.git resolved at 1.16.1
Building for debugging...
[Pre-planning 1 / 96]
[23 / 38] Logging
[32 / 47] Logging
[42 / 55] PerfectLogger
[45 / 55] PerfectLogger
[48 / 56] PerfectLogger
error: SwiftCompile normal wasm32 failed with a nonzero exit code. Command line: cd /host
/host/spi-builder-workspace/Sources/PerfectLogger/RemoteLogHandler.swift:88:38: [1;31merror: [1;39mcannot find type 'URLRequest' in scope[0;0m
[0;36m86 |[0;0m /// one task at a time.
[0;36m87 |[0;0m final class RemoteSink: @unchecked Sendable {
[0;36m88 |[0;0m typealias Transport = @Sendable ([4;39mURLRequest[0;0m) async -> Void
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'URLRequest' in scope[0;0m
[0;36m89 |[0;0m
[0;36m90 |[0;0m static let defaultCapacity = 1_000
/host/spi-builder-workspace/Sources/PerfectLogger/RemoteLogHandler.swift:111:20: [1;31merror: [1;39m'@escaping' only applies to function types[0;0m
[0;36m109 |[0;0m capacity: Int = RemoteSink.defaultCapacity,
[0;36m110 |[0;0m timeout: TimeInterval = RemoteSink.defaultTimeout,
[0;36m111 |[0;0m transport: @escaping Transport = RemoteSink.urlSession
[0;36m|[0;0m `- [1;31merror: [1;39m'@escaping' only applies to function types[0;0m
[0;36m112 |[0;0m ) {
[0;36m113 |[0;0m self.url = url
/host/spi-builder-workspace/Sources/PerfectLogger/RemoteLogHandler.swift:176:26: [1;31merror: [1;39mcannot find type 'URLRequest' in scope[0;0m
[0;36m174 |[0;0m /// trickles its response, which `URLRequest.timeoutInterval` (an idle
[0;36m175 |[0;0m /// timeout, and ignored by Linux's `URLSession.shared`) does not.
[0;36m176 |[0;0m func send(_ request: [4;39mURLRequest[0;0m) async {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'URLRequest' in scope[0;0m
[0;36m177 |[0;0m let transport = self.transport
[0;36m178 |[0;0m let timeout = self.timeout
/host/spi-builder-workspace/Sources/PerfectLogger/RemoteLogHandler.swift:231:16: [1;31merror: [1;39mstatic property 'session' is not concurrency-safe because non-'Sendable' type 'URLSession' (aka 'AnyObject') may have shared mutable state[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/mutable-global-variable\MutableGlobalVariable]8;;\]
[0;36m229 |[0;0m /// An ephemeral session whose request and resource timeouts match
[0;36m230 |[0;0m /// ``defaultTimeout``, so the URL loading system gives up too.
[0;36m231 |[0;0m static let session: URLSession = {
[0;36m|[0;0m |- [1;31merror: [1;39mstatic property 'session' is not concurrency-safe because non-'Sendable' type 'URLSession' (aka 'AnyObject') may have shared mutable state[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/mutable-global-variable\MutableGlobalVariable]8;;\]
[0;36m|[0;0m |- [1;39mnote: [1;39madd '@MainActor' to make static property 'session' part of global actor 'MainActor'[0;0m
[0;36m|[0;0m `- [1;39mnote: [1;39mdisable concurrency-safety checks if accesses are protected by an external synchronization mechanism[0;0m
[0;36m232 |[0;0m let configuration = URLSessionConfiguration.ephemeral
[0;36m233 |[0;0m configuration.timeoutIntervalForRequest = defaultTimeout
/host/spi-builder-workspace/Sources/PerfectLogger/RemoteLogHandler.swift:231:25: [1;31merror: [1;39m'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.[0;0m
[0;36m229 |[0;0m /// An ephemeral session whose request and resource timeouts match
[0;36m230 |[0;0m /// ``defaultTimeout``, so the URL loading system gives up too.
[0;36m231 |[0;0m static let session: [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;36m232 |[0;0m let configuration = URLSessionConfiguration.ephemeral
[0;36m233 |[0;0m configuration.timeoutIntervalForRequest = defaultTimeout
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/PerfectLogger/RemoteLogHandler.swift:232:53: [1;31merror: [1;39mtype 'URLSessionConfiguration' (aka 'AnyObject') has no member 'ephemeral'[0;0m
[0;36m230 |[0;0m /// ``defaultTimeout``, so the URL loading system gives up too.
[0;36m231 |[0;0m static let session: URLSession = {
[0;36m232 |[0;0m let configuration = [4;39mURLSessionConfiguration[0;0m.[4;39mephemeral[0;0m
[0;36m|[0;0m `- [1;31merror: [1;39mtype 'URLSessionConfiguration' (aka 'AnyObject') has no member 'ephemeral'[0;0m
[0;36m233 |[0;0m configuration.timeoutIntervalForRequest = defaultTimeout
[0;36m234 |[0;0m configuration.timeoutIntervalForResource = defaultTimeout
/host/spi-builder-workspace/Sources/PerfectLogger/RemoteLogHandler.swift:239:32: [1;31merror: [1;39mvalue of type 'URLSession' (aka 'AnyObject') has no member 'data'[0;0m
[0;36m237 |[0;0m
[0;36m238 |[0;0m static let urlSession: Transport = { request in
[0;36m239 |[0;0m _ = try? await [4;39msession[0;0m.[4;39mdata[0;0m(for: request)
[0;36m|[0;0m `- [1;31merror: [1;39mvalue of type 'URLSession' (aka 'AnyObject') has no member 'data'[0;0m
[0;36m240 |[0;0m }
[0;36m241 |[0;0m
[#MutableGlobalVariable]: <https://docs.swift.org/compiler/documentation/diagnostics/mutable-global-variable>
Failed frontend command:
/usr/bin/swift-frontend -frontend -emit-module -experimental-skip-non-inlinable-function-bodies-without-types /host/spi-builder-workspace/Sources/PerfectLogger/Bootstrap.swift /host/spi-builder-workspace/Sources/PerfectLogger/FileLogHandler.swift /host/spi-builder-workspace/Sources/PerfectLogger/LogFile.swift /host/spi-builder-workspace/Sources/PerfectLogger/LogOptions.swift /host/spi-builder-workspace/Sources/PerfectLogger/LogPriority.swift /host/spi-builder-workspace/Sources/PerfectLogger/RemoteLogHandler.swift -target wasm32-unknown-wasip1 -disable-objc-interop -sdk /root/.swiftpm/swift-sdks/swift-6.4.0-RELEASE_wasm.artifactbundle/swift-6.4.0-RELEASE_wasm/wasm32-unknown-wasip1/WASI.sdk -sysroot /root/.swiftpm/swift-sdks/swift-6.4.0-RELEASE_wasm.artifactbundle/swift-6.4.0-RELEASE_wasm/wasm32-unknown-wasip1/WASI.sdk -I /host/spi-builder-workspace/.build/out/Products/Debug-webassembly-wasm32 -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 -resource-dir /root/.swiftpm/swift-sdks/swift-6.4.0-RELEASE_wasm.artifactbundle/swift-6.4.0-RELEASE_wasm/wasm32-unknown-wasip1/swift.xctoolchain/usr/lib/swift_static -use-static-resource-dir -enable-anonymous-context-mangled-names -file-compilation-dir /host -Xcc -resource-dir -Xcc /root/.swiftpm/swift-sdks/swift-6.4.0-RELEASE_wasm.artifactbundle/swift-6.4.0-RELEASE_wasm/wasm32-unknown-wasip1/swift.xctoolchain/usr/lib/swift_static/clang -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-webassembly-wasm32/include -Xcc -I/host/spi-builder-workspace/.build/out/Intermediates.noindex/PerfectLogger.build/Debug-webassembly-wasm32/PerfectLogger-t.build/DerivedSources-normal/wasm32 -Xcc -I/host/spi-builder-workspace/.build/out/Intermediates.noindex/PerfectLogger.build/Debug-webassembly-wasm32/PerfectLogger-t.build/DerivedSources/wasm32 -Xcc -I/host/spi-builder-workspace/.build/out/Intermediates.noindex/PerfectLogger.build/Debug-webassembly-wasm32/PerfectLogger-t.build/DerivedSources -Xcc -DSWIFT_PACKAGE -Xcc -DDEBUG\=1 -no-auto-bridging-header-chaining -module-name PerfectLogger -package-name spi_builder_workspace -const-gather-protocols-file /host/spi-builder-workspace/.build/out/Intermediates.noindex/PerfectLogger.build/Debug-webassembly-wasm32/PerfectLogger-t.build/Objects-normal/wasm32/PerfectLogger_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/PerfectLogger.build/Debug-webassembly-wasm32/PerfectLogger-t.build/Objects-normal/wasm32/Modules/PerfectLogger.swiftdoc -emit-module-source-info-path /host/spi-builder-workspace/.build/out/Intermediates.noindex/PerfectLogger.build/Debug-webassembly-wasm32/PerfectLogger-t.build/Objects-normal/wasm32/Modules/PerfectLogger.swiftsourceinfo -emit-objc-header-path /host/spi-builder-workspace/.build/out/Intermediates.noindex/PerfectLogger.build/Debug-webassembly-wasm32/PerfectLogger-t.build/Objects-normal/wasm32/PerfectLogger-Swift.h -serialize-diagnostics-path /host/spi-builder-workspace/.build/out/Intermediates.noindex/PerfectLogger.build/Debug-webassembly-wasm32/PerfectLogger-t.build/Objects-normal/wasm32/PerfectLogger-primary-emit-module.dia -emit-dependencies-path /host/spi-builder-workspace/.build/out/Intermediates.noindex/PerfectLogger.build/Debug-webassembly-wasm32/PerfectLogger-t.build/Objects-normal/wasm32/PerfectLogger-primary-emit-module.d -parse-as-library -o /host/spi-builder-workspace/.build/out/Intermediates.noindex/PerfectLogger.build/Debug-webassembly-wasm32/PerfectLogger-t.build/Objects-normal/wasm32/Modules/PerfectLogger.swiftmodule
error: Build failed
BUILD FAILURE 6.4 wasm