Build Information
Successful build of swift-spleeter, reference 0.3.0 (d5ca55), with Swift 6.1 for macOS (SPM) on 2 Nov 2026 14:39:36 UTC.
Swift 6 data race errors: 0
Build Command
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -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 InferSendableFromCapturesBuild Log
========================================
RunAll
========================================
Builder version: 5.1.4
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/jiyimeta/swift-spleeter.git
Reference: 0.3.0
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/jiyimeta/swift-spleeter
* tag 0.3.0 -> FETCH_HEAD
HEAD is now at d5ca55c Fix separation levels and masks, and add stereo separation
Submodule path 'Tools/spleeter-pytorch': checked out 'bb40395d320e773f6cda607971dea7d5f8bcd7d7'
Submodule 'Tools/spleeter-pytorch' (https://github.com/jiyimeta/spleeter-pytorch.git) registered for path 'Tools/spleeter-pytorch'
Cloning into '/Users/admin/builder/spi-builder-workspace/Tools/spleeter-pytorch'...
Cloned https://github.com/jiyimeta/swift-spleeter.git
Revision (git rev-parse @):
d5ca55c19f20b257feb57fa24ee281fc044b229a
SUCCESS checkout https://github.com/jiyimeta/swift-spleeter.git at 0.3.0
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.1
Building package at path: $PWD
https://github.com/jiyimeta/swift-spleeter.git
https://github.com/jiyimeta/swift-spleeter.git
{
"dependencies" : [
],
"manifest_display_name" : "swift-spleeter",
"name" : "swift-spleeter",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "ios",
"version" : "15.0"
},
{
"name" : "macos",
"version" : "12.0"
},
{
"name" : "tvos",
"version" : "15.0"
},
{
"name" : "watchos",
"version" : "8.0"
},
{
"name" : "visionos",
"version" : "1.0"
}
],
"products" : [
{
"name" : "Spleeter",
"targets" : [
"Spleeter"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "SpleeterTests",
"module_type" : "SwiftTarget",
"name" : "SpleeterTests",
"path" : "Tests/SpleeterTests",
"sources" : [
"AudioSeparatorTests.swift",
"STFTTests.swift"
],
"target_dependencies" : [
"Spleeter"
],
"type" : "test"
},
{
"c99name" : "Spleeter",
"module_type" : "SwiftTarget",
"name" : "Spleeter",
"path" : "Sources",
"product_memberships" : [
"Spleeter"
],
"sources" : [
"AudioFile/AudioFile.swift",
"AudioFile/AudioFileStreamWriter.swift",
"AudioFile/StereoValues.swift",
"AudioSeparator/AudioSeparator2/AudioSeparator2.swift",
"AudioSeparator/AudioSeparator2/Spleeter2Model.swift",
"AudioSeparator/AudioSeparator2/Stems2.swift",
"AudioSeparator/AudioSeparator4/AudioSeparator4.swift",
"AudioSeparator/AudioSeparator4/Spleeter4Model.swift",
"AudioSeparator/AudioSeparator4/Stems4.swift",
"AudioSeparator/AudioSeparator5/AudioSeparator5.swift",
"AudioSeparator/AudioSeparator5/Spleeter5Model.swift",
"AudioSeparator/AudioSeparator5/Stems5.swift",
"AudioSeparator/AudioSeparatorProtocol.swift",
"AudioSeparator/InternalAudioSeparatorProtocol.swift",
"AudioSeparator/SpleeterModelProtocol.swift",
"AudioSeparator/StemsProtocol.swift",
"STFT/STFT.swift",
"STFT/Spectrogram.swift",
"STFT/SpectrogramTensor.swift",
"Utility/Array+Extensions.swift",
"Utility/MLTensor+Extensions.swift",
"Utility/Sequence+Extensions.swift"
],
"type" : "library"
}
],
"tools_version" : "5.9"
}
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -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
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version-2F0A5646E1D333AE.txt
[3/23] Emitting module Spleeter
[4/25] Compiling Spleeter MLTensor+Extensions.swift
[5/25] Compiling Spleeter Sequence+Extensions.swift
[6/25] Compiling Spleeter Stems4.swift
[7/25] Compiling Spleeter AudioSeparator5.swift
[8/25] Compiling Spleeter SpleeterModelProtocol.swift
[9/25] Compiling Spleeter StemsProtocol.swift
[10/25] Compiling Spleeter AudioSeparator4.swift
[11/25] Compiling Spleeter Spleeter4Model.swift
[12/25] Compiling Spleeter AudioSeparatorProtocol.swift
/Users/admin/builder/spi-builder-workspace/Sources/AudioSeparator/InternalAudioSeparatorProtocol.swift:69:18: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
67 | ) -> AsyncThrowingStream<Progress, any Error> {
68 | AsyncThrowingStream { continuation in
69 | Task {
| `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
70 | do {
71 | let audioFile = try AudioFile(forReading: inputURL)
:
73 | let sampleRate = audioFile.sampleRate
74 |
75 | let fileWriters = try mapStems(outputURLs) {
| | `- note: closure captures non-Sendable 'outputURLs'
| `- note: closure captures non-Sendable 'self'
76 | try AudioFileStreamWriter(
77 | to: $0,
/Users/admin/builder/spi-builder-workspace/Sources/AudioSeparator/InternalAudioSeparatorProtocol.swift:134:29: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
132 | ) -> AsyncThrowingStream<(Output?, Progress), any Error> {
133 | AsyncThrowingStream { continuation in
134 | let task = Task {
| `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
135 | do {
136 | let length = max(waveform.left.count, waveform.right.count)
:
149 | let chunk = waveform.mapChannels { Array($0[range]) }
150 |
151 | let output = try await separateChunk(chunk)
| `- note: closure captures 'separateChunk' which is accessible to code in the current task
152 |
153 | continuation.yield((
/Users/admin/builder/spi-builder-workspace/Sources/AudioSeparator/InternalAudioSeparatorProtocol.swift:153:38: warning: sending value of non-Sendable type '(Output?, Progress)' risks causing data races; this is an error in the Swift 6 language mode
151 | let output = try await separateChunk(chunk)
152 |
153 | continuation.yield((
| |- warning: sending value of non-Sendable type '(Output?, Progress)' risks causing data races; this is an error in the Swift 6 language mode
| `- note: Passing task-isolated value of non-Sendable type '(Output?, Progress)' as a 'sending' parameter risks causing races inbetween task-isolated uses and uses reachable from the callee
154 | output,
155 | Progress(total: stride.underestimatedCount, current: index + 1)
[13/25] Compiling Spleeter InternalAudioSeparatorProtocol.swift
/Users/admin/builder/spi-builder-workspace/Sources/AudioSeparator/InternalAudioSeparatorProtocol.swift:69:18: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
67 | ) -> AsyncThrowingStream<Progress, any Error> {
68 | AsyncThrowingStream { continuation in
69 | Task {
| `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
70 | do {
71 | let audioFile = try AudioFile(forReading: inputURL)
:
73 | let sampleRate = audioFile.sampleRate
74 |
75 | let fileWriters = try mapStems(outputURLs) {
| | `- note: closure captures non-Sendable 'outputURLs'
| `- note: closure captures non-Sendable 'self'
76 | try AudioFileStreamWriter(
77 | to: $0,
/Users/admin/builder/spi-builder-workspace/Sources/AudioSeparator/InternalAudioSeparatorProtocol.swift:134:29: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
132 | ) -> AsyncThrowingStream<(Output?, Progress), any Error> {
133 | AsyncThrowingStream { continuation in
134 | let task = Task {
| `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
135 | do {
136 | let length = max(waveform.left.count, waveform.right.count)
:
149 | let chunk = waveform.mapChannels { Array($0[range]) }
150 |
151 | let output = try await separateChunk(chunk)
| `- note: closure captures 'separateChunk' which is accessible to code in the current task
152 |
153 | continuation.yield((
/Users/admin/builder/spi-builder-workspace/Sources/AudioSeparator/InternalAudioSeparatorProtocol.swift:153:38: warning: sending value of non-Sendable type '(Output?, Progress)' risks causing data races; this is an error in the Swift 6 language mode
151 | let output = try await separateChunk(chunk)
152 |
153 | continuation.yield((
| |- warning: sending value of non-Sendable type '(Output?, Progress)' risks causing data races; this is an error in the Swift 6 language mode
| `- note: Passing task-isolated value of non-Sendable type '(Output?, Progress)' as a 'sending' parameter risks causing races inbetween task-isolated uses and uses reachable from the callee
154 | output,
155 | Progress(total: stride.underestimatedCount, current: index + 1)
[14/25] Compiling Spleeter AudioFile.swift
[15/25] Compiling Spleeter AudioFileStreamWriter.swift
[16/25] Compiling Spleeter StereoValues.swift
[17/25] Compiling Spleeter Spleeter5Model.swift
[18/25] Compiling Spleeter Stems5.swift
[19/25] Compiling Spleeter SpectrogramTensor.swift
[20/25] Compiling Spleeter Array+Extensions.swift
[21/25] Compiling Spleeter STFT.swift
[22/25] Compiling Spleeter Spectrogram.swift
[23/25] Compiling Spleeter AudioSeparator2.swift
[24/25] Compiling Spleeter Spleeter2Model.swift
[25/25] Compiling Spleeter Stems2.swift
Build complete! (9.33s)
Build complete.
{
"dependencies" : [
],
"manifest_display_name" : "swift-spleeter",
"name" : "swift-spleeter",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "ios",
"version" : "15.0"
},
{
"name" : "macos",
"version" : "12.0"
},
{
"name" : "tvos",
"version" : "15.0"
},
{
"name" : "watchos",
"version" : "8.0"
},
{
"name" : "visionos",
"version" : "1.0"
}
],
"products" : [
{
"name" : "Spleeter",
"targets" : [
"Spleeter"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "SpleeterTests",
"module_type" : "SwiftTarget",
"name" : "SpleeterTests",
"path" : "Tests/SpleeterTests",
"sources" : [
"AudioSeparatorTests.swift",
"STFTTests.swift"
],
"target_dependencies" : [
"Spleeter"
],
"type" : "test"
},
{
"c99name" : "Spleeter",
"module_type" : "SwiftTarget",
"name" : "Spleeter",
"path" : "Sources",
"product_memberships" : [
"Spleeter"
],
"sources" : [
"AudioFile/AudioFile.swift",
"AudioFile/AudioFileStreamWriter.swift",
"AudioFile/StereoValues.swift",
"AudioSeparator/AudioSeparator2/AudioSeparator2.swift",
"AudioSeparator/AudioSeparator2/Spleeter2Model.swift",
"AudioSeparator/AudioSeparator2/Stems2.swift",
"AudioSeparator/AudioSeparator4/AudioSeparator4.swift",
"AudioSeparator/AudioSeparator4/Spleeter4Model.swift",
"AudioSeparator/AudioSeparator4/Stems4.swift",
"AudioSeparator/AudioSeparator5/AudioSeparator5.swift",
"AudioSeparator/AudioSeparator5/Spleeter5Model.swift",
"AudioSeparator/AudioSeparator5/Stems5.swift",
"AudioSeparator/AudioSeparatorProtocol.swift",
"AudioSeparator/InternalAudioSeparatorProtocol.swift",
"AudioSeparator/SpleeterModelProtocol.swift",
"AudioSeparator/StemsProtocol.swift",
"STFT/STFT.swift",
"STFT/Spectrogram.swift",
"STFT/SpectrogramTensor.swift",
"Utility/Array+Extensions.swift",
"Utility/MLTensor+Extensions.swift",
"Utility/Sequence+Extensions.swift"
],
"type" : "library"
}
],
"tools_version" : "5.9"
}
Done.