Build Information
Successful build of LastFMKit, reference master (90c9fc
), with Swift 6.1 for Linux on 13 Jul 2025 11:26:41 UTC.
Swift 6 data race errors: 5
Build Command
bash -c docker run --pull=always --rm -v "checkouts-4606859-1":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.1-latest swift build --triple x86_64-unknown-linux-gnu -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
Build Log
========================================
RunAll
========================================
Builder version: 4.64.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/guitaripod/LastFMKit.git
Reference: master
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/guitaripod/LastFMKit
* branch master -> FETCH_HEAD
* [new branch] master -> origin/master
HEAD is now at 90c9fc3 Update GitHub username from marcusziade to guitaripod
Cloned https://github.com/guitaripod/LastFMKit.git
Revision (git rev-parse @):
90c9fc390a5c8a49a390e8bcd9acaba88cc6ffcf
SUCCESS checkout https://github.com/guitaripod/LastFMKit.git at master
========================================
Build
========================================
Selected platform: linux
Swift version: 6.1
Building package at path: $PWD
https://github.com/guitaripod/LastFMKit.git
https://github.com/guitaripod/LastFMKit.git
WARNING: environment variable SUPPRESS_SWIFT_6_FLAGS is not set
{
"dependencies" : [
{
"identity" : "swift-argument-parser",
"requirement" : {
"range" : [
{
"lower_bound" : "1.3.0",
"upper_bound" : "2.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/apple/swift-argument-parser"
},
{
"identity" : "swift-log",
"requirement" : {
"range" : [
{
"lower_bound" : "1.5.0",
"upper_bound" : "2.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/apple/swift-log"
},
{
"identity" : "swift-docc-plugin",
"requirement" : {
"range" : [
{
"lower_bound" : "1.3.0",
"upper_bound" : "2.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/apple/swift-docc-plugin"
}
],
"manifest_display_name" : "LastFMKit",
"name" : "LastFMKit",
"path" : "/host/spi-builder-workspace",
"platforms" : [
{
"name" : "macos",
"version" : "13.0"
},
{
"name" : "ios",
"version" : "16.0"
},
{
"name" : "tvos",
"version" : "16.0"
},
{
"name" : "watchos",
"version" : "9.0"
}
],
"products" : [
{
"name" : "LastFMKit",
"targets" : [
"LastFMKit"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "lastfm-cli",
"targets" : [
"LastFMCLI"
],
"type" : {
"executable" : null
}
}
],
"targets" : [
{
"c99name" : "LastFMKitTests",
"module_type" : "SwiftTarget",
"name" : "LastFMKitTests",
"path" : "Tests/LastFMKitTests",
"resources" : [
{
"path" : "/host/spi-builder-workspace/Tests/LastFMKitTests/Resources/README.md",
"rule" : {
"process" : {
}
}
}
],
"sources" : [
"BasicTests.swift"
],
"target_dependencies" : [
"LastFMKit"
],
"type" : "test"
},
{
"c99name" : "LastFMKit",
"module_type" : "SwiftTarget",
"name" : "LastFMKit",
"path" : "Sources/LastFMKit",
"product_dependencies" : [
"Logging"
],
"product_memberships" : [
"LastFMKit",
"lastfm-cli"
],
"sources" : [
"API/AlbumAPI.swift",
"API/ArtistAPI.swift",
"API/AuthAPI.swift",
"API/BaseAPI.swift",
"API/ChartAPI.swift",
"API/GeoAPI.swift",
"API/LibraryAPI.swift",
"API/TagAPI.swift",
"API/TrackAPI.swift",
"API/UserAPI.swift",
"Core/Endpoint.swift",
"Core/LastFMClient.swift",
"Core/LastFMError.swift",
"Core/NetworkClient.swift",
"Models/Album.swift",
"Models/Artist.swift",
"Models/Auth.swift",
"Models/Chart.swift",
"Models/Common.swift",
"Models/Geo.swift",
"Models/Library.swift",
"Models/Tag.swift",
"Models/Track.swift",
"Models/User.swift"
],
"type" : "library"
},
{
"c99name" : "LastFMCLI",
"module_type" : "SwiftTarget",
"name" : "LastFMCLI",
"path" : "Sources/LastFMCLI",
"product_dependencies" : [
"ArgumentParser"
],
"product_memberships" : [
"lastfm-cli"
],
"sources" : [
"AlbumCommands.swift",
"AuthCommands.swift",
"ChartCommands.swift",
"ConfigCommands.swift",
"ConfigManager.swift",
"GeoCommands.swift",
"LastFMCLI.swift",
"LibraryCommands.swift",
"MyCommands.swift",
"TagCommands.swift",
"TrackCommands.swift",
"UserCommands.swift"
],
"target_dependencies" : [
"LastFMKit"
],
"type" : "executable"
}
],
"tools_version" : "5.9"
}
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4606859-1":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.1-latest swift build --triple x86_64-unknown-linux-gnu -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
basic-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:2e2b3aca8600f890617c2faa770b70e33c1dfd303d6f92b308423b89ef6bde64
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.1-latest
Fetching https://github.com/apple/swift-docc-plugin
Fetching https://github.com/apple/swift-argument-parser
Fetching https://github.com/apple/swift-log
[1/3854] Fetching swift-log
[79/5948] Fetching swift-log, swift-docc-plugin
[4107/21472] Fetching swift-log, swift-docc-plugin, swift-argument-parser
Fetched https://github.com/apple/swift-docc-plugin from cache (0.91s)
[14100/19378] Fetching swift-log, swift-argument-parser
Fetched https://github.com/apple/swift-log from cache (1.56s)
Fetched https://github.com/apple/swift-argument-parser from cache (1.59s)
Computing version for https://github.com/apple/swift-docc-plugin
Computed https://github.com/apple/swift-docc-plugin at 1.4.5 (6.94s)
Fetching https://github.com/swiftlang/swift-docc-symbolkit
[1/3425] Fetching swift-docc-symbolkit
Fetched https://github.com/swiftlang/swift-docc-symbolkit from cache (0.55s)
Computing version for https://github.com/swiftlang/swift-docc-symbolkit
Computed https://github.com/swiftlang/swift-docc-symbolkit at 1.0.0 (1.72s)
Computing version for https://github.com/apple/swift-argument-parser
Computed https://github.com/apple/swift-argument-parser at 1.6.1 (0.89s)
Computing version for https://github.com/apple/swift-log
Computed https://github.com/apple/swift-log at 1.6.3 (0.84s)
Creating working copy for https://github.com/swiftlang/swift-docc-symbolkit
Working copy of https://github.com/swiftlang/swift-docc-symbolkit resolved at 1.0.0
Creating working copy for https://github.com/apple/swift-docc-plugin
Working copy of https://github.com/apple/swift-docc-plugin resolved at 1.4.5
Creating working copy for https://github.com/apple/swift-log
Working copy of https://github.com/apple/swift-log resolved at 1.6.3
Creating working copy for https://github.com/apple/swift-argument-parser
Working copy of https://github.com/apple/swift-argument-parser resolved at 1.6.1
[1/1] Compiling plugin Swift-DocC Preview
[2/2] Compiling plugin Swift-DocC
[3/3] Compiling plugin GenerateManual
[4/4] Compiling plugin GenerateDoccReference
Building for debugging...
[4/17] Write sources
[9/17] Write swift-version-24593BA9C3E375BF.txt
[11/24] Emitting module ArgumentParserToolInfo
[12/24] Compiling ArgumentParserToolInfo ToolInfo.swift
[13/25] Wrapping AST for ArgumentParserToolInfo for debugging
[15/69] Emitting module Logging
[16/69] Compiling Logging Locks.swift
[17/69] Compiling Logging LogHandler.swift
[18/69] Compiling Logging MetadataProvider.swift
[19/69] Compiling Logging Logging.swift
[20/70] Wrapping AST for Logging for debugging
[22/92] Emitting module LastFMKit
/host/spi-builder-workspace/Sources/LastFMKit/Core/LastFMClient.swift:240:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'ClientConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
203 | /// let client = LastFMClient(configuration: configuration)
204 | /// ```
205 | public struct ClientConfiguration {
| `- note: consider making struct 'ClientConfiguration' conform to the 'Sendable' protocol
206 | /// The base URL for API requests.
207 | /// Default: `https://lastfm-proxy-worker.guitaripod.workers.dev`
:
238 | /// - Timeout: 30 seconds
239 | /// - Retry Policy: Exponential backoff with 3 retries
240 | public static let `default` = ClientConfiguration()
| |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'ClientConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'default' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
241 | }
/host/spi-builder-workspace/Sources/LastFMKit/Core/NetworkClient.swift:31:17: warning: non-sendable type 'T' cannot be returned from actor-isolated implementation to caller of protocol requirement 'request'; this is an error in the Swift 6 language mode
29 | }
30 |
31 | public func request<T: Decodable>(_ endpoint: Endpoint) async throws -> T {
| | `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
| `- warning: non-sendable type 'T' cannot be returned from actor-isolated implementation to caller of protocol requirement 'request'; this is an error in the Swift 6 language mode
32 | let data = try await request(endpoint)
33 |
/host/spi-builder-workspace/Sources/LastFMKit/Core/NetworkClient.swift:31:17: warning: non-sendable parameter type 'Endpoint' cannot be sent from caller of protocol requirement 'request' into actor-isolated implementation; this is an error in the Swift 6 language mode
29 | }
30 |
31 | public func request<T: Decodable>(_ endpoint: Endpoint) async throws -> T {
| `- warning: non-sendable parameter type 'Endpoint' cannot be sent from caller of protocol requirement 'request' into actor-isolated implementation; this is an error in the Swift 6 language mode
32 | let data = try await request(endpoint)
33 |
/host/spi-builder-workspace/Sources/LastFMKit/Core/Endpoint.swift:3:15: note: consider making struct 'Endpoint' conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | public struct Endpoint {
| `- note: consider making struct 'Endpoint' conform to the 'Sendable' protocol
4 | public let path: String
5 | public let method: HTTPMethod
/host/spi-builder-workspace/Sources/LastFMKit/Core/NetworkClient.swift:46:17: warning: non-sendable parameter type 'Endpoint' cannot be sent from caller of protocol requirement 'request' into actor-isolated implementation; this is an error in the Swift 6 language mode
44 | }
45 |
46 | public func request(_ endpoint: Endpoint) async throws -> Data {
| `- warning: non-sendable parameter type 'Endpoint' cannot be sent from caller of protocol requirement 'request' into actor-isolated implementation; this is an error in the Swift 6 language mode
47 | guard let url = endpoint.url else {
48 | throw LastFMError.invalidURL
/host/spi-builder-workspace/Sources/LastFMKit/Core/Endpoint.swift:3:15: note: consider making struct 'Endpoint' conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | public struct Endpoint {
| `- note: consider making struct 'Endpoint' conform to the 'Sendable' protocol
4 | public let path: String
5 | public let method: HTTPMethod
/host/spi-builder-workspace/Sources/LastFMKit/Core/NetworkClient.swift:171:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'NetworkConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
160 | }
161 |
162 | public struct NetworkConfiguration {
| `- note: consider making struct 'NetworkConfiguration' conform to the 'Sendable' protocol
163 | public let timeout: TimeInterval
164 | public let retryPolicy: RetryPolicy
:
169 | }
170 |
171 | public static let `default` = NetworkConfiguration()
| |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'NetworkConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'default' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
172 | }
173 |
[23/95] Emitting module ArgumentParser
[24/101] Compiling ArgumentParser OptionGroup.swift
[25/101] Compiling ArgumentParser AsyncParsableCommand.swift
[26/101] Compiling ArgumentParser CommandConfiguration.swift
[27/101] Compiling ArgumentParser CommandGroup.swift
[28/101] Compiling ArgumentParser EnumerableFlag.swift
[29/101] Compiling ArgumentParser ExpressibleByArgument.swift
[30/101] Compiling ArgumentParser CollectionExtensions.swift
[31/101] Compiling ArgumentParser Mutex.swift
[32/101] Compiling ArgumentParser Platform.swift
[33/101] Compiling ArgumentParser SequenceExtensions.swift
[34/101] Compiling ArgumentParser StringExtensions.swift
[35/101] Compiling ArgumentParser SwiftExtensions.swift
[36/101] Compiling LastFMKit BaseAPI.swift
[37/101] Compiling LastFMKit ChartAPI.swift
[38/101] Compiling LastFMKit GeoAPI.swift
[39/101] Compiling LastFMKit UserAPI.swift
/host/spi-builder-workspace/Sources/LastFMKit/Core/LastFMClient.swift:240:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'ClientConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
203 | /// let client = LastFMClient(configuration: configuration)
204 | /// ```
205 | public struct ClientConfiguration {
| `- note: consider making struct 'ClientConfiguration' conform to the 'Sendable' protocol
206 | /// The base URL for API requests.
207 | /// Default: `https://lastfm-proxy-worker.guitaripod.workers.dev`
:
238 | /// - Timeout: 30 seconds
239 | /// - Retry Policy: Exponential backoff with 3 retries
240 | public static let `default` = ClientConfiguration()
| |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'ClientConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'default' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
241 | }
/host/spi-builder-workspace/Sources/LastFMKit/Core/LastFMClient.swift:156:29: warning: sending 'configuration' risks causing data races; this is an error in the Swift 6 language mode
154 |
155 | let configuration = NetworkConfiguration(timeout: timeout, retryPolicy: retryPolicy)
156 | let networkClient = NetworkClient(configuration: configuration)
| |- warning: sending 'configuration' risks causing data races; this is an error in the Swift 6 language mode
| `- note: sending task-isolated 'configuration' to actor-isolated callee risks causing data races between actor-isolated and task-isolated uses
157 | self.networkClient = networkClient
158 |
[40/101] Compiling LastFMKit Endpoint.swift
/host/spi-builder-workspace/Sources/LastFMKit/Core/LastFMClient.swift:240:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'ClientConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
203 | /// let client = LastFMClient(configuration: configuration)
204 | /// ```
205 | public struct ClientConfiguration {
| `- note: consider making struct 'ClientConfiguration' conform to the 'Sendable' protocol
206 | /// The base URL for API requests.
207 | /// Default: `https://lastfm-proxy-worker.guitaripod.workers.dev`
:
238 | /// - Timeout: 30 seconds
239 | /// - Retry Policy: Exponential backoff with 3 retries
240 | public static let `default` = ClientConfiguration()
| |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'ClientConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'default' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
241 | }
/host/spi-builder-workspace/Sources/LastFMKit/Core/LastFMClient.swift:156:29: warning: sending 'configuration' risks causing data races; this is an error in the Swift 6 language mode
154 |
155 | let configuration = NetworkConfiguration(timeout: timeout, retryPolicy: retryPolicy)
156 | let networkClient = NetworkClient(configuration: configuration)
| |- warning: sending 'configuration' risks causing data races; this is an error in the Swift 6 language mode
| `- note: sending task-isolated 'configuration' to actor-isolated callee risks causing data races between actor-isolated and task-isolated uses
157 | self.networkClient = networkClient
158 |
[41/101] Compiling LastFMKit LastFMClient.swift
/host/spi-builder-workspace/Sources/LastFMKit/Core/LastFMClient.swift:240:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'ClientConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
203 | /// let client = LastFMClient(configuration: configuration)
204 | /// ```
205 | public struct ClientConfiguration {
| `- note: consider making struct 'ClientConfiguration' conform to the 'Sendable' protocol
206 | /// The base URL for API requests.
207 | /// Default: `https://lastfm-proxy-worker.guitaripod.workers.dev`
:
238 | /// - Timeout: 30 seconds
239 | /// - Retry Policy: Exponential backoff with 3 retries
240 | public static let `default` = ClientConfiguration()
| |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'ClientConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'default' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
241 | }
/host/spi-builder-workspace/Sources/LastFMKit/Core/LastFMClient.swift:156:29: warning: sending 'configuration' risks causing data races; this is an error in the Swift 6 language mode
154 |
155 | let configuration = NetworkConfiguration(timeout: timeout, retryPolicy: retryPolicy)
156 | let networkClient = NetworkClient(configuration: configuration)
| |- warning: sending 'configuration' risks causing data races; this is an error in the Swift 6 language mode
| `- note: sending task-isolated 'configuration' to actor-isolated callee risks causing data races between actor-isolated and task-isolated uses
157 | self.networkClient = networkClient
158 |
[42/101] Compiling LastFMKit AlbumAPI.swift
[43/101] Compiling LastFMKit ArtistAPI.swift
[44/101] Compiling LastFMKit AuthAPI.swift
[45/101] Compiling LastFMKit LibraryAPI.swift
[46/101] Compiling LastFMKit TagAPI.swift
[47/101] Compiling LastFMKit TrackAPI.swift
[48/101] Compiling LastFMKit Common.swift
[49/101] Compiling LastFMKit Geo.swift
[50/101] Compiling LastFMKit Library.swift
[54/101] Compiling LastFMKit Artist.swift
[55/101] Compiling LastFMKit Auth.swift
[56/101] Compiling LastFMKit Chart.swift
[63/101] Compiling LastFMKit LastFMError.swift
[64/101] Compiling ArgumentParser Tree.swift
[65/101] Compiling ArgumentParser CodingKeyValidator.swift
[66/101] Compiling ArgumentParser NonsenseFlagsValidator.swift
[67/101] Compiling ArgumentParser ParsableArgumentsValidation.swift
[68/101] Compiling ArgumentParser PositionalArgumentsValidator.swift
[69/101] Compiling ArgumentParser UniqueNamesValidator.swift
[72/101] Compiling LastFMKit Tag.swift
[73/101] Compiling LastFMKit Track.swift
[74/101] Compiling LastFMKit User.swift
[75/101] Compiling ArgumentParser ParserError.swift
[76/101] Compiling LastFMKit NetworkClient.swift
[77/101] Compiling LastFMKit Album.swift
[82/101] Compiling ArgumentParser ParsableArguments.swift
[83/101] Compiling ArgumentParser ParsableCommand.swift
[84/101] Compiling ArgumentParser ArgumentDecoder.swift
[85/101] Compiling ArgumentParser ArgumentDefinition.swift
[86/101] Compiling ArgumentParser ArgumentSet.swift
[87/101] Compiling ArgumentParser CommandParser.swift
[88/102] Wrapping AST for ArgumentParser for debugging
/host/spi-builder-workspace/Sources/LastFMKit/Core/NetworkClient.swift:31:17: warning: non-sendable type 'T' cannot be returned from actor-isolated implementation to caller of protocol requirement 'request'; this is an error in the Swift 6 language mode
29 | }
30 |
31 | public func request<T: Decodable>(_ endpoint: Endpoint) async throws -> T {
| | `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
| `- warning: non-sendable type 'T' cannot be returned from actor-isolated implementation to caller of protocol requirement 'request'; this is an error in the Swift 6 language mode
32 | let data = try await request(endpoint)
33 |
/host/spi-builder-workspace/Sources/LastFMKit/Core/NetworkClient.swift:31:17: warning: non-sendable parameter type 'Endpoint' cannot be sent from caller of protocol requirement 'request' into actor-isolated implementation; this is an error in the Swift 6 language mode
29 | }
30 |
31 | public func request<T: Decodable>(_ endpoint: Endpoint) async throws -> T {
| `- warning: non-sendable parameter type 'Endpoint' cannot be sent from caller of protocol requirement 'request' into actor-isolated implementation; this is an error in the Swift 6 language mode
32 | let data = try await request(endpoint)
33 |
/host/spi-builder-workspace/Sources/LastFMKit/Core/Endpoint.swift:3:15: note: consider making struct 'Endpoint' conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | public struct Endpoint {
| `- note: consider making struct 'Endpoint' conform to the 'Sendable' protocol
4 | public let path: String
5 | public let method: HTTPMethod
/host/spi-builder-workspace/Sources/LastFMKit/Core/NetworkClient.swift:46:17: warning: non-sendable parameter type 'Endpoint' cannot be sent from caller of protocol requirement 'request' into actor-isolated implementation; this is an error in the Swift 6 language mode
44 | }
45 |
46 | public func request(_ endpoint: Endpoint) async throws -> Data {
| `- warning: non-sendable parameter type 'Endpoint' cannot be sent from caller of protocol requirement 'request' into actor-isolated implementation; this is an error in the Swift 6 language mode
47 | guard let url = endpoint.url else {
48 | throw LastFMError.invalidURL
/host/spi-builder-workspace/Sources/LastFMKit/Core/Endpoint.swift:3:15: note: consider making struct 'Endpoint' conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | public struct Endpoint {
| `- note: consider making struct 'Endpoint' conform to the 'Sendable' protocol
4 | public let path: String
5 | public let method: HTTPMethod
/host/spi-builder-workspace/Sources/LastFMKit/Core/NetworkClient.swift:171:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'NetworkConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
160 | }
161 |
162 | public struct NetworkConfiguration {
| `- note: consider making struct 'NetworkConfiguration' conform to the 'Sendable' protocol
163 | public let timeout: TimeInterval
164 | public let retryPolicy: RetryPolicy
:
169 | }
170 |
171 | public static let `default` = NetworkConfiguration()
| |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'NetworkConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'default' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
172 | }
173 |
/host/spi-builder-workspace/Sources/LastFMKit/Core/NetworkClient.swift:31:17: warning: non-sendable type 'T' cannot be returned from actor-isolated implementation to caller of protocol requirement 'request'; this is an error in the Swift 6 language mode
29 | }
30 |
31 | public func request<T: Decodable>(_ endpoint: Endpoint) async throws -> T {
| | `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
| `- warning: non-sendable type 'T' cannot be returned from actor-isolated implementation to caller of protocol requirement 'request'; this is an error in the Swift 6 language mode
32 | let data = try await request(endpoint)
33 |
/host/spi-builder-workspace/Sources/LastFMKit/Core/NetworkClient.swift:31:17: warning: non-sendable parameter type 'Endpoint' cannot be sent from caller of protocol requirement 'request' into actor-isolated implementation; this is an error in the Swift 6 language mode
29 | }
30 |
31 | public func request<T: Decodable>(_ endpoint: Endpoint) async throws -> T {
| `- warning: non-sendable parameter type 'Endpoint' cannot be sent from caller of protocol requirement 'request' into actor-isolated implementation; this is an error in the Swift 6 language mode
32 | let data = try await request(endpoint)
33 |
/host/spi-builder-workspace/Sources/LastFMKit/Core/Endpoint.swift:3:15: note: consider making struct 'Endpoint' conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | public struct Endpoint {
| `- note: consider making struct 'Endpoint' conform to the 'Sendable' protocol
4 | public let path: String
5 | public let method: HTTPMethod
/host/spi-builder-workspace/Sources/LastFMKit/Core/NetworkClient.swift:46:17: warning: non-sendable parameter type 'Endpoint' cannot be sent from caller of protocol requirement 'request' into actor-isolated implementation; this is an error in the Swift 6 language mode
44 | }
45 |
46 | public func request(_ endpoint: Endpoint) async throws -> Data {
| `- warning: non-sendable parameter type 'Endpoint' cannot be sent from caller of protocol requirement 'request' into actor-isolated implementation; this is an error in the Swift 6 language mode
47 | guard let url = endpoint.url else {
48 | throw LastFMError.invalidURL
/host/spi-builder-workspace/Sources/LastFMKit/Core/Endpoint.swift:3:15: note: consider making struct 'Endpoint' conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | public struct Endpoint {
| `- note: consider making struct 'Endpoint' conform to the 'Sendable' protocol
4 | public let path: String
5 | public let method: HTTPMethod
/host/spi-builder-workspace/Sources/LastFMKit/Core/NetworkClient.swift:171:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'NetworkConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
160 | }
161 |
162 | public struct NetworkConfiguration {
| `- note: consider making struct 'NetworkConfiguration' conform to the 'Sendable' protocol
163 | public let timeout: TimeInterval
164 | public let retryPolicy: RetryPolicy
:
169 | }
170 |
171 | public static let `default` = NetworkConfiguration()
| |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'NetworkConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'default' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
172 | }
173 |
/host/spi-builder-workspace/Sources/LastFMKit/Core/NetworkClient.swift:31:17: warning: non-sendable type 'T' cannot be returned from actor-isolated implementation to caller of protocol requirement 'request'; this is an error in the Swift 6 language mode
29 | }
30 |
31 | public func request<T: Decodable>(_ endpoint: Endpoint) async throws -> T {
| | `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
| `- warning: non-sendable type 'T' cannot be returned from actor-isolated implementation to caller of protocol requirement 'request'; this is an error in the Swift 6 language mode
32 | let data = try await request(endpoint)
33 |
/host/spi-builder-workspace/Sources/LastFMKit/Core/NetworkClient.swift:31:17: warning: non-sendable parameter type 'Endpoint' cannot be sent from caller of protocol requirement 'request' into actor-isolated implementation; this is an error in the Swift 6 language mode
29 | }
30 |
31 | public func request<T: Decodable>(_ endpoint: Endpoint) async throws -> T {
| `- warning: non-sendable parameter type 'Endpoint' cannot be sent from caller of protocol requirement 'request' into actor-isolated implementation; this is an error in the Swift 6 language mode
32 | let data = try await request(endpoint)
33 |
/host/spi-builder-workspace/Sources/LastFMKit/Core/Endpoint.swift:3:15: note: consider making struct 'Endpoint' conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | public struct Endpoint {
| `- note: consider making struct 'Endpoint' conform to the 'Sendable' protocol
4 | public let path: String
5 | public let method: HTTPMethod
/host/spi-builder-workspace/Sources/LastFMKit/Core/NetworkClient.swift:46:17: warning: non-sendable parameter type 'Endpoint' cannot be sent from caller of protocol requirement 'request' into actor-isolated implementation; this is an error in the Swift 6 language mode
44 | }
45 |
46 | public func request(_ endpoint: Endpoint) async throws -> Data {
| `- warning: non-sendable parameter type 'Endpoint' cannot be sent from caller of protocol requirement 'request' into actor-isolated implementation; this is an error in the Swift 6 language mode
47 | guard let url = endpoint.url else {
48 | throw LastFMError.invalidURL
/host/spi-builder-workspace/Sources/LastFMKit/Core/Endpoint.swift:3:15: note: consider making struct 'Endpoint' conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | public struct Endpoint {
| `- note: consider making struct 'Endpoint' conform to the 'Sendable' protocol
4 | public let path: String
5 | public let method: HTTPMethod
/host/spi-builder-workspace/Sources/LastFMKit/Core/NetworkClient.swift:171:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'NetworkConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
160 | }
161 |
162 | public struct NetworkConfiguration {
| `- note: consider making struct 'NetworkConfiguration' conform to the 'Sendable' protocol
163 | public let timeout: TimeInterval
164 | public let retryPolicy: RetryPolicy
:
169 | }
170 |
171 | public static let `default` = NetworkConfiguration()
| |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'NetworkConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'default' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
172 | }
173 |
[99/103] Wrapping AST for LastFMKit for debugging
[101/115] Compiling LastFMCLI TrackCommands.swift
[102/116] Compiling LastFMCLI AlbumCommands.swift
[103/116] Compiling LastFMCLI AuthCommands.swift
[104/116] Emitting module LastFMCLI
[105/116] Compiling LastFMCLI TagCommands.swift
[106/116] Compiling LastFMCLI MyCommands.swift
[107/116] Compiling LastFMCLI ChartCommands.swift
[108/116] Compiling LastFMCLI ConfigCommands.swift
[109/116] Compiling LastFMCLI LastFMCLI.swift
[110/116] Compiling LastFMCLI LibraryCommands.swift
[111/116] Compiling LastFMCLI ConfigManager.swift
[112/116] Compiling LastFMCLI GeoCommands.swift
[113/116] Compiling LastFMCLI UserCommands.swift
[114/117] Wrapping AST for LastFMCLI for debugging
[115/117] Write Objects.LinkFileList
[116/117] Linking lastfm-cli
Build complete! (75.25s)
Build complete.
{
"dependencies" : [
{
"identity" : "swift-argument-parser",
"requirement" : {
"range" : [
{
"lower_bound" : "1.3.0",
"upper_bound" : "2.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/apple/swift-argument-parser"
},
{
"identity" : "swift-log",
"requirement" : {
"range" : [
{
"lower_bound" : "1.5.0",
"upper_bound" : "2.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/apple/swift-log"
},
{
"identity" : "swift-docc-plugin",
"requirement" : {
"range" : [
{
"lower_bound" : "1.3.0",
"upper_bound" : "2.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/apple/swift-docc-plugin"
}
],
"manifest_display_name" : "LastFMKit",
"name" : "LastFMKit",
"path" : "/host/spi-builder-workspace",
"platforms" : [
{
"name" : "macos",
"version" : "13.0"
},
{
"name" : "ios",
"version" : "16.0"
},
{
"name" : "tvos",
"version" : "16.0"
},
{
"name" : "watchos",
"version" : "9.0"
}
],
"products" : [
{
"name" : "LastFMKit",
"targets" : [
"LastFMKit"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "lastfm-cli",
"targets" : [
"LastFMCLI"
],
"type" : {
"executable" : null
}
}
],
"targets" : [
{
"c99name" : "LastFMKitTests",
"module_type" : "SwiftTarget",
"name" : "LastFMKitTests",
"path" : "Tests/LastFMKitTests",
"resources" : [
{
"path" : "/host/spi-builder-workspace/Tests/LastFMKitTests/Resources/README.md",
"rule" : {
"process" : {
}
}
}
],
"sources" : [
"BasicTests.swift"
],
"target_dependencies" : [
"LastFMKit"
],
"type" : "test"
},
{
"c99name" : "LastFMKit",
"module_type" : "SwiftTarget",
"name" : "LastFMKit",
"path" : "Sources/LastFMKit",
"product_dependencies" : [
"Logging"
],
"product_memberships" : [
"LastFMKit",
"lastfm-cli"
],
"sources" : [
"API/AlbumAPI.swift",
"API/ArtistAPI.swift",
"API/AuthAPI.swift",
"API/BaseAPI.swift",
"API/ChartAPI.swift",
"API/GeoAPI.swift",
"API/LibraryAPI.swift",
"API/TagAPI.swift",
"API/TrackAPI.swift",
"API/UserAPI.swift",
"Core/Endpoint.swift",
"Core/LastFMClient.swift",
"Core/LastFMError.swift",
"Core/NetworkClient.swift",
"Models/Album.swift",
"Models/Artist.swift",
"Models/Auth.swift",
"Models/Chart.swift",
"Models/Common.swift",
"Models/Geo.swift",
"Models/Library.swift",
"Models/Tag.swift",
"Models/Track.swift",
"Models/User.swift"
],
"type" : "library"
},
{
"c99name" : "LastFMCLI",
"module_type" : "SwiftTarget",
"name" : "LastFMCLI",
"path" : "Sources/LastFMCLI",
"product_dependencies" : [
"ArgumentParser"
],
"product_memberships" : [
"lastfm-cli"
],
"sources" : [
"AlbumCommands.swift",
"AuthCommands.swift",
"ChartCommands.swift",
"ConfigCommands.swift",
"ConfigManager.swift",
"GeoCommands.swift",
"LastFMCLI.swift",
"LibraryCommands.swift",
"MyCommands.swift",
"TagCommands.swift",
"TrackCommands.swift",
"UserCommands.swift"
],
"target_dependencies" : [
"LastFMKit"
],
"type" : "executable"
}
],
"tools_version" : "5.9"
}
basic-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:2e2b3aca8600f890617c2faa770b70e33c1dfd303d6f92b308423b89ef6bde64
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.1-latest
Done.