Build Information
Failed to build garuda, reference main (aa2035), with Swift 6.2 for Android on 22 Oct 2026 13:21:49 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:android-6.2-latest swift build --swift-sdk aarch64-unknown-linux-android28 2>&1Build Log
========================================
RunAll
========================================
Builder version: 5.1.3
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/grepjava/garuda.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/grepjava/garuda
* branch main -> FETCH_HEAD
* [new branch] main -> origin/main
HEAD is now at aa20357 CI pins aioquic 1.3.0: under 1.7.0 the WebTransport client crashes and router-streams' HTTP/3 cancellation check fails
Cloned https://github.com/grepjava/garuda.git
Revision (git rev-parse @):
aa2035701d803f7c6c03f604f03e0f4e506c25ae
SPI manifest file found: $PWD/.spi.yml
SUCCESS checkout https://github.com/grepjava/garuda.git at main
========================================
Build
========================================
Selected platform: android
Swift version: 6.2
Building package at path: $PWD
https://github.com/grepjava/garuda.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:android-6.2-latest swift build --swift-sdk aarch64-unknown-linux-android28 2>&1
android-6.2-latest: Pulling from saguaro1/spi-images
Digest: sha256:d84c435a77e30f1b4b40344b42d2ce7e8dc33d04eebdaebfb0e2bc42b4ff2af5
Status: Image is up to date for registry.gitlab.com/saguaro1/spi-images:android-6.2-latest
Fetching https://github.com/apple/swift-distributed-tracing
Fetching https://github.com/grepjava/vega-db.git
Fetching https://github.com/swiftlang/swift-syntax
Fetching https://github.com/grepjava/vega.git
[1/275] Fetching vega-db
[276/4677] Fetching vega-db, vega
[321/11361] Fetching vega-db, vega, swift-distributed-tracing
Fetched https://github.com/grepjava/vega-db.git from cache (0.67s)
Fetched https://github.com/apple/swift-distributed-tracing from cache (0.67s)
[1/80972] Fetching swift-syntax
Fetched https://github.com/grepjava/vega.git from cache (3.37s)
Fetched https://github.com/swiftlang/swift-syntax from cache (3.39s)
Computing version for https://github.com/swiftlang/swift-syntax
Computed https://github.com/swiftlang/swift-syntax at 602.0.0 (4.37s)
Computing version for https://github.com/grepjava/vega-db.git
Computed https://github.com/grepjava/vega-db.git at 0.3.0 (0.17s)
Computing version for https://github.com/grepjava/vega.git
Computed https://github.com/grepjava/vega.git at 1.1.0 (0.20s)
Computing version for https://github.com/apple/swift-distributed-tracing
Computed https://github.com/apple/swift-distributed-tracing at 1.7.2 (0.15s)
Creating working copy for https://github.com/grepjava/vega-db.git
Working copy of https://github.com/grepjava/vega-db.git resolved at 0.3.0
Creating working copy for https://github.com/grepjava/vega.git
Working copy of https://github.com/grepjava/vega.git resolved at 1.1.0
Creating working copy for https://github.com/swiftlang/swift-syntax
Working copy of https://github.com/swiftlang/swift-syntax resolved at 602.0.0
Creating working copy for https://github.com/apple/swift-distributed-tracing
Working copy of https://github.com/apple/swift-distributed-tracing resolved at 1.7.2
Downloading package prebuilt https://download.swift.org/prebuilts/swift-syntax/602.0.0/swift-6.2-RELEASE-MacroSupport-ubuntu_noble_x86_64.tar.gz
Downloaded https://download.swift.org/prebuilts/swift-syntax/602.0.0/swift-6.2-RELEASE-MacroSupport-ubuntu_noble_x86_64.tar.gz (0.18s)
Building for debugging...
[0/494] Write sources
[39/494] Compiling fiat_p256_adx_sqr.S
[40/494] Compiling CVegaSQLite vega_sqlite.c
[41/494] Compiling CVegaCompress cvega_compress.c
[42/494] Compiling CVegaTLS cvega_digest.c
[43/494] Compiling fiat_p256_adx_mul.S
[44/494] Write swift-version--11D90AFD9DD3AB2.txt
[45/494] Compiling fiat_curve25519_adx_square.S
[46/494] Compiling fiat_curve25519_adx_mul.S
[47/504] Compiling CVegaTLS cvega_verify.c
[48/505] Compiling CVegaTLS cvega_crypto.c
[49/506] Compiling CVegaTLS cvega_tls.c
[51/506] Emitting module VegaRedisProtocol
[51/518] Compiling tls_record.cc
[52/518] Compiling tls_method.cc
[53/526] Compiling tls13_server.cc
[55/526] Emitting module Instrumentation
[55/526] Compiling tls13_enc.cc
[56/526] Compiling tls13_client.cc
[58/526] Compiling Instrumentation InstrumentationContextKey.swift
[59/526] Compiling Instrumentation InstrumentationSystem.swift
[60/526] Compiling VegaCrypto Digest.swift
[61/526] Compiling VegaCrypto Hash.swift
[62/527] Compiling VegaRedisProtocol RedisValue.swift
[63/527] Compiling VegaCrypto TrustRoots.swift
[64/527] Compiling VegaCrypto CertificateVerifier.swift
[65/527] Compiling VegaCrypto CertificateKey.swift
[66/527] Compiling VegaCrypto Keys.swift
[67/527] Compiling Instrumentation MultiplexInstrument.swift
[68/527] Compiling VegaCrypto AEAD.swift
[69/527] Emitting module VegaCrypto
[70/527] Compiling VegaWire ByteBuffer.swift
/host/spi-builder-workspace/.build/checkouts/vega/Sources/VegaWire/ByteBuffer.swift:49:27: error: cannot find 'malloc' in scope
47 | public init(capacity: Int) {
48 | if capacity > 0 {
49 | guard let p = malloc(capacity) else {
| `- error: cannot find 'malloc' in scope
50 | allocationFailed(capacity, "a new buffer")
51 | }
/host/spi-builder-workspace/.build/checkouts/vega/Sources/VegaWire/ByteBuffer.swift:138:27: error: cannot find 'realloc' in scope
136 | while newCap < need { newCap &*= 2 }
137 | if let old = storage {
138 | guard let p = realloc(old, newCap) else {
| `- error: cannot find 'realloc' in scope
139 | allocationFailed(newCap, "a growing buffer")
140 | }
/host/spi-builder-workspace/.build/checkouts/vega/Sources/VegaWire/ByteBuffer.swift:143:27: error: cannot find 'malloc' in scope
141 | storage = UnsafeMutableRawPointer(p).assumingMemoryBound(to: UInt8.self)
142 | } else {
143 | guard let p = malloc(newCap) else {
| `- error: cannot find 'malloc' in scope
144 | allocationFailed(newCap, "a growing buffer")
145 | }
/host/spi-builder-workspace/.build/checkouts/vega/Sources/VegaWire/ByteBuffer.swift:158:13: error: cannot find 'memmove' in scope
156 | if readerIndex == 0 { return }
157 | if n > 0 {
158 | memmove(storage.unsafelyUnwrapped, storage.unsafelyUnwrapped + readerIndex, n)
| `- error: cannot find 'memmove' in scope
159 | }
160 | readerIndex = 0
/host/spi-builder-workspace/.build/checkouts/vega/Sources/VegaWire/ByteBuffer.swift:170:9: error: cannot find 'memcpy' in scope
168 | if n == 0 { return }
169 | reserve(n)
170 | memcpy(storage.unsafelyUnwrapped + writerIndex, p, n)
| `- error: cannot find 'memcpy' in scope
171 | writerIndex &+= n
172 | }
/host/spi-builder-workspace/.build/checkouts/vega/Sources/VegaWire/ByteBuffer.swift:272:30: error: cannot find 'free' in scope
270 | @inlinable
271 | public mutating func destroy() {
272 | if let s = storage { free(s) }
| `- error: cannot find 'free' in scope
273 | storage = nil
274 | capacity = 0
[71/527] Compiling VegaWire Bytes.swift
/host/spi-builder-workspace/.build/checkouts/vega/Sources/VegaWire/Bytes.swift:94:12: error: cannot find 'memcmp' in scope
92 | package func equalsExact(_ p: UnsafePointer<UInt8>, _ n: Int, _ literal: StaticString) -> Bool {
93 | guard n == literal.utf8CodeUnitCount else { return false }
94 | return memcmp(p, literal.utf8Start, n) == 0
| `- error: cannot find 'memcmp' in scope
95 | }
96 |
/host/spi-builder-workspace/.build/checkouts/vega/Sources/VegaWire/Bytes.swift:126:21: error: cannot find 'memchr' in scope
124 | // memchr is vectorised in every libc worth using; hand-rolling a loop here
125 | // measurably loses on long header values.
126 | guard let hit = memchr(p, Int32(needle), n) else { return -1 }
| `- error: cannot find 'memchr' in scope
127 | return UnsafeRawPointer(hit) - UnsafeRawPointer(p)
128 | }
[72/527] Compiling VegaCrypto CryptoError.swift
[73/528] Compiling VegaRedisProtocol RedisCommand.swift
[74/528] Compiling VegaRedisProtocol RedisParser.swift
[76/528] Compiling VegaRedisProtocol RedisReads.swift
[77/528] Compiling VegaRedisProtocol RedisSlots.swift
[77/529] Compiling t1_enc.cc
[80/529] Compiling Instrumentation Instrument.swift
[81/529] Compiling Instrumentation InstrumentationContext.swift
error: emit-module command failed with exit code 1 (use -v to see invocation)
[82/529] Compiling VegaWire Allocation.swift
[83/529] Emitting module VegaWire
/host/spi-builder-workspace/.build/checkouts/vega/Sources/VegaWire/ByteBuffer.swift:49:27: error: cannot find 'malloc' in scope
47 | public init(capacity: Int) {
48 | if capacity > 0 {
49 | guard let p = malloc(capacity) else {
| `- error: cannot find 'malloc' in scope
50 | allocationFailed(capacity, "a new buffer")
51 | }
/host/spi-builder-workspace/.build/checkouts/vega/Sources/VegaWire/ByteBuffer.swift:158:13: error: cannot find 'memmove' in scope
156 | if readerIndex == 0 { return }
157 | if n > 0 {
158 | memmove(storage.unsafelyUnwrapped, storage.unsafelyUnwrapped + readerIndex, n)
| `- error: cannot find 'memmove' in scope
159 | }
160 | readerIndex = 0
/host/spi-builder-workspace/.build/checkouts/vega/Sources/VegaWire/ByteBuffer.swift:170:9: error: cannot find 'memcpy' in scope
168 | if n == 0 { return }
169 | reserve(n)
170 | memcpy(storage.unsafelyUnwrapped + writerIndex, p, n)
| `- error: cannot find 'memcpy' in scope
171 | writerIndex &+= n
172 | }
/host/spi-builder-workspace/.build/checkouts/vega/Sources/VegaWire/ByteBuffer.swift:272:30: error: cannot find 'free' in scope
270 | @inlinable
271 | public mutating func destroy() {
272 | if let s = storage { free(s) }
| `- error: cannot find 'free' in scope
273 | storage = nil
274 | capacity = 0
/host/spi-builder-workspace/.build/checkouts/vega/Sources/VegaWire/Bytes.swift:94:12: error: cannot find 'memcmp' in scope
92 | package func equalsExact(_ p: UnsafePointer<UInt8>, _ n: Int, _ literal: StaticString) -> Bool {
93 | guard n == literal.utf8CodeUnitCount else { return false }
94 | return memcmp(p, literal.utf8Start, n) == 0
| `- error: cannot find 'memcmp' in scope
95 | }
96 |
/host/spi-builder-workspace/.build/checkouts/vega/Sources/VegaWire/Bytes.swift:126:21: error: cannot find 'memchr' in scope
124 | // memchr is vectorised in every libc worth using; hand-rolling a loop here
125 | // measurably loses on long header values.
126 | guard let hit = memchr(p, Int32(needle), n) else { return -1 }
| `- error: cannot find 'memchr' in scope
127 | return UnsafeRawPointer(hit) - UnsafeRawPointer(p)
128 | }
[83/529] Compiling tls13_both.cc
[84/529] Wrapping AST for VegaCrypto for debugging
[84/529] Compiling ssl_x509.cc
[84/529] Wrapping AST for VegaRedisProtocol for debugging
[85/529] Emitting module VegaDBTracing
[86/529] Compiling Instrumentation NoOpInstrument.swift
BUILD FAILURE 6.2 android