The Swift Package Index logo.Swift Package Index

Build Information

Failed to build Swell, reference main (458492), with Swift 6.2 for Wasm on 6 Mar 2026 18:54:05 UTC.

Build Command

bash -c docker run --pull=always --rm -v "checkouts-4606859-1":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/finestructure/spi-images:wasm-6.2-latest swift build --swift-sdk wasm32-unknown-wasip1 2>&1

Build Log

========================================
RunAll
========================================
Builder version: 4.68.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/MauriceElliott/Swell.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/MauriceElliott/Swell
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
HEAD is now at 458492b fixed some build warns
Cloned https://github.com/MauriceElliott/Swell.git
Revision (git rev-parse @):
458492bef2120861d355af678e851200ef8bd78c
SUCCESS checkout https://github.com/MauriceElliott/Swell.git at main
========================================
Build
========================================
Selected platform:         wasm
Swift version:             6.2
Building package at path:  $PWD
https://github.com/MauriceElliott/Swell.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4606859-1":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/finestructure/spi-images:wasm-6.2-latest swift build --swift-sdk wasm32-unknown-wasip1 2>&1
wasm-6.2-latest: Pulling from finestructure/spi-images
Digest: sha256:c50555b47c4db0b0576f9f25702fbe2fdff28194c4a4f4c23a7dce4b3504c85e
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:wasm-6.2-latest
warning: multiple Swift SDKs match target triple `wasm32-unknown-wasip1` and host triple x86_64-unknown-linux-gnu, selected one at /root/.swiftpm/swift-sdks/swift-6.2-RELEASE_wasm.artifactbundle/swift-6.2-RELEASE_wasm/wasm32-unknown-wasip1/swift-sdk.json
Building for debugging...
[0/5] Write sources
[1/5] Write swift-version-24593BA9C3E375BF.txt
[3/28] Emitting module Swell
[4/31] Compiling Swell PromptState.swift
[5/31] Compiling Swell Parser.swift
[6/31] Compiling Swell main.swift
[7/31] Compiling Swell SessionState.swift
[8/31] Compiling Swell getAlias.swift
[9/31] Compiling Swell getPrompt.swift
[10/31] Compiling Swell FlushWrapper.swift
[11/31] Compiling Swell HandlerRegistry.swift
[12/31] Compiling Swell HandleArrowKey.swift
[13/31] Compiling Swell ExitCommand.swift
[14/31] Compiling Swell ConfigManager.swift
[15/31] Compiling Swell Evaluator.swift
[16/31] Compiling Swell HandleBackspace.swift
[17/31] Compiling Swell HandleDefault.swift
[18/31] Compiling Swell HandleEnter.swift
[19/31] Compiling Swell ReadRawInput.swift
/host/spi-builder-workspace/Sources/IO/ReadRawInput.swift:4:19: error: cannot find 'termios' in scope
 2 |
 3 | func readRawInput() -> String? {
 4 |     var oldTerm = termios()
   |                   `- error: cannot find 'termios' in scope
 5 |     tcgetattr(STDIN_FILENO, &oldTerm)
 6 |     var newTerm = oldTerm;
/host/spi-builder-workspace/Sources/IO/ReadRawInput.swift:5:5: error: cannot find 'tcgetattr' in scope
 3 | func readRawInput() -> String? {
 4 |     var oldTerm = termios()
 5 |     tcgetattr(STDIN_FILENO, &oldTerm)
   |     `- error: cannot find 'tcgetattr' in scope
 6 |     var newTerm = oldTerm;
 7 |     cfmakeraw(&newTerm)
/host/spi-builder-workspace/Sources/IO/ReadRawInput.swift:7:5: error: cannot find 'cfmakeraw' in scope
 5 |     tcgetattr(STDIN_FILENO, &oldTerm)
 6 |     var newTerm = oldTerm;
 7 |     cfmakeraw(&newTerm)
   |     `- error: cannot find 'cfmakeraw' in scope
 8 |     tcsetattr(STDIN_FILENO, TCSANOW, &newTerm)
 9 |
/host/spi-builder-workspace/Sources/IO/ReadRawInput.swift:8:5: error: cannot find 'tcsetattr' in scope
 6 |     var newTerm = oldTerm;
 7 |     cfmakeraw(&newTerm)
 8 |     tcsetattr(STDIN_FILENO, TCSANOW, &newTerm)
   |     `- error: cannot find 'tcsetattr' in scope
 9 |
10 |     var cCharacter: [CChar] = [0, 0]
/host/spi-builder-workspace/Sources/IO/ReadRawInput.swift:8:29: error: cannot find 'TCSANOW' in scope
 6 |     var newTerm = oldTerm;
 7 |     cfmakeraw(&newTerm)
 8 |     tcsetattr(STDIN_FILENO, TCSANOW, &newTerm)
   |                             `- error: cannot find 'TCSANOW' in scope
 9 |
10 |     var cCharacter: [CChar] = [0, 0]
/host/spi-builder-workspace/Sources/IO/ReadRawInput.swift:13:5: error: cannot find 'tcsetattr' in scope
11 |     let readBytes = read(STDIN_FILENO, &cCharacter, 1)
12 |
13 |     tcsetattr(STDIN_FILENO, TCSANOW, &oldTerm)
   |     `- error: cannot find 'tcsetattr' in scope
14 |     if readBytes > 0 {
15 |         let bytes = cCharacter.prefix(1).map { UInt8(bitPattern: $0) }
/host/spi-builder-workspace/Sources/IO/ReadRawInput.swift:13:29: error: cannot find 'TCSANOW' in scope
11 |     let readBytes = read(STDIN_FILENO, &cCharacter, 1)
12 |
13 |     tcsetattr(STDIN_FILENO, TCSANOW, &oldTerm)
   |                             `- error: cannot find 'TCSANOW' in scope
14 |     if readBytes > 0 {
15 |         let bytes = cCharacter.prefix(1).map { UInt8(bitPattern: $0) }
[20/31] Compiling Swell ASTNode.swift
/host/spi-builder-workspace/Sources/IO/ReadRawInput.swift:4:19: error: cannot find 'termios' in scope
 2 |
 3 | func readRawInput() -> String? {
 4 |     var oldTerm = termios()
   |                   `- error: cannot find 'termios' in scope
 5 |     tcgetattr(STDIN_FILENO, &oldTerm)
 6 |     var newTerm = oldTerm;
/host/spi-builder-workspace/Sources/IO/ReadRawInput.swift:5:5: error: cannot find 'tcgetattr' in scope
 3 | func readRawInput() -> String? {
 4 |     var oldTerm = termios()
 5 |     tcgetattr(STDIN_FILENO, &oldTerm)
   |     `- error: cannot find 'tcgetattr' in scope
 6 |     var newTerm = oldTerm;
 7 |     cfmakeraw(&newTerm)
/host/spi-builder-workspace/Sources/IO/ReadRawInput.swift:7:5: error: cannot find 'cfmakeraw' in scope
 5 |     tcgetattr(STDIN_FILENO, &oldTerm)
 6 |     var newTerm = oldTerm;
 7 |     cfmakeraw(&newTerm)
   |     `- error: cannot find 'cfmakeraw' in scope
 8 |     tcsetattr(STDIN_FILENO, TCSANOW, &newTerm)
 9 |
/host/spi-builder-workspace/Sources/IO/ReadRawInput.swift:8:5: error: cannot find 'tcsetattr' in scope
 6 |     var newTerm = oldTerm;
 7 |     cfmakeraw(&newTerm)
 8 |     tcsetattr(STDIN_FILENO, TCSANOW, &newTerm)
   |     `- error: cannot find 'tcsetattr' in scope
 9 |
10 |     var cCharacter: [CChar] = [0, 0]
/host/spi-builder-workspace/Sources/IO/ReadRawInput.swift:8:29: error: cannot find 'TCSANOW' in scope
 6 |     var newTerm = oldTerm;
 7 |     cfmakeraw(&newTerm)
 8 |     tcsetattr(STDIN_FILENO, TCSANOW, &newTerm)
   |                             `- error: cannot find 'TCSANOW' in scope
 9 |
10 |     var cCharacter: [CChar] = [0, 0]
/host/spi-builder-workspace/Sources/IO/ReadRawInput.swift:13:5: error: cannot find 'tcsetattr' in scope
11 |     let readBytes = read(STDIN_FILENO, &cCharacter, 1)
12 |
13 |     tcsetattr(STDIN_FILENO, TCSANOW, &oldTerm)
   |     `- error: cannot find 'tcsetattr' in scope
14 |     if readBytes > 0 {
15 |         let bytes = cCharacter.prefix(1).map { UInt8(bitPattern: $0) }
/host/spi-builder-workspace/Sources/IO/ReadRawInput.swift:13:29: error: cannot find 'TCSANOW' in scope
11 |     let readBytes = read(STDIN_FILENO, &cCharacter, 1)
12 |
13 |     tcsetattr(STDIN_FILENO, TCSANOW, &oldTerm)
   |                             `- error: cannot find 'TCSANOW' in scope
14 |     if readBytes > 0 {
15 |         let bytes = cCharacter.prefix(1).map { UInt8(bitPattern: $0) }
[21/31] Compiling Swell Command.swift
/host/spi-builder-workspace/Sources/IO/ReadRawInput.swift:4:19: error: cannot find 'termios' in scope
 2 |
 3 | func readRawInput() -> String? {
 4 |     var oldTerm = termios()
   |                   `- error: cannot find 'termios' in scope
 5 |     tcgetattr(STDIN_FILENO, &oldTerm)
 6 |     var newTerm = oldTerm;
/host/spi-builder-workspace/Sources/IO/ReadRawInput.swift:5:5: error: cannot find 'tcgetattr' in scope
 3 | func readRawInput() -> String? {
 4 |     var oldTerm = termios()
 5 |     tcgetattr(STDIN_FILENO, &oldTerm)
   |     `- error: cannot find 'tcgetattr' in scope
 6 |     var newTerm = oldTerm;
 7 |     cfmakeraw(&newTerm)
/host/spi-builder-workspace/Sources/IO/ReadRawInput.swift:7:5: error: cannot find 'cfmakeraw' in scope
 5 |     tcgetattr(STDIN_FILENO, &oldTerm)
 6 |     var newTerm = oldTerm;
 7 |     cfmakeraw(&newTerm)
   |     `- error: cannot find 'cfmakeraw' in scope
 8 |     tcsetattr(STDIN_FILENO, TCSANOW, &newTerm)
 9 |
/host/spi-builder-workspace/Sources/IO/ReadRawInput.swift:8:5: error: cannot find 'tcsetattr' in scope
 6 |     var newTerm = oldTerm;
 7 |     cfmakeraw(&newTerm)
 8 |     tcsetattr(STDIN_FILENO, TCSANOW, &newTerm)
   |     `- error: cannot find 'tcsetattr' in scope
 9 |
10 |     var cCharacter: [CChar] = [0, 0]
/host/spi-builder-workspace/Sources/IO/ReadRawInput.swift:8:29: error: cannot find 'TCSANOW' in scope
 6 |     var newTerm = oldTerm;
 7 |     cfmakeraw(&newTerm)
 8 |     tcsetattr(STDIN_FILENO, TCSANOW, &newTerm)
   |                             `- error: cannot find 'TCSANOW' in scope
 9 |
10 |     var cCharacter: [CChar] = [0, 0]
/host/spi-builder-workspace/Sources/IO/ReadRawInput.swift:13:5: error: cannot find 'tcsetattr' in scope
11 |     let readBytes = read(STDIN_FILENO, &cCharacter, 1)
12 |
13 |     tcsetattr(STDIN_FILENO, TCSANOW, &oldTerm)
   |     `- error: cannot find 'tcsetattr' in scope
14 |     if readBytes > 0 {
15 |         let bytes = cCharacter.prefix(1).map { UInt8(bitPattern: $0) }
/host/spi-builder-workspace/Sources/IO/ReadRawInput.swift:13:29: error: cannot find 'TCSANOW' in scope
11 |     let readBytes = read(STDIN_FILENO, &cCharacter, 1)
12 |
13 |     tcsetattr(STDIN_FILENO, TCSANOW, &oldTerm)
   |                             `- error: cannot find 'TCSANOW' in scope
14 |     if readBytes > 0 {
15 |         let bytes = cCharacter.prefix(1).map { UInt8(bitPattern: $0) }
[22/31] Compiling Swell HandleTab.swift
/host/spi-builder-workspace/Sources/IO/ProcessSpawner.swift:24:22: error: cannot find type 'posix_spawn_file_actions_t' in scope
22 |     var fileActions: posix_spawn_file_actions_t?
23 |     #else
24 |     var fileActions: posix_spawn_file_actions_t = posix_spawn_file_actions_t()
   |                      `- error: cannot find type 'posix_spawn_file_actions_t' in scope
25 |     #endif
26 |     posix_spawn_file_actions_init(&fileActions)
/host/spi-builder-workspace/Sources/IO/ProcessSpawner.swift:26:5: error: cannot find 'posix_spawn_file_actions_init' in scope
24 |     var fileActions: posix_spawn_file_actions_t = posix_spawn_file_actions_t()
25 |     #endif
26 |     posix_spawn_file_actions_init(&fileActions)
   |     `- error: cannot find 'posix_spawn_file_actions_init' in scope
27 |
28 |     // Define process attributes
/host/spi-builder-workspace/Sources/IO/ProcessSpawner.swift:32:28: error: cannot find type 'posix_spawnattr_t' in scope
30 |     var processAttributes: posix_spawnattr_t?
31 |     #else
32 |     var processAttributes: posix_spawnattr_t = posix_spawnattr_t()
   |                            `- error: cannot find type 'posix_spawnattr_t' in scope
33 |     #endif
34 |
/host/spi-builder-workspace/Sources/IO/ProcessSpawner.swift:35:5: error: cannot find 'posix_spawnattr_init' in scope
33 |     #endif
34 |
35 |     posix_spawnattr_init(&processAttributes)
   |     `- error: cannot find 'posix_spawnattr_init' in scope
36 |
37 |     // Call posix_spawnp
/host/spi-builder-workspace/Sources/IO/ProcessSpawner.swift:39:23: error: cannot find 'posix_spawnp' in scope
37 |     // Call posix_spawnp
38 |     var pid: pid_t = 0
39 |     let spawnResult = posix_spawnp(&pid, path, &fileActions, &processAttributes, argv, envp)
   |                       `- error: cannot find 'posix_spawnp' in scope
40 |
41 |     // if the process was spawned, wait for it to finish
/host/spi-builder-workspace/Sources/IO/ProcessSpawner.swift:44:26: error: cannot find 'waitpid' in scope
42 |     if spawnResult == 0 {
43 |         var status: Int32 = 0
44 |         let waitResult = waitpid(pid, &status, 0)
   |                          `- error: cannot find 'waitpid' in scope
45 |         // If the waitResult matches the pid, the process was successful.
46 |         if waitResult != pid {
/host/spi-builder-workspace/Sources/IO/ProcessSpawner.swift:56:5: error: cannot find 'posix_spawn_file_actions_destroy' in scope
54 |         free(arg)
55 |     }
56 |     posix_spawn_file_actions_destroy(&fileActions)
   |     `- error: cannot find 'posix_spawn_file_actions_destroy' in scope
57 |     posix_spawnattr_destroy(&processAttributes)
58 | }
/host/spi-builder-workspace/Sources/IO/ProcessSpawner.swift:57:5: error: cannot find 'posix_spawnattr_destroy' in scope
55 |     }
56 |     posix_spawn_file_actions_destroy(&fileActions)
57 |     posix_spawnattr_destroy(&processAttributes)
   |     `- error: cannot find 'posix_spawnattr_destroy' in scope
58 | }
59 |
[23/31] Compiling Swell ProcessSpawner.swift
/host/spi-builder-workspace/Sources/IO/ProcessSpawner.swift:24:22: error: cannot find type 'posix_spawn_file_actions_t' in scope
22 |     var fileActions: posix_spawn_file_actions_t?
23 |     #else
24 |     var fileActions: posix_spawn_file_actions_t = posix_spawn_file_actions_t()
   |                      `- error: cannot find type 'posix_spawn_file_actions_t' in scope
25 |     #endif
26 |     posix_spawn_file_actions_init(&fileActions)
/host/spi-builder-workspace/Sources/IO/ProcessSpawner.swift:26:5: error: cannot find 'posix_spawn_file_actions_init' in scope
24 |     var fileActions: posix_spawn_file_actions_t = posix_spawn_file_actions_t()
25 |     #endif
26 |     posix_spawn_file_actions_init(&fileActions)
   |     `- error: cannot find 'posix_spawn_file_actions_init' in scope
27 |
28 |     // Define process attributes
/host/spi-builder-workspace/Sources/IO/ProcessSpawner.swift:32:28: error: cannot find type 'posix_spawnattr_t' in scope
30 |     var processAttributes: posix_spawnattr_t?
31 |     #else
32 |     var processAttributes: posix_spawnattr_t = posix_spawnattr_t()
   |                            `- error: cannot find type 'posix_spawnattr_t' in scope
33 |     #endif
34 |
/host/spi-builder-workspace/Sources/IO/ProcessSpawner.swift:35:5: error: cannot find 'posix_spawnattr_init' in scope
33 |     #endif
34 |
35 |     posix_spawnattr_init(&processAttributes)
   |     `- error: cannot find 'posix_spawnattr_init' in scope
36 |
37 |     // Call posix_spawnp
/host/spi-builder-workspace/Sources/IO/ProcessSpawner.swift:39:23: error: cannot find 'posix_spawnp' in scope
37 |     // Call posix_spawnp
38 |     var pid: pid_t = 0
39 |     let spawnResult = posix_spawnp(&pid, path, &fileActions, &processAttributes, argv, envp)
   |                       `- error: cannot find 'posix_spawnp' in scope
40 |
41 |     // if the process was spawned, wait for it to finish
/host/spi-builder-workspace/Sources/IO/ProcessSpawner.swift:44:26: error: cannot find 'waitpid' in scope
42 |     if spawnResult == 0 {
43 |         var status: Int32 = 0
44 |         let waitResult = waitpid(pid, &status, 0)
   |                          `- error: cannot find 'waitpid' in scope
45 |         // If the waitResult matches the pid, the process was successful.
46 |         if waitResult != pid {
/host/spi-builder-workspace/Sources/IO/ProcessSpawner.swift:56:5: error: cannot find 'posix_spawn_file_actions_destroy' in scope
54 |         free(arg)
55 |     }
56 |     posix_spawn_file_actions_destroy(&fileActions)
   |     `- error: cannot find 'posix_spawn_file_actions_destroy' in scope
57 |     posix_spawnattr_destroy(&processAttributes)
58 | }
/host/spi-builder-workspace/Sources/IO/ProcessSpawner.swift:57:5: error: cannot find 'posix_spawnattr_destroy' in scope
55 |     }
56 |     posix_spawn_file_actions_destroy(&fileActions)
57 |     posix_spawnattr_destroy(&processAttributes)
   |     `- error: cannot find 'posix_spawnattr_destroy' in scope
58 | }
59 |
[24/31] Compiling Swell PromptHandler.swift
/host/spi-builder-workspace/Sources/IO/ProcessSpawner.swift:24:22: error: cannot find type 'posix_spawn_file_actions_t' in scope
22 |     var fileActions: posix_spawn_file_actions_t?
23 |     #else
24 |     var fileActions: posix_spawn_file_actions_t = posix_spawn_file_actions_t()
   |                      `- error: cannot find type 'posix_spawn_file_actions_t' in scope
25 |     #endif
26 |     posix_spawn_file_actions_init(&fileActions)
/host/spi-builder-workspace/Sources/IO/ProcessSpawner.swift:26:5: error: cannot find 'posix_spawn_file_actions_init' in scope
24 |     var fileActions: posix_spawn_file_actions_t = posix_spawn_file_actions_t()
25 |     #endif
26 |     posix_spawn_file_actions_init(&fileActions)
   |     `- error: cannot find 'posix_spawn_file_actions_init' in scope
27 |
28 |     // Define process attributes
/host/spi-builder-workspace/Sources/IO/ProcessSpawner.swift:32:28: error: cannot find type 'posix_spawnattr_t' in scope
30 |     var processAttributes: posix_spawnattr_t?
31 |     #else
32 |     var processAttributes: posix_spawnattr_t = posix_spawnattr_t()
   |                            `- error: cannot find type 'posix_spawnattr_t' in scope
33 |     #endif
34 |
/host/spi-builder-workspace/Sources/IO/ProcessSpawner.swift:35:5: error: cannot find 'posix_spawnattr_init' in scope
33 |     #endif
34 |
35 |     posix_spawnattr_init(&processAttributes)
   |     `- error: cannot find 'posix_spawnattr_init' in scope
36 |
37 |     // Call posix_spawnp
/host/spi-builder-workspace/Sources/IO/ProcessSpawner.swift:39:23: error: cannot find 'posix_spawnp' in scope
37 |     // Call posix_spawnp
38 |     var pid: pid_t = 0
39 |     let spawnResult = posix_spawnp(&pid, path, &fileActions, &processAttributes, argv, envp)
   |                       `- error: cannot find 'posix_spawnp' in scope
40 |
41 |     // if the process was spawned, wait for it to finish
/host/spi-builder-workspace/Sources/IO/ProcessSpawner.swift:44:26: error: cannot find 'waitpid' in scope
42 |     if spawnResult == 0 {
43 |         var status: Int32 = 0
44 |         let waitResult = waitpid(pid, &status, 0)
   |                          `- error: cannot find 'waitpid' in scope
45 |         // If the waitResult matches the pid, the process was successful.
46 |         if waitResult != pid {
/host/spi-builder-workspace/Sources/IO/ProcessSpawner.swift:56:5: error: cannot find 'posix_spawn_file_actions_destroy' in scope
54 |         free(arg)
55 |     }
56 |     posix_spawn_file_actions_destroy(&fileActions)
   |     `- error: cannot find 'posix_spawn_file_actions_destroy' in scope
57 |     posix_spawnattr_destroy(&processAttributes)
58 | }
/host/spi-builder-workspace/Sources/IO/ProcessSpawner.swift:57:5: error: cannot find 'posix_spawnattr_destroy' in scope
55 |     }
56 |     posix_spawn_file_actions_destroy(&fileActions)
57 |     posix_spawnattr_destroy(&processAttributes)
   |     `- error: cannot find 'posix_spawnattr_destroy' in scope
58 | }
59 |
[25/31] Compiling Swell AliasCommand.swift
[26/31] Compiling Swell BuiltInCommand.swift
[27/31] Compiling Swell BuiltInRegistry.swift
[28/31] Compiling Swell CdCommand.swift
BUILD FAILURE 6.2 wasm