Build Information
Successful build of ASCKit, reference 0.7.2 (0244c3), with Swift 6.1 for macOS (SPM) on 13 Feb 2026 06:12:50 UTC.
Swift 6 data race errors: 14
Build Command
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64Build Log
========================================
RunAll
========================================
Builder version: 4.68.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/Blackjacx/ASCKit.git
Reference: 0.7.2
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/Blackjacx/ASCKit
* tag 0.7.2 -> FETCH_HEAD
HEAD is now at 0244c33 Merge branch 'release/0.7.2'
Cloned https://github.com/Blackjacx/ASCKit.git
Revision (git rev-parse @):
0244c33e553f3c09e3e0b7c94f504883c00c746c
SPI manifest file found: $PWD/.spi.yml
SUCCESS checkout https://github.com/Blackjacx/ASCKit.git at 0.7.2
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.1
Building package at path: $PWD
https://github.com/Blackjacx/ASCKit.git
https://github.com/Blackjacx/ASCKit.git
{
"dependencies" : [
{
"identity" : "engine",
"requirement" : {
"range" : [
{
"lower_bound" : "0.3.0",
"upper_bound" : "1.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/blackjacx/Engine"
}
],
"manifest_display_name" : "ASCKit",
"name" : "ASCKit",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "macos",
"version" : "13.0"
},
{
"name" : "ios",
"version" : "15.0"
},
{
"name" : "tvos",
"version" : "15.0"
},
{
"name" : "watchos",
"version" : "8.0"
}
],
"products" : [
{
"name" : "ASCKit",
"targets" : [
"ASCKit"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "ASCKitTests",
"module_type" : "SwiftTarget",
"name" : "ASCKitTests",
"path" : "Tests/ASCKitTests",
"sources" : [
"ASCKitTests.swift"
],
"target_dependencies" : [
"ASCKit"
],
"type" : "test"
},
{
"c99name" : "ASCKit",
"module_type" : "SwiftTarget",
"name" : "ASCKit",
"path" : "Sources/ASCKit",
"product_dependencies" : [
"Engine"
],
"product_memberships" : [
"ASCKit"
],
"sources" : [
"ASCHeader.swift",
"ASCKit.swift",
"ASCPayload.swift",
"ASCService.swift",
"AscEndpoint.swift",
"AscError.swift",
"Constants.swift",
"Filter.swift",
"Model.swift",
"PagedItemLoader.swift",
"TypedId.swift",
"models/AccessibilityDeclaration.swift",
"models/AgeRatingDeclaration.swift",
"models/ApiKey.swift",
"models/App.swift",
"models/AppInfo.swift",
"models/AppStoreVersion.swift",
"models/BetaGroup.swift",
"models/BetaTester.swift",
"models/BetaTesterInvitationResponse.swift",
"models/Build.swift",
"models/BundleId.swift",
"models/PageableModel.swift",
"models/Relation.swift"
],
"type" : "library"
}
],
"tools_version" : "5.10"
}
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -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
Building for debugging...
[0/4] Write sources
[3/4] Write swift-version-2F0A5646E1D333AE.txt
[5/6] Emitting module KeychainAccess
[6/6] Compiling KeychainAccess Keychain.swift
[7/32] Emitting module Engine
[8/34] Compiling Engine Engine.swift
[9/34] Compiling Engine Bundle+Extensions.swift
[10/34] Compiling Engine FileManager+Extensions.swift
[11/34] Compiling Engine UserDefaults+PropertyWrapper.swift
[12/34] Compiling Engine UIColor+Extensions.swift
[13/34] Compiling Engine LoggableError.swift
[14/34] Compiling Engine Network.swift
[15/34] Compiling Engine NetworkError.swift
[16/34] Compiling Engine UIView+Extensions.swift
[17/34] Compiling Engine UIViewController+Extensions.swift
[18/34] Compiling Engine JWTClaims.swift
[19/34] Compiling Engine JWTHeader.swift
[20/34] Compiling Engine Keychain.swift
[21/34] Compiling Engine EmptyResponse.swift
[22/34] Compiling Engine Clamping.swift
[23/34] Compiling Engine Endpoint.swift
[24/34] Compiling Engine HTTPMethod.swift
[25/34] Compiling Engine Json.swift
[26/34] Compiling Engine OutputType.swift
[27/34] Compiling Engine Service.swift
[28/34] Compiling Engine DataWrapper.swift
[29/34] Compiling Engine URL+Extensions.swift
[30/34] Compiling Engine URLRequest+Extensions.swift
[31/34] Compiling Engine JWT.swift
[32/34] Compiling Engine ProcessInfo+Extensions.swift
[33/34] Compiling Engine String+Extensions.swift
[34/34] Compiling Engine String+Random.swift
error: emit-module command failed with exit code 1 (use -v to see invocation)
[35/57] Emitting module ASCKit
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:17:16: warning: static property 'network' is not concurrency-safe because non-'Sendable' type 'Network' may have shared mutable state; this is an error in the Swift 6 language mode
15 | public enum ASCService {
16 |
17 | static let network = Network.shared
| `- warning: static property 'network' is not concurrency-safe because non-'Sendable' type 'Network' may have shared mutable state; this is an error in the Swift 6 language mode
18 |
19 | /// Collection of registered API keys
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Engine/Sources/Engine/Networking/Network.swift:18:15: note: struct 'Network' does not conform to the 'Sendable' protocol
16 | public typealias RequestResult<T: Decodable> = Result<T, NetworkError>
17 |
18 | public struct Network {
| `- note: struct 'Network' does not conform to the 'Sendable' protocol
19 |
20 | public static var verbosityLevel = 0
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:8:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Engine'
6 | //
7 |
8 | import Engine
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Engine'
9 | import Foundation
10 |
:
15 | public enum ASCService {
16 |
17 | static let network = Network.shared
| |- note: add '@MainActor' to make static property 'network' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
18 |
19 | /// Collection of registered API keys
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:20:88: warning: static property 'apiKeys' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
18 |
19 | /// Collection of registered API keys
20 | @Defaults("\(ProcessInfo.processId).apiKeys", defaultValue: []) private static var apiKeys: [ApiKey]
| |- warning: static property 'apiKeys' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'apiKeys' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'apiKeys' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
21 | /// For command line applications set to the key ID passed as parameter
22 | public static var specifiedKeyId: String?
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:22:23: warning: static property 'specifiedKeyId' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
20 | @Defaults("\(ProcessInfo.processId).apiKeys", defaultValue: []) private static var apiKeys: [ApiKey]
21 | /// For command line applications set to the key ID passed as parameter
22 | public static var specifiedKeyId: String?
| |- warning: static property 'specifiedKeyId' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'specifiedKeyId' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'specifiedKeyId' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
23 |
24 | // MARK: - Generic List
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:300:15: warning: type 'App' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
298 | var errors: [Error] = []
299 |
300 | await withTaskGroup(of: Result<ResultType, Error>.self) { group in
| `- warning: type 'App' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
301 | for id in iterableAppIds {
302 | let app = apps.first { $0.id == id }!
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/App.swift:10:15: note: consider making struct 'App' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct App: IdentifiableModel {
| `- note: consider making struct 'App' conform to the 'Sendable' protocol
11 | public var id: String
12 | public var type: String
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:300:15: warning: type 'AppStoreVersion' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
298 | var errors: [Error] = []
299 |
300 | await withTaskGroup(of: Result<ResultType, Error>.self) { group in
| `- warning: type 'AppStoreVersion' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
301 | for id in iterableAppIds {
302 | let app = apps.first { $0.id == id }!
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/AppStoreVersion.swift:10:15: note: consider making struct 'AppStoreVersion' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct AppStoreVersion: IdentifiableModel {
| `- note: consider making struct 'AppStoreVersion' conform to the 'Sendable' protocol
11 | public var id: String
12 | public var type: String
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:300:65: warning: type 'App' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
298 | var errors: [Error] = []
299 |
300 | await withTaskGroup(of: Result<ResultType, Error>.self) { group in
| `- warning: type 'App' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
301 | for id in iterableAppIds {
302 | let app = apps.first { $0.id == id }!
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/App.swift:10:15: note: consider making struct 'App' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct App: IdentifiableModel {
| `- note: consider making struct 'App' conform to the 'Sendable' protocol
11 | public var id: String
12 | public var type: String
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:300:65: warning: type 'AppStoreVersion' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
298 | var errors: [Error] = []
299 |
300 | await withTaskGroup(of: Result<ResultType, Error>.self) { group in
| `- warning: type 'AppStoreVersion' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
301 | for id in iterableAppIds {
302 | let app = apps.first { $0.id == id }!
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/AppStoreVersion.swift:10:15: note: consider making struct 'AppStoreVersion' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct AppStoreVersion: IdentifiableModel {
| `- note: consider making struct 'AppStoreVersion' conform to the 'Sendable' protocol
11 | public var id: String
12 | public var type: String
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:305:23: warning: type 'App' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
303 | let endpoint = AscEndpoint.listAppStoreVersions(appId: id, filters: filters, limit: limit)
304 |
305 | group.addTask {
| `- warning: type 'App' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
306 | do {
307 | return .success(
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/App.swift:10:15: note: consider making struct 'App' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct App: IdentifiableModel {
| `- note: consider making struct 'App' conform to the 'Sendable' protocol
11 | public var id: String
12 | public var type: String
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:305:23: warning: type 'AppStoreVersion' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
303 | let endpoint = AscEndpoint.listAppStoreVersions(appId: id, filters: filters, limit: limit)
304 |
305 | group.addTask {
| `- warning: type 'AppStoreVersion' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
306 | do {
307 | return .success(
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/AppStoreVersion.swift:10:15: note: consider making struct 'AppStoreVersion' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct AppStoreVersion: IdentifiableModel {
| `- note: consider making struct 'AppStoreVersion' conform to the 'Sendable' protocol
11 | public var id: String
12 | public var type: String
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:536:44: error: type of expression is ambiguous without a type annotation
534 | }
535 |
536 | guard let tester: BetaTester = try await list(
| `- error: type of expression is ambiguous without a type annotation
537 | filters: [Filter(key: BetaTester.FilterKey.email, value: email)],
538 | outputType: .none,
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:536:44: warning: no 'async' operations occur within 'await' expression
534 | }
535 |
536 | guard let tester: BetaTester = try await list(
| `- warning: no 'async' operations occur within 'await' expression
537 | filters: [Filter(key: BetaTester.FilterKey.email, value: email)],
538 | outputType: .none,
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:536:40: warning: no calls to throwing functions occur within 'try' expression
534 | }
535 |
536 | guard let tester: BetaTester = try await list(
| `- warning: no calls to throwing functions occur within 'try' expression
537 | filters: [Filter(key: BetaTester.FilterKey.email, value: email)],
538 | outputType: .none,
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:603:15: warning: type 'ResultType' (aka 'BetaTester') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
601 | var errors: [Error] = []
602 |
603 | await withTaskGroup(of: Result<ResultType, Error>.self) { group in
| `- warning: type 'ResultType' (aka 'BetaTester') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
604 | for betaGroup in betaGroups {
605 | let endpoint = AscEndpoint.addBetaTester(
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/BetaTester.swift:10:15: note: consider making struct 'BetaTester' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct BetaTester: IdentifiableModel {
| `- note: consider making struct 'BetaTester' conform to the 'Sendable' protocol
11 | public var id: String
12 | public var type: String
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:603:65: warning: type 'ResultType' (aka 'BetaTester') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
601 | var errors: [Error] = []
602 |
603 | await withTaskGroup(of: Result<ResultType, Error>.self) { group in
| `- warning: type 'ResultType' (aka 'BetaTester') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
604 | for betaGroup in betaGroups {
605 | let endpoint = AscEndpoint.addBetaTester(
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/BetaTester.swift:10:15: note: consider making struct 'BetaTester' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct BetaTester: IdentifiableModel {
| `- note: consider making struct 'BetaTester' conform to the 'Sendable' protocol
11 | public var id: String
12 | public var type: String
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:612:23: warning: type 'ResultType' (aka 'BetaTester') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
610 | )
611 |
612 | group.addTask {
| `- warning: type 'ResultType' (aka 'BetaTester') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
613 | do {
614 | // FIXME: 🟢 convert to category-scoped OSLog outoput
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/BetaTester.swift:10:15: note: consider making struct 'BetaTester' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct BetaTester: IdentifiableModel {
| `- note: consider making struct 'BetaTester' conform to the 'Sendable' protocol
11 | public var id: String
12 | public var type: String
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/AscEndpoint.swift:159:23: warning: static property 'apiKeyId' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
157 |
158 | /// Used o specify the id of an already registered key to use
159 | public static var apiKeyId: String?
| |- warning: static property 'apiKeyId' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'apiKeyId' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'apiKeyId' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
160 |
161 | var host: String {
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/AscError.swift:18:10: warning: associated value 'apiKeyActivationFailed' of 'Sendable'-conforming enum 'AscError' has non-sendable type 'ApiKey'; this is an error in the Swift 6 language mode
16 | case invalidInput(_ message: String)
17 | case apiKeyNotFound(_ id: String)
18 | case apiKeyActivationFailed(_ key: ApiKey)
| `- warning: associated value 'apiKeyActivationFailed' of 'Sendable'-conforming enum 'AscError' has non-sendable type 'ApiKey'; this is an error in the Swift 6 language mode
19 | case requestFailed(underlyingErrors: [Error])
20 | case requestFailed(underlyingError: Error)
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/ApiKey.swift:11:15: note: consider making struct 'ApiKey' conform to the 'Sendable' protocol
9 | import Foundation
10 |
11 | public struct ApiKey: IdentifiableModel {
| `- note: consider making struct 'ApiKey' conform to the 'Sendable' protocol
12 | public var id: String
13 | public var name: String
[36/59] Compiling ASCKit ASCService.swift
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:17:16: warning: static property 'network' is not concurrency-safe because non-'Sendable' type 'Network' may have shared mutable state; this is an error in the Swift 6 language mode
15 | public enum ASCService {
16 |
17 | static let network = Network.shared
| `- warning: static property 'network' is not concurrency-safe because non-'Sendable' type 'Network' may have shared mutable state; this is an error in the Swift 6 language mode
18 |
19 | /// Collection of registered API keys
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Engine/Sources/Engine/Networking/Network.swift:18:15: note: struct 'Network' does not conform to the 'Sendable' protocol
16 | public typealias RequestResult<T: Decodable> = Result<T, NetworkError>
17 |
18 | public struct Network {
| `- note: struct 'Network' does not conform to the 'Sendable' protocol
19 |
20 | public static var verbosityLevel = 0
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:8:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Engine'
6 | //
7 |
8 | import Engine
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Engine'
9 | import Foundation
10 |
:
15 | public enum ASCService {
16 |
17 | static let network = Network.shared
| |- note: add '@MainActor' to make static property 'network' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
18 |
19 | /// Collection of registered API keys
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:20:88: warning: static property 'apiKeys' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
18 |
19 | /// Collection of registered API keys
20 | @Defaults("\(ProcessInfo.processId).apiKeys", defaultValue: []) private static var apiKeys: [ApiKey]
| |- warning: static property 'apiKeys' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'apiKeys' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'apiKeys' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
21 | /// For command line applications set to the key ID passed as parameter
22 | public static var specifiedKeyId: String?
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:22:23: warning: static property 'specifiedKeyId' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
20 | @Defaults("\(ProcessInfo.processId).apiKeys", defaultValue: []) private static var apiKeys: [ApiKey]
21 | /// For command line applications set to the key ID passed as parameter
22 | public static var specifiedKeyId: String?
| |- warning: static property 'specifiedKeyId' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'specifiedKeyId' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'specifiedKeyId' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
23 |
24 | // MARK: - Generic List
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:300:15: warning: type 'App' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
298 | var errors: [Error] = []
299 |
300 | await withTaskGroup(of: Result<ResultType, Error>.self) { group in
| `- warning: type 'App' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
301 | for id in iterableAppIds {
302 | let app = apps.first { $0.id == id }!
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/App.swift:10:15: note: consider making struct 'App' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct App: IdentifiableModel {
| `- note: consider making struct 'App' conform to the 'Sendable' protocol
11 | public var id: String
12 | public var type: String
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:300:15: warning: type 'AppStoreVersion' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
298 | var errors: [Error] = []
299 |
300 | await withTaskGroup(of: Result<ResultType, Error>.self) { group in
| `- warning: type 'AppStoreVersion' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
301 | for id in iterableAppIds {
302 | let app = apps.first { $0.id == id }!
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/AppStoreVersion.swift:10:15: note: consider making struct 'AppStoreVersion' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct AppStoreVersion: IdentifiableModel {
| `- note: consider making struct 'AppStoreVersion' conform to the 'Sendable' protocol
11 | public var id: String
12 | public var type: String
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:300:65: warning: type 'App' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
298 | var errors: [Error] = []
299 |
300 | await withTaskGroup(of: Result<ResultType, Error>.self) { group in
| `- warning: type 'App' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
301 | for id in iterableAppIds {
302 | let app = apps.first { $0.id == id }!
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/App.swift:10:15: note: consider making struct 'App' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct App: IdentifiableModel {
| `- note: consider making struct 'App' conform to the 'Sendable' protocol
11 | public var id: String
12 | public var type: String
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:300:65: warning: type 'AppStoreVersion' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
298 | var errors: [Error] = []
299 |
300 | await withTaskGroup(of: Result<ResultType, Error>.self) { group in
| `- warning: type 'AppStoreVersion' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
301 | for id in iterableAppIds {
302 | let app = apps.first { $0.id == id }!
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/AppStoreVersion.swift:10:15: note: consider making struct 'AppStoreVersion' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct AppStoreVersion: IdentifiableModel {
| `- note: consider making struct 'AppStoreVersion' conform to the 'Sendable' protocol
11 | public var id: String
12 | public var type: String
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:305:23: warning: type 'App' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
303 | let endpoint = AscEndpoint.listAppStoreVersions(appId: id, filters: filters, limit: limit)
304 |
305 | group.addTask {
| `- warning: type 'App' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
306 | do {
307 | return .success(
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/App.swift:10:15: note: consider making struct 'App' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct App: IdentifiableModel {
| `- note: consider making struct 'App' conform to the 'Sendable' protocol
11 | public var id: String
12 | public var type: String
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:305:23: warning: type 'AppStoreVersion' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
303 | let endpoint = AscEndpoint.listAppStoreVersions(appId: id, filters: filters, limit: limit)
304 |
305 | group.addTask {
| `- warning: type 'AppStoreVersion' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
306 | do {
307 | return .success(
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/AppStoreVersion.swift:10:15: note: consider making struct 'AppStoreVersion' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct AppStoreVersion: IdentifiableModel {
| `- note: consider making struct 'AppStoreVersion' conform to the 'Sendable' protocol
11 | public var id: String
12 | public var type: String
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:536:44: error: type of expression is ambiguous without a type annotation
534 | }
535 |
536 | guard let tester: BetaTester = try await list(
| `- error: type of expression is ambiguous without a type annotation
537 | filters: [Filter(key: BetaTester.FilterKey.email, value: email)],
538 | outputType: .none,
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:536:44: warning: no 'async' operations occur within 'await' expression
534 | }
535 |
536 | guard let tester: BetaTester = try await list(
| `- warning: no 'async' operations occur within 'await' expression
537 | filters: [Filter(key: BetaTester.FilterKey.email, value: email)],
538 | outputType: .none,
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:536:40: warning: no calls to throwing functions occur within 'try' expression
534 | }
535 |
536 | guard let tester: BetaTester = try await list(
| `- warning: no calls to throwing functions occur within 'try' expression
537 | filters: [Filter(key: BetaTester.FilterKey.email, value: email)],
538 | outputType: .none,
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:603:15: warning: type 'ResultType' (aka 'BetaTester') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
601 | var errors: [Error] = []
602 |
603 | await withTaskGroup(of: Result<ResultType, Error>.self) { group in
| `- warning: type 'ResultType' (aka 'BetaTester') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
604 | for betaGroup in betaGroups {
605 | let endpoint = AscEndpoint.addBetaTester(
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/BetaTester.swift:10:15: note: consider making struct 'BetaTester' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct BetaTester: IdentifiableModel {
| `- note: consider making struct 'BetaTester' conform to the 'Sendable' protocol
11 | public var id: String
12 | public var type: String
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:603:65: warning: type 'ResultType' (aka 'BetaTester') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
601 | var errors: [Error] = []
602 |
603 | await withTaskGroup(of: Result<ResultType, Error>.self) { group in
| `- warning: type 'ResultType' (aka 'BetaTester') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
604 | for betaGroup in betaGroups {
605 | let endpoint = AscEndpoint.addBetaTester(
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/BetaTester.swift:10:15: note: consider making struct 'BetaTester' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct BetaTester: IdentifiableModel {
| `- note: consider making struct 'BetaTester' conform to the 'Sendable' protocol
11 | public var id: String
12 | public var type: String
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:612:23: warning: type 'ResultType' (aka 'BetaTester') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
610 | )
611 |
612 | group.addTask {
| `- warning: type 'ResultType' (aka 'BetaTester') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
613 | do {
614 | // FIXME: 🟢 convert to category-scoped OSLog outoput
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/BetaTester.swift:10:15: note: consider making struct 'BetaTester' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct BetaTester: IdentifiableModel {
| `- note: consider making struct 'BetaTester' conform to the 'Sendable' protocol
11 | public var id: String
12 | public var type: String
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:830:19: warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
824 | }
825 |
826 | private static func batchRequest<T: Decodable>(
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
827 | endpointMapping: [String: Endpoint],
828 | outputType: OutputType,
829 | ) async throws -> [T] {
830 | try await withThrowingTaskGroup(
| `- warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
831 | of: (String, Result<T, Error>).self
832 | ) { group in
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:834:23: warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
824 | }
825 |
826 | private static func batchRequest<T: Decodable>(
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
827 | endpointMapping: [String: Endpoint],
828 | outputType: OutputType,
:
832 | ) { group in
833 | for (id, endpoint) in endpointMapping {
834 | group.addTask {
| `- warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
835 | do {
836 | let model: T = try await network.request(
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/AscEndpoint.swift:159:23: warning: static property 'apiKeyId' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
157 |
158 | /// Used o specify the id of an already registered key to use
159 | public static var apiKeyId: String?
| |- warning: static property 'apiKeyId' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'apiKeyId' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'apiKeyId' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
160 |
161 | var host: String {
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/AscEndpoint.swift:136:50: warning: reference to static property 'decoder' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
134 | case .url,
135 | .list:
136 | let directResult = Result { try Json.decoder.decode(T.self, from: data) }
| `- warning: reference to static property 'decoder' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
137 |
138 | guard (try? directResult.get()) != nil else {
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Engine/Sources/Engine/Networking/Json.swift:18:23: note: static property declared here
16 | }()
17 |
18 | public static var decoder: JSONDecoder = {
| `- note: static property declared here
19 | let decoder = JSONDecoder()
20 | decoder.dateDecodingStrategy = .iso8601
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/AscEndpoint.swift:140:33: warning: reference to static property 'decoder' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
138 | guard (try? directResult.get()) != nil else {
139 | // Decode data-wrapped result, e.g. [BetaTester]
140 | return try Json.decoder.decode(DataWrapper<T>.self, from: data).data
| `- warning: reference to static property 'decoder' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
141 | }
142 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Engine/Sources/Engine/Networking/Json.swift:18:23: note: static property declared here
16 | }()
17 |
18 | public static var decoder: JSONDecoder = {
| `- note: static property declared here
19 | let decoder = JSONDecoder()
20 | decoder.dateDecodingStrategy = .iso8601
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/AscEndpoint.swift:148:29: warning: reference to static property 'decoder' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
146 | case .delete:
147 | // Decode result directly since we always use EmptyResponse here
148 | return try Json.decoder.decode(T.self, from: data)
| `- warning: reference to static property 'decoder' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
149 | }
150 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Engine/Sources/Engine/Networking/Json.swift:18:23: note: static property declared here
16 | }()
17 |
18 | public static var decoder: JSONDecoder = {
| `- note: static property declared here
19 | let decoder = JSONDecoder()
20 | decoder.dateDecodingStrategy = .iso8601
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/AscEndpoint.swift:427:29: warning: reference to static property 'decoder' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
425 | func jsonDecode<T: Decodable>(_ type: T.Type, from data: Data) throws -> T {
426 | do {
427 | return try Json.decoder.decode(T.self, from: data)
| `- warning: reference to static property 'decoder' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
428 | } catch {
429 | return try Json.decoder.decode(DataWrapper<T>.self, from: data).data
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Engine/Sources/Engine/Networking/Json.swift:18:23: note: static property declared here
16 | }()
17 |
18 | public static var decoder: JSONDecoder = {
| `- note: static property declared here
19 | let decoder = JSONDecoder()
20 | decoder.dateDecodingStrategy = .iso8601
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/AscEndpoint.swift:429:29: warning: reference to static property 'decoder' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
427 | return try Json.decoder.decode(T.self, from: data)
428 | } catch {
429 | return try Json.decoder.decode(DataWrapper<T>.self, from: data).data
| `- warning: reference to static property 'decoder' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
430 | }
431 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Engine/Sources/Engine/Networking/Json.swift:18:23: note: static property declared here
16 | }()
17 |
18 | public static var decoder: JSONDecoder = {
| `- note: static property declared here
19 | let decoder = JSONDecoder()
20 | decoder.dateDecodingStrategy = .iso8601
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/AscError.swift:18:10: warning: associated value 'apiKeyActivationFailed' of 'Sendable'-conforming enum 'AscError' has non-sendable type 'ApiKey'; this is an error in the Swift 6 language mode
16 | case invalidInput(_ message: String)
17 | case apiKeyNotFound(_ id: String)
18 | case apiKeyActivationFailed(_ key: ApiKey)
| `- warning: associated value 'apiKeyActivationFailed' of 'Sendable'-conforming enum 'AscError' has non-sendable type 'ApiKey'; this is an error in the Swift 6 language mode
19 | case requestFailed(underlyingErrors: [Error])
20 | case requestFailed(underlyingError: Error)
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/ApiKey.swift:11:15: note: consider making struct 'ApiKey' conform to the 'Sendable' protocol
9 | import Foundation
10 |
11 | public struct ApiKey: IdentifiableModel {
| `- note: consider making struct 'ApiKey' conform to the 'Sendable' protocol
12 | public var id: String
13 | public var name: String
[37/59] Compiling ASCKit AscEndpoint.swift
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:17:16: warning: static property 'network' is not concurrency-safe because non-'Sendable' type 'Network' may have shared mutable state; this is an error in the Swift 6 language mode
15 | public enum ASCService {
16 |
17 | static let network = Network.shared
| `- warning: static property 'network' is not concurrency-safe because non-'Sendable' type 'Network' may have shared mutable state; this is an error in the Swift 6 language mode
18 |
19 | /// Collection of registered API keys
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Engine/Sources/Engine/Networking/Network.swift:18:15: note: struct 'Network' does not conform to the 'Sendable' protocol
16 | public typealias RequestResult<T: Decodable> = Result<T, NetworkError>
17 |
18 | public struct Network {
| `- note: struct 'Network' does not conform to the 'Sendable' protocol
19 |
20 | public static var verbosityLevel = 0
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:8:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Engine'
6 | //
7 |
8 | import Engine
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Engine'
9 | import Foundation
10 |
:
15 | public enum ASCService {
16 |
17 | static let network = Network.shared
| |- note: add '@MainActor' to make static property 'network' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
18 |
19 | /// Collection of registered API keys
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:20:88: warning: static property 'apiKeys' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
18 |
19 | /// Collection of registered API keys
20 | @Defaults("\(ProcessInfo.processId).apiKeys", defaultValue: []) private static var apiKeys: [ApiKey]
| |- warning: static property 'apiKeys' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'apiKeys' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'apiKeys' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
21 | /// For command line applications set to the key ID passed as parameter
22 | public static var specifiedKeyId: String?
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:22:23: warning: static property 'specifiedKeyId' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
20 | @Defaults("\(ProcessInfo.processId).apiKeys", defaultValue: []) private static var apiKeys: [ApiKey]
21 | /// For command line applications set to the key ID passed as parameter
22 | public static var specifiedKeyId: String?
| |- warning: static property 'specifiedKeyId' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'specifiedKeyId' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'specifiedKeyId' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
23 |
24 | // MARK: - Generic List
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:300:15: warning: type 'App' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
298 | var errors: [Error] = []
299 |
300 | await withTaskGroup(of: Result<ResultType, Error>.self) { group in
| `- warning: type 'App' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
301 | for id in iterableAppIds {
302 | let app = apps.first { $0.id == id }!
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/App.swift:10:15: note: consider making struct 'App' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct App: IdentifiableModel {
| `- note: consider making struct 'App' conform to the 'Sendable' protocol
11 | public var id: String
12 | public var type: String
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:300:15: warning: type 'AppStoreVersion' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
298 | var errors: [Error] = []
299 |
300 | await withTaskGroup(of: Result<ResultType, Error>.self) { group in
| `- warning: type 'AppStoreVersion' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
301 | for id in iterableAppIds {
302 | let app = apps.first { $0.id == id }!
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/AppStoreVersion.swift:10:15: note: consider making struct 'AppStoreVersion' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct AppStoreVersion: IdentifiableModel {
| `- note: consider making struct 'AppStoreVersion' conform to the 'Sendable' protocol
11 | public var id: String
12 | public var type: String
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:300:65: warning: type 'App' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
298 | var errors: [Error] = []
299 |
300 | await withTaskGroup(of: Result<ResultType, Error>.self) { group in
| `- warning: type 'App' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
301 | for id in iterableAppIds {
302 | let app = apps.first { $0.id == id }!
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/App.swift:10:15: note: consider making struct 'App' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct App: IdentifiableModel {
| `- note: consider making struct 'App' conform to the 'Sendable' protocol
11 | public var id: String
12 | public var type: String
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:300:65: warning: type 'AppStoreVersion' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
298 | var errors: [Error] = []
299 |
300 | await withTaskGroup(of: Result<ResultType, Error>.self) { group in
| `- warning: type 'AppStoreVersion' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
301 | for id in iterableAppIds {
302 | let app = apps.first { $0.id == id }!
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/AppStoreVersion.swift:10:15: note: consider making struct 'AppStoreVersion' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct AppStoreVersion: IdentifiableModel {
| `- note: consider making struct 'AppStoreVersion' conform to the 'Sendable' protocol
11 | public var id: String
12 | public var type: String
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:305:23: warning: type 'App' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
303 | let endpoint = AscEndpoint.listAppStoreVersions(appId: id, filters: filters, limit: limit)
304 |
305 | group.addTask {
| `- warning: type 'App' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
306 | do {
307 | return .success(
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/App.swift:10:15: note: consider making struct 'App' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct App: IdentifiableModel {
| `- note: consider making struct 'App' conform to the 'Sendable' protocol
11 | public var id: String
12 | public var type: String
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:305:23: warning: type 'AppStoreVersion' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
303 | let endpoint = AscEndpoint.listAppStoreVersions(appId: id, filters: filters, limit: limit)
304 |
305 | group.addTask {
| `- warning: type 'AppStoreVersion' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
306 | do {
307 | return .success(
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/AppStoreVersion.swift:10:15: note: consider making struct 'AppStoreVersion' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct AppStoreVersion: IdentifiableModel {
| `- note: consider making struct 'AppStoreVersion' conform to the 'Sendable' protocol
11 | public var id: String
12 | public var type: String
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:536:44: error: type of expression is ambiguous without a type annotation
534 | }
535 |
536 | guard let tester: BetaTester = try await list(
| `- error: type of expression is ambiguous without a type annotation
537 | filters: [Filter(key: BetaTester.FilterKey.email, value: email)],
538 | outputType: .none,
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:536:44: warning: no 'async' operations occur within 'await' expression
534 | }
535 |
536 | guard let tester: BetaTester = try await list(
| `- warning: no 'async' operations occur within 'await' expression
537 | filters: [Filter(key: BetaTester.FilterKey.email, value: email)],
538 | outputType: .none,
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:536:40: warning: no calls to throwing functions occur within 'try' expression
534 | }
535 |
536 | guard let tester: BetaTester = try await list(
| `- warning: no calls to throwing functions occur within 'try' expression
537 | filters: [Filter(key: BetaTester.FilterKey.email, value: email)],
538 | outputType: .none,
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:603:15: warning: type 'ResultType' (aka 'BetaTester') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
601 | var errors: [Error] = []
602 |
603 | await withTaskGroup(of: Result<ResultType, Error>.self) { group in
| `- warning: type 'ResultType' (aka 'BetaTester') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
604 | for betaGroup in betaGroups {
605 | let endpoint = AscEndpoint.addBetaTester(
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/BetaTester.swift:10:15: note: consider making struct 'BetaTester' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct BetaTester: IdentifiableModel {
| `- note: consider making struct 'BetaTester' conform to the 'Sendable' protocol
11 | public var id: String
12 | public var type: String
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:603:65: warning: type 'ResultType' (aka 'BetaTester') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
601 | var errors: [Error] = []
602 |
603 | await withTaskGroup(of: Result<ResultType, Error>.self) { group in
| `- warning: type 'ResultType' (aka 'BetaTester') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
604 | for betaGroup in betaGroups {
605 | let endpoint = AscEndpoint.addBetaTester(
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/BetaTester.swift:10:15: note: consider making struct 'BetaTester' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct BetaTester: IdentifiableModel {
| `- note: consider making struct 'BetaTester' conform to the 'Sendable' protocol
11 | public var id: String
12 | public var type: String
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:612:23: warning: type 'ResultType' (aka 'BetaTester') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
610 | )
611 |
612 | group.addTask {
| `- warning: type 'ResultType' (aka 'BetaTester') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
613 | do {
614 | // FIXME: 🟢 convert to category-scoped OSLog outoput
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/BetaTester.swift:10:15: note: consider making struct 'BetaTester' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct BetaTester: IdentifiableModel {
| `- note: consider making struct 'BetaTester' conform to the 'Sendable' protocol
11 | public var id: String
12 | public var type: String
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:830:19: warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
824 | }
825 |
826 | private static func batchRequest<T: Decodable>(
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
827 | endpointMapping: [String: Endpoint],
828 | outputType: OutputType,
829 | ) async throws -> [T] {
830 | try await withThrowingTaskGroup(
| `- warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
831 | of: (String, Result<T, Error>).self
832 | ) { group in
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:834:23: warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
824 | }
825 |
826 | private static func batchRequest<T: Decodable>(
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
827 | endpointMapping: [String: Endpoint],
828 | outputType: OutputType,
:
832 | ) { group in
833 | for (id, endpoint) in endpointMapping {
834 | group.addTask {
| `- warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
835 | do {
836 | let model: T = try await network.request(
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/AscEndpoint.swift:159:23: warning: static property 'apiKeyId' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
157 |
158 | /// Used o specify the id of an already registered key to use
159 | public static var apiKeyId: String?
| |- warning: static property 'apiKeyId' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'apiKeyId' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'apiKeyId' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
160 |
161 | var host: String {
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/AscEndpoint.swift:136:50: warning: reference to static property 'decoder' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
134 | case .url,
135 | .list:
136 | let directResult = Result { try Json.decoder.decode(T.self, from: data) }
| `- warning: reference to static property 'decoder' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
137 |
138 | guard (try? directResult.get()) != nil else {
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Engine/Sources/Engine/Networking/Json.swift:18:23: note: static property declared here
16 | }()
17 |
18 | public static var decoder: JSONDecoder = {
| `- note: static property declared here
19 | let decoder = JSONDecoder()
20 | decoder.dateDecodingStrategy = .iso8601
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/AscEndpoint.swift:140:33: warning: reference to static property 'decoder' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
138 | guard (try? directResult.get()) != nil else {
139 | // Decode data-wrapped result, e.g. [BetaTester]
140 | return try Json.decoder.decode(DataWrapper<T>.self, from: data).data
| `- warning: reference to static property 'decoder' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
141 | }
142 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Engine/Sources/Engine/Networking/Json.swift:18:23: note: static property declared here
16 | }()
17 |
18 | public static var decoder: JSONDecoder = {
| `- note: static property declared here
19 | let decoder = JSONDecoder()
20 | decoder.dateDecodingStrategy = .iso8601
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/AscEndpoint.swift:148:29: warning: reference to static property 'decoder' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
146 | case .delete:
147 | // Decode result directly since we always use EmptyResponse here
148 | return try Json.decoder.decode(T.self, from: data)
| `- warning: reference to static property 'decoder' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
149 | }
150 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Engine/Sources/Engine/Networking/Json.swift:18:23: note: static property declared here
16 | }()
17 |
18 | public static var decoder: JSONDecoder = {
| `- note: static property declared here
19 | let decoder = JSONDecoder()
20 | decoder.dateDecodingStrategy = .iso8601
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/AscEndpoint.swift:427:29: warning: reference to static property 'decoder' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
425 | func jsonDecode<T: Decodable>(_ type: T.Type, from data: Data) throws -> T {
426 | do {
427 | return try Json.decoder.decode(T.self, from: data)
| `- warning: reference to static property 'decoder' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
428 | } catch {
429 | return try Json.decoder.decode(DataWrapper<T>.self, from: data).data
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Engine/Sources/Engine/Networking/Json.swift:18:23: note: static property declared here
16 | }()
17 |
18 | public static var decoder: JSONDecoder = {
| `- note: static property declared here
19 | let decoder = JSONDecoder()
20 | decoder.dateDecodingStrategy = .iso8601
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/AscEndpoint.swift:429:29: warning: reference to static property 'decoder' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
427 | return try Json.decoder.decode(T.self, from: data)
428 | } catch {
429 | return try Json.decoder.decode(DataWrapper<T>.self, from: data).data
| `- warning: reference to static property 'decoder' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
430 | }
431 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Engine/Sources/Engine/Networking/Json.swift:18:23: note: static property declared here
16 | }()
17 |
18 | public static var decoder: JSONDecoder = {
| `- note: static property declared here
19 | let decoder = JSONDecoder()
20 | decoder.dateDecodingStrategy = .iso8601
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/AscError.swift:18:10: warning: associated value 'apiKeyActivationFailed' of 'Sendable'-conforming enum 'AscError' has non-sendable type 'ApiKey'; this is an error in the Swift 6 language mode
16 | case invalidInput(_ message: String)
17 | case apiKeyNotFound(_ id: String)
18 | case apiKeyActivationFailed(_ key: ApiKey)
| `- warning: associated value 'apiKeyActivationFailed' of 'Sendable'-conforming enum 'AscError' has non-sendable type 'ApiKey'; this is an error in the Swift 6 language mode
19 | case requestFailed(underlyingErrors: [Error])
20 | case requestFailed(underlyingError: Error)
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/ApiKey.swift:11:15: note: consider making struct 'ApiKey' conform to the 'Sendable' protocol
9 | import Foundation
10 |
11 | public struct ApiKey: IdentifiableModel {
| `- note: consider making struct 'ApiKey' conform to the 'Sendable' protocol
12 | public var id: String
13 | public var name: String
[38/59] Compiling ASCKit AscError.swift
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:17:16: warning: static property 'network' is not concurrency-safe because non-'Sendable' type 'Network' may have shared mutable state; this is an error in the Swift 6 language mode
15 | public enum ASCService {
16 |
17 | static let network = Network.shared
| `- warning: static property 'network' is not concurrency-safe because non-'Sendable' type 'Network' may have shared mutable state; this is an error in the Swift 6 language mode
18 |
19 | /// Collection of registered API keys
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Engine/Sources/Engine/Networking/Network.swift:18:15: note: struct 'Network' does not conform to the 'Sendable' protocol
16 | public typealias RequestResult<T: Decodable> = Result<T, NetworkError>
17 |
18 | public struct Network {
| `- note: struct 'Network' does not conform to the 'Sendable' protocol
19 |
20 | public static var verbosityLevel = 0
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:8:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Engine'
6 | //
7 |
8 | import Engine
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Engine'
9 | import Foundation
10 |
:
15 | public enum ASCService {
16 |
17 | static let network = Network.shared
| |- note: add '@MainActor' to make static property 'network' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
18 |
19 | /// Collection of registered API keys
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:20:88: warning: static property 'apiKeys' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
18 |
19 | /// Collection of registered API keys
20 | @Defaults("\(ProcessInfo.processId).apiKeys", defaultValue: []) private static var apiKeys: [ApiKey]
| |- warning: static property 'apiKeys' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'apiKeys' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'apiKeys' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
21 | /// For command line applications set to the key ID passed as parameter
22 | public static var specifiedKeyId: String?
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:22:23: warning: static property 'specifiedKeyId' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
20 | @Defaults("\(ProcessInfo.processId).apiKeys", defaultValue: []) private static var apiKeys: [ApiKey]
21 | /// For command line applications set to the key ID passed as parameter
22 | public static var specifiedKeyId: String?
| |- warning: static property 'specifiedKeyId' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'specifiedKeyId' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'specifiedKeyId' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
23 |
24 | // MARK: - Generic List
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:300:15: warning: type 'App' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
298 | var errors: [Error] = []
299 |
300 | await withTaskGroup(of: Result<ResultType, Error>.self) { group in
| `- warning: type 'App' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
301 | for id in iterableAppIds {
302 | let app = apps.first { $0.id == id }!
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/App.swift:10:15: note: consider making struct 'App' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct App: IdentifiableModel {
| `- note: consider making struct 'App' conform to the 'Sendable' protocol
11 | public var id: String
12 | public var type: String
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:300:15: warning: type 'AppStoreVersion' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
298 | var errors: [Error] = []
299 |
300 | await withTaskGroup(of: Result<ResultType, Error>.self) { group in
| `- warning: type 'AppStoreVersion' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
301 | for id in iterableAppIds {
302 | let app = apps.first { $0.id == id }!
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/AppStoreVersion.swift:10:15: note: consider making struct 'AppStoreVersion' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct AppStoreVersion: IdentifiableModel {
| `- note: consider making struct 'AppStoreVersion' conform to the 'Sendable' protocol
11 | public var id: String
12 | public var type: String
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:300:65: warning: type 'App' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
298 | var errors: [Error] = []
299 |
300 | await withTaskGroup(of: Result<ResultType, Error>.self) { group in
| `- warning: type 'App' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
301 | for id in iterableAppIds {
302 | let app = apps.first { $0.id == id }!
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/App.swift:10:15: note: consider making struct 'App' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct App: IdentifiableModel {
| `- note: consider making struct 'App' conform to the 'Sendable' protocol
11 | public var id: String
12 | public var type: String
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:300:65: warning: type 'AppStoreVersion' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
298 | var errors: [Error] = []
299 |
300 | await withTaskGroup(of: Result<ResultType, Error>.self) { group in
| `- warning: type 'AppStoreVersion' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
301 | for id in iterableAppIds {
302 | let app = apps.first { $0.id == id }!
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/AppStoreVersion.swift:10:15: note: consider making struct 'AppStoreVersion' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct AppStoreVersion: IdentifiableModel {
| `- note: consider making struct 'AppStoreVersion' conform to the 'Sendable' protocol
11 | public var id: String
12 | public var type: String
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:305:23: warning: type 'App' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
303 | let endpoint = AscEndpoint.listAppStoreVersions(appId: id, filters: filters, limit: limit)
304 |
305 | group.addTask {
| `- warning: type 'App' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
306 | do {
307 | return .success(
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/App.swift:10:15: note: consider making struct 'App' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct App: IdentifiableModel {
| `- note: consider making struct 'App' conform to the 'Sendable' protocol
11 | public var id: String
12 | public var type: String
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:305:23: warning: type 'AppStoreVersion' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
303 | let endpoint = AscEndpoint.listAppStoreVersions(appId: id, filters: filters, limit: limit)
304 |
305 | group.addTask {
| `- warning: type 'AppStoreVersion' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
306 | do {
307 | return .success(
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/AppStoreVersion.swift:10:15: note: consider making struct 'AppStoreVersion' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct AppStoreVersion: IdentifiableModel {
| `- note: consider making struct 'AppStoreVersion' conform to the 'Sendable' protocol
11 | public var id: String
12 | public var type: String
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:536:44: error: type of expression is ambiguous without a type annotation
534 | }
535 |
536 | guard let tester: BetaTester = try await list(
| `- error: type of expression is ambiguous without a type annotation
537 | filters: [Filter(key: BetaTester.FilterKey.email, value: email)],
538 | outputType: .none,
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:536:44: warning: no 'async' operations occur within 'await' expression
534 | }
535 |
536 | guard let tester: BetaTester = try await list(
| `- warning: no 'async' operations occur within 'await' expression
537 | filters: [Filter(key: BetaTester.FilterKey.email, value: email)],
538 | outputType: .none,
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:536:40: warning: no calls to throwing functions occur within 'try' expression
534 | }
535 |
536 | guard let tester: BetaTester = try await list(
| `- warning: no calls to throwing functions occur within 'try' expression
537 | filters: [Filter(key: BetaTester.FilterKey.email, value: email)],
538 | outputType: .none,
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:603:15: warning: type 'ResultType' (aka 'BetaTester') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
601 | var errors: [Error] = []
602 |
603 | await withTaskGroup(of: Result<ResultType, Error>.self) { group in
| `- warning: type 'ResultType' (aka 'BetaTester') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
604 | for betaGroup in betaGroups {
605 | let endpoint = AscEndpoint.addBetaTester(
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/BetaTester.swift:10:15: note: consider making struct 'BetaTester' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct BetaTester: IdentifiableModel {
| `- note: consider making struct 'BetaTester' conform to the 'Sendable' protocol
11 | public var id: String
12 | public var type: String
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:603:65: warning: type 'ResultType' (aka 'BetaTester') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
601 | var errors: [Error] = []
602 |
603 | await withTaskGroup(of: Result<ResultType, Error>.self) { group in
| `- warning: type 'ResultType' (aka 'BetaTester') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
604 | for betaGroup in betaGroups {
605 | let endpoint = AscEndpoint.addBetaTester(
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/BetaTester.swift:10:15: note: consider making struct 'BetaTester' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct BetaTester: IdentifiableModel {
| `- note: consider making struct 'BetaTester' conform to the 'Sendable' protocol
11 | public var id: String
12 | public var type: String
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:612:23: warning: type 'ResultType' (aka 'BetaTester') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
610 | )
611 |
612 | group.addTask {
| `- warning: type 'ResultType' (aka 'BetaTester') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
613 | do {
614 | // FIXME: 🟢 convert to category-scoped OSLog outoput
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/BetaTester.swift:10:15: note: consider making struct 'BetaTester' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct BetaTester: IdentifiableModel {
| `- note: consider making struct 'BetaTester' conform to the 'Sendable' protocol
11 | public var id: String
12 | public var type: String
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:830:19: warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
824 | }
825 |
826 | private static func batchRequest<T: Decodable>(
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
827 | endpointMapping: [String: Endpoint],
828 | outputType: OutputType,
829 | ) async throws -> [T] {
830 | try await withThrowingTaskGroup(
| `- warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
831 | of: (String, Result<T, Error>).self
832 | ) { group in
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:834:23: warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
824 | }
825 |
826 | private static func batchRequest<T: Decodable>(
| `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
827 | endpointMapping: [String: Endpoint],
828 | outputType: OutputType,
:
832 | ) { group in
833 | for (id, endpoint) in endpointMapping {
834 | group.addTask {
| `- warning: type 'T' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
835 | do {
836 | let model: T = try await network.request(
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/AscEndpoint.swift:159:23: warning: static property 'apiKeyId' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
157 |
158 | /// Used o specify the id of an already registered key to use
159 | public static var apiKeyId: String?
| |- warning: static property 'apiKeyId' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'apiKeyId' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'apiKeyId' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
160 |
161 | var host: String {
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/AscEndpoint.swift:136:50: warning: reference to static property 'decoder' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
134 | case .url,
135 | .list:
136 | let directResult = Result { try Json.decoder.decode(T.self, from: data) }
| `- warning: reference to static property 'decoder' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
137 |
138 | guard (try? directResult.get()) != nil else {
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Engine/Sources/Engine/Networking/Json.swift:18:23: note: static property declared here
16 | }()
17 |
18 | public static var decoder: JSONDecoder = {
| `- note: static property declared here
19 | let decoder = JSONDecoder()
20 | decoder.dateDecodingStrategy = .iso8601
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/AscEndpoint.swift:140:33: warning: reference to static property 'decoder' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
138 | guard (try? directResult.get()) != nil else {
139 | // Decode data-wrapped result, e.g. [BetaTester]
140 | return try Json.decoder.decode(DataWrapper<T>.self, from: data).data
| `- warning: reference to static property 'decoder' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
141 | }
142 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Engine/Sources/Engine/Networking/Json.swift:18:23: note: static property declared here
16 | }()
17 |
18 | public static var decoder: JSONDecoder = {
| `- note: static property declared here
19 | let decoder = JSONDecoder()
20 | decoder.dateDecodingStrategy = .iso8601
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/AscEndpoint.swift:148:29: warning: reference to static property 'decoder' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
146 | case .delete:
147 | // Decode result directly since we always use EmptyResponse here
148 | return try Json.decoder.decode(T.self, from: data)
| `- warning: reference to static property 'decoder' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
149 | }
150 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Engine/Sources/Engine/Networking/Json.swift:18:23: note: static property declared here
16 | }()
17 |
18 | public static var decoder: JSONDecoder = {
| `- note: static property declared here
19 | let decoder = JSONDecoder()
20 | decoder.dateDecodingStrategy = .iso8601
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/AscEndpoint.swift:427:29: warning: reference to static property 'decoder' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
425 | func jsonDecode<T: Decodable>(_ type: T.Type, from data: Data) throws -> T {
426 | do {
427 | return try Json.decoder.decode(T.self, from: data)
| `- warning: reference to static property 'decoder' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
428 | } catch {
429 | return try Json.decoder.decode(DataWrapper<T>.self, from: data).data
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Engine/Sources/Engine/Networking/Json.swift:18:23: note: static property declared here
16 | }()
17 |
18 | public static var decoder: JSONDecoder = {
| `- note: static property declared here
19 | let decoder = JSONDecoder()
20 | decoder.dateDecodingStrategy = .iso8601
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/AscEndpoint.swift:429:29: warning: reference to static property 'decoder' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
427 | return try Json.decoder.decode(T.self, from: data)
428 | } catch {
429 | return try Json.decoder.decode(DataWrapper<T>.self, from: data).data
| `- warning: reference to static property 'decoder' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
430 | }
431 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Engine/Sources/Engine/Networking/Json.swift:18:23: note: static property declared here
16 | }()
17 |
18 | public static var decoder: JSONDecoder = {
| `- note: static property declared here
19 | let decoder = JSONDecoder()
20 | decoder.dateDecodingStrategy = .iso8601
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/AscError.swift:18:10: warning: associated value 'apiKeyActivationFailed' of 'Sendable'-conforming enum 'AscError' has non-sendable type 'ApiKey'; this is an error in the Swift 6 language mode
16 | case invalidInput(_ message: String)
17 | case apiKeyNotFound(_ id: String)
18 | case apiKeyActivationFailed(_ key: ApiKey)
| `- warning: associated value 'apiKeyActivationFailed' of 'Sendable'-conforming enum 'AscError' has non-sendable type 'ApiKey'; this is an error in the Swift 6 language mode
19 | case requestFailed(underlyingErrors: [Error])
20 | case requestFailed(underlyingError: Error)
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/ApiKey.swift:11:15: note: consider making struct 'ApiKey' conform to the 'Sendable' protocol
9 | import Foundation
10 |
11 | public struct ApiKey: IdentifiableModel {
| `- note: consider making struct 'ApiKey' conform to the 'Sendable' protocol
12 | public var id: String
13 | public var name: String
[39/59] Compiling ASCKit PageableModel.swift
[40/59] Compiling ASCKit Relation.swift
[41/59] Compiling ASCKit AppStoreVersion.swift
[42/59] Compiling ASCKit BetaGroup.swift
[43/59] Compiling ASCKit Constants.swift
[44/59] Compiling ASCKit Filter.swift
[45/59] Compiling ASCKit Model.swift
[46/59] Compiling ASCKit App.swift
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/AppInfo.swift:24:16: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
22 | let included: [IncludedResource]?
23 |
24 | public let id: String = UUID().uuidString
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'id' case to silence this warning
| `- note: make the property mutable instead
25 | public var name: String {
26 | id
[47/59] Compiling ASCKit AppInfo.swift
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/AppInfo.swift:24:16: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
22 | let included: [IncludedResource]?
23 |
24 | public let id: String = UUID().uuidString
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'id' case to silence this warning
| `- note: make the property mutable instead
25 | public var name: String {
26 | id
[48/59] Compiling ASCKit Build.swift
[49/59] Compiling ASCKit BundleId.swift
[50/59] Compiling ASCKit ASCHeader.swift
[51/59] Compiling ASCKit ASCKit.swift
[52/59] Compiling ASCKit ASCPayload.swift
[53/59] Compiling ASCKit BetaTester.swift
[54/59] Compiling ASCKit BetaTesterInvitationResponse.swift
[55/59] Compiling ASCKit PagedItemLoader.swift
[56/59] Compiling ASCKit TypedId.swift
[57/59] Compiling ASCKit AccessibilityDeclaration.swift
[58/59] Compiling ASCKit AgeRatingDeclaration.swift
[59/59] Compiling ASCKit ApiKey.swift
Fetching https://github.com/blackjacx/Engine
[1/800] Fetching engine
Fetched https://github.com/blackjacx/Engine from cache (0.97s)
Computing version for https://github.com/blackjacx/Engine
Computed https://github.com/blackjacx/Engine at 0.3.0 (1.47s)
Fetching https://github.com/kishikawakatsumi/KeychainAccess
[1/4387] Fetching keychainaccess
Fetched https://github.com/kishikawakatsumi/KeychainAccess from cache (1.36s)
Computing version for https://github.com/kishikawakatsumi/KeychainAccess
Computed https://github.com/kishikawakatsumi/KeychainAccess at 4.2.2 (4.45s)
Creating working copy for https://github.com/kishikawakatsumi/KeychainAccess
Working copy of https://github.com/kishikawakatsumi/KeychainAccess resolved at 4.2.2
Creating working copy for https://github.com/blackjacx/Engine
Working copy of https://github.com/blackjacx/Engine resolved at 0.3.0
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64
[0/1] Planning build
Building for debugging...
[0/1] Write swift-version-2F0A5646E1D333AE.txt
[2/3] Emitting module KeychainAccess
[3/3] Compiling KeychainAccess Keychain.swift
[4/29] Emitting module Engine
[5/31] Compiling Engine Engine.swift
[6/31] Compiling Engine Bundle+Extensions.swift
[7/31] Compiling Engine FileManager+Extensions.swift
[8/31] Compiling Engine UserDefaults+PropertyWrapper.swift
[9/31] Compiling Engine UIColor+Extensions.swift
[10/31] Compiling Engine UIView+Extensions.swift
[11/31] Compiling Engine UIViewController+Extensions.swift
[12/31] Compiling Engine ProcessInfo+Extensions.swift
[13/31] Compiling Engine String+Extensions.swift
[14/31] Compiling Engine String+Random.swift
[15/31] Compiling Engine OutputType.swift
[16/31] Compiling Engine Service.swift
[17/31] Compiling Engine DataWrapper.swift
[18/31] Compiling Engine LoggableError.swift
[19/31] Compiling Engine Network.swift
[20/31] Compiling Engine NetworkError.swift
[21/31] Compiling Engine EmptyResponse.swift
[22/31] Compiling Engine Clamping.swift
[23/31] Compiling Engine Endpoint.swift
[24/31] Compiling Engine HTTPMethod.swift
[25/31] Compiling Engine Json.swift
[26/31] Compiling Engine JWTClaims.swift
[27/31] Compiling Engine JWTHeader.swift
[28/31] Compiling Engine Keychain.swift
[29/31] Compiling Engine URL+Extensions.swift
[30/31] Compiling Engine URLRequest+Extensions.swift
[31/31] Compiling Engine JWT.swift
[32/54] Compiling ASCKit ASCHeader.swift
[33/54] Compiling ASCKit ASCKit.swift
[34/54] Compiling ASCKit ASCPayload.swift
[35/56] Emitting module ASCKit
[36/56] Compiling ASCKit Constants.swift
[37/56] Compiling ASCKit Filter.swift
[38/56] Compiling ASCKit Model.swift
[39/56] Compiling ASCKit PagedItemLoader.swift
[40/56] Compiling ASCKit TypedId.swift
[41/56] Compiling ASCKit AccessibilityDeclaration.swift
[42/56] Compiling ASCKit PageableModel.swift
[43/56] Compiling ASCKit Relation.swift
[44/56] Compiling ASCKit Build.swift
[45/56] Compiling ASCKit BundleId.swift
[46/56] Compiling ASCKit AppStoreVersion.swift
[47/56] Compiling ASCKit BetaGroup.swift
[48/56] Compiling ASCKit BetaTester.swift
[49/56] Compiling ASCKit BetaTesterInvitationResponse.swift
[50/56] Compiling ASCKit App.swift
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/AppInfo.swift:24:16: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
22 | let included: [IncludedResource]?
23 |
24 | public let id: String = UUID().uuidString
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'id' case to silence this warning
| `- note: make the property mutable instead
25 | public var name: String {
26 | id
[51/56] Compiling ASCKit AppInfo.swift
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/AppInfo.swift:24:16: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
22 | let included: [IncludedResource]?
23 |
24 | public let id: String = UUID().uuidString
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'id' case to silence this warning
| `- note: make the property mutable instead
25 | public var name: String {
26 | id
[52/56] Compiling ASCKit AgeRatingDeclaration.swift
[53/56] Compiling ASCKit ApiKey.swift
[54/56] Compiling ASCKit ASCService.swift
[55/56] Compiling ASCKit AscEndpoint.swift
[56/56] Compiling ASCKit AscError.swift
Build complete! (3.70s)
Build complete.
{
"dependencies" : [
{
"identity" : "engine",
"requirement" : {
"range" : [
{
"lower_bound" : "0.3.0",
"upper_bound" : "1.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/blackjacx/Engine"
}
],
"manifest_display_name" : "ASCKit",
"name" : "ASCKit",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "macos",
"version" : "13.0"
},
{
"name" : "ios",
"version" : "15.0"
},
{
"name" : "tvos",
"version" : "15.0"
},
{
"name" : "watchos",
"version" : "8.0"
}
],
"products" : [
{
"name" : "ASCKit",
"targets" : [
"ASCKit"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "ASCKitTests",
"module_type" : "SwiftTarget",
"name" : "ASCKitTests",
"path" : "Tests/ASCKitTests",
"sources" : [
"ASCKitTests.swift"
],
"target_dependencies" : [
"ASCKit"
],
"type" : "test"
},
{
"c99name" : "ASCKit",
"module_type" : "SwiftTarget",
"name" : "ASCKit",
"path" : "Sources/ASCKit",
"product_dependencies" : [
"Engine"
],
"product_memberships" : [
"ASCKit"
],
"sources" : [
"ASCHeader.swift",
"ASCKit.swift",
"ASCPayload.swift",
"ASCService.swift",
"AscEndpoint.swift",
"AscError.swift",
"Constants.swift",
"Filter.swift",
"Model.swift",
"PagedItemLoader.swift",
"TypedId.swift",
"models/AccessibilityDeclaration.swift",
"models/AgeRatingDeclaration.swift",
"models/ApiKey.swift",
"models/App.swift",
"models/AppInfo.swift",
"models/AppStoreVersion.swift",
"models/BetaGroup.swift",
"models/BetaTester.swift",
"models/BetaTesterInvitationResponse.swift",
"models/Build.swift",
"models/BundleId.swift",
"models/PageableModel.swift",
"models/Relation.swift"
],
"type" : "library"
}
],
"tools_version" : "5.10"
}
Done.