Build Information
Successful build of ASCKit, reference develop (44d234
), with Swift 6.0 for macOS (SPM) on 19 Mar 2025 19:38:07 UTC.
Swift 6 data race errors: 20
Build Command
env DEVELOPER_DIR=/Applications/Xcode-16.2.0.app xcrun swift build --arch arm64
Build Log
========================================
RunAll
========================================
Builder version: 4.60.1
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/Blackjacx/ASCKit.git
Reference: develop
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/Blackjacx/ASCKit
* branch develop -> FETCH_HEAD
* [new branch] develop -> origin/develop
HEAD is now at 44d2340 Merge branch 'release/0.4.0' into develop
Cloned https://github.com/Blackjacx/ASCKit.git
Revision (git rev-parse @):
44d23403d59fe6158de73f3e50795c92d7fc0279
SPI manifest file found: $PWD/.spi.yml
SUCCESS checkout https://github.com/Blackjacx/ASCKit.git at develop
Fetching https://github.com/blackjacx/Engine
Fetching https://github.com/jrendel/SwiftKeychainWrapper
[1/687] Fetching engine
[221/2353] Fetching engine, swiftkeychainwrapper
Fetched https://github.com/blackjacx/Engine from cache (0.90s)
Fetched https://github.com/jrendel/SwiftKeychainWrapper from cache (0.90s)
Creating working copy for https://github.com/jrendel/SwiftKeychainWrapper
Working copy of https://github.com/jrendel/SwiftKeychainWrapper resolved at 4.0.1
Creating working copy for https://github.com/blackjacx/Engine
Working copy of https://github.com/blackjacx/Engine resolved at 0.1.0
========================================
ResolveProductDependencies
========================================
Resolving dependencies ...
{
"identity": ".resolve-product-dependencies",
"name": "resolve-dependencies",
"url": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
"version": "unspecified",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
"dependencies": [
{
"identity": "asckit",
"name": "ASCKit",
"url": "https://github.com/Blackjacx/ASCKit.git",
"version": "unspecified",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/ASCKit",
"dependencies": [
{
"identity": "engine",
"name": "Engine",
"url": "https://github.com/blackjacx/Engine",
"version": "0.1.0",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/Engine",
"dependencies": [
{
"identity": "swiftkeychainwrapper",
"name": "SwiftKeychainWrapper",
"url": "https://github.com/jrendel/SwiftKeychainWrapper",
"version": "4.0.1",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/SwiftKeychainWrapper",
"dependencies": [
]
}
]
}
]
}
]
}
Fetching https://github.com/Blackjacx/ASCKit.git
[1/563] Fetching asckit
Fetched https://github.com/Blackjacx/ASCKit.git from cache (0.69s)
Fetching https://github.com/blackjacx/Engine from cache
Fetched https://github.com/blackjacx/Engine from cache (0.48s)
Computing version for https://github.com/blackjacx/Engine
Computed https://github.com/blackjacx/Engine at 0.1.0 (0.40s)
Fetching https://github.com/jrendel/SwiftKeychainWrapper from cache
Fetched https://github.com/jrendel/SwiftKeychainWrapper from cache (0.45s)
Computing version for https://github.com/jrendel/SwiftKeychainWrapper
Computed https://github.com/jrendel/SwiftKeychainWrapper at 4.0.1 (0.53s)
Creating working copy for https://github.com/blackjacx/Engine
Working copy of https://github.com/blackjacx/Engine resolved at 0.1.0
Creating working copy for https://github.com/jrendel/SwiftKeychainWrapper
Working copy of https://github.com/jrendel/SwiftKeychainWrapper resolved at 4.0.1
Creating working copy for https://github.com/Blackjacx/ASCKit.git
Working copy of https://github.com/Blackjacx/ASCKit.git resolved at develop (44d2340)
warning: '.resolve-product-dependencies': dependency 'asckit' is not used by any target
Found 1 product dependencies
- Engine
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.0
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.1.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",
"models/ApiKey.swift",
"models/App.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.2.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-5BDAB9E9C0126B9D.txt
[5/8] Compiling SwiftKeychainWrapper KeychainItemAccessibility.swift
[6/8] Compiling SwiftKeychainWrapper KeychainWrapper.swift
[7/8] Emitting module SwiftKeychainWrapper
[8/8] Compiling SwiftKeychainWrapper KeychainWrapperSubscript.swift
[9/33] Emitting module Engine
[10/35] Compiling Engine Engine.swift
[11/35] Compiling Engine Bundle+Extensions.swift
[12/35] Compiling Engine FileManager+Extensions.swift
[13/35] Compiling Engine UIView+Extensions.swift
[14/35] Compiling Engine UIViewController+Extensions.swift
[15/35] Compiling Engine Service.swift
[16/35] Compiling Engine DataWrapper.swift
[17/35] Compiling Engine ProcessInfo+Extensions.swift
[18/35] Compiling Engine String+Extensions.swift
[19/35] Compiling Engine String+Random.swift
[20/35] Compiling Engine UserDefaults+PropertyWrapper.swift
[21/35] Compiling Engine UIColor+Extensions.swift
[22/35] Compiling Engine Endpoint.swift
[23/35] Compiling Engine HTTPMethod.swift
[24/35] Compiling Engine Json.swift
[25/35] Compiling Engine LoggableError.swift
[26/35] Compiling Engine Network.swift
[27/35] Compiling Engine NetworkError.swift
[28/35] Compiling Engine JWTClaims.swift
[29/35] Compiling Engine JWTHeader.swift
[30/35] Compiling Engine Keychain.swift
[31/35] Compiling Engine EmptyResponse.swift
[32/35] Compiling Engine Clamping.swift
[33/35] Compiling Engine URL+Extensions.swift
[34/35] Compiling Engine URLRequest+Extensions.swift
[35/35] Compiling Engine JWT.swift
[36/54] Compiling ASCKit BetaTester.swift
[37/54] Compiling ASCKit BetaTesterInvitationResponse.swift
error: emit-module command failed with exit code 1 (use -v to see invocation)
[38/56] Compiling ASCKit ApiKey.swift
[39/56] Compiling ASCKit App.swift
[40/56] Compiling ASCKit Model.swift
[41/56] Compiling ASCKit PagedItemLoader.swift
[42/56] Compiling ASCKit Constants.swift
[43/56] Compiling ASCKit Filter.swift
[44/56] Compiling ASCKit ASCHeader.swift
[45/56] Compiling ASCKit ASCKit.swift
[46/56] Compiling ASCKit Build.swift
[47/56] Compiling ASCKit BundleId.swift
[48/56] Compiling ASCKit AscEndpoint.swift
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/AscEndpoint.swift:142: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
140 |
141 | /// Used o specify the id of an already registered key to use
142 | 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: annotate 'apiKeyId' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
143 |
144 | var host: 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: annotate 'specifiedKeyId' with '@MainActor' if property should only be accessed from the main actor
| `- 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/AscEndpoint.swift:118: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
116 | switch self {
117 | case .url, .list:
118 | 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
119 |
120 | 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:122: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
120 | guard (try? directResult.get()) != nil else {
121 | // Decode data-wrapped result, e.g. [BetaTester]
122 | 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
123 | }
124 |
/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:130: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
128 | case .delete:
129 | // Decode result directly since we always use EmptyResponse here
130 | 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
131 | }
132 | }
/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:289:18: 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
287 |
288 | func jsonDecode<T: Decodable>(_ type: T.Type, from data: Data) throws -> T {
289 | 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
290 | }
291 | }
/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 | }
/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
[49/56] Compiling ASCKit AscError.swift
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/AscEndpoint.swift:142: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
140 |
141 | /// Used o specify the id of an already registered key to use
142 | 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: annotate 'apiKeyId' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
143 |
144 | var host: 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: annotate 'specifiedKeyId' with '@MainActor' if property should only be accessed from the main actor
| `- 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/AscEndpoint.swift:118: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
116 | switch self {
117 | case .url, .list:
118 | 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
119 |
120 | 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:122: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
120 | guard (try? directResult.get()) != nil else {
121 | // Decode data-wrapped result, e.g. [BetaTester]
122 | 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
123 | }
124 |
/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:130: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
128 | case .delete:
129 | // Decode result directly since we always use EmptyResponse here
130 | 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
131 | }
132 | }
/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:289:18: 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
287 |
288 | func jsonDecode<T: Decodable>(_ type: T.Type, from data: Data) throws -> T {
289 | 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
290 | }
291 | }
/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 | }
/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
[50/56] Compiling ASCKit AppStoreVersion.swift
[51/56] Compiling ASCKit BetaGroup.swift
[52/56] 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 struct 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:9:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Engine'
7 |
8 | import Foundation
9 | import Engine
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Engine'
10 |
11 | /// The central class to deal with the App Store Connect API. This object must
:
15 | public struct ASCService {
16 |
17 | static let network = Network.shared
| |- note: annotate 'network' with '@MainActor' if property should only be accessed from the main actor
| `- 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: annotate 'apiKeys' with '@MainActor' if property should only be accessed from the main actor
| `- 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: annotate 'specifiedKeyId' with '@MainActor' if property should only be accessed from the main actor
| `- 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:140:15: warning: type 'App' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
138 | var errors: [Error] = []
139 |
140 | 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
141 |
142 | for id in iterableAppIds {
/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:140:15: warning: type 'AppStoreVersion' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
138 | var errors: [Error] = []
139 |
140 | 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
141 |
142 | for id in iterableAppIds {
/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:140:65: warning: type 'App' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
138 | var errors: [Error] = []
139 |
140 | 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
141 |
142 | for id in iterableAppIds {
/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:140:65: warning: type 'AppStoreVersion' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
138 | var errors: [Error] = []
139 |
140 | 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
141 |
142 | for id in iterableAppIds {
/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:146:23: warning: type 'App' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
144 | let endpoint = AscEndpoint.listAppStoreVersions(appId: id, filters: filters, limit: limit)
145 |
146 | group.addTask {
| `- warning: type 'App' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
147 | do {
148 | return .success((app, versions: try await network.request(endpoint: endpoint)))
/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:146:23: warning: type 'AppStoreVersion' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
144 | let endpoint = AscEndpoint.listAppStoreVersions(appId: id, filters: filters, limit: limit)
145 |
146 | group.addTask {
| `- warning: type 'AppStoreVersion' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
147 | do {
148 | return .success((app, versions: try await network.request(endpoint: endpoint)))
/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:180:15: warning: type 'BetaGroup' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
178 | var errors: [Error] = []
179 |
180 | await withTaskGroup(of: Result<ResultType, Error>.self) { group in
| `- warning: type 'BetaGroup' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
181 | for tester in betaTesters {
182 | let endpoint = AscEndpoint.listAllBetaGroupsForTester(id: tester.id,
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/BetaGroup.swift:10:15: note: consider making struct 'BetaGroup' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct BetaGroup: IdentifiableModel {
| `- note: consider making struct 'BetaGroup' 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:180:65: warning: type 'BetaGroup' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
178 | var errors: [Error] = []
179 |
180 | await withTaskGroup(of: Result<ResultType, Error>.self) { group in
| `- warning: type 'BetaGroup' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
181 | for tester in betaTesters {
182 | let endpoint = AscEndpoint.listAllBetaGroupsForTester(id: tester.id,
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/BetaGroup.swift:10:15: note: consider making struct 'BetaGroup' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct BetaGroup: IdentifiableModel {
| `- note: consider making struct 'BetaGroup' 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:186:23: warning: type 'BetaGroup' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
184 | limit: limit)
185 |
186 | group.addTask {
| `- warning: type 'BetaGroup' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
187 | do {
188 | let result: ResultType = try await network.request(endpoint: endpoint)
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/BetaGroup.swift:10:15: note: consider making struct 'BetaGroup' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct BetaGroup: IdentifiableModel {
| `- note: consider making struct 'BetaGroup' 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:221:44: error: type of expression is ambiguous without a type annotation
219 | }
220 |
221 | guard let tester: BetaTester = try await list(filters: [Filter(key: BetaTester.FilterKey.email, value: email)]).first else {
| `- error: type of expression is ambiguous without a type annotation
222 | throw AscError.noUserFound(email)
223 | }
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:221:44: warning: no 'async' operations occur within 'await' expression
219 | }
220 |
221 | guard let tester: BetaTester = try await list(filters: [Filter(key: BetaTester.FilterKey.email, value: email)]).first else {
| `- warning: no 'async' operations occur within 'await' expression
222 | throw AscError.noUserFound(email)
223 | }
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:221:40: warning: no calls to throwing functions occur within 'try' expression
219 | }
220 |
221 | guard let tester: BetaTester = try await list(filters: [Filter(key: BetaTester.FilterKey.email, value: email)]).first else {
| `- warning: no calls to throwing functions occur within 'try' expression
222 | throw AscError.noUserFound(email)
223 | }
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:271:15: warning: type 'ResultType' (aka 'BetaTester') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
269 | var errors: [Error] = []
270 |
271 | 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
272 | for betaGroup in betaGroups {
273 | let endpoint = AscEndpoint.addBetaTester(email: email, firstName: first, lastName: last, groupId: betaGroup.id)
/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:271:65: warning: type 'ResultType' (aka 'BetaTester') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
269 | var errors: [Error] = []
270 |
271 | 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
272 | for betaGroup in betaGroups {
273 | let endpoint = AscEndpoint.addBetaTester(email: email, firstName: first, lastName: last, groupId: betaGroup.id)
/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:275:23: warning: type 'ResultType' (aka 'BetaTester') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
273 | let endpoint = AscEndpoint.addBetaTester(email: email, firstName: first, lastName: last, groupId: betaGroup.id)
274 |
275 | group.addTask {
| `- warning: type 'ResultType' (aka 'BetaTester') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
276 | do {
277 | let result: ResultType = try await network.request(endpoint: endpoint)
/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:406:15: warning: type 'ResultType' (aka 'Build') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
404 | var errors: [Error] = []
405 |
406 | await withTaskGroup(of: Result<ResultType, Error>.self) { group in
| `- warning: type 'ResultType' (aka 'Build') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
407 | for build in nonExpiredBuilds {
408 | let endpoint = AscEndpoint.expireBuild(build)
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/Build.swift:10:15: note: consider making struct 'Build' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct Build: IdentifiableModel {
| `- note: consider making struct 'Build' 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:406:65: warning: type 'ResultType' (aka 'Build') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
404 | var errors: [Error] = []
405 |
406 | await withTaskGroup(of: Result<ResultType, Error>.self) { group in
| `- warning: type 'ResultType' (aka 'Build') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
407 | for build in nonExpiredBuilds {
408 | let endpoint = AscEndpoint.expireBuild(build)
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/Build.swift:10:15: note: consider making struct 'Build' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct Build: IdentifiableModel {
| `- note: consider making struct 'Build' 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:410:23: warning: type 'ResultType' (aka 'Build') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
408 | let endpoint = AscEndpoint.expireBuild(build)
409 |
410 | group.addTask {
| `- warning: type 'ResultType' (aka 'Build') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
411 | do {
412 | let result: ResultType = try await network.request(endpoint: endpoint)
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/Build.swift:10:15: note: consider making struct 'Build' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct Build: IdentifiableModel {
| `- note: consider making struct 'Build' 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:429:22: warning: In case of error attach successful builds to the error so the user knows that something HAS been expired.
427 |
428 | if !errors.isEmpty {
429 | #warning("In case of error attach successful builds to the error so the user knows that something HAS been expired.")
| `- warning: In case of error attach successful builds to the error so the user knows that something HAS been expired.
430 | throw AscError.requestFailed(underlyingErrors: errors)
431 | }
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/AscEndpoint.swift:142: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
140 |
141 | /// Used o specify the id of an already registered key to use
142 | 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: annotate 'apiKeyId' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
143 |
144 | 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 | }
/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
[53/56] Compiling ASCKit ASCPayload.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 struct 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:9:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Engine'
7 |
8 | import Foundation
9 | import Engine
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Engine'
10 |
11 | /// The central class to deal with the App Store Connect API. This object must
:
15 | public struct ASCService {
16 |
17 | static let network = Network.shared
| |- note: annotate 'network' with '@MainActor' if property should only be accessed from the main actor
| `- 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: annotate 'apiKeys' with '@MainActor' if property should only be accessed from the main actor
| `- 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: annotate 'specifiedKeyId' with '@MainActor' if property should only be accessed from the main actor
| `- 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:140:15: warning: type 'App' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
138 | var errors: [Error] = []
139 |
140 | 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
141 |
142 | for id in iterableAppIds {
/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:140:15: warning: type 'AppStoreVersion' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
138 | var errors: [Error] = []
139 |
140 | 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
141 |
142 | for id in iterableAppIds {
/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:140:65: warning: type 'App' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
138 | var errors: [Error] = []
139 |
140 | 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
141 |
142 | for id in iterableAppIds {
/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:140:65: warning: type 'AppStoreVersion' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
138 | var errors: [Error] = []
139 |
140 | 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
141 |
142 | for id in iterableAppIds {
/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:146:23: warning: type 'App' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
144 | let endpoint = AscEndpoint.listAppStoreVersions(appId: id, filters: filters, limit: limit)
145 |
146 | group.addTask {
| `- warning: type 'App' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
147 | do {
148 | return .success((app, versions: try await network.request(endpoint: endpoint)))
/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:146:23: warning: type 'AppStoreVersion' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
144 | let endpoint = AscEndpoint.listAppStoreVersions(appId: id, filters: filters, limit: limit)
145 |
146 | group.addTask {
| `- warning: type 'AppStoreVersion' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
147 | do {
148 | return .success((app, versions: try await network.request(endpoint: endpoint)))
/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:180:15: warning: type 'BetaGroup' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
178 | var errors: [Error] = []
179 |
180 | await withTaskGroup(of: Result<ResultType, Error>.self) { group in
| `- warning: type 'BetaGroup' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
181 | for tester in betaTesters {
182 | let endpoint = AscEndpoint.listAllBetaGroupsForTester(id: tester.id,
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/BetaGroup.swift:10:15: note: consider making struct 'BetaGroup' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct BetaGroup: IdentifiableModel {
| `- note: consider making struct 'BetaGroup' 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:180:65: warning: type 'BetaGroup' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
178 | var errors: [Error] = []
179 |
180 | await withTaskGroup(of: Result<ResultType, Error>.self) { group in
| `- warning: type 'BetaGroup' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
181 | for tester in betaTesters {
182 | let endpoint = AscEndpoint.listAllBetaGroupsForTester(id: tester.id,
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/BetaGroup.swift:10:15: note: consider making struct 'BetaGroup' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct BetaGroup: IdentifiableModel {
| `- note: consider making struct 'BetaGroup' 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:186:23: warning: type 'BetaGroup' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
184 | limit: limit)
185 |
186 | group.addTask {
| `- warning: type 'BetaGroup' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
187 | do {
188 | let result: ResultType = try await network.request(endpoint: endpoint)
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/BetaGroup.swift:10:15: note: consider making struct 'BetaGroup' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct BetaGroup: IdentifiableModel {
| `- note: consider making struct 'BetaGroup' 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:221:44: error: type of expression is ambiguous without a type annotation
219 | }
220 |
221 | guard let tester: BetaTester = try await list(filters: [Filter(key: BetaTester.FilterKey.email, value: email)]).first else {
| `- error: type of expression is ambiguous without a type annotation
222 | throw AscError.noUserFound(email)
223 | }
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:221:44: warning: no 'async' operations occur within 'await' expression
219 | }
220 |
221 | guard let tester: BetaTester = try await list(filters: [Filter(key: BetaTester.FilterKey.email, value: email)]).first else {
| `- warning: no 'async' operations occur within 'await' expression
222 | throw AscError.noUserFound(email)
223 | }
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:221:40: warning: no calls to throwing functions occur within 'try' expression
219 | }
220 |
221 | guard let tester: BetaTester = try await list(filters: [Filter(key: BetaTester.FilterKey.email, value: email)]).first else {
| `- warning: no calls to throwing functions occur within 'try' expression
222 | throw AscError.noUserFound(email)
223 | }
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:271:15: warning: type 'ResultType' (aka 'BetaTester') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
269 | var errors: [Error] = []
270 |
271 | 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
272 | for betaGroup in betaGroups {
273 | let endpoint = AscEndpoint.addBetaTester(email: email, firstName: first, lastName: last, groupId: betaGroup.id)
/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:271:65: warning: type 'ResultType' (aka 'BetaTester') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
269 | var errors: [Error] = []
270 |
271 | 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
272 | for betaGroup in betaGroups {
273 | let endpoint = AscEndpoint.addBetaTester(email: email, firstName: first, lastName: last, groupId: betaGroup.id)
/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:275:23: warning: type 'ResultType' (aka 'BetaTester') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
273 | let endpoint = AscEndpoint.addBetaTester(email: email, firstName: first, lastName: last, groupId: betaGroup.id)
274 |
275 | group.addTask {
| `- warning: type 'ResultType' (aka 'BetaTester') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
276 | do {
277 | let result: ResultType = try await network.request(endpoint: endpoint)
/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:406:15: warning: type 'ResultType' (aka 'Build') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
404 | var errors: [Error] = []
405 |
406 | await withTaskGroup(of: Result<ResultType, Error>.self) { group in
| `- warning: type 'ResultType' (aka 'Build') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
407 | for build in nonExpiredBuilds {
408 | let endpoint = AscEndpoint.expireBuild(build)
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/Build.swift:10:15: note: consider making struct 'Build' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct Build: IdentifiableModel {
| `- note: consider making struct 'Build' 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:406:65: warning: type 'ResultType' (aka 'Build') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
404 | var errors: [Error] = []
405 |
406 | await withTaskGroup(of: Result<ResultType, Error>.self) { group in
| `- warning: type 'ResultType' (aka 'Build') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
407 | for build in nonExpiredBuilds {
408 | let endpoint = AscEndpoint.expireBuild(build)
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/Build.swift:10:15: note: consider making struct 'Build' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct Build: IdentifiableModel {
| `- note: consider making struct 'Build' 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:410:23: warning: type 'ResultType' (aka 'Build') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
408 | let endpoint = AscEndpoint.expireBuild(build)
409 |
410 | group.addTask {
| `- warning: type 'ResultType' (aka 'Build') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
411 | do {
412 | let result: ResultType = try await network.request(endpoint: endpoint)
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/Build.swift:10:15: note: consider making struct 'Build' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct Build: IdentifiableModel {
| `- note: consider making struct 'Build' 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:429:22: warning: In case of error attach successful builds to the error so the user knows that something HAS been expired.
427 |
428 | if !errors.isEmpty {
429 | #warning("In case of error attach successful builds to the error so the user knows that something HAS been expired.")
| `- warning: In case of error attach successful builds to the error so the user knows that something HAS been expired.
430 | throw AscError.requestFailed(underlyingErrors: errors)
431 | }
[54/56] 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 struct 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:9:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Engine'
7 |
8 | import Foundation
9 | import Engine
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Engine'
10 |
11 | /// The central class to deal with the App Store Connect API. This object must
:
15 | public struct ASCService {
16 |
17 | static let network = Network.shared
| |- note: annotate 'network' with '@MainActor' if property should only be accessed from the main actor
| `- 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: annotate 'apiKeys' with '@MainActor' if property should only be accessed from the main actor
| `- 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: annotate 'specifiedKeyId' with '@MainActor' if property should only be accessed from the main actor
| `- 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:140:15: warning: type 'App' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
138 | var errors: [Error] = []
139 |
140 | 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
141 |
142 | for id in iterableAppIds {
/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:140:15: warning: type 'AppStoreVersion' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
138 | var errors: [Error] = []
139 |
140 | 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
141 |
142 | for id in iterableAppIds {
/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:140:65: warning: type 'App' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
138 | var errors: [Error] = []
139 |
140 | 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
141 |
142 | for id in iterableAppIds {
/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:140:65: warning: type 'AppStoreVersion' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
138 | var errors: [Error] = []
139 |
140 | 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
141 |
142 | for id in iterableAppIds {
/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:146:23: warning: type 'App' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
144 | let endpoint = AscEndpoint.listAppStoreVersions(appId: id, filters: filters, limit: limit)
145 |
146 | group.addTask {
| `- warning: type 'App' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
147 | do {
148 | return .success((app, versions: try await network.request(endpoint: endpoint)))
/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:146:23: warning: type 'AppStoreVersion' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
144 | let endpoint = AscEndpoint.listAppStoreVersions(appId: id, filters: filters, limit: limit)
145 |
146 | group.addTask {
| `- warning: type 'AppStoreVersion' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
147 | do {
148 | return .success((app, versions: try await network.request(endpoint: endpoint)))
/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:180:15: warning: type 'BetaGroup' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
178 | var errors: [Error] = []
179 |
180 | await withTaskGroup(of: Result<ResultType, Error>.self) { group in
| `- warning: type 'BetaGroup' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
181 | for tester in betaTesters {
182 | let endpoint = AscEndpoint.listAllBetaGroupsForTester(id: tester.id,
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/BetaGroup.swift:10:15: note: consider making struct 'BetaGroup' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct BetaGroup: IdentifiableModel {
| `- note: consider making struct 'BetaGroup' 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:180:65: warning: type 'BetaGroup' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
178 | var errors: [Error] = []
179 |
180 | await withTaskGroup(of: Result<ResultType, Error>.self) { group in
| `- warning: type 'BetaGroup' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
181 | for tester in betaTesters {
182 | let endpoint = AscEndpoint.listAllBetaGroupsForTester(id: tester.id,
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/BetaGroup.swift:10:15: note: consider making struct 'BetaGroup' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct BetaGroup: IdentifiableModel {
| `- note: consider making struct 'BetaGroup' 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:186:23: warning: type 'BetaGroup' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
184 | limit: limit)
185 |
186 | group.addTask {
| `- warning: type 'BetaGroup' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
187 | do {
188 | let result: ResultType = try await network.request(endpoint: endpoint)
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/BetaGroup.swift:10:15: note: consider making struct 'BetaGroup' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct BetaGroup: IdentifiableModel {
| `- note: consider making struct 'BetaGroup' 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:221:44: error: type of expression is ambiguous without a type annotation
219 | }
220 |
221 | guard let tester: BetaTester = try await list(filters: [Filter(key: BetaTester.FilterKey.email, value: email)]).first else {
| `- error: type of expression is ambiguous without a type annotation
222 | throw AscError.noUserFound(email)
223 | }
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:221:44: warning: no 'async' operations occur within 'await' expression
219 | }
220 |
221 | guard let tester: BetaTester = try await list(filters: [Filter(key: BetaTester.FilterKey.email, value: email)]).first else {
| `- warning: no 'async' operations occur within 'await' expression
222 | throw AscError.noUserFound(email)
223 | }
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:221:40: warning: no calls to throwing functions occur within 'try' expression
219 | }
220 |
221 | guard let tester: BetaTester = try await list(filters: [Filter(key: BetaTester.FilterKey.email, value: email)]).first else {
| `- warning: no calls to throwing functions occur within 'try' expression
222 | throw AscError.noUserFound(email)
223 | }
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:271:15: warning: type 'ResultType' (aka 'BetaTester') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
269 | var errors: [Error] = []
270 |
271 | 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
272 | for betaGroup in betaGroups {
273 | let endpoint = AscEndpoint.addBetaTester(email: email, firstName: first, lastName: last, groupId: betaGroup.id)
/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:271:65: warning: type 'ResultType' (aka 'BetaTester') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
269 | var errors: [Error] = []
270 |
271 | 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
272 | for betaGroup in betaGroups {
273 | let endpoint = AscEndpoint.addBetaTester(email: email, firstName: first, lastName: last, groupId: betaGroup.id)
/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:275:23: warning: type 'ResultType' (aka 'BetaTester') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
273 | let endpoint = AscEndpoint.addBetaTester(email: email, firstName: first, lastName: last, groupId: betaGroup.id)
274 |
275 | group.addTask {
| `- warning: type 'ResultType' (aka 'BetaTester') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
276 | do {
277 | let result: ResultType = try await network.request(endpoint: endpoint)
/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:406:15: warning: type 'ResultType' (aka 'Build') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
404 | var errors: [Error] = []
405 |
406 | await withTaskGroup(of: Result<ResultType, Error>.self) { group in
| `- warning: type 'ResultType' (aka 'Build') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
407 | for build in nonExpiredBuilds {
408 | let endpoint = AscEndpoint.expireBuild(build)
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/Build.swift:10:15: note: consider making struct 'Build' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct Build: IdentifiableModel {
| `- note: consider making struct 'Build' 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:406:65: warning: type 'ResultType' (aka 'Build') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
404 | var errors: [Error] = []
405 |
406 | await withTaskGroup(of: Result<ResultType, Error>.self) { group in
| `- warning: type 'ResultType' (aka 'Build') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
407 | for build in nonExpiredBuilds {
408 | let endpoint = AscEndpoint.expireBuild(build)
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/Build.swift:10:15: note: consider making struct 'Build' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct Build: IdentifiableModel {
| `- note: consider making struct 'Build' 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:410:23: warning: type 'ResultType' (aka 'Build') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
408 | let endpoint = AscEndpoint.expireBuild(build)
409 |
410 | group.addTask {
| `- warning: type 'ResultType' (aka 'Build') does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
411 | do {
412 | let result: ResultType = try await network.request(endpoint: endpoint)
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/models/Build.swift:10:15: note: consider making struct 'Build' conform to the 'Sendable' protocol
8 | import Foundation
9 |
10 | public struct Build: IdentifiableModel {
| `- note: consider making struct 'Build' 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:429:22: warning: In case of error attach successful builds to the error so the user knows that something HAS been expired.
427 |
428 | if !errors.isEmpty {
429 | #warning("In case of error attach successful builds to the error so the user knows that something HAS been expired.")
| `- warning: In case of error attach successful builds to the error so the user knows that something HAS been expired.
430 | throw AscError.requestFailed(underlyingErrors: errors)
431 | }
[55/56] Compiling ASCKit PageableModel.swift
[56/56] Compiling ASCKit Relation.swift
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.2.0.app xcrun swift build --arch arm64
[0/1] Planning build
Building for debugging...
[0/1] Write swift-version-5BDAB9E9C0126B9D.txt
[2/5] Compiling SwiftKeychainWrapper KeychainWrapperSubscript.swift
[3/5] Compiling SwiftKeychainWrapper KeychainItemAccessibility.swift
[4/5] Emitting module SwiftKeychainWrapper
[5/5] Compiling SwiftKeychainWrapper KeychainWrapper.swift
[6/30] Emitting module Engine
[7/32] Compiling Engine Service.swift
[8/32] Compiling Engine DataWrapper.swift
[9/32] Compiling Engine Engine.swift
[10/32] Compiling Engine Bundle+Extensions.swift
[11/32] Compiling Engine FileManager+Extensions.swift
[12/32] Compiling Engine JWTClaims.swift
[13/32] Compiling Engine JWTHeader.swift
[14/32] Compiling Engine Keychain.swift
[15/32] Compiling Engine URL+Extensions.swift
[16/32] Compiling Engine URLRequest+Extensions.swift
[17/32] Compiling Engine JWT.swift
[18/32] Compiling Engine ProcessInfo+Extensions.swift
[19/32] Compiling Engine String+Extensions.swift
[20/32] Compiling Engine String+Random.swift
[21/32] Compiling Engine UserDefaults+PropertyWrapper.swift
[22/32] Compiling Engine UIColor+Extensions.swift
[23/32] Compiling Engine Endpoint.swift
[24/32] Compiling Engine HTTPMethod.swift
[25/32] Compiling Engine Json.swift
[26/32] Compiling Engine EmptyResponse.swift
[27/32] Compiling Engine Clamping.swift
[28/32] Compiling Engine LoggableError.swift
[29/32] Compiling Engine Network.swift
[30/32] Compiling Engine NetworkError.swift
[31/32] Compiling Engine UIView+Extensions.swift
[32/32] Compiling Engine UIViewController+Extensions.swift
[33/51] Compiling ASCKit BetaTester.swift
[34/51] Compiling ASCKit BetaTesterInvitationResponse.swift
[35/53] Compiling ASCKit AppStoreVersion.swift
[36/53] Compiling ASCKit BetaGroup.swift
[37/53] Compiling ASCKit Constants.swift
[38/53] Compiling ASCKit Filter.swift
[39/53] Compiling ASCKit ApiKey.swift
[40/53] Compiling ASCKit App.swift
[41/53] Compiling ASCKit AscEndpoint.swift
[42/53] Compiling ASCKit AscError.swift
[43/53] Compiling ASCKit Model.swift
[44/53] Compiling ASCKit PagedItemLoader.swift
[45/53] Compiling ASCKit Build.swift
[46/53] Compiling ASCKit BundleId.swift
[47/53] Compiling ASCKit ASCHeader.swift
[48/53] Compiling ASCKit ASCKit.swift
[49/53] Emitting module ASCKit
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:429:22: warning: In case of error attach successful builds to the error so the user knows that something HAS been expired.
427 |
428 | if !errors.isEmpty {
429 | #warning("In case of error attach successful builds to the error so the user knows that something HAS been expired.")
| `- warning: In case of error attach successful builds to the error so the user knows that something HAS been expired.
430 | throw AscError.requestFailed(underlyingErrors: errors)
431 | }
[50/53] Compiling ASCKit ASCPayload.swift
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:429:22: warning: In case of error attach successful builds to the error so the user knows that something HAS been expired.
427 |
428 | if !errors.isEmpty {
429 | #warning("In case of error attach successful builds to the error so the user knows that something HAS been expired.")
| `- warning: In case of error attach successful builds to the error so the user knows that something HAS been expired.
430 | throw AscError.requestFailed(underlyingErrors: errors)
431 | }
[51/53] Compiling ASCKit ASCService.swift
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:429:22: warning: In case of error attach successful builds to the error so the user knows that something HAS been expired.
427 |
428 | if !errors.isEmpty {
429 | #warning("In case of error attach successful builds to the error so the user knows that something HAS been expired.")
| `- warning: In case of error attach successful builds to the error so the user knows that something HAS been expired.
430 | throw AscError.requestFailed(underlyingErrors: errors)
431 | }
[52/53] Compiling ASCKit PageableModel.swift
[53/53] Compiling ASCKit Relation.swift
Build complete! (3.50s)
Build complete.
{
"dependencies" : [
{
"identity" : "engine",
"requirement" : {
"range" : [
{
"lower_bound" : "0.1.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",
"models/ApiKey.swift",
"models/App.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"
}
✅ Doc result (pending) reported
========================================
GenerateDocs
========================================
Generating docs at path: $PWD/.docs/blackjacx/asckit/develop
Repository: Blackjacx/ASCKit
Swift version used: 6.0
Target: ASCKit
Extracting symbol information for 'ASCKit'...
Finished extracting symbol information for 'ASCKit'. (2.37s)
Building documentation for 'ASCKit'...
Finished building documentation for 'ASCKit' (0.48s)
Generated documentation archive at:
/Users/admin/builder/spi-builder-workspace/.docs/blackjacx/asckit/develop
Fetching https://github.com/swiftlang/swift-docc-plugin
Updating https://github.com/blackjacx/Engine
Updated https://github.com/blackjacx/Engine (0.42s)
[1/2050] Fetching swift-docc-plugin
Updating https://github.com/jrendel/SwiftKeychainWrapper
Fetched https://github.com/swiftlang/swift-docc-plugin from cache (1.24s)
Computing version for https://github.com/blackjacx/Engine
Computed https://github.com/blackjacx/Engine at 0.1.0 (0.42s)
Updated https://github.com/jrendel/SwiftKeychainWrapper (0.46s)
Computing version for https://github.com/jrendel/SwiftKeychainWrapper
Computed https://github.com/jrendel/SwiftKeychainWrapper at 4.0.1 (0.53s)
Computing version for https://github.com/swiftlang/swift-docc-plugin
Computed https://github.com/swiftlang/swift-docc-plugin at 1.4.3 (2.43s)
Fetching https://github.com/swiftlang/swift-docc-symbolkit
[1/3342] Fetching swift-docc-symbolkit
Fetched https://github.com/swiftlang/swift-docc-symbolkit from cache (1.26s)
Computing version for https://github.com/swiftlang/swift-docc-symbolkit
Computed https://github.com/swiftlang/swift-docc-symbolkit at 1.0.0 (0.56s)
Creating working copy for https://github.com/swiftlang/swift-docc-plugin
Working copy of https://github.com/swiftlang/swift-docc-plugin resolved at 1.4.3
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
Building for debugging...
[0/8] Write sources
[2/8] Write snippet-extract-tool-entitlement.plist
[4/8] Write swift-version-5BDAB9E9C0126B9D.txt
[6/53] Emitting module SymbolKit
[7/57] Compiling SymbolKit Mixin+Equals.swift
[8/57] Compiling SymbolKit Mixin+Hash.swift
[9/57] Compiling SymbolKit Mixin.swift
[10/57] Compiling SymbolKit LineList.swift
[11/57] Compiling SymbolKit Position.swift
[12/57] Compiling SymbolKit SemanticVersion.swift
[13/57] Compiling SymbolKit AccessControl.swift
[14/57] Compiling SymbolKit Availability.swift
[15/57] Compiling SymbolKit AvailabilityItem.swift
[16/57] Compiling SymbolKit Domain.swift
[17/57] Compiling SymbolKit Names.swift
[18/57] Compiling SymbolKit SPI.swift
[19/57] Compiling SymbolKit Snippet.swift
[20/57] Compiling SymbolKit Extension.swift
[21/57] Compiling SymbolKit Symbol.swift
[22/57] Compiling SymbolKit SymbolKind.swift
[23/57] Compiling SymbolKit SymbolGraph.swift
[24/57] Compiling SymbolKit GraphCollector.swift
[25/57] Compiling Snippets Snippet.swift
[26/57] Compiling Snippets SnippetParser.swift
[27/57] Emitting module Snippets
[28/57] Compiling SymbolKit SourceRange.swift
[29/57] Compiling SymbolKit Metadata.swift
[30/57] Compiling SymbolKit Module.swift
[31/57] Compiling SymbolKit OperatingSystem.swift
[32/57] Compiling SymbolKit Platform.swift
[33/57] Compiling SymbolKit DeclarationFragments.swift
[34/57] Compiling SymbolKit Fragment.swift
[35/57] Compiling SymbolKit FragmentKind.swift
[36/57] Compiling SymbolKit FunctionParameter.swift
[37/57] Compiling SymbolKit FunctionSignature.swift
[38/57] Compiling SymbolKit Identifier.swift
[39/57] Compiling SymbolKit KindIdentifier.swift
[40/57] Compiling SymbolKit Location.swift
[41/57] Compiling SymbolKit Mutability.swift
[42/57] Compiling SymbolKit GenericConstraint.swift
[43/57] Compiling SymbolKit GenericParameter.swift
[44/57] Compiling SymbolKit Generics.swift
[45/57] Compiling SymbolKit Namespace.swift
[46/57] Compiling SymbolKit Relationship.swift
[47/57] Compiling SymbolKit RelationshipKind.swift
[48/57] Compiling SymbolKit SourceOrigin.swift
[49/57] Compiling SymbolKit GenericConstraints.swift
[50/57] Compiling SymbolKit Swift.swift
[51/57] Compiling SymbolKit UnifiedSymbol+Encodable.swift
[52/57] Compiling SymbolKit UnifiedSymbol.swift
[53/57] Compiling SymbolKit UnifiedSymbolGraph+Encodable.swift
[54/57] Compiling SymbolKit UnifiedSymbolGraph.swift
[55/61] Compiling snippet_extract URL+Status.swift
[56/61] Compiling snippet_extract SymbolGraph+Snippet.swift
[57/61] Emitting module snippet_extract
[58/61] Compiling snippet_extract SnippetBuildCommand.swift
[58/61] Write Objects.LinkFileList
[59/61] Linking snippet-extract-tool
[60/61] Applying snippet-extract-tool
Build of product 'snippet-extract' complete! (5.07s)
Building for debugging...
[0/1] Write swift-version-5BDAB9E9C0126B9D.txt
Build of target: 'ASCKit' complete! (0.16s)
782
5 /Users/admin/builder/spi-builder-workspace/.docs/blackjacx/asckit/develop
✅ Doc result (uploading) reported
========================================
SyncDocs
========================================
Doc archive source directory: $PWD/.docs/blackjacx/asckit/develop
File count: 782
Doc size: 5.0MB
Preparing doc bundle ...
Uploading prod-blackjacx-asckit-develop-59f0235a.zip to s3://spi-docs-inbox/prod-blackjacx-asckit-develop-59f0235a.zip
Copying... [12%]
Copying... [23%]
Copying... [35%]
Copying... [41%]
Copying... [53%]
Copying... [64%]
Copying... [70%]
Copying... [82%]
Copying... [94%]
Copying... [100%]
Done.