Build Information
Successful build of Noora, reference main (baaa49), with Swift 6.4 for Linux on 24 Oct 2026 08:11:35 UTC.
Swift 6 data race errors: 0
Build Command
bash -c docker run --pull=always --rm -v "checkouts-54344847-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:linux-6.4-latest swift build --triple x86_64-unknown-linux-gnu 2>&1Build Log
========================================
RunAll
========================================
Builder version: 5.1.3
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/tuist/noora.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/tuist/noora
* branch main -> FETCH_HEAD
* [new branch] main -> origin/main
HEAD is now at baaa49c chore(deps): update dependency wrangler to v4.151.3 (#1251)
Cloned https://github.com/tuist/noora.git
Revision (git rev-parse @):
baaa49c02e0a90eefa4064d64774a580f840d043
SUCCESS checkout https://github.com/tuist/noora.git at main
========================================
Build
========================================
Selected platform: linux
Swift version: 6.4
Building package at path: $PWD
https://github.com/tuist/noora.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-54344847-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:linux-6.4-latest swift build --triple x86_64-unknown-linux-gnu 2>&1
linux-6.4-latest: Pulling from saguaro1/spi-images
Digest: sha256:ad3afec1d6cff9a88dbd06b5b923cd7d46d6f55cc44d4c49fe48cde94ee812a7
Status: Image is up to date for registry.gitlab.com/saguaro1/spi-images:linux-6.4-latest
Fetching https://github.com/tuist/path
Fetching https://github.com/apple/swift-log
Fetching https://github.com/onevcat/Rainbow
Fetching https://github.com/apple/swift-argument-parser
[1/418] Fetching path
[47/1932] Fetching path, rainbow
Fetched https://github.com/tuist/path (0.36s)
[122/1514] Fetching rainbow
[1515/20811] Fetching rainbow, swift-argument-parser
Fetched https://github.com/onevcat/Rainbow (0.81s)
Fetched https://github.com/apple/swift-argument-parser (0.81s)
[1/8373] Fetching swift-log
Fetched https://github.com/apple/swift-log (1.00s)
Computing version for https://github.com/tuist/path
Computed https://github.com/tuist/path at 0.3.8 (1.89s)
Computing version for https://github.com/apple/swift-argument-parser
Computed https://github.com/apple/swift-argument-parser at 1.8.2 (0.17s)
Computing version for https://github.com/onevcat/Rainbow
Computed https://github.com/onevcat/Rainbow at 4.2.2 (0.88s)
Computing version for https://github.com/apple/swift-log
Computed https://github.com/apple/swift-log at 1.16.1 (0.15s)
Creating working copy for https://github.com/apple/swift-argument-parser
Working copy of https://github.com/apple/swift-argument-parser resolved at 1.8.2
Creating working copy for https://github.com/onevcat/Rainbow
Working copy of https://github.com/onevcat/Rainbow resolved at 4.2.2
Creating working copy for https://github.com/apple/swift-log
Working copy of https://github.com/apple/swift-log resolved at 1.16.1
Creating working copy for https://github.com/tuist/path
Working copy of https://github.com/tuist/path resolved at 0.3.8
Building for debugging...
[Computing dependencies]
[Pre-planning 1 / 244]
[Constructing 434 / 542]
[65 / 125] Logging
[77 / 125] Rainbow
[88 / 125] Rainbow-product
[91 / 126] Rainbow
[95 / 126] Logging
[97 / 127] Logging
[98 / 127] Noora
[101 / 127] ArgumentParserToolInfo
[108 / 138] Noora
[114 / 148] Rainbow
[115 / 149] Noora
/host/spi-builder-workspace/cli/Sources/Noora/Noora.swift:768:17: [1;33mwarning: [1;39msendability of function types in instance method 'progressBarStep(message:successMessage:errorMessage:renderer:task:)' does not match requirement in protocol 'Noorable'; this is an error in the Swift 6 language mode[0;0m
[0;36m296 |[0;0m /// The value should be between 0 and 1.
[0;36m297 |[0;0m /// message.
[0;36m298 |[0;0m func progressBarStep<V>(
[0;36m|[0;0m `- [1;39mnote: [1;39mexpected sendability to match requirement here[0;0m
[0;36m299 |[0;0m message: String,
[0;36m300 |[0;0m successMessage: String?,
[0;36m:[0;0m
[0;36m766 |[0;0m }
[0;36m767 |[0;0m
[0;36m768 |[0;0m public func progressBarStep<V>(
[0;36m|[0;0m `- [1;33mwarning: [1;39msendability of function types in instance method 'progressBarStep(message:successMessage:errorMessage:renderer:task:)' does not match requirement in protocol 'Noorable'; this is an error in the Swift 6 language mode[0;0m
[0;36m769 |[0;0m message: String,
[0;36m770 |[0;0m successMessage: String?,
/host/spi-builder-workspace/cli/Sources/Noora/NooraMock.swift:249:21: [1;33mwarning: [1;39msendability of function types in instance method 'progressBarStep(message:successMessage:errorMessage:renderer:task:)' does not match requirement in protocol 'Noorable'; this is an error in the Swift 6 language mode[0;0m
[0;36m247 |[0;0m }
[0;36m248 |[0;0m
[0;36m249 |[0;0m public func progressBarStep<V>(
[0;36m|[0;0m `- [1;33mwarning: [1;39msendability of function types in instance method 'progressBarStep(message:successMessage:errorMessage:renderer:task:)' does not match requirement in protocol 'Noorable'; this is an error in the Swift 6 language mode[0;0m
[0;36m250 |[0;0m message: String,
[0;36m251 |[0;0m successMessage: String?,
/host/spi-builder-workspace/cli/Sources/Noora/Noora.swift:298:10: [1;39mnote: [1;39mexpected sendability to match requirement here[0;0m
[0;36m296 |[0;0m /// The value should be between 0 and 1.
[0;36m297 |[0;0m /// message.
[0;36m298 |[0;0m func progressBarStep<V>(
[0;36m|[0;0m `- [1;39mnote: [1;39mexpected sendability to match requirement here[0;0m
[0;36m299 |[0;0m message: String,
[0;36m300 |[0;0m successMessage: String?,
[124 / 149] Noora
/host/spi-builder-workspace/cli/Sources/Noora/NooraMock.swift:249:21: [1;33mwarning: [1;39msendability of function types in instance method 'progressBarStep(message:successMessage:errorMessage:renderer:task:)' does not match requirement in protocol 'Noorable'; this is an error in the Swift 6 language mode[0;0m
[0;36m247 |[0;0m }
[0;36m248 |[0;0m
[0;36m249 |[0;0m public func progressBarStep<V>(
[0;36m|[0;0m `- [1;33mwarning: [1;39msendability of function types in instance method 'progressBarStep(message:successMessage:errorMessage:renderer:task:)' does not match requirement in protocol 'Noorable'; this is an error in the Swift 6 language mode[0;0m
[0;36m250 |[0;0m message: String,
[0;36m251 |[0;0m successMessage: String?,
/host/spi-builder-workspace/cli/Sources/Noora/Noora.swift:298:10: [1;39mnote: [1;39mexpected sendability to match requirement here[0;0m
[0;36m296 |[0;0m /// The value should be between 0 and 1.
[0;36m297 |[0;0m /// message.
[0;36m298 |[0;0m func progressBarStep<V>(
[0;36m|[0;0m `- [1;39mnote: [1;39mexpected sendability to match requirement here[0;0m
[0;36m299 |[0;0m message: String,
[0;36m300 |[0;0m successMessage: String?,
/host/spi-builder-workspace/cli/Sources/Noora/NooraMock.swift:261:23: [1;33mwarning: [1;39mpassing non-Sendable parameter 'task' to function expecting a '@Sendable' closure[0;0m
[0;36m252 |[0;0m errorMessage: String?,
[0;36m253 |[0;0m renderer: Rendering,
[0;36m254 |[0;0m task: @escaping (@escaping @Sendable (Double) -> Void) async throws -> V
[0;36m|[0;0m `- [1;39mnote: [1;39mparameter 'task' is implicitly non-Sendable[0;0m
[0;36m255 |[0;0m ) async throws -> V {
[0;36m256 |[0;0m try await noora.progressBarStep(
[0;36m:[0;0m
[0;36m259 |[0;0m errorMessage: errorMessage,
[0;36m260 |[0;0m renderer: renderer,
[0;36m261 |[0;0m task: task
[0;36m|[0;0m `- [1;33mwarning: [1;39mpassing non-Sendable parameter 'task' to function expecting a '@Sendable' closure[0;0m
[0;36m262 |[0;0m )
[0;36m263 |[0;0m }
[132 / 149] Noora
/host/spi-builder-workspace/cli/Sources/Noora/Utilities/Spinner.swift:34:42: [1;33mwarning: [1;39mreference to captured var 'index' in concurrently-executing code; this is an error in the Swift 6 language mode[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
[0;36m32 |[0;0m self.timer = Timer.scheduledTimer(withTimeInterval: 0.1, repeats: true) { _ in
[0;36m33 |[0;0m if self.isSpinning {
[0;36m34 |[0;0m block(Spinner.frames[index])
[0;36m|[0;0m `- [1;33mwarning: [1;39mreference to captured var 'index' in concurrently-executing code; this is an error in the Swift 6 language mode[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
[0;36m35 |[0;0m index = (index + 1) % Spinner.frames.count
[0;36m36 |[0;0m } else {
/host/spi-builder-workspace/cli/Sources/Noora/Utilities/Spinner.swift:35:21: [1;33mwarning: [1;39mmutation of captured var 'index' in concurrently-executing code; this is an error in the Swift 6 language mode[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
[0;36m33 |[0;0m if self.isSpinning {
[0;36m34 |[0;0m block(Spinner.frames[index])
[0;36m35 |[0;0m index = (index + 1) % Spinner.frames.count
[0;36m|[0;0m `- [1;33mwarning: [1;39mmutation of captured var 'index' in concurrently-executing code; this is an error in the Swift 6 language mode[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
[0;36m36 |[0;0m } else {
[0;36m37 |[0;0m self.timer?.invalidate()
/host/spi-builder-workspace/cli/Sources/Noora/Utilities/Spinner.swift:35:30: [1;33mwarning: [1;39mreference to captured var 'index' in concurrently-executing code; this is an error in the Swift 6 language mode[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
[0;36m33 |[0;0m if self.isSpinning {
[0;36m34 |[0;0m block(Spinner.frames[index])
[0;36m35 |[0;0m index = (index + 1) % Spinner.frames.count
[0;36m|[0;0m `- [1;33mwarning: [1;39mreference to captured var 'index' in concurrently-executing code; this is an error in the Swift 6 language mode[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
[0;36m36 |[0;0m } else {
[0;36m37 |[0;0m self.timer?.invalidate()
[#SendableClosureCaptures]: <https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures>
[135 / 149] Logging
[136 / 149] Noora
/host/spi-builder-workspace/cli/Sources/Noora/Noora.swift:768:17: [1;33mwarning: [1;39msendability of function types in instance method 'progressBarStep(message:successMessage:errorMessage:renderer:task:)' does not match requirement in protocol 'Noorable'; this is an error in the Swift 6 language mode[0;0m
[0;36m296 |[0;0m /// The value should be between 0 and 1.
[0;36m297 |[0;0m /// message.
[0;36m298 |[0;0m func progressBarStep<V>(
[0;36m|[0;0m `- [1;39mnote: [1;39mexpected sendability to match requirement here[0;0m
[0;36m299 |[0;0m message: String,
[0;36m300 |[0;0m successMessage: String?,
[0;36m:[0;0m
[0;36m766 |[0;0m }
[0;36m767 |[0;0m
[0;36m768 |[0;0m public func progressBarStep<V>(
[0;36m|[0;0m `- [1;33mwarning: [1;39msendability of function types in instance method 'progressBarStep(message:successMessage:errorMessage:renderer:task:)' does not match requirement in protocol 'Noorable'; this is an error in the Swift 6 language mode[0;0m
[0;36m769 |[0;0m message: String,
[0;36m770 |[0;0m successMessage: String?,
/host/spi-builder-workspace/cli/Sources/Noora/Noora.swift:732:19: [1;33mwarning: [1;39mpassing non-Sendable parameter 'task' to function expecting a '@Sendable' closure[0;0m
[0;36m723 |[0;0m showSpinner: Bool,
[0;36m724 |[0;0m renderer: Rendering,
[0;36m725 |[0;0m task: @escaping (@escaping @Sendable (String) -> Void) async throws -> V
[0;36m|[0;0m `- [1;39mnote: [1;39mparameter 'task' is implicitly non-Sendable[0;0m
[0;36m726 |[0;0m ) async throws -> V {
[0;36m727 |[0;0m let progressStep = ProgressStep(
[0;36m:[0;0m
[0;36m730 |[0;0m errorMessage: errorMessage,
[0;36m731 |[0;0m showSpinner: showSpinner,
[0;36m732 |[0;0m task: task,
[0;36m|[0;0m `- [1;33mwarning: [1;39mpassing non-Sendable parameter 'task' to function expecting a '@Sendable' closure[0;0m
[0;36m733 |[0;0m theme: theme,
[0;36m734 |[0;0m terminal: terminal,
/host/spi-builder-workspace/cli/Sources/Noora/Noora.swift:755:19: [1;33mwarning: [1;39mpassing non-Sendable parameter 'task' to function expecting a '@Sendable' closure[0;0m
[0;36m746 |[0;0m visibleLines: UInt,
[0;36m747 |[0;0m renderer: Rendering,
[0;36m748 |[0;0m task: @escaping (@escaping @Sendable (TerminalText) -> Void) async throws -> Void
[0;36m|[0;0m `- [1;39mnote: [1;39mparameter 'task' is implicitly non-Sendable[0;0m
[0;36m749 |[0;0m ) async throws {
[0;36m750 |[0;0m try await CollapsibleStep(
[0;36m:[0;0m
[0;36m753 |[0;0m errorMessage: errorMessage,
[0;36m754 |[0;0m visibleLines: visibleLines,
[0;36m755 |[0;0m task: task,
[0;36m|[0;0m `- [1;33mwarning: [1;39mpassing non-Sendable parameter 'task' to function expecting a '@Sendable' closure[0;0m
[0;36m756 |[0;0m theme: theme,
[0;36m757 |[0;0m terminal: terminal,
/host/spi-builder-workspace/cli/Sources/Noora/Noora.swift:779:19: [1;33mwarning: [1;39mpassing non-Sendable parameter 'task' to function expecting a '@Sendable' closure[0;0m
[0;36m771 |[0;0m errorMessage: String?,
[0;36m772 |[0;0m renderer: Rendering,
[0;36m773 |[0;0m task: @escaping (@escaping @Sendable (Double) -> Void) async throws -> V
[0;36m|[0;0m `- [1;39mnote: [1;39mparameter 'task' is implicitly non-Sendable[0;0m
[0;36m774 |[0;0m ) async throws -> V {
[0;36m775 |[0;0m try await ProgressBarStep(
[0;36m:[0;0m
[0;36m777 |[0;0m successMessage: successMessage,
[0;36m778 |[0;0m errorMessage: errorMessage,
[0;36m779 |[0;0m task: task,
[0;36m|[0;0m `- [1;33mwarning: [1;39mpassing non-Sendable parameter 'task' to function expecting a '@Sendable' closure[0;0m
[0;36m780 |[0;0m theme: theme,
[0;36m781 |[0;0m terminal: terminal,
/host/spi-builder-workspace/cli/Sources/Noora/Noora.swift:1314:19: [1;33mwarning: [1;39mpassing non-Sendable parameter 'task' to function expecting a '@Sendable' closure[0;0m
[0;36m1305 |[0;0m public func progressBarStep<V>(
[0;36m1306 |[0;0m message: String,
[0;36m1307 |[0;0m task: @escaping (@escaping @Sendable (Double) -> Void) async throws -> V
[0;36m|[0;0m `- [1;39mnote: [1;39mparameter 'task' is implicitly non-Sendable[0;0m
[0;36m1308 |[0;0m ) async throws -> V {
[0;36m1309 |[0;0m try await progressBarStep(
[0;36m:[0;0m
[0;36m1312 |[0;0m errorMessage: nil,
[0;36m1313 |[0;0m renderer: Renderer(),
[0;36m1314 |[0;0m task: task
[0;36m|[0;0m `- [1;33mwarning: [1;39mpassing non-Sendable parameter 'task' to function expecting a '@Sendable' closure[0;0m
[0;36m1315 |[0;0m )
[0;36m1316 |[0;0m }
/host/spi-builder-workspace/cli/Sources/Noora/Noora.swift:1329:19: [1;33mwarning: [1;39mpassing non-Sendable parameter 'task' to function expecting a '@Sendable' closure[0;0m
[0;36m1320 |[0;0m successMessage: String?,
[0;36m1321 |[0;0m errorMessage: String?,
[0;36m1322 |[0;0m task: @escaping (@escaping @Sendable (Double) -> Void) async throws -> V
[0;36m|[0;0m `- [1;39mnote: [1;39mparameter 'task' is implicitly non-Sendable[0;0m
[0;36m1323 |[0;0m ) async throws -> V {
[0;36m1324 |[0;0m try await progressBarStep(
[0;36m:[0;0m
[0;36m1327 |[0;0m errorMessage: errorMessage,
[0;36m1328 |[0;0m renderer: Renderer(),
[0;36m1329 |[0;0m task: task
[0;36m|[0;0m `- [1;33mwarning: [1;39mpassing non-Sendable parameter 'task' to function expecting a '@Sendable' closure[0;0m
[0;36m1330 |[0;0m )
[0;36m1331 |[0;0m }
[138 / 149] ArgumentParser
[139 / 149] examples-cli-product
[140 / 149] examples-cli-product
[145 / 160] examples-cli-product
[147 / 160] examples-cli-product
[149 / 160] examples-cli-product
[153 / 160] examples-cli-product
[155 / 160] ArgumentParser
[155 / 160] examples-cli-product
[158 / 161] ArgumentParser
[162 / 162] examples-cli-product
Build complete! (6.86 secs)
Build complete.
{
"dependencies" : [
{
"identity" : "rainbow",
"requirement" : {
"range" : [
{
"lower_bound" : "4.2.2",
"upper_bound" : "5.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/onevcat/Rainbow"
},
{
"identity" : "swift-argument-parser",
"requirement" : {
"range" : [
{
"lower_bound" : "1.8.2",
"upper_bound" : "2.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/apple/swift-argument-parser"
},
{
"identity" : "swift-log",
"requirement" : {
"range" : [
{
"lower_bound" : "1.5.3",
"upper_bound" : "1.16.2"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/apple/swift-log"
},
{
"identity" : "path",
"requirement" : {
"range" : [
{
"lower_bound" : "0.3.8",
"upper_bound" : "0.4.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/tuist/path"
}
],
"manifest_display_name" : "Noora",
"name" : "Noora",
"path" : "/host/spi-builder-workspace",
"platforms" : [
{
"name" : "macos",
"version" : "13.0"
}
],
"products" : [
{
"name" : "Noora",
"targets" : [
"Noora"
],
"type" : {
"library" : [
"static"
]
}
},
{
"name" : "examples-cli",
"targets" : [
"examples-cli"
],
"type" : {
"executable" : null
}
}
],
"targets" : [
{
"c99name" : "examples_cli",
"module_type" : "SwiftTarget",
"name" : "examples-cli",
"path" : "cli/Sources/examples-cli",
"product_dependencies" : [
"ArgumentParser"
],
"product_memberships" : [
"examples-cli"
],
"sources" : [
"Commands/AlertCommand.swift",
"Commands/CollapsibleStepCommand.swift",
"Commands/FormatCommand.swift",
"Commands/InfoCommand.swift",
"Commands/MultipleChoicePromptCommand.swift",
"Commands/ProgressBarStepCommand.swift",
"Commands/ProgressStepCommand.swift",
"Commands/SingleChoicePromptCommand.swift",
"Commands/TableCommand.swift",
"Commands/TextPromptCommand.swift",
"Commands/YesOrNoChoicePromptCommand.swift",
"ExamplesCLI.swift"
],
"target_dependencies" : [
"Noora"
],
"type" : "executable"
},
{
"c99name" : "NooraTests",
"module_type" : "SwiftTarget",
"name" : "NooraTests",
"path" : "cli/Tests/NooraTests",
"sources" : [
"Components/CollapsibleStepTests.swift",
"Components/CompletionTests.swift",
"Components/MultipleChoicePromptTests.swift",
"Components/NooraTests.swift",
"Components/ProgressBarStepTests.swift",
"Components/ProgressStepTests.swift",
"Components/SingleChoicePromptTests.swift",
"Components/TableTests.swift",
"Components/TextPromptTests.swift",
"Components/YesOrNoChoicePromptTests.swift",
"Mocks/MockKeyStrokeListener.swift",
"Mocks/MockRenderer.swift",
"Mocks/MockSpinner.swift",
"Mocks/MockStandardPipeline.swift",
"Mocks/MockTerminal.swift",
"Mocks/MockValidator.swift",
"NooraTheme+Test.swift",
"Utilities/DisplayWidthTests.swift",
"Utilities/NooraMockTests.swift",
"Utilities/SignalBehaviorTests.swift",
"Utilities/TerminalTextTests.swift",
"Validator/LengthValidationRuleTests.swift",
"Validator/NonEmptyValidationRuleTests.swift",
"Validator/RegexValidationRuleTests.swift",
"Validator/ValidatorTests.swift"
],
"target_dependencies" : [
"Noora"
],
"type" : "test"
},
{
"c99name" : "Noora",
"module_type" : "SwiftTarget",
"name" : "Noora",
"path" : "cli/Sources/Noora",
"product_dependencies" : [
"Rainbow",
"Logging",
"Path"
],
"product_memberships" : [
"Noora",
"examples-cli"
],
"sources" : [
"Components/Alert.swift",
"Components/CollapsibleStep.swift",
"Components/MultipleChoicePrompt.swift",
"Components/ProgressBarStep.swift",
"Components/ProgressStep.swift",
"Components/SingleChoicePrompt.swift",
"Components/Table/PaginatedTable.swift",
"Components/Table/SelectableTable.swift",
"Components/Table/Table.swift",
"Components/Table/TableColumn.swift",
"Components/Table/TableData.swift",
"Components/Table/TableRenderer.swift",
"Components/Table/TableStyle.swift",
"Components/Table/UpdatingSelectableTable.swift",
"Components/Table/UpdatingTable.swift",
"Components/TextPrompt.swift",
"Components/YesOrNoChoicePrompt.swift",
"Content.swift",
"DataStructures/Stack.swift",
"Extensions/Character+isPrintable.swift",
"Extensions/String+Rainbow.swift",
"Extensions/String+ValidatableError.swift",
"Noora.swift",
"NooraError.swift",
"NooraMock.swift",
"StandardPipelineType.swift",
"Theme.swift",
"Utilities/KeyStrokeListener.swift",
"Utilities/LockIsolated.swift",
"Utilities/Renderer.swift",
"Utilities/Spinner.swift",
"Utilities/StandardPipelines.swift",
"Utilities/Terminal.swift",
"Utilities/TerminalText+DisplayWidth.swift",
"Utilities/TerminalText.swift",
"Validator/Core/ValidatableError.swift",
"Validator/Core/ValidatableRule.swift",
"Validator/Core/ValidationError.swift",
"Validator/InputValidating.swift",
"Validator/Rules/LengthValidationRule.swift",
"Validator/Rules/NonEmptyValidationRule.swift",
"Validator/Rules/RegexValidationRule.swift",
"Validator/Validator.swift"
],
"type" : "library"
}
],
"tools_version" : "5.8.1"
}
linux-6.4-latest: Pulling from saguaro1/spi-images
Digest: sha256:ad3afec1d6cff9a88dbd06b5b923cd7d46d6f55cc44d4c49fe48cde94ee812a7
Status: Image is up to date for registry.gitlab.com/saguaro1/spi-images:linux-6.4-latest
Done.