Build Information
Successful build of SwiftOutdated, reference 0.9.0 (6dbb22
), with Swift 6.0 for Linux on 3 Nov 2024 22:31:38 UTC.
Swift 6 data race errors: 0
Build Command
bash -c docker run --pull=always --rm -v "checkouts-4609320-1":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.0-latest swift build --triple x86_64-unknown-linux-gnu -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete 2>&1
Build Log
========================================
RunAll
========================================
Builder version: 4.56.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/kiliankoe/swift-outdated.git
Reference: 0.9.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/kiliankoe/swift-outdated
* tag 0.9.0 -> FETCH_HEAD
HEAD is now at 6dbb22f bump version to 0.9.0
Cloned https://github.com/kiliankoe/swift-outdated.git
Revision (git rev-parse @):
6dbb22f79874b75b5c95daa0a21d66082f6aeefc
SUCCESS checkout https://github.com/kiliankoe/swift-outdated.git at 0.9.0
========================================
Build
========================================
Selected platform: linux
Swift version: 6.0
Building package at path: $PWD
https://github.com/kiliankoe/swift-outdated.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4609320-1":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.0-latest swift build --triple x86_64-unknown-linux-gnu -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete 2>&1
basic-6.0-latest: Pulling from finestructure/spi-images
Digest: sha256:47d26c99ca4f1ac0a332c85fd5b13ff4390e72115219984a57a68fe9d1063a05
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.0-latest
Fetching https://github.com/johnsundell/ShellOut.git
Fetching https://github.com/scottrhoyt/SwiftyTextTable.git
Fetching https://github.com/apple/swift-log.git
Fetching https://github.com/mxcl/Version.git
Fetching https://github.com/johnsundell/Files.git
Fetching https://github.com/onevcat/Rainbow.git
[1/929] Fetching swiftytexttable
[930/1217] Fetching swiftytexttable, version
[1057/2448] Fetching swiftytexttable, version, files
[1514/3408] Fetching swiftytexttable, version, files, shellout
[3345/4534] Fetching swiftytexttable, version, files, shellout, rainbow
[3695/8194] Fetching swiftytexttable, version, files, shellout, rainbow, swift-log
Fetched https://github.com/johnsundell/ShellOut.git from cache (0.25s)
[6905/7234] Fetching swiftytexttable, version, files, rainbow, swift-log
Fetching https://github.com/apple/swift-argument-parser.git
Fetched https://github.com/johnsundell/Files.git from cache (0.34s)
Fetched https://github.com/onevcat/Rainbow.git from cache (0.34s)
Fetched https://github.com/mxcl/Version.git from cache (0.34s)
Fetched https://github.com/scottrhoyt/SwiftyTextTable.git from cache (0.34s)
Fetched https://github.com/apple/swift-log.git from cache (0.35s)
[1/12353] Fetching swift-argument-parser
Fetched https://github.com/apple/swift-argument-parser.git from cache (0.65s)
Computing version for https://github.com/scottrhoyt/SwiftyTextTable.git
Computed https://github.com/scottrhoyt/SwiftyTextTable.git at 0.9.0 (1.81s)
Computing version for https://github.com/johnsundell/ShellOut.git
Computed https://github.com/johnsundell/ShellOut.git at 2.3.0 (2.08s)
Computing version for https://github.com/mxcl/Version.git
Computed https://github.com/mxcl/Version.git at 2.1.0 (0.42s)
Computing version for https://github.com/apple/swift-log.git
Computed https://github.com/apple/swift-log.git at 1.6.1 (0.38s)
Computing version for https://github.com/johnsundell/Files.git
Computed https://github.com/johnsundell/Files.git at 4.2.0 (0.42s)
Computing version for https://github.com/onevcat/Rainbow.git
Computed https://github.com/onevcat/Rainbow.git at 3.2.0 (0.69s)
Computing version for https://github.com/apple/swift-argument-parser.git
Computed https://github.com/apple/swift-argument-parser.git at 1.5.0 (0.73s)
Creating working copy for https://github.com/scottrhoyt/SwiftyTextTable.git
Working copy of https://github.com/scottrhoyt/SwiftyTextTable.git resolved at 0.9.0
Creating working copy for https://github.com/apple/swift-log.git
Working copy of https://github.com/apple/swift-log.git resolved at 1.6.1
Creating working copy for https://github.com/johnsundell/Files.git
Working copy of https://github.com/johnsundell/Files.git resolved at 4.2.0
Creating working copy for https://github.com/johnsundell/ShellOut.git
Working copy of https://github.com/johnsundell/ShellOut.git resolved at 2.3.0
Creating working copy for https://github.com/mxcl/Version.git
Working copy of https://github.com/mxcl/Version.git resolved at 2.1.0
Creating working copy for https://github.com/onevcat/Rainbow.git
Working copy of https://github.com/onevcat/Rainbow.git resolved at 3.2.0
Creating working copy for https://github.com/apple/swift-argument-parser.git
Working copy of https://github.com/apple/swift-argument-parser.git resolved at 1.5.0
[1/1] Compiling plugin GenerateManual
Building for debugging...
[1/24] Write sources
[11/24] Write swift-version-24593BA9C3E375BF.txt
[13/54] Emitting module Files
[14/54] Compiling Rainbow StringGenerator.swift
[15/54] Compiling Rainbow Style.swift
[16/55] Compiling Version Version+Range.swift
[17/55] Compiling Version Version.swift
[18/55] Compiling ArgumentParserToolInfo ToolInfo.swift
[19/55] Compiling Version Version+Codable.swift
[20/55] Emitting module Version
[21/55] Emitting module ArgumentParserToolInfo
[22/55] Compiling Rainbow String+Rainbow.swift
[23/56] Compiling Rainbow XcodeColorsSupport.swift
[24/56] Wrapping AST for ArgumentParserToolInfo for debugging
[26/56] Compiling Logging MetadataProvider.swift
[27/56] Compiling Logging Logging.swift
[28/56] Compiling Logging LogHandler.swift
[29/56] Emitting module Logging
[30/56] Compiling Logging Locks.swift
[31/95] Wrapping AST for Logging for debugging
[33/95] Compiling Version Version+Comparable.swift
[34/95] Compiling Version Version+Foundation.swift
[36/96] Compiling ShellOut ShellOut.swift
[37/96] Emitting module ShellOut
[38/96] Emitting module SwiftyTextTable
[39/96] Compiling SwiftyTextTable TextTable.swift
[40/98] Compiling Rainbow Rainbow.swift
[43/98] Compiling ArgumentParser FishCompletionsGenerator.swift
[44/98] Compiling ArgumentParser ZshCompletionsGenerator.swift
[45/98] Compiling ArgumentParser BashCompletionsGenerator.swift
[46/98] Compiling ArgumentParser CompletionsGenerator.swift
[47/98] Emitting module Rainbow
[48/98] Compiling ArgumentParser Argument.swift
[49/98] Compiling ArgumentParser ArgumentHelp.swift
[56/99] Emitting module ArgumentParser
[57/99] Compiling ArgumentParser ArgumentVisibility.swift
[58/99] Compiling ArgumentParser CompletionKind.swift
[59/99] Compiling ArgumentParser Errors.swift
[60/99] Compiling ArgumentParser Flag.swift
[61/99] Compiling ArgumentParser NameSpecification.swift
[62/99] Compiling ArgumentParser Option.swift
[63/99] Compiling Files Files.swift
[66/100] Compiling ArgumentParser ExpressibleByArgument.swift
[67/100] Compiling ArgumentParser ParsableArguments.swift
[68/100] Compiling ArgumentParser ParsableArgumentsValidation.swift
[69/100] Compiling ArgumentParser ParsableCommand.swift
[70/100] Compiling ArgumentParser ArgumentDecoder.swift
[71/100] Compiling ArgumentParser OptionGroup.swift
[72/100] Compiling ArgumentParser AsyncParsableCommand.swift
[73/100] Compiling ArgumentParser CommandConfiguration.swift
[74/100] Compiling ArgumentParser CommandGroup.swift
[75/100] Compiling ArgumentParser EnumerableFlag.swift
[76/100] Compiling ArgumentParser ArgumentDefinition.swift
[77/100] Compiling ArgumentParser ArgumentSet.swift
[78/100] Compiling ArgumentParser CommandParser.swift
[79/100] Compiling ArgumentParser InputKey.swift
[80/100] Compiling ArgumentParser InputOrigin.swift
[81/100] Compiling ArgumentParser Name.swift
[82/100] Compiling ArgumentParser Parsed.swift
[83/100] Compiling ArgumentParser ParsedValues.swift
[84/100] Compiling ArgumentParser ParserError.swift
[85/100] Compiling ArgumentParser SplitArguments.swift
[86/100] Compiling ArgumentParser DumpHelpGenerator.swift
[87/100] Compiling ArgumentParser HelpCommand.swift
[88/100] Compiling ArgumentParser HelpGenerator.swift
[89/100] Compiling ArgumentParser MessageInfo.swift
[90/100] Compiling ArgumentParser UsageGenerator.swift
[90/100] Wrapping AST for Version for debugging
[91/105] Wrapping AST for SwiftyTextTable for debugging
[92/105] Wrapping AST for ShellOut for debugging
[93/105] Wrapping AST for Rainbow for debugging
[94/105] Wrapping AST for Files for debugging
[96/112] Compiling Outdated Pin.swift
[97/112] Compiling Outdated ConcurrentDictionary.swift
/host/spi-builder-workspace/Sources/Outdated/ConcurrentDictionary.swift:32:17: warning: capture of 'self' with non-sendable type 'ConcurrentDictionary<Key, Value>?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | class ConcurrentDictionary<Key: Hashable, Value>: Collection {
| `- note: generic class 'ConcurrentDictionary' does not conform to the 'Sendable' protocol
4 | private var dictionary: [Key: Value]
5 | private let concurrentQueue = DispatchQueue(label: UUID().uuidString, attributes: .concurrent)
:
30 | set(newValue) {
31 | concurrentQueue.async(flags: .barrier) { [weak self] in
32 | self?.dictionary[key] = newValue
| `- warning: capture of 'self' with non-sendable type 'ConcurrentDictionary<Key, Value>?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
33 | }
34 | }
/host/spi-builder-workspace/Sources/Outdated/ConcurrentDictionary.swift:32:34: warning: capture of 'key' with non-sendable type 'Key' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | class ConcurrentDictionary<Key: Hashable, Value>: Collection {
| `- note: consider making generic parameter 'Key' conform to the 'Sendable' protocol
4 | private var dictionary: [Key: Value]
5 | private let concurrentQueue = DispatchQueue(label: UUID().uuidString, attributes: .concurrent)
:
30 | set(newValue) {
31 | concurrentQueue.async(flags: .barrier) { [weak self] in
32 | self?.dictionary[key] = newValue
| `- warning: capture of 'key' with non-sendable type 'Key' in a `@Sendable` closure; this is an error in the Swift 6 language mode
33 | }
34 | }
/host/spi-builder-workspace/Sources/Outdated/ConcurrentDictionary.swift:32:41: warning: capture of 'newValue' with non-sendable type 'Value?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | class ConcurrentDictionary<Key: Hashable, Value>: Collection {
| `- note: consider making generic parameter 'Value' conform to the 'Sendable' protocol
4 | private var dictionary: [Key: Value]
5 | private let concurrentQueue = DispatchQueue(label: UUID().uuidString, attributes: .concurrent)
:
30 | set(newValue) {
31 | concurrentQueue.async(flags: .barrier) { [weak self] in
32 | self?.dictionary[key] = newValue
| `- warning: capture of 'newValue' with non-sendable type 'Value?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
33 | }
34 | }
/host/spi-builder-workspace/Sources/Outdated/ConcurrentDictionary.swift:50:13: warning: capture of 'self' with non-sendable type 'ConcurrentDictionary<Key, Value>?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | class ConcurrentDictionary<Key: Hashable, Value>: Collection {
| `- note: generic class 'ConcurrentDictionary' does not conform to the 'Sendable' protocol
4 | private var dictionary: [Key: Value]
5 | private let concurrentQueue = DispatchQueue(label: UUID().uuidString, attributes: .concurrent)
:
48 | func removeValue(forKey key: Key) {
49 | concurrentQueue.async(flags: .barrier) { [weak self] in
50 | self?.dictionary.removeValue(forKey: key)
| `- warning: capture of 'self' with non-sendable type 'ConcurrentDictionary<Key, Value>?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
51 | }
52 | }
/host/spi-builder-workspace/Sources/Outdated/ConcurrentDictionary.swift:50:50: warning: capture of 'key' with non-sendable type 'Key' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | class ConcurrentDictionary<Key: Hashable, Value>: Collection {
| `- note: consider making generic parameter 'Key' conform to the 'Sendable' protocol
4 | private var dictionary: [Key: Value]
5 | private let concurrentQueue = DispatchQueue(label: UUID().uuidString, attributes: .concurrent)
:
48 | func removeValue(forKey key: Key) {
49 | concurrentQueue.async(flags: .barrier) { [weak self] in
50 | self?.dictionary.removeValue(forKey: key)
| `- warning: capture of 'key' with non-sendable type 'Key' in a `@Sendable` closure; this is an error in the Swift 6 language mode
51 | }
52 | }
/host/spi-builder-workspace/Sources/Outdated/ConcurrentDictionary.swift:56:13: warning: capture of 'self' with non-sendable type 'ConcurrentDictionary<Key, Value>?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
1 | import Foundation
2 |
3 | class ConcurrentDictionary<Key: Hashable, Value>: Collection {
| `- note: generic class 'ConcurrentDictionary' does not conform to the 'Sendable' protocol
4 | private var dictionary: [Key: Value]
5 | private let concurrentQueue = DispatchQueue(label: UUID().uuidString, attributes: .concurrent)
:
54 | func removeAll() {
55 | concurrentQueue.async(flags: .barrier) { [weak self] in
56 | self?.dictionary.removeAll()
| `- warning: capture of 'self' with non-sendable type 'ConcurrentDictionary<Key, Value>?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
57 | }
58 | }
[98/112] Compiling Outdated PackageCollection.swift
[99/112] Emitting module Outdated
[100/112] Compiling Outdated OutdatedPackage.swift
[101/112] Compiling Outdated SwiftPackage.swift
/host/spi-builder-workspace/Sources/Outdated/SwiftPackage.swift:127:30: warning: type 'SwiftPackage' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
8 | let log = Logger(label: "SwiftOutdated")
9 |
10 | public struct SwiftPackage: Hashable {
| `- note: consider making struct 'SwiftPackage' conform to the 'Sendable' protocol
11 | public let package: String
12 | public let repositoryURL: String
:
125 | public static func collectVersions(for packages: [SwiftPackage], ignoringPrerelease: Bool, onlyMajorUpdates: Bool) async -> PackageCollection {
126 | log.info("Collecting versions for \(packages.map { $0.package }.joined(separator: ", ")).")
127 | let versions = await withTaskGroup(of: (SwiftPackage, [Version]?).self) { group in
| `- warning: type 'SwiftPackage' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
128 | for package in packages where package.hasResolvedVersion {
129 | log.info("Package \(package.package) has resolved version, queueing version fetch.")
/host/spi-builder-workspace/Sources/Outdated/SwiftPackage.swift:127:81: warning: type 'SwiftPackage' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
8 | let log = Logger(label: "SwiftOutdated")
9 |
10 | public struct SwiftPackage: Hashable {
| `- note: consider making struct 'SwiftPackage' conform to the 'Sendable' protocol
11 | public let package: String
12 | public let repositoryURL: String
:
125 | public static func collectVersions(for packages: [SwiftPackage], ignoringPrerelease: Bool, onlyMajorUpdates: Bool) async -> PackageCollection {
126 | log.info("Collecting versions for \(packages.map { $0.package }.joined(separator: ", ")).")
127 | let versions = await withTaskGroup(of: (SwiftPackage, [Version]?).self) { group in
| `- warning: type 'SwiftPackage' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
128 | for package in packages where package.hasResolvedVersion {
129 | log.info("Package \(package.package) has resolved version, queueing version fetch.")
/host/spi-builder-workspace/Sources/Outdated/SwiftPackage.swift:130:23: warning: type 'SwiftPackage' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
8 | let log = Logger(label: "SwiftOutdated")
9 |
10 | public struct SwiftPackage: Hashable {
| `- note: consider making struct 'SwiftPackage' conform to the 'Sendable' protocol
11 | public let package: String
12 | public let repositoryURL: String
:
128 | for package in packages where package.hasResolvedVersion {
129 | log.info("Package \(package.package) has resolved version, queueing version fetch.")
130 | group.addTask {
| `- warning: type 'SwiftPackage' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
131 | let availableVersions = package.availableVersions()
132 | log.info("Found \(availableVersions.count) versions for \(package.package).")
/host/spi-builder-workspace/Sources/Outdated/SwiftPackage.swift:130:31: 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
128 | for package in packages where package.hasResolvedVersion {
129 | log.info("Package \(package.package) has resolved version, queueing version fetch.")
130 | group.addTask {
| `- 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
131 | let availableVersions = package.availableVersions()
| `- note: closure captures 'package' which is accessible to code in the current task
132 | log.info("Found \(availableVersions.count) versions for \(package.package).")
133 | return (package, availableVersions)
[102/112] Compiling Outdated Resolved.swift
[103/113] Compiling ArgumentParser CollectionExtensions.swift
[104/113] Compiling ArgumentParser Platform.swift
[105/113] Compiling ArgumentParser SequenceExtensions.swift
[106/113] Compiling ArgumentParser StringExtensions.swift
[107/113] Compiling ArgumentParser Tree.swift
[109/114] Wrapping AST for Outdated for debugging
[110/114] Wrapping AST for ArgumentParser for debugging
[112/116] Compiling SwiftOutdated SwiftOutdated.swift
/host/spi-builder-workspace/Sources/SwiftOutdated/SwiftOutdated.swift:59:16: warning: capture of 'self' with non-sendable type 'SwiftOutdated' in a `@Sendable` closure; this is an error in the Swift 6 language mode
9 |
10 | @main
11 | public struct SwiftOutdated: AsyncParsableCommand {
| `- note: consider making struct 'SwiftOutdated' conform to the 'Sendable' protocol
12 | public init() {}
13 |
:
57 | LoggingSystem.bootstrap { label in
58 | var logHandler = StreamLogHandler.standardError(label: label)
59 | if verbose {
| `- warning: capture of 'self' with non-sendable type 'SwiftOutdated' in a `@Sendable` closure; this is an error in the Swift 6 language mode
60 | #if DEBUG
61 | logHandler.logLevel = .trace
[113/116] Emitting module SwiftOutdated
[114/117] Wrapping AST for SwiftOutdated for debugging
[115/117] Write Objects.LinkFileList
[116/117] Linking swift-outdated
Build complete! (40.00s)
Build complete.
{
"dependencies" : [
{
"identity" : "swift-argument-parser",
"requirement" : {
"range" : [
{
"lower_bound" : "1.0.0",
"upper_bound" : "2.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/apple/swift-argument-parser.git"
},
{
"identity" : "swift-log",
"requirement" : {
"range" : [
{
"lower_bound" : "1.5.2",
"upper_bound" : "2.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/apple/swift-log.git"
},
{
"identity" : "version",
"requirement" : {
"range" : [
{
"lower_bound" : "2.0.0",
"upper_bound" : "3.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/mxcl/Version.git"
},
{
"identity" : "shellout",
"requirement" : {
"range" : [
{
"lower_bound" : "2.3.0",
"upper_bound" : "3.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/johnsundell/ShellOut.git"
},
{
"identity" : "files",
"requirement" : {
"range" : [
{
"lower_bound" : "4.0.0",
"upper_bound" : "5.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/johnsundell/Files.git"
},
{
"identity" : "swiftytexttable",
"requirement" : {
"range" : [
{
"lower_bound" : "0.9.0",
"upper_bound" : "1.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/scottrhoyt/SwiftyTextTable.git"
},
{
"identity" : "rainbow",
"requirement" : {
"range" : [
{
"lower_bound" : "3.0.0",
"upper_bound" : "4.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/onevcat/Rainbow.git"
}
],
"manifest_display_name" : "SwiftOutdated",
"name" : "SwiftOutdated",
"path" : "/host/spi-builder-workspace",
"platforms" : [
{
"name" : "macos",
"version" : "10.15"
}
],
"products" : [
{
"name" : "swift-outdated",
"targets" : [
"SwiftOutdated"
],
"type" : {
"executable" : null
}
},
{
"name" : "Outdated",
"targets" : [
"Outdated"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "SwiftOutdated",
"module_type" : "SwiftTarget",
"name" : "SwiftOutdated",
"path" : "Sources/SwiftOutdated",
"product_dependencies" : [
"ArgumentParser",
"Logging"
],
"product_memberships" : [
"swift-outdated"
],
"sources" : [
"SwiftOutdated.swift"
],
"target_dependencies" : [
"Outdated"
],
"type" : "executable"
},
{
"c99name" : "Outdated",
"module_type" : "SwiftTarget",
"name" : "Outdated",
"path" : "Sources/Outdated",
"product_dependencies" : [
"Logging",
"Files",
"Rainbow",
"ShellOut",
"SwiftyTextTable",
"Version"
],
"product_memberships" : [
"swift-outdated",
"Outdated"
],
"sources" : [
"ConcurrentDictionary.swift",
"OutdatedPackage.swift",
"PackageCollection.swift",
"Pin.swift",
"Resolved.swift",
"SwiftPackage.swift"
],
"type" : "library"
}
],
"tools_version" : "5.6"
}
basic-6.0-latest: Pulling from finestructure/spi-images
Digest: sha256:47d26c99ca4f1ac0a332c85fd5b13ff4390e72115219984a57a68fe9d1063a05
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.0-latest
Done.