The Swift Package Index logo.Swift Package Index

Build Information

Failed to build swift-memory-allocation, reference 0.2.0 (afe7e8), with Swift 6.2 for Wasm on 19 Dec 2025 18:47:39 UTC.

Build Command

bash -c docker run --pull=always --rm -v "checkouts-4606859-0":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/finestructure/spi-images:wasm-6.2-latest swift build --swift-sdk wasm32-unknown-wasip1 2>&1

Build Log

========================================
RunAll
========================================
Builder version: 4.68.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/coenttb/swift-memory-allocation.git
Reference: 0.2.0
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/coenttb/swift-memory-allocation
 * tag               0.2.0      -> FETCH_HEAD
HEAD is now at afe7e86 fix: add Windows support using Swift 6 Mutex
Cloned https://github.com/coenttb/swift-memory-allocation.git
Revision (git rev-parse @):
afe7e86f16981007b841470d5ea79f0026868bc3
SPI manifest file found: $PWD/.spi.yml
SUCCESS checkout https://github.com/coenttb/swift-memory-allocation.git at 0.2.0
========================================
Build
========================================
Selected platform:         wasm
Swift version:             6.2
Building package at path:  $PWD
https://github.com/coenttb/swift-memory-allocation.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4606859-0":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/finestructure/spi-images:wasm-6.2-latest swift build --swift-sdk wasm32-unknown-wasip1 2>&1
wasm-6.2-latest: Pulling from finestructure/spi-images
Digest: sha256:ea378e7d7954b9ce813c0ebc8f6bc113436e2b3d5aa4fd45225da8bf07e6be73
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:wasm-6.2-latest
warning: multiple Swift SDKs match target triple `wasm32-unknown-wasip1` and host triple x86_64-unknown-linux-gnu, selected one at /root/.swiftpm/swift-sdks/swift-6.2-RELEASE_wasm.artifactbundle/swift-6.2-RELEASE_wasm/wasm32-unknown-wasip1/embedded-swift-sdk.json
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version-24593BA9C3E375BF.txt
error: emit-module command failed with exit code 1 (use -v to see invocation)
[3/4] Emitting module MemoryAllocation
/host/spi-builder-workspace/Sources/MemoryAllocation/AllocationProfiler.swift:29:32: error: cannot find 'Mutex' in scope
 27 | /// ```
 28 | public final class AllocationProfiler: Sendable {
 29 |     private let measurements = Mutex<[AllocationStats]>([])
    |                                `- error: cannot find 'Mutex' in scope
 30 |
 31 |     /// Initialize an allocation profiler
/host/spi-builder-workspace/Sources/MemoryAllocation/AllocationProfiler.swift:102:32: error: cannot infer key path type from context; consider explicitly specifying a root type
100 |             guard !m.isEmpty else { return 0 }
101 |
102 |             let sorted = m.map(\.bytesAllocated).sorted()
    |                                `- error: cannot infer key path type from context; consider explicitly specifying a root type
103 |             let index = Int(Double(sorted.count) * Double(percentile) / 100.0)
104 |             return sorted[min(index, sorted.count - 1)]
/host/spi-builder-workspace/Sources/MemoryAllocation/AllocationProfiler.swift:130:32: error: cannot infer key path type from context; consider explicitly specifying a root type
128 |             guard !m.isEmpty else { return 0 }
129 |
130 |             let sorted = m.map(\.allocations).sorted()
    |                                `- error: cannot infer key path type from context; consider explicitly specifying a root type
131 |             let index = Int(Double(sorted.count) * Double(percentile) / 100.0)
132 |             return sorted[min(index, sorted.count - 1)]
/host/spi-builder-workspace/Sources/MemoryAllocation/AllocationProfiler.swift:142:31: error: cannot infer key path type from context; consider explicitly specifying a root type
140 |     public func histogram(buckets: Int = 10) -> AllocationHistogram {
141 |         measurements.withLock { m in
142 |             let bytes = m.map(\.bytesAllocated)
    |                               `- error: cannot infer key path type from context; consider explicitly specifying a root type
143 |             return AllocationHistogram(values: bytes, buckets: buckets)
144 |         }
/host/spi-builder-workspace/Sources/MemoryAllocation/Lock.swift:8:21: error: cannot find type 'Mutex' in scope
6 | import Synchronization
7 |
8 | typealias Lock<T> = Mutex<T>
  |                     `- error: cannot find type 'Mutex' in scope
9 |
/host/spi-builder-workspace/Sources/MemoryAllocation/PeakMemoryTracker.swift:31:25: error: cannot find 'Mutex' in scope
 29 |     }
 30 |
 31 |     private let state = Mutex<State>(State())
    |                         `- error: cannot find 'Mutex' in scope
 32 |     private let baseline: AllocationStats
 33 |
[4/4] Compiling MemoryAllocation AllocationProfiler.swift
/host/spi-builder-workspace/Sources/MemoryAllocation/AllocationProfiler.swift:29:32: error: cannot find 'Mutex' in scope
 27 | /// ```
 28 | public final class AllocationProfiler: Sendable {
 29 |     private let measurements = Mutex<[AllocationStats]>([])
    |                                `- error: cannot find 'Mutex' in scope
 30 |
 31 |     /// Initialize an allocation profiler
/host/spi-builder-workspace/Sources/MemoryAllocation/AllocationProfiler.swift:102:32: error: cannot infer key path type from context; consider explicitly specifying a root type
100 |             guard !m.isEmpty else { return 0 }
101 |
102 |             let sorted = m.map(\.bytesAllocated).sorted()
    |                                `- error: cannot infer key path type from context; consider explicitly specifying a root type
103 |             let index = Int(Double(sorted.count) * Double(percentile) / 100.0)
104 |             return sorted[min(index, sorted.count - 1)]
/host/spi-builder-workspace/Sources/MemoryAllocation/AllocationProfiler.swift:130:32: error: cannot infer key path type from context; consider explicitly specifying a root type
128 |             guard !m.isEmpty else { return 0 }
129 |
130 |             let sorted = m.map(\.allocations).sorted()
    |                                `- error: cannot infer key path type from context; consider explicitly specifying a root type
131 |             let index = Int(Double(sorted.count) * Double(percentile) / 100.0)
132 |             return sorted[min(index, sorted.count - 1)]
/host/spi-builder-workspace/Sources/MemoryAllocation/AllocationProfiler.swift:142:31: error: cannot infer key path type from context; consider explicitly specifying a root type
140 |     public func histogram(buckets: Int = 10) -> AllocationHistogram {
141 |         measurements.withLock { m in
142 |             let bytes = m.map(\.bytesAllocated)
    |                               `- error: cannot infer key path type from context; consider explicitly specifying a root type
143 |             return AllocationHistogram(values: bytes, buckets: buckets)
144 |         }
/host/spi-builder-workspace/Sources/MemoryAllocation/Lock.swift:8:21: error: cannot find type 'Mutex' in scope
6 | import Synchronization
7 |
8 | typealias Lock<T> = Mutex<T>
  |                     `- error: cannot find type 'Mutex' in scope
9 |
/host/spi-builder-workspace/Sources/MemoryAllocation/PeakMemoryTracker.swift:31:25: error: cannot find 'Mutex' in scope
 29 |     }
 30 |
 31 |     private let state = Mutex<State>(State())
    |                         `- error: cannot find 'Mutex' in scope
 32 |     private let baseline: AllocationStats
 33 |
BUILD FAILURE 6.2 wasm