The Swift Package Index logo.Swift Package Index

Track the adoption of Swift 6 strict concurrency checks for data race safety. How many packages are Ready for Swift 6?

Build Information

Successful build of ASCKit, reference develop (44d234), with Swift 6.1 for macOS (SPM) on 1 May 2025 01:12:31 UTC.

Swift 6 data race errors: 20

Build Command

env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64

Build Log

========================================
RunAll
========================================
Builder version: 4.61.2
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/jrendel/SwiftKeychainWrapper
Fetching https://github.com/blackjacx/Engine
[1/687] Fetching engine
[160/2353] Fetching engine, swiftkeychainwrapper
Fetched https://github.com/blackjacx/Engine from cache (0.93s)
Fetched https://github.com/jrendel/SwiftKeychainWrapper from cache (0.93s)
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
[6/563] Fetching asckit
Fetched https://github.com/Blackjacx/ASCKit.git from cache (0.73s)
Fetching https://github.com/blackjacx/Engine from cache
Fetched https://github.com/blackjacx/Engine from cache (0.47s)
Computing version for https://github.com/blackjacx/Engine
Computed https://github.com/blackjacx/Engine at 0.1.0 (0.94s)
Fetching https://github.com/jrendel/SwiftKeychainWrapper from cache
Fetched https://github.com/jrendel/SwiftKeychainWrapper from cache (0.42s)
Computing version for https://github.com/jrendel/SwiftKeychainWrapper
Computed https://github.com/jrendel/SwiftKeychainWrapper at 4.0.1 (0.99s)
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.1
Building package at path:  $PWD
https://github.com/Blackjacx/ASCKit.git
https://github.com/Blackjacx/ASCKit.git
{
  "dependencies" : [
    {
      "identity" : "engine",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "0.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.3.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures
Building for debugging...
[0/4] Write sources
[3/4] Write swift-version-2F0A5646E1D333AE.txt
[5/8] Compiling SwiftKeychainWrapper KeychainWrapperSubscript.swift
[6/8] Emitting module SwiftKeychainWrapper
[7/8] Compiling SwiftKeychainWrapper KeychainWrapper.swift
[8/8] Compiling SwiftKeychainWrapper KeychainItemAccessibility.swift
[9/33] Emitting module Engine
[10/35] Compiling Engine LoggableError.swift
[11/35] Compiling Engine Network.swift
[12/35] Compiling Engine NetworkError.swift
[13/35] Compiling Engine JWTClaims.swift
[14/35] Compiling Engine JWTHeader.swift
[15/35] Compiling Engine Keychain.swift
[16/35] Compiling Engine Service.swift
[17/35] Compiling Engine DataWrapper.swift
[18/35] Compiling Engine Engine.swift
[19/35] Compiling Engine Bundle+Extensions.swift
[20/35] Compiling Engine FileManager+Extensions.swift
[21/35] Compiling Engine UIView+Extensions.swift
[22/35] Compiling Engine UIViewController+Extensions.swift
[23/35] Compiling Engine Endpoint.swift
[24/35] Compiling Engine HTTPMethod.swift
[25/35] Compiling Engine Json.swift
[26/35] Compiling Engine ProcessInfo+Extensions.swift
[27/35] Compiling Engine String+Extensions.swift
[28/35] Compiling Engine String+Random.swift
[29/35] Compiling Engine EmptyResponse.swift
[30/35] Compiling Engine Clamping.swift
[31/35] Compiling Engine UserDefaults+PropertyWrapper.swift
[32/35] Compiling Engine UIColor+Extensions.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 ApiKey.swift
[37/54] Compiling ASCKit App.swift
[38/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: add '@MainActor' to make static property 'network' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 18 |
 19 |     /// Collection of registered API keys
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:20:88: warning: static property 'apiKeys' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 18 |
 19 |     /// Collection of registered API keys
 20 |     @Defaults("\(ProcessInfo.processId).apiKeys", defaultValue: []) private static var apiKeys: [ApiKey]
    |                                                                                        |- warning: static property 'apiKeys' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                                                                                        |- note: convert 'apiKeys' to a 'let' constant to make 'Sendable' shared state immutable
    |                                                                                        |- note: add '@MainActor' to make static property 'apiKeys' part of global actor 'MainActor'
    |                                                                                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 21 |     /// For command line applications set to the key ID passed as parameter
 22 |     public static var specifiedKeyId: String?
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:22:23: warning: static property 'specifiedKeyId' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 20 |     @Defaults("\(ProcessInfo.processId).apiKeys", defaultValue: []) private static var apiKeys: [ApiKey]
 21 |     /// For command line applications set to the key ID passed as parameter
 22 |     public static var specifiedKeyId: String?
    |                       |- warning: static property 'specifiedKeyId' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'specifiedKeyId' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: add '@MainActor' to make static property 'specifiedKeyId' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 23 |
 24 |     // MARK: - Generic List
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift: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 |         }
[39/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: add '@MainActor' to make static property 'network' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 18 |
 19 |     /// Collection of registered API keys
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:20:88: warning: static property 'apiKeys' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 18 |
 19 |     /// Collection of registered API keys
 20 |     @Defaults("\(ProcessInfo.processId).apiKeys", defaultValue: []) private static var apiKeys: [ApiKey]
    |                                                                                        |- warning: static property 'apiKeys' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                                                                                        |- note: convert 'apiKeys' to a 'let' constant to make 'Sendable' shared state immutable
    |                                                                                        |- note: add '@MainActor' to make static property 'apiKeys' part of global actor 'MainActor'
    |                                                                                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 21 |     /// For command line applications set to the key ID passed as parameter
 22 |     public static var specifiedKeyId: String?
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:22:23: warning: static property 'specifiedKeyId' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 20 |     @Defaults("\(ProcessInfo.processId).apiKeys", defaultValue: []) private static var apiKeys: [ApiKey]
 21 |     /// For command line applications set to the key ID passed as parameter
 22 |     public static var specifiedKeyId: String?
    |                       |- warning: static property 'specifiedKeyId' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'specifiedKeyId' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: add '@MainActor' to make static property 'specifiedKeyId' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 23 |
 24 |     // MARK: - Generic List
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift: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 |         }
error: emit-module command failed with exit code 1 (use -v to see invocation)
[40/56] Compiling ASCKit ASCHeader.swift
[41/56] Compiling ASCKit ASCKit.swift
[42/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: add '@MainActor' to make static property 'network' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 18 |
 19 |     /// Collection of registered API keys
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:20:88: warning: static property 'apiKeys' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 18 |
 19 |     /// Collection of registered API keys
 20 |     @Defaults("\(ProcessInfo.processId).apiKeys", defaultValue: []) private static var apiKeys: [ApiKey]
    |                                                                                        |- warning: static property 'apiKeys' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                                                                                        |- note: convert 'apiKeys' to a 'let' constant to make 'Sendable' shared state immutable
    |                                                                                        |- note: add '@MainActor' to make static property 'apiKeys' part of global actor 'MainActor'
    |                                                                                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 21 |     /// For command line applications set to the key ID passed as parameter
 22 |     public static var specifiedKeyId: String?
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift:22:23: warning: static property 'specifiedKeyId' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 20 |     @Defaults("\(ProcessInfo.processId).apiKeys", defaultValue: []) private static var apiKeys: [ApiKey]
 21 |     /// For command line applications set to the key ID passed as parameter
 22 |     public static var specifiedKeyId: String?
    |                       |- warning: static property 'specifiedKeyId' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'specifiedKeyId' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: add '@MainActor' to make static property 'specifiedKeyId' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 23 |
 24 |     // MARK: - Generic List
/Users/admin/builder/spi-builder-workspace/Sources/ASCKit/ASCService.swift: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: add '@MainActor' to make static property 'apiKeyId' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
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
[43/56] Compiling ASCKit Model.swift
[44/56] Compiling ASCKit PagedItemLoader.swift
[45/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: add '@MainActor' to make static property 'apiKeyId' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
143 |
144 |     var host: String {
/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
[46/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: add '@MainActor' to make static property 'apiKeyId' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
143 |
144 |     var host: String {
/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
[47/56] Compiling ASCKit AppStoreVersion.swift
[48/56] Compiling ASCKit BetaGroup.swift
[49/56] Compiling ASCKit PageableModel.swift
[50/56] Compiling ASCKit Relation.swift
[51/56] Compiling ASCKit Constants.swift
[52/56] Compiling ASCKit Filter.swift
[53/56] Compiling ASCKit Build.swift
[54/56] Compiling ASCKit BundleId.swift
[55/56] Compiling ASCKit BetaTester.swift
[56/56] Compiling ASCKit BetaTesterInvitationResponse.swift
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64
[0/1] Planning build
Building for debugging...
[0/1] Write swift-version-2F0A5646E1D333AE.txt
[2/5] Compiling SwiftKeychainWrapper KeychainWrapperSubscript.swift
[3/5] Emitting module SwiftKeychainWrapper
[4/5] Compiling SwiftKeychainWrapper KeychainItemAccessibility.swift
[5/5] Compiling SwiftKeychainWrapper KeychainWrapper.swift
[6/30] Emitting module Engine
[7/32] Compiling Engine EmptyResponse.swift
[8/32] Compiling Engine Clamping.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 Service.swift
[13/32] Compiling Engine DataWrapper.swift
[14/32] Compiling Engine Endpoint.swift
[15/32] Compiling Engine HTTPMethod.swift
[16/32] Compiling Engine Json.swift
[17/32] Compiling Engine LoggableError.swift
[18/32] Compiling Engine Network.swift
[19/32] Compiling Engine NetworkError.swift
[20/32] Compiling Engine UserDefaults+PropertyWrapper.swift
[21/32] Compiling Engine UIColor+Extensions.swift
[22/32] Compiling Engine JWTClaims.swift
[23/32] Compiling Engine JWTHeader.swift
[24/32] Compiling Engine Keychain.swift
[25/32] Compiling Engine UIView+Extensions.swift
[26/32] Compiling Engine UIViewController+Extensions.swift
[27/32] Compiling Engine ProcessInfo+Extensions.swift
[28/32] Compiling Engine String+Extensions.swift
[29/32] Compiling Engine String+Random.swift
[30/32] Compiling Engine URL+Extensions.swift
[31/32] Compiling Engine URLRequest+Extensions.swift
[32/32] Compiling Engine JWT.swift
[33/51] Compiling ASCKit ApiKey.swift
[34/51] Compiling ASCKit App.swift
[35/51] Compiling ASCKit Constants.swift
[36/51] Compiling ASCKit Filter.swift
[37/51] Compiling ASCKit Model.swift
[38/51] Compiling ASCKit PagedItemLoader.swift
[39/51] Compiling ASCKit AscEndpoint.swift
[40/51] Compiling ASCKit AscError.swift
[41/51] Compiling ASCKit Build.swift
[42/51] Compiling ASCKit BundleId.swift
[43/51] Compiling ASCKit AppStoreVersion.swift
[44/51] Compiling ASCKit BetaGroup.swift
[45/51] Compiling ASCKit BetaTester.swift
[46/51] Compiling ASCKit BetaTesterInvitationResponse.swift
[47/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 |         }
[48/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 |         }
[49/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 |         }
[50/53] Compiling ASCKit ASCHeader.swift
[51/53] Compiling ASCKit ASCKit.swift
[52/53] Compiling ASCKit PageableModel.swift
[53/53] Compiling ASCKit Relation.swift
Build complete! (3.56s)
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.1
Target:                   ASCKit
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/swift-docc-render-artifact/.git/
From https://github.com/swiftlang/swift-docc-render-artifact
 * branch            release/6.2 -> FETCH_HEAD
 * [new branch]      release/6.2 -> origin/release/6.2
HEAD is now at 8799b69 Update the artifact
Cloned https://github.com/swiftlang/swift-docc-render-artifact
Extracting symbol information for 'ASCKit'...
Finished extracting symbol information for 'ASCKit'. (2.23s)
Building documentation for 'ASCKit'...
Finished building documentation for 'ASCKit' (0.25s)
Generated documentation archive at:
  /Users/admin/builder/spi-builder-workspace/.docs/blackjacx/asckit/develop
Fetching https://github.com/swiftlang/swift-docc-plugin from cache
Updating https://github.com/blackjacx/Engine
Updating https://github.com/jrendel/SwiftKeychainWrapper
Updated https://github.com/blackjacx/Engine (0.42s)
Updated https://github.com/jrendel/SwiftKeychainWrapper (0.42s)
Fetched https://github.com/swiftlang/swift-docc-plugin from cache (0.49s)
Computing version for https://github.com/blackjacx/Engine
Computed https://github.com/blackjacx/Engine at 0.1.0 (0.99s)
Computing version for https://github.com/jrendel/SwiftKeychainWrapper
Computed https://github.com/jrendel/SwiftKeychainWrapper at 4.0.1 (0.57s)
Computing version for https://github.com/swiftlang/swift-docc-plugin
Computed https://github.com/swiftlang/swift-docc-plugin at 1.4.3 (0.64s)
Fetching https://github.com/swiftlang/swift-docc-symbolkit from cache
Fetched https://github.com/swiftlang/swift-docc-symbolkit from cache (0.70s)
Computing version for https://github.com/swiftlang/swift-docc-symbolkit
Computed https://github.com/swiftlang/swift-docc-symbolkit at 1.0.0 (1.40s)
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
[3/8] Write sources
[4/8] Write swift-version-2F0A5646E1D333AE.txt
[6/53] Compiling Snippets SnippetParser.swift
[7/53] Compiling Snippets Snippet.swift
[8/53] Emitting module Snippets
[9/53] Emitting module SymbolKit
[10/57] Compiling SymbolKit Names.swift
[11/57] Compiling SymbolKit SPI.swift
[12/57] Compiling SymbolKit Snippet.swift
[13/57] Compiling SymbolKit Extension.swift
[14/57] Compiling SymbolKit Mixin+Equals.swift
[15/57] Compiling SymbolKit Mixin+Hash.swift
[16/57] Compiling SymbolKit Mixin.swift
[17/57] Compiling SymbolKit LineList.swift
[18/57] Compiling SymbolKit Position.swift
[19/57] Compiling SymbolKit Relationship.swift
[20/57] Compiling SymbolKit RelationshipKind.swift
[21/57] Compiling SymbolKit SourceOrigin.swift
[22/57] Compiling SymbolKit GenericConstraints.swift
[23/57] Compiling SymbolKit Swift.swift
[24/57] Compiling SymbolKit Identifier.swift
[25/57] Compiling SymbolKit KindIdentifier.swift
[26/57] Compiling SymbolKit Location.swift
[27/57] Compiling SymbolKit Mutability.swift
[28/57] Compiling SymbolKit GenericConstraint.swift
[29/57] Compiling SymbolKit GenericParameter.swift
[30/57] Compiling SymbolKit Generics.swift
[31/57] Compiling SymbolKit Namespace.swift
[32/57] Compiling SymbolKit SemanticVersion.swift
[33/57] Compiling SymbolKit AccessControl.swift
[34/57] Compiling SymbolKit Availability.swift
[35/57] Compiling SymbolKit AvailabilityItem.swift
[36/57] Compiling SymbolKit Domain.swift
[37/57] Compiling SymbolKit DeclarationFragments.swift
[38/57] Compiling SymbolKit Fragment.swift
[39/57] Compiling SymbolKit FragmentKind.swift
[40/57] Compiling SymbolKit FunctionParameter.swift
[41/57] Compiling SymbolKit FunctionSignature.swift
[42/57] Compiling SymbolKit Symbol.swift
[43/57] Compiling SymbolKit SymbolKind.swift
[44/57] Compiling SymbolKit SymbolGraph.swift
[45/57] Compiling SymbolKit GraphCollector.swift
[46/57] Compiling SymbolKit SourceRange.swift
[47/57] Compiling SymbolKit Metadata.swift
[48/57] Compiling SymbolKit Module.swift
[49/57] Compiling SymbolKit OperatingSystem.swift
[50/57] Compiling SymbolKit Platform.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 SymbolGraph+Snippet.swift
[56/61] Compiling snippet_extract URL+Status.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! (4.45s)
Building for debugging...
[0/1] Write swift-version-2F0A5646E1D333AE.txt
Build of target: 'ASCKit' complete! (0.26s)
     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-018d7a30.zip to s3://spi-docs-inbox/prod-blackjacx-asckit-develop-018d7a30.zip
Copying... [12%]
Copying... [24%]
Copying... [35%]
Copying... [41%]
Copying... [53%]
Copying... [65%]
Copying... [71%]
Copying... [83%]
Copying... [94%]
Copying... [100%]
Done.