The Swift Package Index logo.Swift Package Index

Build Information

Failed to build alpaca.swift, reference main (6aebb2), with Swift 6.3 for Android on 3 Nov 2026 06:16:31 UTC.

Build Command

bash -c docker run --pull=always --rm -v "checkouts-54344844-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.3-latest swift build --swift-sdk aarch64-unknown-linux-android28 2>&1

Build Log

========================================
RunAll
========================================
Builder version: 5.1.4
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/torinriley/alpaca.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/torinriley/alpaca
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
HEAD is now at 6aebb2e Merge pull request #7 from torinriley/perf/gemm-scaling
Cloned https://github.com/torinriley/alpaca.git
Revision (git rev-parse @):
6aebb2ed5017291c5ce71f9c8ba231bd444e764e
SPI manifest file found: $PWD/.spi.yml
SUCCESS checkout https://github.com/torinriley/alpaca.git at main
========================================
Build
========================================
Selected platform:         android
Swift version:             6.3
Building package at path:  $PWD
https://github.com/torinriley/alpaca.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-54344844-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.3-latest swift build --swift-sdk aarch64-unknown-linux-android28 2>&1
android-6.3-latest: Pulling from saguaro1/spi-images
Digest: sha256:1259d966e40d034d138a282ea8b980b108763342a7ff8ac7ef483c73e99068f3
Status: Image is up to date for registry.gitlab.com/saguaro1/spi-images:android-6.3-latest
Building for debugging...
[0/20] Write sources
[5/20] Copying Kernels
[6/20] Write sources
[8/20] Write swift-version-272D24FF697CF451.txt
[10/36] Compiling AlpacaCore MemoryBudget.swift
/host/spi-builder-workspace/Sources/AlpacaCore/Operations/CPUOps.swift:51:58: error: unary operator '-' cannot be applied to an operand of type 'Float'
 49 |     public static func silu(_ x: Tensor) throws -> Tensor {
 50 |         try requireF32(x, name: "silu")
 51 |         let v = try x.toFloatArray().map { $0 / (1 + exp(-$0)) }
    |                                                          |- error: unary operator '-' cannot be applied to an operand of type 'Float'
    |                                                          `- note: overloads for '-' exist with these partially matching parameter lists: (Float)
 52 |         return try Tensor(v, shape: x.shape)
 53 |     }
/host/spi-builder-workspace/Sources/AlpacaCore/Operations/CPUOps.swift:51:47: error: binary operator '/' cannot be applied to two 'Float' operands
 49 |     public static func silu(_ x: Tensor) throws -> Tensor {
 50 |         try requireF32(x, name: "silu")
 51 |         let v = try x.toFloatArray().map { $0 / (1 + exp(-$0)) }
    |                                               |- error: binary operator '/' cannot be applied to two 'Float' operands
    |                                               `- note: overloads for '/' exist with these partially matching parameter lists: (CGFloat, CGFloat), (Double, Double), (Duration, Double), (Float, Float)
 52 |         return try Tensor(v, shape: x.shape)
 53 |     }
/host/spi-builder-workspace/Sources/AlpacaCore/Operations/CPUOps.swift:51:52: error: binary operator '+' cannot be applied to operands of type 'Float' and 'CGFloat'
 49 |     public static func silu(_ x: Tensor) throws -> Tensor {
 50 |         try requireF32(x, name: "silu")
 51 |         let v = try x.toFloatArray().map { $0 / (1 + exp(-$0)) }
    |                                                    |- error: binary operator '+' cannot be applied to operands of type 'Float' and 'CGFloat'
    |                                                    `- note: overloads for '+' exist with these partially matching parameter lists: (CGFloat, CGFloat), (Double, Double), (Float, Float)
 52 |         return try Tensor(v, shape: x.shape)
 53 |     }
/host/spi-builder-workspace/Sources/AlpacaCore/Operations/CPUOps.swift:51:54: error: no exact matches in call to global function 'exp'
 49 |     public static func silu(_ x: Tensor) throws -> Tensor {
 50 |         try requireF32(x, name: "silu")
 51 |         let v = try x.toFloatArray().map { $0 / (1 + exp(-$0)) }
    |                                                      `- error: no exact matches in call to global function 'exp'
 52 |         return try Tensor(v, shape: x.shape)
 53 |     }
Foundation.exp:1:13: note: candidate expects value of type 'CGFloat' for parameter #1 (got 'Float')
1 | public func exp(_ x: CGFloat) -> CGFloat
  |             `- note: candidate expects value of type 'CGFloat' for parameter #1 (got 'Float')
/root/.swiftpm/swift-sdks/swift-6.3.2-RELEASE_android.artifactbundle/swift-android/ndk-sysroot/usr/include/math.h:128:8: note: candidate expects value of type 'Double' for parameter #1 (got 'Float')
126 | long double tanhl(long double __x);
127 |
128 | double exp(double __x);
    |        `- note: candidate expects value of type 'Double' for parameter #1 (got 'Float')
129 | float expf(float __x);
130 | long double expl(long double __x);
/host/spi-builder-workspace/Sources/AlpacaCore/Operations/CPUOps.swift:171:44: error: no exact matches in call to global function 'exp'
169 |             for i in 0..<d { mx = max(mx, v[base + i]) }
170 |             var sum: Float = 0
171 |             for i in 0..<d { v[base + i] = exp(v[base + i] - mx); sum += v[base + i] }
    |                                            `- error: no exact matches in call to global function 'exp'
172 |             for i in 0..<d { v[base + i] /= sum }
173 |         }
Foundation.exp:1:13: note: candidate expects value of type 'CGFloat' for parameter #1 (got 'Float')
1 | public func exp(_ x: CGFloat) -> CGFloat
  |             `- note: candidate expects value of type 'CGFloat' for parameter #1 (got 'Float')
/root/.swiftpm/swift-sdks/swift-6.3.2-RELEASE_android.artifactbundle/swift-android/ndk-sysroot/usr/include/math.h:128:8: note: candidate expects value of type 'Double' for parameter #1 (got 'Float')
126 | long double tanhl(long double __x);
127 |
128 | double exp(double __x);
    |        `- note: candidate expects value of type 'Double' for parameter #1 (got 'Float')
129 | float expf(float __x);
130 | long double expl(long double __x);
/host/spi-builder-workspace/Sources/AlpacaCore/Operations/CPUOps.swift:171:44: error: no 'exp' candidates produce the expected contextual result type 'Float'
169 |             for i in 0..<d { mx = max(mx, v[base + i]) }
170 |             var sum: Float = 0
171 |             for i in 0..<d { v[base + i] = exp(v[base + i] - mx); sum += v[base + i] }
    |                                            `- error: no 'exp' candidates produce the expected contextual result type 'Float'
172 |             for i in 0..<d { v[base + i] /= sum }
173 |         }
Foundation.exp:1:13: note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
1 | public func exp(_ x: CGFloat) -> CGFloat
  |             |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
  |             |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
  |             |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
  |             |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
  |             |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
  |             |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
  |             |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
  |             |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
  |             |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
  |             |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
  |             |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
  |             |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
  |             |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
  |             |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
  |             |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
  |             |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
  |             |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
  |             |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
  |             |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
  |             |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
  |             |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
  |             |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
  |             |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
  |             |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
  |             |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
  |             |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
  |             `- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
/root/.swiftpm/swift-sdks/swift-6.3.2-RELEASE_android.artifactbundle/swift-android/ndk-sysroot/usr/include/math.h:128:8: note: 'exp' produces 'Double', not the expected contextual result type 'Float'
126 | long double tanhl(long double __x);
127 |
128 | double exp(double __x);
    |        |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
    |        |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
    |        |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
    |        |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
    |        |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
    |        |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
    |        |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
    |        |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
    |        |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
    |        |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
    |        |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
    |        |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
    |        |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
    |        |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
    |        |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
    |        |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
    |        |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
    |        |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
    |        |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
    |        |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
    |        |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
    |        |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
    |        |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
    |        |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
    |        |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
    |        |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
    |        `- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
129 | float expf(float __x);
130 | long double expl(long double __x);
[11/36] Compiling AlpacaCore CPUOps.swift
/host/spi-builder-workspace/Sources/AlpacaCore/Operations/CPUOps.swift:51:58: error: unary operator '-' cannot be applied to an operand of type 'Float'
 49 |     public static func silu(_ x: Tensor) throws -> Tensor {
 50 |         try requireF32(x, name: "silu")
 51 |         let v = try x.toFloatArray().map { $0 / (1 + exp(-$0)) }
    |                                                          |- error: unary operator '-' cannot be applied to an operand of type 'Float'
    |                                                          `- note: overloads for '-' exist with these partially matching parameter lists: (Float)
 52 |         return try Tensor(v, shape: x.shape)
 53 |     }
/host/spi-builder-workspace/Sources/AlpacaCore/Operations/CPUOps.swift:51:47: error: binary operator '/' cannot be applied to two 'Float' operands
 49 |     public static func silu(_ x: Tensor) throws -> Tensor {
 50 |         try requireF32(x, name: "silu")
 51 |         let v = try x.toFloatArray().map { $0 / (1 + exp(-$0)) }
    |                                               |- error: binary operator '/' cannot be applied to two 'Float' operands
    |                                               `- note: overloads for '/' exist with these partially matching parameter lists: (CGFloat, CGFloat), (Double, Double), (Duration, Double), (Float, Float)
 52 |         return try Tensor(v, shape: x.shape)
 53 |     }
/host/spi-builder-workspace/Sources/AlpacaCore/Operations/CPUOps.swift:51:52: error: binary operator '+' cannot be applied to operands of type 'Float' and 'CGFloat'
 49 |     public static func silu(_ x: Tensor) throws -> Tensor {
 50 |         try requireF32(x, name: "silu")
 51 |         let v = try x.toFloatArray().map { $0 / (1 + exp(-$0)) }
    |                                                    |- error: binary operator '+' cannot be applied to operands of type 'Float' and 'CGFloat'
    |                                                    `- note: overloads for '+' exist with these partially matching parameter lists: (CGFloat, CGFloat), (Double, Double), (Float, Float)
 52 |         return try Tensor(v, shape: x.shape)
 53 |     }
/host/spi-builder-workspace/Sources/AlpacaCore/Operations/CPUOps.swift:51:54: error: no exact matches in call to global function 'exp'
 49 |     public static func silu(_ x: Tensor) throws -> Tensor {
 50 |         try requireF32(x, name: "silu")
 51 |         let v = try x.toFloatArray().map { $0 / (1 + exp(-$0)) }
    |                                                      `- error: no exact matches in call to global function 'exp'
 52 |         return try Tensor(v, shape: x.shape)
 53 |     }
Foundation.exp:1:13: note: candidate expects value of type 'CGFloat' for parameter #1 (got 'Float')
1 | public func exp(_ x: CGFloat) -> CGFloat
  |             `- note: candidate expects value of type 'CGFloat' for parameter #1 (got 'Float')
/root/.swiftpm/swift-sdks/swift-6.3.2-RELEASE_android.artifactbundle/swift-android/ndk-sysroot/usr/include/math.h:128:8: note: candidate expects value of type 'Double' for parameter #1 (got 'Float')
126 | long double tanhl(long double __x);
127 |
128 | double exp(double __x);
    |        `- note: candidate expects value of type 'Double' for parameter #1 (got 'Float')
129 | float expf(float __x);
130 | long double expl(long double __x);
/host/spi-builder-workspace/Sources/AlpacaCore/Operations/CPUOps.swift:171:44: error: no exact matches in call to global function 'exp'
169 |             for i in 0..<d { mx = max(mx, v[base + i]) }
170 |             var sum: Float = 0
171 |             for i in 0..<d { v[base + i] = exp(v[base + i] - mx); sum += v[base + i] }
    |                                            `- error: no exact matches in call to global function 'exp'
172 |             for i in 0..<d { v[base + i] /= sum }
173 |         }
Foundation.exp:1:13: note: candidate expects value of type 'CGFloat' for parameter #1 (got 'Float')
1 | public func exp(_ x: CGFloat) -> CGFloat
  |             `- note: candidate expects value of type 'CGFloat' for parameter #1 (got 'Float')
/root/.swiftpm/swift-sdks/swift-6.3.2-RELEASE_android.artifactbundle/swift-android/ndk-sysroot/usr/include/math.h:128:8: note: candidate expects value of type 'Double' for parameter #1 (got 'Float')
126 | long double tanhl(long double __x);
127 |
128 | double exp(double __x);
    |        `- note: candidate expects value of type 'Double' for parameter #1 (got 'Float')
129 | float expf(float __x);
130 | long double expl(long double __x);
/host/spi-builder-workspace/Sources/AlpacaCore/Operations/CPUOps.swift:171:44: error: no 'exp' candidates produce the expected contextual result type 'Float'
169 |             for i in 0..<d { mx = max(mx, v[base + i]) }
170 |             var sum: Float = 0
171 |             for i in 0..<d { v[base + i] = exp(v[base + i] - mx); sum += v[base + i] }
    |                                            `- error: no 'exp' candidates produce the expected contextual result type 'Float'
172 |             for i in 0..<d { v[base + i] /= sum }
173 |         }
Foundation.exp:1:13: note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
1 | public func exp(_ x: CGFloat) -> CGFloat
  |             |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
  |             |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
  |             |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
  |             |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
  |             |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
  |             |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
  |             |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
  |             |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
  |             |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
  |             |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
  |             |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
  |             |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
  |             |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
  |             |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
  |             |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
  |             |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
  |             |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
  |             |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
  |             |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
  |             |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
  |             |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
  |             |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
  |             |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
  |             |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
  |             |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
  |             |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
  |             `- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
/root/.swiftpm/swift-sdks/swift-6.3.2-RELEASE_android.artifactbundle/swift-android/ndk-sysroot/usr/include/math.h:128:8: note: 'exp' produces 'Double', not the expected contextual result type 'Float'
126 | long double tanhl(long double __x);
127 |
128 | double exp(double __x);
    |        |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
    |        |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
    |        |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
    |        |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
    |        |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
    |        |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
    |        |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
    |        |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
    |        |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
    |        |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
    |        |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
    |        |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
    |        |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
    |        |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
    |        |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
    |        |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
    |        |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
    |        |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
    |        |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
    |        |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
    |        |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
    |        |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
    |        |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
    |        |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
    |        |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
    |        |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
    |        `- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
129 | float expf(float __x);
130 | long double expl(long double __x);
[12/36] Emitting module AlpacaCore
[13/37] Compiling AlpacaCore Quantization.swift
[14/37] Compiling AlpacaCore ErrorMetrics.swift
[15/37] Compiling AlpacaCore TensorStorage.swift
[16/37] Compiling AlpacaCore KVCache.swift
[17/37] Compiling AlpacaCore LlamaCPUModel.swift
[18/37] Compiling AlpacaCore LlamaConfig.swift
[19/37] Compiling AlpacaCore Sampler.swift
[20/37] Compiling AlpacaCore DType.swift
[21/37] Compiling AlpacaCore Tensor.swift
[22/37] Compiling AlpacaCore TensorError.swift
[23/37] Emitting module AlpacaTokenizers
[24/37] Compiling AlpacaTokenizers BPETokenizer.swift
[25/37] Compiling AlpacaTokenizers ByteLevel.swift
[26/38] Compiling AlpacaCore LlamaWeights.swift
BUILD FAILURE 6.3 android