Build Information
Failed to build USearch, reference main (22d59b), with Swift 6.1 for Wasm on 20 Apr 2026 12:16:38 UTC.
Build Command
bash -c docker run --pull=always --rm -v "checkouts-4609320-3":/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.1-latest swift build --swift-sdk wasm32-unknown-wasi 2>&1Build Log
========================================
RunAll
========================================
Builder version: 4.70.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/unum-cloud/usearch.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/unum-cloud/usearch
* branch main -> FETCH_HEAD
* [new branch] main -> origin/main
HEAD is now at 22d59bb Release: v2.25.1 [skip ci] ### Patch
Submodule path 'numkong': checked out '14daf40059045660775ec39d161f2b51e0a0f2dc'
Submodule path 'stringzilla': checked out '30d3e2129654d8269b3f66726414f9694c834e25'
Submodule 'numkong' (https://github.com/ashvardanian/NumKong) registered for path 'numkong'
Submodule 'stringzilla' (https://github.com/ashvardanian/stringzilla) registered for path 'stringzilla'
Cloning into '/host/spi-builder-workspace/numkong'...
Cloning into '/host/spi-builder-workspace/stringzilla'...
Cloned https://github.com/unum-cloud/usearch.git
Revision (git rev-parse @):
22d59bb3ebaa3d566ff45652ce4b0d0711abb779
SUCCESS checkout https://github.com/unum-cloud/usearch.git at main
========================================
Build
========================================
Selected platform: wasm
Swift version: 6.1
Building package at path: $PWD
https://github.com/unum-cloud/usearch.git
https://github.com/unum-cloud/usearch.git
WARNING: environment variable SUPPRESS_SWIFT_6_FLAGS is not set
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4609320-3":/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.1-latest swift build --swift-sdk wasm32-unknown-wasi -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures 2>&1
wasm-6.1-latest: Pulling from swiftpackageindex/spi-images
Digest: sha256:276d66a16377d3ee059b2e3429cbc1154d9f01e42871e5d702fd5d8b9044d93d
Status: Image is up to date for registry.gitlab.com/swiftpackageindex/spi-images:wasm-6.1-latest
Fetching https://github.com/ashvardanian/NumKong
[1/24753] Fetching numkong
Fetched https://github.com/ashvardanian/NumKong from cache (3.51s)
Computing version for https://github.com/ashvardanian/NumKong
Computed https://github.com/ashvardanian/NumKong at 7.6.0 (4.50s)
Creating working copy for https://github.com/ashvardanian/NumKong
Working copy of https://github.com/ashvardanian/NumKong resolved at 7.6.0
Building for debugging...
[0/3] Write sources
[1/3] Write swift-version-24593BA9C3E375BF.txt
In file included from /host/spi-builder-workspace/c/lib.cpp:3:
In file included from /host/spi-builder-workspace/include/usearch/index_dense.hpp:8:
In file included from /host/spi-builder-workspace/include/usearch/index.hpp:85:
/root/.swiftpm/swift-sdks/swift-wasm-6.1-RELEASE-wasm32-unknown-wasi.artifactbundle/6.1-RELEASE-wasm32-unknown-wasi/wasm32-unknown-wasi/WASI.sdk/include/wasm32-wasi/sys/mman.h:2:2: error: "WASI lacks a true mmap; to enable minimal mmap emulation, compile with -D_WASI_EMULATED_MMAN and link with -lwasi-emulated-mman"
2 | #error "WASI lacks a true mmap; to enable minimal mmap emulation, \
| ^
In file included from /host/spi-builder-workspace/c/lib.cpp:3:
In file included from /host/spi-builder-workspace/include/usearch/index_dense.hpp:8:
/host/spi-builder-workspace/include/usearch/index.hpp:713:18: error: no member named 'this_thread' in namespace 'std'
713 | std::this_thread::yield();
| ~~~~~^
/host/spi-builder-workspace/include/usearch/index.hpp:1532:36: error: no member named 'thread' in namespace 'std'
1532 | std::size_t threads_add = std::thread::hardware_concurrency();
| ~~~~~^
/host/spi-builder-workspace/include/usearch/index.hpp:1534:39: error: no member named 'thread' in namespace 'std'
1534 | std::size_t threads_search = std::thread::hardware_concurrency();
| ~~~~~^
/host/spi-builder-workspace/include/usearch/index.hpp:1537:80: error: no member named 'thread' in namespace 'std'
1537 | inline index_limits_t(std::size_t n = 0) noexcept : index_limits_t(n, std::thread::hardware_concurrency()) {}
| ~~~~~^
/host/spi-builder-workspace/include/usearch/index.hpp:1948:63: error: use of undeclared identifier 'PROT_READ'
1948 | byte_t* file = (byte_t*)mmap(NULL, file_stat.st_size, PROT_READ, MAP_SHARED, descriptor, 0);
| ^
/host/spi-builder-workspace/include/usearch/index.hpp:1948:74: error: use of undeclared identifier 'MAP_SHARED'
1948 | byte_t* file = (byte_t*)mmap(NULL, file_stat.st_size, PROT_READ, MAP_SHARED, descriptor, 0);
| ^
/host/spi-builder-workspace/include/usearch/index.hpp:1949:21: error: use of undeclared identifier 'MAP_FAILED'
1949 | if (file == MAP_FAILED) {
| ^
/host/spi-builder-workspace/include/usearch/index.hpp:1973:9: error: use of undeclared identifier 'munmap'
1973 | munmap(ptr_, length_);
| ^
/host/spi-builder-workspace/include/usearch/index.hpp:2396:10: error: no type named 'mutex' in namespace 'std'
2396 | std::mutex global_mutex_{};
| ~~~~~^
/host/spi-builder-workspace/include/usearch/index.hpp:2938:14: error: no template named 'unique_lock' in namespace 'std'; did you mean 'unique_copy'?
2938 | std::unique_lock<std::mutex> new_level_lock(global_mutex_);
| ~~~~~^~~~~~~~~~~
| unique_copy
/root/.swiftpm/swift-sdks/swift-wasm-6.1-RELEASE-wasm32-unknown-wasi.artifactbundle/6.1-RELEASE-wasm32-unknown-wasi/wasm32-unknown-wasi/WASI.sdk/include/c++/v1/__algorithm/unique_copy.h:102:1: note: 'unique_copy' declared here
102 | unique_copy(_InputIterator __first, _InputIterator __last, _OutputIterator __result, _BinaryPredicate __pred) {
| ^
In file included from /host/spi-builder-workspace/c/lib.cpp:3:
In file included from /host/spi-builder-workspace/include/usearch/index_dense.hpp:8:
/host/spi-builder-workspace/include/usearch/index.hpp:2938:31: error: no member named 'mutex' in namespace 'std'
2938 | std::unique_lock<std::mutex> new_level_lock(global_mutex_);
| ~~~~~^
/host/spi-builder-workspace/include/usearch/index.hpp:2958:13: error: use of undeclared identifier 'new_level_lock'
2958 | new_level_lock.unlock();
| ^
/host/spi-builder-workspace/include/usearch/index.hpp:3082:18: error: no template named 'unique_lock' in namespace 'std'; did you mean 'unique_copy'?
3082 | std::unique_lock<std::mutex> new_level_lock(global_mutex_);
| ~~~~~^~~~~~~~~~~
| unique_copy
/root/.swiftpm/swift-sdks/swift-wasm-6.1-RELEASE-wasm32-unknown-wasi.artifactbundle/6.1-RELEASE-wasm32-unknown-wasi/wasm32-unknown-wasi/WASI.sdk/include/c++/v1/__algorithm/unique_copy.h:102:1: note: 'unique_copy' declared here
102 | unique_copy(_InputIterator __first, _InputIterator __last, _OutputIterator __result, _BinaryPredicate __pred) {
| ^
In file included from /host/spi-builder-workspace/c/lib.cpp:3:
In file included from /host/spi-builder-workspace/include/usearch/index_dense.hpp:8:
/host/spi-builder-workspace/include/usearch/index.hpp:3082:35: error: no member named 'mutex' in namespace 'std'
3082 | std::unique_lock<std::mutex> new_level_lock(global_mutex_);
| ~~~~~^
/host/spi-builder-workspace/include/usearch/index.hpp:4613:10: error: no type named 'mutex' in namespace 'std'
4613 | std::mutex free_men_mutex{};
| ~~~~~^
/host/spi-builder-workspace/include/usearch/index.hpp:4656:22: error: no template named 'unique_lock' in namespace 'std'; did you mean 'unique_copy'?
4656 | std::unique_lock<std::mutex> pop_lock(free_men_mutex);
| ~~~~~^~~~~~~~~~~
| unique_copy
/root/.swiftpm/swift-sdks/swift-wasm-6.1-RELEASE-wasm32-unknown-wasi.artifactbundle/6.1-RELEASE-wasm32-unknown-wasi/wasm32-unknown-wasi/WASI.sdk/include/c++/v1/__algorithm/unique_copy.h:102:1: note: 'unique_copy' declared here
102 | unique_copy(_InputIterator __first, _InputIterator __last, _OutputIterator __result, _BinaryPredicate __pred) {
| ^
In file included from /host/spi-builder-workspace/c/lib.cpp:3:
In file included from /host/spi-builder-workspace/include/usearch/index_dense.hpp:8:
/host/spi-builder-workspace/include/usearch/index.hpp:4656:39: error: no member named 'mutex' in namespace 'std'
4656 | std::unique_lock<std::mutex> pop_lock(free_men_mutex);
| ~~~~~^
/host/spi-builder-workspace/include/usearch/index.hpp:4712:26: error: no template named 'unique_lock' in namespace 'std'; did you mean 'unique_copy'?
4712 | std::unique_lock<std::mutex> push_lock(free_men_mutex);
| ~~~~~^~~~~~~~~~~
| unique_copy
/root/.swiftpm/swift-sdks/swift-wasm-6.1-RELEASE-wasm32-unknown-wasi.artifactbundle/6.1-RELEASE-wasm32-unknown-wasi/wasm32-unknown-wasi/WASI.sdk/include/c++/v1/__algorithm/unique_copy.h:102:1: note: 'unique_copy' declared here
102 | unique_copy(_InputIterator __first, _InputIterator __last, _OutputIterator __result, _BinaryPredicate __pred) {
| ^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
[2/3] Compiling USearchC lib.cpp
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4609320-3":/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.1-latest swift build --swift-sdk wasm32-unknown-wasi 2>&1
wasm-6.1-latest: Pulling from swiftpackageindex/spi-images
Digest: sha256:276d66a16377d3ee059b2e3429cbc1154d9f01e42871e5d702fd5d8b9044d93d
Status: Image is up to date for registry.gitlab.com/swiftpackageindex/spi-images:wasm-6.1-latest
warning: 'spi-builder-workspace': found 4 file(s) which are unhandled; explicitly declare them as resources or exclude from the target
/host/spi-builder-workspace/swift/Util.swift
/host/spi-builder-workspace/swift/USearchIndex+Sugar.swift
/host/spi-builder-workspace/swift/README.md
/host/spi-builder-workspace/swift/USearchIndex.swift
[0/1] Planning build
Building for debugging...
[0/2] Write swift-version-24593BA9C3E375BF.txt
In file included from /host/spi-builder-workspace/c/lib.cpp:3:
In file included from /host/spi-builder-workspace/include/usearch/index_dense.hpp:8:
In file included from /host/spi-builder-workspace/include/usearch/index.hpp:85:
/root/.swiftpm/swift-sdks/swift-wasm-6.1-RELEASE-wasm32-unknown-wasi.artifactbundle/6.1-RELEASE-wasm32-unknown-wasi/wasm32-unknown-wasi/WASI.sdk/include/wasm32-wasi/sys/mman.h:2:2: error: "WASI lacks a true mmap; to enable minimal mmap emulation, compile with -D_WASI_EMULATED_MMAN and link with -lwasi-emulated-mman"
2 | #error "WASI lacks a true mmap; to enable minimal mmap emulation, \
| ^
In file included from /host/spi-builder-workspace/c/lib.cpp:3:
In file included from /host/spi-builder-workspace/include/usearch/index_dense.hpp:8:
/host/spi-builder-workspace/include/usearch/index.hpp:713:18: error: no member named 'this_thread' in namespace 'std'
713 | std::this_thread::yield();
| ~~~~~^
/host/spi-builder-workspace/include/usearch/index.hpp:1532:36: error: no member named 'thread' in namespace 'std'
1532 | std::size_t threads_add = std::thread::hardware_concurrency();
| ~~~~~^
/host/spi-builder-workspace/include/usearch/index.hpp:1534:39: error: no member named 'thread' in namespace 'std'
1534 | std::size_t threads_search = std::thread::hardware_concurrency();
| ~~~~~^
/host/spi-builder-workspace/include/usearch/index.hpp:1537:80: error: no member named 'thread' in namespace 'std'
1537 | inline index_limits_t(std::size_t n = 0) noexcept : index_limits_t(n, std::thread::hardware_concurrency()) {}
| ~~~~~^
/host/spi-builder-workspace/include/usearch/index.hpp:1948:63: error: use of undeclared identifier 'PROT_READ'
1948 | byte_t* file = (byte_t*)mmap(NULL, file_stat.st_size, PROT_READ, MAP_SHARED, descriptor, 0);
| ^
/host/spi-builder-workspace/include/usearch/index.hpp:1948:74: error: use of undeclared identifier 'MAP_SHARED'
1948 | byte_t* file = (byte_t*)mmap(NULL, file_stat.st_size, PROT_READ, MAP_SHARED, descriptor, 0);
| ^
/host/spi-builder-workspace/include/usearch/index.hpp:1949:21: error: use of undeclared identifier 'MAP_FAILED'
1949 | if (file == MAP_FAILED) {
| ^
/host/spi-builder-workspace/include/usearch/index.hpp:1973:9: error: use of undeclared identifier 'munmap'
1973 | munmap(ptr_, length_);
| ^
/host/spi-builder-workspace/include/usearch/index.hpp:2396:10: error: no type named 'mutex' in namespace 'std'
2396 | std::mutex global_mutex_{};
| ~~~~~^
/host/spi-builder-workspace/include/usearch/index.hpp:2938:14: error: no template named 'unique_lock' in namespace 'std'; did you mean 'unique_copy'?
2938 | std::unique_lock<std::mutex> new_level_lock(global_mutex_);
| ~~~~~^~~~~~~~~~~
| unique_copy
/root/.swiftpm/swift-sdks/swift-wasm-6.1-RELEASE-wasm32-unknown-wasi.artifactbundle/6.1-RELEASE-wasm32-unknown-wasi/wasm32-unknown-wasi/WASI.sdk/include/c++/v1/__algorithm/unique_copy.h:102:1: note: 'unique_copy' declared here
102 | unique_copy(_InputIterator __first, _InputIterator __last, _OutputIterator __result, _BinaryPredicate __pred) {
| ^
In file included from /host/spi-builder-workspace/c/lib.cpp:3:
In file included from /host/spi-builder-workspace/include/usearch/index_dense.hpp:8:
/host/spi-builder-workspace/include/usearch/index.hpp:2938:31: error: no member named 'mutex' in namespace 'std'
2938 | std::unique_lock<std::mutex> new_level_lock(global_mutex_);
| ~~~~~^
/host/spi-builder-workspace/include/usearch/index.hpp:2958:13: error: use of undeclared identifier 'new_level_lock'
2958 | new_level_lock.unlock();
| ^
/host/spi-builder-workspace/include/usearch/index.hpp:3082:18: error: no template named 'unique_lock' in namespace 'std'; did you mean 'unique_copy'?
3082 | std::unique_lock<std::mutex> new_level_lock(global_mutex_);
| ~~~~~^~~~~~~~~~~
| unique_copy
/root/.swiftpm/swift-sdks/swift-wasm-6.1-RELEASE-wasm32-unknown-wasi.artifactbundle/6.1-RELEASE-wasm32-unknown-wasi/wasm32-unknown-wasi/WASI.sdk/include/c++/v1/__algorithm/unique_copy.h:102:1: note: 'unique_copy' declared here
102 | unique_copy(_InputIterator __first, _InputIterator __last, _OutputIterator __result, _BinaryPredicate __pred) {
| ^
In file included from /host/spi-builder-workspace/c/lib.cpp:3:
In file included from /host/spi-builder-workspace/include/usearch/index_dense.hpp:8:
/host/spi-builder-workspace/include/usearch/index.hpp:3082:35: error: no member named 'mutex' in namespace 'std'
3082 | std::unique_lock<std::mutex> new_level_lock(global_mutex_);
| ~~~~~^
/host/spi-builder-workspace/include/usearch/index.hpp:4613:10: error: no type named 'mutex' in namespace 'std'
4613 | std::mutex free_men_mutex{};
| ~~~~~^
/host/spi-builder-workspace/include/usearch/index.hpp:4656:22: error: no template named 'unique_lock' in namespace 'std'; did you mean 'unique_copy'?
4656 | std::unique_lock<std::mutex> pop_lock(free_men_mutex);
| ~~~~~^~~~~~~~~~~
| unique_copy
/root/.swiftpm/swift-sdks/swift-wasm-6.1-RELEASE-wasm32-unknown-wasi.artifactbundle/6.1-RELEASE-wasm32-unknown-wasi/wasm32-unknown-wasi/WASI.sdk/include/c++/v1/__algorithm/unique_copy.h:102:1: note: 'unique_copy' declared here
102 | unique_copy(_InputIterator __first, _InputIterator __last, _OutputIterator __result, _BinaryPredicate __pred) {
| ^
In file included from /host/spi-builder-workspace/c/lib.cpp:3:
In file included from /host/spi-builder-workspace/include/usearch/index_dense.hpp:8:
/host/spi-builder-workspace/include/usearch/index.hpp:4656:39: error: no member named 'mutex' in namespace 'std'
4656 | std::unique_lock<std::mutex> pop_lock(free_men_mutex);
| ~~~~~^
/host/spi-builder-workspace/include/usearch/index.hpp:4712:26: error: no template named 'unique_lock' in namespace 'std'; did you mean 'unique_copy'?
4712 | std::unique_lock<std::mutex> push_lock(free_men_mutex);
| ~~~~~^~~~~~~~~~~
| unique_copy
/root/.swiftpm/swift-sdks/swift-wasm-6.1-RELEASE-wasm32-unknown-wasi.artifactbundle/6.1-RELEASE-wasm32-unknown-wasi/wasm32-unknown-wasi/WASI.sdk/include/c++/v1/__algorithm/unique_copy.h:102:1: note: 'unique_copy' declared here
102 | unique_copy(_InputIterator __first, _InputIterator __last, _OutputIterator __result, _BinaryPredicate __pred) {
| ^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
[1/2] Compiling USearchC lib.cpp
BUILD FAILURE 6.1 wasm