Build Information
Successful build of Speck, reference 0.0.5 (6e68d0), with Swift 6.4 for Linux on 16 Sep 2026 16:25:08 UTC.
Swift 6 data race errors: 0
Build Command
bash -c docker run --pull=always --rm -v "checkouts-54344843-0":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/saguaro1/spi-images:basic-6.4-latest swift build --triple x86_64-unknown-linux-gnu 2>&1Build Log
========================================
RunAll
========================================
Builder version: 5.1.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/bppr/speck.git
Reference: 0.0.5
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/bppr/speck
* tag 0.0.5 -> FETCH_HEAD
HEAD is now at 6e68d00 adopt new SPM package format, adds new assert for change 'from/to'
Cloned https://github.com/bppr/speck.git
Revision (git rev-parse @):
6e68d00bd3e5697c413618a33ac0705595b63a91
SUCCESS checkout https://github.com/bppr/speck.git at 0.0.5
========================================
Build
========================================
Selected platform: linux
Swift version: 6.4
Building package at path: $PWD
https://github.com/bppr/speck.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-54344843-0":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/saguaro1/spi-images:basic-6.4-latest swift build --triple x86_64-unknown-linux-gnu 2>&1
basic-6.4-latest: Pulling from saguaro1/spi-images
Digest: sha256:c77fcce225e223ac0fafed844619173fc6de8d62dd560eeb28db3182af6a282b
Status: Image is up to date for registry.gitlab.com/saguaro1/spi-images:basic-6.4-latest
Building for debugging...
[Pre-planning 1 / 124]
[12 / 52] Speck-product
[40 / 62] SpeckCore
[53 / 72] SpeckAsserts
/host/spi-builder-workspace/Sources/SpeckAsserts/String.swift:51:32: [1;33mwarning: [1;39m'characters' is deprecated: Please use String directly[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m49 |[0;0m
[0;36m50 |[0;0m private extension String {
[0;36m51 |[0;0m var length: Int { return self.characters.count }
[0;36m|[0;0m `- [1;33mwarning: [1;39m'characters' is deprecated: Please use String directly[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m52 |[0;0m var first: Character? { return self.characters.first }
[0;36m53 |[0;0m
/host/spi-builder-workspace/Sources/SpeckAsserts/String.swift:52:38: [1;33mwarning: [1;39m'characters' is deprecated: Please use String directly[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m50 |[0;0m private extension String {
[0;36m51 |[0;0m var length: Int { return self.characters.count }
[0;36m52 |[0;0m var first: Character? { return self.characters.first }
[0;36m|[0;0m `- [1;33mwarning: [1;39m'characters' is deprecated: Please use String directly[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m53 |[0;0m
[0;36m54 |[0;0m func contains(string other: String) -> Bool {
/host/spi-builder-workspace/Sources/SpeckAsserts/String.swift:63:28: [1;33mwarning: [1;39m'characters' is deprecated: Please use String directly[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m61 |[0;0m }
[0;36m62 |[0;0m
[0;36m63 |[0;0m guard let startAt = self.characters.index(of: other.first!) else {
[0;36m|[0;0m `- [1;33mwarning: [1;39m'characters' is deprecated: Please use String directly[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m64 |[0;0m return nil
[0;36m65 |[0;0m }
/host/spi-builder-workspace/Sources/SpeckAsserts/String.swift:52:49: [1;33mwarning: [1;39mfunction call causes an infinite recursion[0;0m
[0;36m50 |[0;0m private extension String {
[0;36m51 |[0;0m var length: Int { return self.characters.count }
[0;36m52 |[0;0m var first: Character? { return self.characters.first }
[0;36m|[0;0m `- [1;33mwarning: [1;39mfunction call causes an infinite recursion[0;0m
[0;36m53 |[0;0m
[0;36m54 |[0;0m func contains(string other: String) -> Bool {
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
[64 / 79] Speck
[68 / 80] SpeckAsserts
[74 / 80] Speck
/host/spi-builder-workspace/Sources/Speck/Reporter.swift:15:59: [1;33mwarning: [1;39m'characters' is deprecated: Please use String directly[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m13 |[0;0m
[0;36m14 |[0;0m func fileMinusPwd(_ file: String) -> String {
[0;36m15 |[0;0m let startIdx = file.index(file.startIndex, offsetBy: pwd.characters.count + 1)
[0;36m|[0;0m `- [1;33mwarning: [1;39m'characters' is deprecated: Please use String directly[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m16 |[0;0m return String(file[startIdx..<file.endIndex])
[0;36m17 |[0;0m }
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
Build complete! (4.13 secs)
Build complete.
{
"dependencies" : [
],
"manifest_display_name" : "Speck",
"name" : "Speck",
"path" : "/host/spi-builder-workspace",
"platforms" : [
],
"products" : [
{
"name" : "Speck",
"targets" : [
"Speck"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "SpeckCoreTests",
"module_type" : "SwiftTarget",
"name" : "SpeckCoreTests",
"path" : "Tests/SpeckCoreTests",
"sources" : [
"BasicExpectationTest.swift",
"ExampleTest.swift",
"ReporterTest.swift",
"SuiteTest.swift"
],
"target_dependencies" : [
"SpeckCore"
],
"type" : "test"
},
{
"c99name" : "SpeckCore",
"module_type" : "SwiftTarget",
"name" : "SpeckCore",
"path" : "Sources/SpeckCore",
"product_memberships" : [
"Speck"
],
"sources" : [
"BasicExpectation.swift",
"Cursor.swift",
"Example.swift",
"Reporter.swift",
"SpeckCore.swift",
"Status.swift",
"Suite.swift",
"Timer.swift"
],
"type" : "library"
},
{
"c99name" : "SpeckAssertsTests",
"module_type" : "SwiftTarget",
"name" : "SpeckAssertsTests",
"path" : "Tests/SpeckAssertsTests",
"sources" : [
"ArrayTest.swift",
"CollectionTest.swift",
"ComparableTest.swift",
"DictionaryTest.swift",
"ExpectationTest.swift"
],
"target_dependencies" : [
"SpeckAsserts"
],
"type" : "test"
},
{
"c99name" : "SpeckAsserts",
"module_type" : "SwiftTarget",
"name" : "SpeckAsserts",
"path" : "Sources/SpeckAsserts",
"product_memberships" : [
"Speck"
],
"sources" : [
"Array.swift",
"Collection.swift",
"Comparable.swift",
"Dictionary.swift",
"Equatable.swift",
"Expectation.swift",
"Sequence.swift",
"String.swift",
"VoidExpectation.swift"
],
"target_dependencies" : [
"SpeckCore"
],
"type" : "library"
},
{
"c99name" : "Speck",
"module_type" : "SwiftTarget",
"name" : "Speck",
"path" : "Sources/Speck",
"product_memberships" : [
"Speck"
],
"sources" : [
"Context.swift",
"Core.swift",
"Reporter.swift",
"expect.swift",
"run.swift"
],
"target_dependencies" : [
"SpeckCore",
"SpeckAsserts"
],
"type" : "library"
}
],
"tools_version" : "4.0"
}
basic-6.4-latest: Pulling from saguaro1/spi-images
Digest: sha256:c77fcce225e223ac0fafed844619173fc6de8d62dd560eeb28db3182af6a282b
Status: Image is up to date for registry.gitlab.com/saguaro1/spi-images:basic-6.4-latest
Done.