Build Information
Successful build of NVHTarGzip-Swift, reference main (b55dce), with Swift 6.1 for Android on 8 Jan 2026 10:53:42 UTC.
Swift 6 data race errors: 1
Build Command
bash -c docker run --pull=always --rm -v "checkouts-4609320-1":/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:android-6.1-latest swift build --swift-sdk aarch64-unknown-linux-android24 -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>&1Build Log
========================================
RunAll
========================================
Builder version: 4.68.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/roxx990/NVHTarGzip-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/roxx990/NVHTarGzip-Swift
* branch main -> FETCH_HEAD
* [new branch] main -> origin/main
HEAD is now at b55dce4 Change function access level to public
Cloned https://github.com/roxx990/NVHTarGzip-Swift.git
Revision (git rev-parse @):
b55dce4a87c9a364959b60ef9a21dc7938373bfd
SUCCESS checkout https://github.com/roxx990/NVHTarGzip-Swift.git at main
========================================
Build
========================================
Selected platform: android
Swift version: 6.1
Building package at path: $PWD
https://github.com/roxx990/NVHTarGzip-Swift.git
https://github.com/roxx990/NVHTarGzip-Swift.git
WARNING: environment variable SUPPRESS_SWIFT_6_FLAGS is not set
{
"dependencies" : [
],
"manifest_display_name" : "NVHTarGzip-Swift",
"name" : "NVHTarGzip-Swift",
"path" : "/host/spi-builder-workspace",
"platforms" : [
{
"name" : "ios",
"version" : "12.0"
},
{
"name" : "macos",
"version" : "11.0"
},
{
"name" : "tvos",
"version" : "13.0"
},
{
"name" : "watchos",
"version" : "6.0"
}
],
"products" : [
{
"name" : "NVHTarGzip-Swift",
"targets" : [
"NVHTarGzip_Swift"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"swift_languages_versions" : [
"5"
],
"targets" : [
{
"c99name" : "NVHTarGzip_SwiftTests",
"module_type" : "SwiftTarget",
"name" : "NVHTarGzip_SwiftTests",
"path" : "Tests/NVHTarGzip_SwiftTests",
"sources" : [
"NVHTarGzip_SwiftTests.swift"
],
"target_dependencies" : [
"NVHTarGzip_Swift"
],
"type" : "test"
},
{
"c99name" : "NVHTarGzip_Swift",
"module_type" : "SwiftTarget",
"name" : "NVHTarGzip_Swift",
"path" : "Sources/NVHTarGzip_Swift",
"product_memberships" : [
"NVHTarGzip-Swift"
],
"sources" : [
"Constants.swift",
"NVHFile.swift",
"NVHGzipFile.swift",
"NVHProgress.swift",
"NVHTarFile.swift",
"NVHTarGzip.swift"
],
"type" : "library"
}
],
"tools_version" : "5.9"
}
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4609320-1":/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:android-6.1-latest swift build --swift-sdk aarch64-unknown-linux-android24 -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
android-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:59d1b5e7d2f3065c4a6b5e045771922b1e51742b0d69504dc6de4bec6728e3a4
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:android-6.1-latest
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version-24593BA9C3E375BF.txt
[3/9] Compiling NVHTarGzip_Swift NVHTarGzip.swift
/host/spi-builder-workspace/Sources/NVHTarGzip_Swift/NVHTarGzip.swift:16:23: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'NVHTarGzip' may have shared mutable state; this is an error in the Swift 6 language mode
13 | import Foundation
14 |
15 | public class NVHTarGzip {
| `- note: class 'NVHTarGzip' does not conform to the 'Sendable' protocol
16 | public static let shared = NVHTarGzip()
| |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'NVHTarGzip' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |
18 | private init() {}
[4/9] Compiling NVHTarGzip_Swift NVHProgress.swift
[5/9] Compiling NVHTarGzip_Swift NVHTarFile.swift
/host/spi-builder-workspace/Sources/NVHTarGzip_Swift/NVHTarFile.swift:29:21: warning: capture of 'self' with non-sendable type 'NVHTarFile' in a '@Sendable' closure; this is an error in the Swift 6 language mode
13 | import Foundation
14 |
15 | public class NVHTarFile: NVHFile {
| `- note: class 'NVHTarFile' does not conform to the 'Sendable' protocol
16 | private var completedVirtualUnitCount: Int64 = 0
17 |
:
27 | DispatchQueue.global().async {
28 | do {
29 | try self.innerCreateFilesAndDirectories(atPath: destinationPath)
| `- warning: capture of 'self' with non-sendable type 'NVHTarFile' in a '@Sendable' closure; this is an error in the Swift 6 language mode
30 | DispatchQueue.main.async {
31 | completion(nil)
/host/spi-builder-workspace/Sources/NVHTarGzip_Swift/NVHTarFile.swift:31:21: warning: capture of 'completion' with non-sendable type '((any Error)?) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
29 | try self.innerCreateFilesAndDirectories(atPath: destinationPath)
30 | DispatchQueue.main.async {
31 | completion(nil)
| |- warning: capture of 'completion' with non-sendable type '((any Error)?) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
32 | }
33 | } catch {
/host/spi-builder-workspace/Sources/NVHTarGzip_Swift/NVHTarFile.swift:115:29: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
113 | withLength length: UInt64,
114 | atPath path: String) throws {
115 | FileManager.default.createFile(atPath: path, contents: nil)
| `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
116 |
117 | guard let destinationFile = FileHandle(forWritingAtPath: path) else {
/host/spi-builder-workspace/Sources/NVHTarGzip_Swift/NVHTarFile.swift:196:21: warning: capture of 'self' with non-sendable type 'NVHTarFile' in a '@Sendable' closure; this is an error in the Swift 6 language mode
13 | import Foundation
14 |
15 | public class NVHTarFile: NVHFile {
| `- note: class 'NVHTarFile' does not conform to the 'Sendable' protocol
16 | private var completedVirtualUnitCount: Int64 = 0
17 |
:
194 | DispatchQueue.global().async {
195 | do {
196 | try self.innerPackFilesAndDirectories(atPath: sourcePath)
| `- warning: capture of 'self' with non-sendable type 'NVHTarFile' in a '@Sendable' closure; this is an error in the Swift 6 language mode
197 | DispatchQueue.main.async {
198 | completion(nil)
/host/spi-builder-workspace/Sources/NVHTarGzip_Swift/NVHTarFile.swift:198:21: warning: capture of 'completion' with non-sendable type '((any Error)?) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
196 | try self.innerPackFilesAndDirectories(atPath: sourcePath)
197 | DispatchQueue.main.async {
198 | completion(nil)
| |- warning: capture of 'completion' with non-sendable type '((any Error)?) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
199 | }
200 | } catch {
/host/spi-builder-workspace/Sources/NVHTarGzip_Swift/NVHTarFile.swift:213:21: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
211 | updateProgressVirtualTotalUnitCountWithFileSize()
212 |
213 | fileManager.createFile(atPath: filePath, contents: nil)
| `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
214 |
215 | guard let fileHandle = FileHandle(forWritingAtPath: filePath) else {
[6/9] Compiling NVHTarGzip_Swift NVHFile.swift
[7/9] Compiling NVHTarGzip_Swift NVHGzipFile.swift
/host/spi-builder-workspace/Sources/NVHTarGzip_Swift/NVHGzipFile.swift:38:21: warning: capture of 'self' with non-sendable type 'NVHGzipFile' in a '@Sendable' closure; this is an error in the Swift 6 language mode
25 | }
26 |
27 | public class NVHGzipFile: NVHFile {
| `- note: class 'NVHGzipFile' does not conform to the 'Sendable' protocol
28 |
29 | func inflate(toPath destinationPath: String) throws {
:
36 | DispatchQueue.global().async {
37 | do {
38 | try self.innerInflate(toPath: destinationPath)
| `- warning: capture of 'self' with non-sendable type 'NVHGzipFile' in a '@Sendable' closure; this is an error in the Swift 6 language mode
39 | DispatchQueue.main.async {
40 | completion(nil)
/host/spi-builder-workspace/Sources/NVHTarGzip_Swift/NVHGzipFile.swift:40:21: warning: capture of 'completion' with non-sendable type '((any Error)?) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
38 | try self.innerInflate(toPath: destinationPath)
39 | DispatchQueue.main.async {
40 | completion(nil)
| |- warning: capture of 'completion' with non-sendable type '((any Error)?) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
41 | }
42 | } catch let error {
/host/spi-builder-workspace/Sources/NVHTarGzip_Swift/NVHGzipFile.swift:57:29: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
55 | }
56 |
57 | FileManager.default.createFile(atPath: destinationPath, contents: nil)
| `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
58 |
59 | let result = inflateGzip(sourcePath: filePath, destination: destinationPath)
/host/spi-builder-workspace/Sources/NVHTarGzip_Swift/NVHGzipFile.swift:79:50: warning: initialization of 'UnsafePointer<CChar>' (aka 'UnsafePointer<Int8>') results in a dangling pointer
77 | let mode = "rb".cString(using: .utf8)!
78 |
79 | let sourceGzFile = gzopen(sourceCString, UnsafePointer(mode))
| | |- note: implicit argument conversion from '[CChar]' (aka 'Array<Int8>') to 'UnsafePointer<CChar>' (aka 'UnsafePointer<Int8>') produces a pointer valid only for the duration of the call to 'init(_:)'
| | `- note: use the 'withUnsafeBufferPointer' method on Array in order to explicitly convert argument to buffer pointer valid for a defined scope
| `- warning: initialization of 'UnsafePointer<CChar>' (aka 'UnsafePointer<Int8>') results in a dangling pointer
80 |
81 | let bufferLength = 1024 * 256
/host/spi-builder-workspace/Sources/NVHTarGzip_Swift/NVHGzipFile.swift:122:21: warning: capture of 'self' with non-sendable type 'NVHGzipFile' in a '@Sendable' closure; this is an error in the Swift 6 language mode
25 | }
26 |
27 | public class NVHGzipFile: NVHFile {
| `- note: class 'NVHGzipFile' does not conform to the 'Sendable' protocol
28 |
29 | func inflate(toPath destinationPath: String) throws {
:
120 | DispatchQueue.global().async {
121 | do {
122 | try self.innerDeflate(fromPath: sourcePath)
| `- warning: capture of 'self' with non-sendable type 'NVHGzipFile' in a '@Sendable' closure; this is an error in the Swift 6 language mode
123 | DispatchQueue.main.async {
124 | completion(nil)
/host/spi-builder-workspace/Sources/NVHTarGzip_Swift/NVHGzipFile.swift:124:21: warning: capture of 'completion' with non-sendable type '((any Error)?) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
122 | try self.innerDeflate(fromPath: sourcePath)
123 | DispatchQueue.main.async {
124 | completion(nil)
| |- warning: capture of 'completion' with non-sendable type '((any Error)?) -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
125 | }
126 | } catch let error {
/host/spi-builder-workspace/Sources/NVHTarGzip_Swift/NVHGzipFile.swift:161:60: warning: initialization of 'UnsafePointer<CChar>' (aka 'UnsafePointer<Int8>') results in a dangling pointer
159 | let mode = "wb".cString(using: .utf8)!
160 |
161 | let destinationGzFile = gzopen(destinationCString, UnsafePointer(mode))
| | |- note: implicit argument conversion from '[CChar]' (aka 'Array<Int8>') to 'UnsafePointer<CChar>' (aka 'UnsafePointer<Int8>') produces a pointer valid only for the duration of the call to 'init(_:)'
| | `- note: use the 'withUnsafeBufferPointer' method on Array in order to explicitly convert argument to buffer pointer valid for a defined scope
| `- warning: initialization of 'UnsafePointer<CChar>' (aka 'UnsafePointer<Int8>') results in a dangling pointer
162 |
163 | let bufferLength = 1024 * 256
[8/9] Compiling NVHTarGzip_Swift Constants.swift
[9/9] Emitting module NVHTarGzip_Swift
/host/spi-builder-workspace/Sources/NVHTarGzip_Swift/NVHTarGzip.swift:16:23: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'NVHTarGzip' may have shared mutable state; this is an error in the Swift 6 language mode
13 | import Foundation
14 |
15 | public class NVHTarGzip {
| `- note: class 'NVHTarGzip' does not conform to the 'Sendable' protocol
16 | public static let shared = NVHTarGzip()
| |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'NVHTarGzip' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |
18 | private init() {}
Build complete! (10.88s)
Build complete.
{
"dependencies" : [
],
"manifest_display_name" : "NVHTarGzip-Swift",
"name" : "NVHTarGzip-Swift",
"path" : "/host/spi-builder-workspace",
"platforms" : [
{
"name" : "ios",
"version" : "12.0"
},
{
"name" : "macos",
"version" : "11.0"
},
{
"name" : "tvos",
"version" : "13.0"
},
{
"name" : "watchos",
"version" : "6.0"
}
],
"products" : [
{
"name" : "NVHTarGzip-Swift",
"targets" : [
"NVHTarGzip_Swift"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"swift_languages_versions" : [
"5"
],
"targets" : [
{
"c99name" : "NVHTarGzip_SwiftTests",
"module_type" : "SwiftTarget",
"name" : "NVHTarGzip_SwiftTests",
"path" : "Tests/NVHTarGzip_SwiftTests",
"sources" : [
"NVHTarGzip_SwiftTests.swift"
],
"target_dependencies" : [
"NVHTarGzip_Swift"
],
"type" : "test"
},
{
"c99name" : "NVHTarGzip_Swift",
"module_type" : "SwiftTarget",
"name" : "NVHTarGzip_Swift",
"path" : "Sources/NVHTarGzip_Swift",
"product_memberships" : [
"NVHTarGzip-Swift"
],
"sources" : [
"Constants.swift",
"NVHFile.swift",
"NVHGzipFile.swift",
"NVHProgress.swift",
"NVHTarFile.swift",
"NVHTarGzip.swift"
],
"type" : "library"
}
],
"tools_version" : "5.9"
}
android-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:59d1b5e7d2f3065c4a6b5e045771922b1e51742b0d69504dc6de4bec6728e3a4
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:android-6.1-latest
Done.