Build Information
Failed to build SwiftTerm, reference v1.99.2 (a183c1), with Swift 6.4 for Wasm on 31 Oct 2026 17:52:25 UTC.
Build Command
bash -c docker run --pull=always --rm -v "checkouts-54344847-3":/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.4
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/migueldeicaza/SwiftTerm.git
Reference: v1.99.2
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/migueldeicaza/SwiftTerm
* tag v1.99.2 -> FETCH_HEAD
HEAD is now at a183c15 make LocalProcessTerminalView.dataReceived(slice:) unavailable (#742)
Cloned https://github.com/migueldeicaza/SwiftTerm.git
Revision (git rev-parse @):
a183c15b52858530a17de57dcc72b93eeebc9857
SUCCESS checkout https://github.com/migueldeicaza/SwiftTerm.git at v1.99.2
========================================
Build
========================================
Selected platform: wasm
Swift version: 6.4
Building package at path: $PWD
https://github.com/migueldeicaza/SwiftTerm.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-54344847-3":/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:0ad19d16955074ecc72bbe910025b19c4e4614184c1a48afc82660d4c7620121
Status: Image is up to date for registry.gitlab.com/saguaro1/spi-images:wasm-6.4-latest
Fetching https://github.com/apple/swift-docc-plugin
Fetching https://github.com/tayloraswift/swift-png
Fetching https://github.com/apple/swift-argument-parser
[1/7626] Fetching swift-png
[2/9971] Fetching swift-png, swift-docc-plugin
[4482/29291] Fetching swift-png, swift-docc-plugin, swift-argument-parser
Fetched https://github.com/apple/swift-argument-parser (0.98s)
[5015/9971] Fetching swift-png, swift-docc-plugin
Fetched https://github.com/apple/swift-docc-plugin (4.10s)
Fetched https://github.com/tayloraswift/swift-png (4.19s)
Computing version for https://github.com/tayloraswift/swift-png
Computed https://github.com/tayloraswift/swift-png at 4.5.2 (4.36s)
Fetching https://github.com/rarestype/h
[1/1374] Fetching h
Fetched https://github.com/rarestype/h (0.44s)
Computing version for https://github.com/rarestype/h
Computed https://github.com/rarestype/h at 1.0.1 (0.60s)
Computing version for https://github.com/apple/swift-docc-plugin
Computed https://github.com/apple/swift-docc-plugin at 1.5.0 (0.90s)
Fetching https://github.com/swiftlang/swift-docc-symbolkit
[1/3850] Fetching swift-docc-symbolkit
Fetched https://github.com/swiftlang/swift-docc-symbolkit (0.58s)
Computing version for https://github.com/swiftlang/swift-docc-symbolkit
Computed https://github.com/swiftlang/swift-docc-symbolkit at 1.0.0 (0.80s)
Computing version for https://github.com/apple/swift-argument-parser
Computed https://github.com/apple/swift-argument-parser at 1.8.2 (0.15s)
Creating working copy for https://github.com/apple/swift-docc-plugin
Working copy of https://github.com/apple/swift-docc-plugin resolved at 1.5.0
Creating working copy for https://github.com/apple/swift-argument-parser
Working copy of https://github.com/apple/swift-argument-parser resolved at 1.8.2
Creating working copy for https://github.com/tayloraswift/swift-png
Working copy of https://github.com/tayloraswift/swift-png resolved at 4.5.2
Creating working copy for https://github.com/swiftlang/swift-docc-symbolkit
Working copy of https://github.com/swiftlang/swift-docc-symbolkit resolved at 1.0.0
Creating working copy for https://github.com/rarestype/h
Working copy of https://github.com/rarestype/h resolved at 1.0.1
Building for debugging...
[Computing dependencies]
[Pre-planning 1 / 417]
[Planning deferred tasks]
[77 / 146] ArgumentParserToolInfo
[92 / 155]
[95 / 160] ArgumentParserToolInfo
[105 / 160] CRC
[106 / 160] Base16
[111 / 163]
[120 / 166] ArgumentParser
[125 / 186] LZ77
[128 / 187] LZ77
[132 / 187] LZ77
[133 / 187] PNG
[139 / 187] LZ77
[140 / 187] LZ77-product
[143 / 187] BaseDigits
[147 / 187] BaseDigits
[151 / 187] ArgumentParser
[153 / 187] ArgumentParser-product
[154 / 187] ArgumentParser-product
[162 / 190] SwiftTermBuildInfoGenerator-product
[164 / 199] SwiftTermBuildInfoGenerator-product
[166 / 199] PNG
[167 / 199] PNG
[168 / 199] PNG
[170 / 199] PNG
[174 / 199] PNG
[176 / 199] PNG-product
[177 / 199] ArgumentParser
[180 / 199] ArgumentParser
[181 / 200] ArgumentParser
[183 / 200] PNG
[187 / 201] SwiftTerm
[197 / 211] SwiftTerm
[204 / 213] SwiftTerm
[210 / 220] termcast-product
error: SwiftCompile normal wasm32 failed with a nonzero exit code. Command line: cd /host
/host/spi-builder-workspace/Sources/Termcast/TermcastRecorder.swift:19:26: [1;31merror: [1;39mcannot find type 'LocalProcess' in scope[0;0m
[0;36m17 |[0;0m @MainActor
[0;36m18 |[0;0m private final class TermcastInputHandler {
[0;36m19 |[0;0m private let process: [4;39mLocalProcess[0;0m
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'LocalProcess' in scope[0;0m
[0;36m20 |[0;0m private let startTime: TimeInterval
[0;36m21 |[0;0m private let fileHandle: FileHandle?
/host/spi-builder-workspace/Sources/Termcast/TermcastRecorder.swift:24:19: [1;31merror: [1;39mcannot find type 'LocalProcess' in scope[0;0m
[0;36m22 |[0;0m private let encoder = JSONEncoder()
[0;36m23 |[0;0m
[0;36m24 |[0;0m init(process: [4;39mLocalProcess[0;0m, startTime: TimeInterval, fileHandle: FileHandle?) {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'LocalProcess' in scope[0;0m
[0;36m25 |[0;0m self.process = process
[0;36m26 |[0;0m self.startTime = startTime
/host/spi-builder-workspace/Sources/Termcast/TermcastRecorder.swift:53:26: [1;31merror: [1;39mcannot find type 'LocalProcess' in scope[0;0m
[0;36m51 |[0;0m private var fileHandle: FileHandle?
[0;36m52 |[0;0m private var startTime: TimeInterval = 0
[0;36m53 |[0;0m private var process: [4;39mLocalProcess[0;0m?
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'LocalProcess' in scope[0;0m
[0;36m54 |[0;0m private var initialWindowSize: winsize = winsize()
[0;36m55 |[0;0m private let encoder = JSONEncoder()
/host/spi-builder-workspace/Sources/Termcast/TermcastRecorder.swift:54:36: [1;31merror: [1;39mcannot find type 'winsize' in scope[0;0m
[0;36m52 |[0;0m private var startTime: TimeInterval = 0
[0;36m53 |[0;0m private var process: LocalProcess?
[0;36m54 |[0;0m private var initialWindowSize: [4;39mwinsize[0;0m = winsize()
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'winsize' in scope[0;0m
[0;36m55 |[0;0m private let encoder = JSONEncoder()
[0;36m56 |[0;0m private var timeoutTimer: DispatchSourceTimer?
/host/spi-builder-workspace/Sources/Termcast/TermcastRecorder.swift:56:31: [1;31merror: [1;39mcannot find type 'DispatchSourceTimer' in scope[0;0m
[0;36m54 |[0;0m private var initialWindowSize: winsize = winsize()
[0;36m55 |[0;0m private let encoder = JSONEncoder()
[0;36m56 |[0;0m private var timeoutTimer: [4;39mDispatchSourceTimer[0;0m?
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'DispatchSourceTimer' in scope[0;0m
[0;36m57 |[0;0m private var originalTermios: termios = termios()
[0;36m58 |[0;0m private var originalStdoutTermios: termios = termios()
/host/spi-builder-workspace/Sources/Termcast/TermcastRecorder.swift:57:34: [1;31merror: [1;39mcannot find type 'termios' in scope[0;0m
[0;36m55 |[0;0m private let encoder = JSONEncoder()
[0;36m56 |[0;0m private var timeoutTimer: DispatchSourceTimer?
[0;36m57 |[0;0m private var originalTermios: [4;39mtermios[0;0m = termios()
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'termios' in scope[0;0m
[0;36m58 |[0;0m private var originalStdoutTermios: termios = termios()
[0;36m59 |[0;0m private var terminalModeSet = false
/host/spi-builder-workspace/Sources/Termcast/TermcastRecorder.swift:58:40: [1;31merror: [1;39mcannot find type 'termios' in scope[0;0m
[0;36m56 |[0;0m private var timeoutTimer: DispatchSourceTimer?
[0;36m57 |[0;0m private var originalTermios: termios = termios()
[0;36m58 |[0;0m private var originalStdoutTermios: [4;39mtermios[0;0m = termios()
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'termios' in scope[0;0m
[0;36m59 |[0;0m private var terminalModeSet = false
[0;36m60 |[0;0m private var stdoutModeSet = false
/host/spi-builder-workspace/Sources/Termcast/TermcastRecorder.swift:54:46: [1;31merror: [1;39mcannot find 'winsize' in scope[0;0m
[0;36m52 |[0;0m private var startTime: TimeInterval = 0
[0;36m53 |[0;0m private var process: LocalProcess?
[0;36m54 |[0;0m private var initialWindowSize: winsize = [4;39mwinsize[0;0m()
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find 'winsize' in scope[0;0m
[0;36m55 |[0;0m private let encoder = JSONEncoder()
[0;36m56 |[0;0m private var timeoutTimer: DispatchSourceTimer?
/host/spi-builder-workspace/Sources/Termcast/TermcastRecorder.swift:57:44: [1;31merror: [1;39mcannot find 'termios' in scope[0;0m
[0;36m55 |[0;0m private let encoder = JSONEncoder()
[0;36m56 |[0;0m private var timeoutTimer: DispatchSourceTimer?
[0;36m57 |[0;0m private var originalTermios: termios = [4;39mtermios[0;0m()
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find 'termios' in scope[0;0m
[0;36m58 |[0;0m private var originalStdoutTermios: termios = termios()
[0;36m59 |[0;0m private var terminalModeSet = false
/host/spi-builder-workspace/Sources/Termcast/TermcastRecorder.swift:58:50: [1;31merror: [1;39mcannot find 'termios' in scope[0;0m
[0;36m56 |[0;0m private var timeoutTimer: DispatchSourceTimer?
[0;36m57 |[0;0m private var originalTermios: termios = termios()
[0;36m58 |[0;0m private var originalStdoutTermios: termios = [4;39mtermios[0;0m()
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find 'termios' in scope[0;0m
[0;36m59 |[0;0m private var terminalModeSet = false
[0;36m60 |[0;0m private var stdoutModeSet = false
/host/spi-builder-workspace/Sources/Termcast/TermcastRecorder.swift:381:29: [1;31merror: [1;39mcannot find type 'LocalProcessDelegate' in scope[0;0m
[0;36m379 |[0;0m }
[0;36m380 |[0;0m
[0;36m381 |[0;0m extension TermcastRecorder: [4;39mLocalProcessDelegate[0;0m {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'LocalProcessDelegate' in scope[0;0m
[0;36m382 |[0;0m func processTerminated(_ source: LocalProcess, exitCode: Int32?) {
[0;36m383 |[0;0m debugMessage("[DEBUG] Process terminated with exit code: \(exitCode ?? -1)\n")
/host/spi-builder-workspace/Sources/Termcast/TermcastRecorder.swift:382:38: [1;31merror: [1;39mcannot find type 'LocalProcess' in scope[0;0m
[0;36m380 |[0;0m
[0;36m381 |[0;0m extension TermcastRecorder: LocalProcessDelegate {
[0;36m382 |[0;0m func processTerminated(_ source: [4;39mLocalProcess[0;0m, exitCode: Int32?) {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'LocalProcess' in scope[0;0m
[0;36m383 |[0;0m debugMessage("[DEBUG] Process terminated with exit code: \(exitCode ?? -1)\n")
[0;36m384 |[0;0m restoreTerminalMode()
/host/spi-builder-workspace/Sources/Termcast/TermcastRecorder.swift:403:29: [1;31merror: [1;39mcannot find type 'winsize' in scope[0;0m
[0;36m401 |[0;0m }
[0;36m402 |[0;0m
[0;36m403 |[0;0m func getWindowSize() -> [4;39mwinsize[0;0m {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'winsize' in scope[0;0m
[0;36m404 |[0;0m return initialWindowSize
[0;36m405 |[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/Termcast/AsciicastFormat.swift /host/spi-builder-workspace/Sources/Termcast/TermcastPlayer.swift /host/spi-builder-workspace/Sources/Termcast/TermcastRecorder.swift /host/spi-builder-workspace/Sources/Termcast/main.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 PortableGraphics -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/SwiftTerm.build/Debug-webassembly-wasm32/termcast-p.build/DerivedSources-normal/wasm32 -Xcc -I/host/spi-builder-workspace/.build/out/Intermediates.noindex/SwiftTerm.build/Debug-webassembly-wasm32/termcast-p.build/DerivedSources/wasm32 -Xcc -I/host/spi-builder-workspace/.build/out/Intermediates.noindex/SwiftTerm.build/Debug-webassembly-wasm32/termcast-p.build/DerivedSources -Xcc -DSWIFT_PACKAGE -Xcc -DDEBUG\=1 -no-auto-bridging-header-chaining -module-name Termcast -package-name spi_builder_workspace -const-gather-protocols-file /host/spi-builder-workspace/.build/out/Intermediates.noindex/SwiftTerm.build/Debug-webassembly-wasm32/termcast-p.build/Objects-normal/wasm32/termcast_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/SwiftTerm.build/Debug-webassembly-wasm32/termcast-p.build/Objects-normal/wasm32/Modules/Termcast.swiftdoc -emit-module-source-info-path /host/spi-builder-workspace/.build/out/Intermediates.noindex/SwiftTerm.build/Debug-webassembly-wasm32/termcast-p.build/Objects-normal/wasm32/Modules/Termcast.swiftsourceinfo -serialize-diagnostics-path /host/spi-builder-workspace/.build/out/Intermediates.noindex/SwiftTerm.build/Debug-webassembly-wasm32/termcast-p.build/Objects-normal/wasm32/termcast-primary-emit-module.dia -emit-dependencies-path /host/spi-builder-workspace/.build/out/Intermediates.noindex/SwiftTerm.build/Debug-webassembly-wasm32/termcast-p.build/Objects-normal/wasm32/termcast-primary-emit-module.d -o /host/spi-builder-workspace/.build/out/Intermediates.noindex/SwiftTerm.build/Debug-webassembly-wasm32/termcast-p.build/Objects-normal/wasm32/Modules/Termcast.swiftmodule
error: Build failed
BUILD FAILURE 6.4 wasm