The Swift Package Index logo.Swift Package Index

Has it really been five years since Swift Package Index launched? Read our anniversary blog post!

Build Information

Failed to build USearch, reference main (68e403), with Swift 6.2 (beta) for Wasm on 24 Jun 2025 15:37:51 UTC.

Build Command

bash -c docker run --pull=always --rm -v "checkouts-4606859-3":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:wasm-6.2-latest swift build --swift-sdk wasm32-unknown-wasi 2>&1

Build Log

========================================
RunAll
========================================
Builder version: 4.64.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 68e403a Release: v2.17.12 [skip ci] ### Patch
Submodule path 'fp16': checked out '0a92994d729ff76a58f692d3028ca1b64b145d91'
Submodule path 'simsimd': checked out '9a4d32548b2f65dcdfef21df7a0d7caef848627f'
Submodule path 'stringzilla': checked out '960967d78c7facf6de2de9d5eecc0ac7f5ce19b8'
Submodule 'fp16' (https://github.com/maratyszcza/fp16) registered for path 'fp16'
Submodule 'simsimd' (https://github.com/ashvardanian/simsimd) registered for path 'simsimd'
Submodule 'stringzilla' (https://github.com/ashvardanian/stringzilla) registered for path 'stringzilla'
Cloning into '/host/spi-builder-workspace/fp16'...
Cloning into '/host/spi-builder-workspace/simsimd'...
Cloning into '/host/spi-builder-workspace/stringzilla'...
Cloned https://github.com/unum-cloud/usearch.git
Revision (git rev-parse @):
68e403aef75311313570af5340a2612777d3a986
SUCCESS checkout https://github.com/unum-cloud/usearch.git at main
========================================
Build
========================================
Selected platform:         wasm
Swift version:             6.2
Building package at path:  $PWD
https://github.com/unum-cloud/usearch.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4606859-3":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:wasm-6.2-latest swift build --swift-sdk wasm32-unknown-wasi 2>&1
wasm-6.2-latest: Pulling from finestructure/spi-images
Digest: sha256:44384f43f933eaa0f42803e9ef7c3d8388c5841ccc831a15a5edf63d8c273423
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:wasm-6.2-latest
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:82:
/root/.swiftpm/swift-sdks/swift-6.2-DEVELOPMENT-SNAPSHOT-2025-05-30-a_wasm.artifactbundle/swift-6.2-DEVELOPMENT-SNAPSHOT-2025-05-30-a_wasm/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:192:12: warning: shift count >= width of type [-Wshift-count-overflow]
  192 |     v |= v >> 32;
      |            ^  ~~
/host/spi-builder-workspace/include/usearch/index.hpp:1006:9: warning: 'memcpy' will always overflow; destination buffer has size 4, but size argument is 5 [-Wfortify-source]
 1006 |         std::memcpy(&result, octets, 5);
      |         ^
/host/spi-builder-workspace/include/usearch/index.hpp:1404:36: error: no member named 'thread' in namespace 'std'
 1404 |     std::size_t threads_add = std::thread::hardware_concurrency();
      |                               ~~~~~^
/host/spi-builder-workspace/include/usearch/index.hpp:1406:39: error: no member named 'thread' in namespace 'std'
 1406 |     std::size_t threads_search = std::thread::hardware_concurrency();
      |                                  ~~~~~^
/host/spi-builder-workspace/include/usearch/index.hpp:1409:80: error: no member named 'thread' in namespace 'std'
 1409 |     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:1817:63: error: use of undeclared identifier 'PROT_READ'
 1817 |         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:1817:74: error: use of undeclared identifier 'MAP_SHARED'
 1817 |         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:1818:21: error: use of undeclared identifier 'MAP_FAILED'
 1818 |         if (file == MAP_FAILED) {
      |                     ^
/host/spi-builder-workspace/include/usearch/index.hpp:1842:9: error: use of undeclared identifier 'munmap'
 1842 |         munmap(ptr_, length_);
      |         ^
/host/spi-builder-workspace/include/usearch/index.hpp:2251:10: error: no type named 'mutex' in namespace 'std'
 2251 |     std::mutex global_mutex_{};
      |     ~~~~~^
/host/spi-builder-workspace/include/usearch/index.hpp:2746:14: error: no template named 'unique_lock' in namespace 'std'; did you mean 'unique_copy'?
 2746 |         std::unique_lock<std::mutex> new_level_lock(global_mutex_);
      |         ~~~~~^~~~~~~~~~~
      |              unique_copy
/root/.swiftpm/swift-sdks/swift-6.2-DEVELOPMENT-SNAPSHOT-2025-05-30-a_wasm.artifactbundle/swift-6.2-DEVELOPMENT-SNAPSHOT-2025-05-30-a_wasm/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:2746:31: error: no member named 'mutex' in namespace 'std'
 2746 |         std::unique_lock<std::mutex> new_level_lock(global_mutex_);
      |                          ~~~~~^
/host/spi-builder-workspace/include/usearch/index.hpp:2766:13: error: use of undeclared identifier 'new_level_lock'
 2766 |             new_level_lock.unlock();
      |             ^
/host/spi-builder-workspace/include/usearch/index.hpp:2890:18: error: no template named 'unique_lock' in namespace 'std'; did you mean 'unique_copy'?
 2890 |             std::unique_lock<std::mutex> new_level_lock(global_mutex_);
      |             ~~~~~^~~~~~~~~~~
      |                  unique_copy
/root/.swiftpm/swift-sdks/swift-6.2-DEVELOPMENT-SNAPSHOT-2025-05-30-a_wasm.artifactbundle/swift-6.2-DEVELOPMENT-SNAPSHOT-2025-05-30-a_wasm/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:2890:35: error: no member named 'mutex' in namespace 'std'
 2890 |             std::unique_lock<std::mutex> new_level_lock(global_mutex_);
      |                              ~~~~~^
/host/spi-builder-workspace/include/usearch/index.hpp:4352:10: error: no type named 'mutex' in namespace 'std'
 4352 |     std::mutex free_men_mutex{};
      |     ~~~~~^
/host/spi-builder-workspace/include/usearch/index.hpp:4395:22: error: no template named 'unique_lock' in namespace 'std'; did you mean 'unique_copy'?
 4395 |                 std::unique_lock<std::mutex> pop_lock(free_men_mutex);
      |                 ~~~~~^~~~~~~~~~~
      |                      unique_copy
/root/.swiftpm/swift-sdks/swift-6.2-DEVELOPMENT-SNAPSHOT-2025-05-30-a_wasm.artifactbundle/swift-6.2-DEVELOPMENT-SNAPSHOT-2025-05-30-a_wasm/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:4395:39: error: no member named 'mutex' in namespace 'std'
 4395 |                 std::unique_lock<std::mutex> pop_lock(free_men_mutex);
      |                                  ~~~~~^
/host/spi-builder-workspace/include/usearch/index.hpp:4451:26: error: no template named 'unique_lock' in namespace 'std'; did you mean 'unique_copy'?
 4451 |                     std::unique_lock<std::mutex> push_lock(free_men_mutex);
      |                     ~~~~~^~~~~~~~~~~
      |                          unique_copy
/root/.swiftpm/swift-sdks/swift-6.2-DEVELOPMENT-SNAPSHOT-2025-05-30-a_wasm.artifactbundle/swift-6.2-DEVELOPMENT-SNAPSHOT-2025-05-30-a_wasm/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:4451:43: error: no member named 'mutex' in namespace 'std'
 4451 |                     std::unique_lock<std::mutex> push_lock(free_men_mutex);
      |                                      ~~~~~^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
2 warnings and 20 errors generated.
[2/3] Compiling USearchC lib.cpp
BUILD FAILURE 6.2 wasm