The Swift Package Index logo.Swift Package Index

Build Information

Failed to build mlx-swift, reference main (49d73a), with Swift 6.3 for Wasm on 18 Apr 2026 14:28:59 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/swiftpackageindex/spi-images:wasm-6.3-latest swift build --swift-sdk swift-6.3-RELEASE_wasm 2>&1

Build Log

========================================
RunAll
========================================
Builder version: 4.70.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/ml-explore/mlx-swift.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/ml-explore/mlx-swift
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
HEAD is now at 49d73ab add missing functions (#387)
Submodule path 'Source/Cmlx/mlx': checked out 'ce45c52505c8158ea48d2a54e8caae05efd86bfe'
Submodule path 'Source/Cmlx/mlx-c': checked out '0726ca922fc902c4c61ef9c27d94132be418e945'
Submodule 'submodules/mlx' (https://github.com/ml-explore/mlx) registered for path 'Source/Cmlx/mlx'
Submodule 'submodules/mlx-c' (https://github.com/ml-explore/mlx-c) registered for path 'Source/Cmlx/mlx-c'
Cloning into '/host/spi-builder-workspace/Source/Cmlx/mlx'...
Cloning into '/host/spi-builder-workspace/Source/Cmlx/mlx-c'...
Cloned https://github.com/ml-explore/mlx-swift.git
Revision (git rev-parse @):
49d73abcbe8f49f44c1e61911997e6b680484216
SPI manifest file found: $PWD/.spi.yml
SUCCESS checkout https://github.com/ml-explore/mlx-swift.git at main
========================================
Build
========================================
Selected platform:         wasm
Swift version:             6.3
Building package at path:  $PWD
https://github.com/ml-explore/mlx-swift.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/swiftpackageindex/spi-images:wasm-6.3-latest swift build --swift-sdk swift-6.3-RELEASE_wasm 2>&1
wasm-6.3-latest: Pulling from swiftpackageindex/spi-images
Digest: sha256:d69f4e7582c319245442d62a08b2d7c7fd5a0c0c69f5d2ef11d1530cd8d3329b
Status: Image is up to date for registry.gitlab.com/swiftpackageindex/spi-images:wasm-6.3-latest
Fetching https://github.com/apple/swift-numerics
[1/6416] Fetching swift-numerics
Fetched https://github.com/apple/swift-numerics from cache (0.90s)
Computing version for https://github.com/apple/swift-numerics
Computed https://github.com/apple/swift-numerics at 1.1.1 (1.30s)
Creating working copy for https://github.com/apple/swift-numerics
Working copy of https://github.com/apple/swift-numerics resolved at 1.1.1
warning: 'spi-builder-workspace': found 3 file(s) which are unhandled; explicitly declare them as resources or exclude from the target
    /host/spi-builder-workspace/Source/Examples/Example1.swift
    /host/spi-builder-workspace/Source/Examples/CustomFunctionExample.swift
    /host/spi-builder-workspace/Source/Examples/CustomFunctionExampleSimple.swift
warning: 'spi-builder-workspace': found 3 file(s) which are unhandled; explicitly declare them as resources or exclude from the target
    /host/spi-builder-workspace/Source/Examples/Tutorial.swift
    /host/spi-builder-workspace/Source/Examples/CustomFunctionExample.swift
    /host/spi-builder-workspace/Source/Examples/CustomFunctionExampleSimple.swift
warning: 'spi-builder-workspace': found 3 file(s) which are unhandled; explicitly declare them as resources or exclude from the target
    /host/spi-builder-workspace/Source/Examples/Example1.swift
    /host/spi-builder-workspace/Source/Examples/CustomFunctionExample.swift
    /host/spi-builder-workspace/Source/Examples/Tutorial.swift
warning: 'spi-builder-workspace': found 3 file(s) which are unhandled; explicitly declare them as resources or exclude from the target
    /host/spi-builder-workspace/Source/Examples/Example1.swift
    /host/spi-builder-workspace/Source/Examples/Tutorial.swift
    /host/spi-builder-workspace/Source/Examples/CustomFunctionExampleSimple.swift
Building for debugging...
[0/180] Compiling gather_front.cpp
[1/180] Write swift-version-24593BA9C3E375BF.txt
[2/180] Compiling _NumericsShims _NumericsShims.c
[3/180] Write sources
[6/191] Compiling error.cpp
[7/191] Write sources
[18/191] Compiling version.cpp
[19/191] Compiling utils.cpp
[20/191] Compiling no_nccl.cpp
In file included from /host/spi-builder-workspace/Source/Cmlx/mlx/mlx/distributed/primitives.cpp:7:
In file included from /host/spi-builder-workspace/Source/Cmlx/mlx/mlx/distributed/primitives.h:7:
In file included from /host/spi-builder-workspace/Source/Cmlx/mlx/mlx/primitives.h:10:
In file included from /host/spi-builder-workspace/Source/Cmlx/mlx/mlx/io/load.h:16:
/host/spi-builder-workspace/Source/Cmlx/mlx/mlx/threadpool.h:40:15: error: no template named 'future' in namespace 'std'
   40 |       -> std::future<typename std::invoke_result_t<F, Args...>>;
      |          ~~~~~^
/host/spi-builder-workspace/Source/Cmlx/mlx/mlx/threadpool.h:48:20: error: no member named 'thread' in namespace 'std'
   48 |   std::vector<std::thread> workers;
      |                    ^~~~~~
/host/spi-builder-workspace/Source/Cmlx/mlx/mlx/threadpool.h:50:8: error: no type named 'mutex' in namespace 'std'
   50 |   std::mutex queue_mutex;
      |   ~~~~~^
/host/spi-builder-workspace/Source/Cmlx/mlx/mlx/threadpool.h:51:8: error: no type named 'condition_variable' in namespace 'std'
   51 |   std::condition_variable condition;
      |   ~~~~~^
/host/spi-builder-workspace/Source/Cmlx/mlx/mlx/threadpool.h:61:13: error: no template named 'future' in namespace 'std'
   61 |     -> std::future<typename std::invoke_result_t<F, Args...>> {
      |        ~~~~~^
/host/spi-builder-workspace/Source/Cmlx/mlx/mlx/threadpool.h:64:37: error: no member named 'packaged_task' in namespace 'std'
   64 |   auto task = std::make_shared<std::packaged_task<return_type()>>(
      |                                     ^~~~~~~~~~~~~
/host/spi-builder-workspace/Source/Cmlx/mlx/mlx/threadpool.h:67:8: error: no member named 'future' in namespace 'std'
   67 |   std::future<return_type> res = task->get_future();
      |        ^~~~~~
/host/spi-builder-workspace/Source/Cmlx/mlx/mlx/threadpool.h:67:15: error: unexpected type name 'return_type': expected expression
   67 |   std::future<return_type> res = task->get_future();
      |               ^
/host/spi-builder-workspace/Source/Cmlx/mlx/mlx/threadpool.h:67:28: error: use of undeclared identifier 'res'
   67 |   std::future<return_type> res = task->get_future();
      |                            ^~~
/host/spi-builder-workspace/Source/Cmlx/mlx/mlx/threadpool.h:69:27: error: no member named 'mutex' in namespace 'std'
   69 |     std::unique_lock<std::mutex> lock(queue_mutex);
      |                           ^~~~~
/host/spi-builder-workspace/Source/Cmlx/mlx/mlx/threadpool.h:79:10: error: use of undeclared identifier 'res'
   79 |   return res;
      |          ^~~
/host/spi-builder-workspace/Source/Cmlx/mlx/mlx/threadpool.h:100:27: error: no member named 'mutex' in namespace 'std'
  100 |     std::unique_lock<std::mutex> lock(queue_mutex);
      |                           ^~~~~
/host/spi-builder-workspace/Source/Cmlx/mlx/mlx/threadpool.h:104:13: error: no type named 'thread' in namespace 'std'
  104 |   for (std::thread& worker : workers) {
      |        ~~~~~^
/host/spi-builder-workspace/Source/Cmlx/mlx/mlx/threadpool.h:120:33: error: no member named 'mutex' in namespace 'std'
  120 |           std::unique_lock<std::mutex> lock(this->queue_mutex);
      |                                 ^~~~~
14 errors generated.
[21/191] Compiling primitives.cpp
[21/191] Compiling no_ring.cpp
[21/191] Compiling scheduler.cpp
In file included from /host/spi-builder-workspace/Source/Cmlx/mlx-c/mlx/c/export.cpp:3:
In file included from /host/spi-builder-workspace/Source/Cmlx/mlx-c/mlx/c/private/mlx.h:4:
In file included from /host/spi-builder-workspace/Source/Cmlx/mlx-c/mlx/c/private/array.h:10:
In file included from /host/spi-builder-workspace/Source/Cmlx/mlx/mlx/mlx.h:14:
In file included from /host/spi-builder-workspace/Source/Cmlx/mlx/mlx/export.h:137:
In file included from /host/spi-builder-workspace/Source/Cmlx/mlx/mlx/export_impl.h:4:
In file included from /host/spi-builder-workspace/Source/Cmlx/mlx/mlx/io/load.h:16:
/host/spi-builder-workspace/Source/Cmlx/mlx/mlx/threadpool.h:40:15: error: no template named 'future' in namespace 'std'
   40 |       -> std::future<typename std::invoke_result_t<F, Args...>>;
      |          ~~~~~^
/host/spi-builder-workspace/Source/Cmlx/mlx/mlx/threadpool.h:48:20: error: no member named 'thread' in namespace 'std'
   48 |   std::vector<std::thread> workers;
      |                    ^~~~~~
/host/spi-builder-workspace/Source/Cmlx/mlx/mlx/threadpool.h:50:8: error: no type named 'mutex' in namespace 'std'
   50 |   std::mutex queue_mutex;
      |   ~~~~~^
/host/spi-builder-workspace/Source/Cmlx/mlx/mlx/threadpool.h:51:8: error: no type named 'condition_variable' in namespace 'std'
   51 |   std::condition_variable condition;
      |   ~~~~~^
/host/spi-builder-workspace/Source/Cmlx/mlx/mlx/threadpool.h:61:13: error: no template named 'future' in namespace 'std'
   61 |     -> std::future<typename std::invoke_result_t<F, Args...>> {
      |        ~~~~~^
/host/spi-builder-workspace/Source/Cmlx/mlx/mlx/threadpool.h:64:37: error: no member named 'packaged_task' in namespace 'std'
   64 |   auto task = std::make_shared<std::packaged_task<return_type()>>(
      |                                     ^~~~~~~~~~~~~
/host/spi-builder-workspace/Source/Cmlx/mlx/mlx/threadpool.h:67:8: error: no member named 'future' in namespace 'std'
   67 |   std::future<return_type> res = task->get_future();
      |        ^~~~~~
/host/spi-builder-workspace/Source/Cmlx/mlx/mlx/threadpool.h:67:15: error: unexpected type name 'return_type': expected expression
   67 |   std::future<return_type> res = task->get_future();
      |               ^
/host/spi-builder-workspace/Source/Cmlx/mlx/mlx/threadpool.h:67:28: error: use of undeclared identifier 'res'
   67 |   std::future<return_type> res = task->get_future();
      |                            ^~~
/host/spi-builder-workspace/Source/Cmlx/mlx/mlx/threadpool.h:69:27: error: no member named 'mutex' in namespace 'std'
   69 |     std::unique_lock<std::mutex> lock(queue_mutex);
      |                           ^~~~~
/host/spi-builder-workspace/Source/Cmlx/mlx/mlx/threadpool.h:79:10: error: use of undeclared identifier 'res'
   79 |   return res;
      |          ^~~
/host/spi-builder-workspace/Source/Cmlx/mlx/mlx/threadpool.h:100:27: error: no member named 'mutex' in namespace 'std'
  100 |     std::unique_lock<std::mutex> lock(queue_mutex);
      |                           ^~~~~
/host/spi-builder-workspace/Source/Cmlx/mlx/mlx/threadpool.h:104:13: error: no type named 'thread' in namespace 'std'
  104 |   for (std::thread& worker : workers) {
      |        ~~~~~^
/host/spi-builder-workspace/Source/Cmlx/mlx/mlx/threadpool.h:120:33: error: no member named 'mutex' in namespace 'std'
  120 |           std::unique_lock<std::mutex> lock(this->queue_mutex);
      |                                 ^~~~~
[21/191] Compiling export.cpp
In file included from /host/spi-builder-workspace/Source/Cmlx/mlx-c/mlx/c/device.cpp:7:
In file included from /host/spi-builder-workspace/Source/Cmlx/mlx-c/mlx/c/private/mlx.h:4:
In file included from /host/spi-builder-workspace/Source/Cmlx/mlx-c/mlx/c/private/array.h:10:
In file included from /host/spi-builder-workspace/Source/Cmlx/mlx/mlx/mlx.h:14:
In file included from /host/spi-builder-workspace/Source/Cmlx/mlx/mlx/export.h:137:
In file included from /host/spi-builder-workspace/Source/Cmlx/mlx/mlx/export_impl.h:4:
In file included from /host/spi-builder-workspace/Source/Cmlx/mlx/mlx/io/load.h:16:
/host/spi-builder-workspace/Source/Cmlx/mlx/mlx/threadpool.h:40:15: error: no template named 'future' in namespace 'std'
   40 |       -> std::future<typename std::invoke_result_t<F, Args...>>;
      |          ~~~~~^
/host/spi-builder-workspace/Source/Cmlx/mlx/mlx/threadpool.h:48:20: error: no member named 'thread' in namespace 'std'
   48 |   std::vector<std::thread> workers;
      |                    ^~~~~~
/host/spi-builder-workspace/Source/Cmlx/mlx/mlx/threadpool.h:50:8: error: no type named 'mutex' in namespace 'std'
   50 |   std::mutex queue_mutex;
      |   ~~~~~^
/host/spi-builder-workspace/Source/Cmlx/mlx/mlx/threadpool.h:51:8: error: no type named 'condition_variable' in namespace 'std'
   51 |   std::condition_variable condition;
      |   ~~~~~^
/host/spi-builder-workspace/Source/Cmlx/mlx/mlx/threadpool.h:61:13: error: no template named 'future' in namespace 'std'
   61 |     -> std::future<typename std::invoke_result_t<F, Args...>> {
      |        ~~~~~^
/host/spi-builder-workspace/Source/Cmlx/mlx/mlx/threadpool.h:64:37: error: no member named 'packaged_task' in namespace 'std'
   64 |   auto task = std::make_shared<std::packaged_task<return_type()>>(
      |                                     ^~~~~~~~~~~~~
/host/spi-builder-workspace/Source/Cmlx/mlx/mlx/threadpool.h:67:8: error: no member named 'future' in namespace 'std'
   67 |   std::future<return_type> res = task->get_future();
      |        ^~~~~~
/host/spi-builder-workspace/Source/Cmlx/mlx/mlx/threadpool.h:67:15: error: unexpected type name 'return_type': expected expression
   67 |   std::future<return_type> res = task->get_future();
      |               ^
/host/spi-builder-workspace/Source/Cmlx/mlx/mlx/threadpool.h:67:28: error: use of undeclared identifier 'res'
   67 |   std::future<return_type> res = task->get_future();
      |                            ^~~
/host/spi-builder-workspace/Source/Cmlx/mlx/mlx/threadpool.h:69:27: error: no member named 'mutex' in namespace 'std'
   69 |     std::unique_lock<std::mutex> lock(queue_mutex);
      |                           ^~~~~
/host/spi-builder-workspace/Source/Cmlx/mlx/mlx/threadpool.h:79:10: error: use of undeclared identifier 'res'
   79 |   return res;
      |          ^~~
/host/spi-builder-workspace/Source/Cmlx/mlx/mlx/threadpool.h:100:27: error: no member named 'mutex' in namespace 'std'
  100 |     std::unique_lock<std::mutex> lock(queue_mutex);
      |                           ^~~~~
/host/spi-builder-workspace/Source/Cmlx/mlx/mlx/threadpool.h:104:13: error: no type named 'thread' in namespace 'std'
  104 |   for (std::thread& worker : workers) {
      |        ~~~~~^
/host/spi-builder-workspace/Source/Cmlx/mlx/mlx/threadpool.h:120:33: error: no member named 'mutex' in namespace 'std'
  120 |           std::unique_lock<std::mutex> lock(this->queue_mutex);
      |                                 ^~~~~
[21/191] Compiling device.cpp
In file included from /host/spi-builder-workspace/Source/Cmlx/mlx/mlx/distributed/ops.cpp:9:
In file included from /host/spi-builder-workspace/Source/Cmlx/mlx/mlx/distributed/primitives.h:7:
In file included from /host/spi-builder-workspace/Source/Cmlx/mlx/mlx/primitives.h:10:
In file included from /host/spi-builder-workspace/Source/Cmlx/mlx/mlx/io/load.h:16:
/host/spi-builder-workspace/Source/Cmlx/mlx/mlx/threadpool.h:40:15: error: no template named 'future' in namespace 'std'
   40 |       -> std::future<typename std::invoke_result_t<F, Args...>>;
      |          ~~~~~^
/host/spi-builder-workspace/Source/Cmlx/mlx/mlx/threadpool.h:48:20: error: no member named 'thread' in namespace 'std'
   48 |   std::vector<std::thread> workers;
      |                    ^~~~~~
/host/spi-builder-workspace/Source/Cmlx/mlx/mlx/threadpool.h:50:8: error: no type named 'mutex' in namespace 'std'
   50 |   std::mutex queue_mutex;
      |   ~~~~~^
[21/191] Compiling ops.cpp
In file included from /host/spi-builder-workspace/Source/Cmlx/mlx/mlx/transforms.cpp:17:
In file included from /host/spi-builder-workspace/Source/Cmlx/mlx/mlx/primitives.h:10:
In file included from /host/spi-builder-workspace/Source/Cmlx/mlx/mlx/io/load.h:16:
/host/spi-builder-workspace/Source/Cmlx/mlx/mlx/threadpool.h:40:15: error: no template named 'future' in namespace 'std'
   40 |       -> std::future<typename std::invoke_result_t<F, Args...>>;
      |          ~~~~~^
/host/spi-builder-workspace/Source/Cmlx/mlx/mlx/threadpool.h:48:20: error: no member named 'thread' in namespace 'std'
   48 |   std::vector<std::thread> workers;
      |                    ^~~~~~
/host/spi-builder-workspace/Source/Cmlx/mlx/mlx/threadpool.h:50:8: error: no type named 'mutex' in namespace 'std'
   50 |   std::mutex queue_mutex;
      |   ~~~~~^
/host/spi-builder-workspace/Source/Cmlx/mlx/mlx/threadpool.h:51:8: error: no type named 'condition_variable' in namespace 'std'
   51 |   std::condition_variable condition;
      |   ~~~~~^
/host/spi-builder-workspace/Source/Cmlx/mlx/mlx/threadpool.h:61:13: error: no template named 'future' in namespace 'std'
   61 |     -> std::future<typename std::invoke_result_t<F, Args...>> {
      |        ~~~~~^
/host/spi-builder-workspace/Source/Cmlx/mlx/mlx/threadpool.h:64:37: error: no member named 'packaged_task' in namespace 'std'
   64 |   auto task = std::make_shared<std::packaged_task<return_type()>>(
      |                                     ^~~~~~~~~~~~~
[21/191] Compiling transforms.cpp
BUILD FAILURE 6.3 wasm