The Swift Package Index logo.Swift Package Index

Has it really been five years since Swift Package Index launched? Read our anniversary blog post!

Build Information

Successful build of CryptoScraper, reference v0.3.0 (7be2a9), with Swift 6.0 for Linux on 29 Nov 2024 07:28:06 UTC.

Swift 6 data race errors: 20

Build Command

bash -c docker run --pull=always --rm -v "checkouts-4609320-1":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.0-latest swift build --triple x86_64-unknown-linux-gnu -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures 2>&1

Build Log

13 |
14 |     /// Returns **true** when the API Key's rate limit was exceeded
   :
17 |     }
18 |
19 |     public struct ErrorStatus: Decodable {
   |                   `- note: consider making struct 'ErrorStatus' conform to the 'Sendable' protocol
20 |         public let timestamp: String
21 |         public let errorCode: Int
[81/128] Compiling CryptoScraper Exports.swift
/host/spi-builder-workspace/Sources/CryptoScraper/DataAggregators/CoinGecko/CoinGeckoError.swift:9:16: warning: stored property 'status' of 'Sendable'-conforming struct 'CoinGeckoError' has non-sendable type 'CoinGeckoError.ErrorStatus'; this is an error in the Swift 6 language mode
 7 |
 8 | public struct CoinGeckoError: Decodable, Error {
 9 |     public let status: ErrorStatus
   |                `- warning: stored property 'status' of 'Sendable'-conforming struct 'CoinGeckoError' has non-sendable type 'CoinGeckoError.ErrorStatus'; this is an error in the Swift 6 language mode
10 |
11 |     public var rateLimitReached: Bool {
   :
13 |     }
14 |
15 |     public struct ErrorStatus: Decodable {
   |                   `- note: consider making struct 'ErrorStatus' conform to the 'Sendable' protocol
16 |         public let errorCode: Int
17 |         public let errorMessage: String
/host/spi-builder-workspace/Sources/CryptoScraper/DataAggregators/CoinMarketCap/CoinMarketCapAggregator+Coins.swift:110:13: warning: var 'unknownChain' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
108 | }
109 |
110 | private var unknownChain = Set<String>()
    |             |- warning: var 'unknownChain' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |             |- note: convert 'unknownChain' to a 'let' constant to make 'Sendable' shared state immutable
    |             |- note: annotate 'unknownChain' with '@MainActor' if property should only be accessed from the main actor
    |             `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
111 |
112 | private extension String {
/host/spi-builder-workspace/Sources/CryptoScraper/DataAggregators/CoinMarketCap/CoinMarketCapAggregator.swift:23:24: warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
21 |     static let endPoint: URL = .init(string: "https://pro-api.coinmarketcap.com")!
22 |
23 |     private static var _apiKey: String?
   |                        |- warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert '_apiKey' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate '_apiKey' with '@MainActor' if property should only be accessed from the main actor
   |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
24 |     static var apiKey: String? {
25 |         get { _apiKey ?? ProcessInfo.processInfo.environment["COIN_MARKETCAP_KEY"] }
/host/spi-builder-workspace/Sources/CryptoScraper/DataAggregators/CoinMarketCap/CoinMarketCapError.swift:12:16: warning: stored property 'status' of 'Sendable'-conforming struct 'CoinMarketCapError' has non-sendable type 'CoinMarketCapError.ErrorStatus'; this is an error in the Swift 6 language mode
10 | /// - See also: https://coinmarketcap.com/api/documentation/v1/#section/Standards-and-Conventions
11 | public struct CoinMarketCapError: Decodable, Error {
12 |     public let status: ErrorStatus
   |                `- warning: stored property 'status' of 'Sendable'-conforming struct 'CoinMarketCapError' has non-sendable type 'CoinMarketCapError.ErrorStatus'; this is an error in the Swift 6 language mode
13 |
14 |     /// Returns **true** when the API Key's rate limit was exceeded
   :
17 |     }
18 |
19 |     public struct ErrorStatus: Decodable {
   |                   `- note: consider making struct 'ErrorStatus' conform to the 'Sendable' protocol
20 |         public let timestamp: String
21 |         public let errorCode: Int
[82/128] Compiling CryptoScraper DateFormatter.swift
/host/spi-builder-workspace/Sources/CryptoScraper/DataAggregators/CoinGecko/CoinGeckoError.swift:9:16: warning: stored property 'status' of 'Sendable'-conforming struct 'CoinGeckoError' has non-sendable type 'CoinGeckoError.ErrorStatus'; this is an error in the Swift 6 language mode
 7 |
 8 | public struct CoinGeckoError: Decodable, Error {
 9 |     public let status: ErrorStatus
   |                `- warning: stored property 'status' of 'Sendable'-conforming struct 'CoinGeckoError' has non-sendable type 'CoinGeckoError.ErrorStatus'; this is an error in the Swift 6 language mode
10 |
11 |     public var rateLimitReached: Bool {
   :
13 |     }
14 |
15 |     public struct ErrorStatus: Decodable {
   |                   `- note: consider making struct 'ErrorStatus' conform to the 'Sendable' protocol
16 |         public let errorCode: Int
17 |         public let errorMessage: String
/host/spi-builder-workspace/Sources/CryptoScraper/DataAggregators/CoinMarketCap/CoinMarketCapAggregator+Coins.swift:110:13: warning: var 'unknownChain' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
108 | }
109 |
110 | private var unknownChain = Set<String>()
    |             |- warning: var 'unknownChain' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |             |- note: convert 'unknownChain' to a 'let' constant to make 'Sendable' shared state immutable
    |             |- note: annotate 'unknownChain' with '@MainActor' if property should only be accessed from the main actor
    |             `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
111 |
112 | private extension String {
/host/spi-builder-workspace/Sources/CryptoScraper/DataAggregators/CoinMarketCap/CoinMarketCapAggregator.swift:23:24: warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
21 |     static let endPoint: URL = .init(string: "https://pro-api.coinmarketcap.com")!
22 |
23 |     private static var _apiKey: String?
   |                        |- warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert '_apiKey' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate '_apiKey' with '@MainActor' if property should only be accessed from the main actor
   |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
24 |     static var apiKey: String? {
25 |         get { _apiKey ?? ProcessInfo.processInfo.environment["COIN_MARKETCAP_KEY"] }
/host/spi-builder-workspace/Sources/CryptoScraper/DataAggregators/CoinMarketCap/CoinMarketCapError.swift:12:16: warning: stored property 'status' of 'Sendable'-conforming struct 'CoinMarketCapError' has non-sendable type 'CoinMarketCapError.ErrorStatus'; this is an error in the Swift 6 language mode
10 | /// - See also: https://coinmarketcap.com/api/documentation/v1/#section/Standards-and-Conventions
11 | public struct CoinMarketCapError: Decodable, Error {
12 |     public let status: ErrorStatus
   |                `- warning: stored property 'status' of 'Sendable'-conforming struct 'CoinMarketCapError' has non-sendable type 'CoinMarketCapError.ErrorStatus'; this is an error in the Swift 6 language mode
13 |
14 |     /// Returns **true** when the API Key's rate limit was exceeded
   :
17 |     }
18 |
19 |     public struct ErrorStatus: Decodable {
   |                   `- note: consider making struct 'ErrorStatus' conform to the 'Sendable' protocol
20 |         public let timestamp: String
21 |         public let errorCode: Int
[83/128] Compiling CryptoScraper TronScan+Transactions.swift
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Tron/TronChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'TronChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class TronChain: CryptoChain {
   |                    `- note: class 'TronChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let trxContractAddress = "TRX"
27 |
28 |     public static let `default`: TronChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'TronChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/DataAggregators/CoinGecko/CoinGeckoAggregator+Coins.swift:76:13: warning: var 'unknownChain' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 74 | }
 75 |
 76 | private var unknownChain = Set<String>()
    |             |- warning: var 'unknownChain' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |             |- note: convert 'unknownChain' to a 'let' constant to make 'Sendable' shared state immutable
    |             |- note: annotate 'unknownChain' with '@MainActor' if property should only be accessed from the main actor
    |             `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 77 |
 78 | private extension String {
/host/spi-builder-workspace/Sources/CryptoScraper/DataAggregators/CoinGecko/CoinGeckoAggregator.swift:29:24: warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
27 |     }()
28 |
29 |     private static var _apiKey: String?
   |                        |- warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert '_apiKey' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate '_apiKey' with '@MainActor' if property should only be accessed from the main actor
   |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
30 |     static var apiKey: String? {
31 |         get { _apiKey ?? ProcessInfo.processInfo.environment["COIN_GECKO_KEY"] }
[84/128] Compiling CryptoScraper TronScan.swift
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Tron/TronChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'TronChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class TronChain: CryptoChain {
   |                    `- note: class 'TronChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let trxContractAddress = "TRX"
27 |
28 |     public static let `default`: TronChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'TronChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/DataAggregators/CoinGecko/CoinGeckoAggregator+Coins.swift:76:13: warning: var 'unknownChain' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 74 | }
 75 |
 76 | private var unknownChain = Set<String>()
    |             |- warning: var 'unknownChain' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |             |- note: convert 'unknownChain' to a 'let' constant to make 'Sendable' shared state immutable
    |             |- note: annotate 'unknownChain' with '@MainActor' if property should only be accessed from the main actor
    |             `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 77 |
 78 | private extension String {
/host/spi-builder-workspace/Sources/CryptoScraper/DataAggregators/CoinGecko/CoinGeckoAggregator.swift:29:24: warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
27 |     }()
28 |
29 |     private static var _apiKey: String?
   |                        |- warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert '_apiKey' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate '_apiKey' with '@MainActor' if property should only be accessed from the main actor
   |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
30 |     static var apiKey: String? {
31 |         get { _apiKey ?? ProcessInfo.processInfo.environment["COIN_GECKO_KEY"] }
[85/128] Compiling CryptoScraper CryptoScraper.swift
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Tron/TronChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'TronChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class TronChain: CryptoChain {
   |                    `- note: class 'TronChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let trxContractAddress = "TRX"
27 |
28 |     public static let `default`: TronChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'TronChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/DataAggregators/CoinGecko/CoinGeckoAggregator+Coins.swift:76:13: warning: var 'unknownChain' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 74 | }
 75 |
 76 | private var unknownChain = Set<String>()
    |             |- warning: var 'unknownChain' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |             |- note: convert 'unknownChain' to a 'let' constant to make 'Sendable' shared state immutable
    |             |- note: annotate 'unknownChain' with '@MainActor' if property should only be accessed from the main actor
    |             `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 77 |
 78 | private extension String {
/host/spi-builder-workspace/Sources/CryptoScraper/DataAggregators/CoinGecko/CoinGeckoAggregator.swift:29:24: warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
27 |     }()
28 |
29 |     private static var _apiKey: String?
   |                        |- warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert '_apiKey' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate '_apiKey' with '@MainActor' if property should only be accessed from the main actor
   |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
30 |     static var apiKey: String? {
31 |         get { _apiKey ?? ProcessInfo.processInfo.environment["COIN_GECKO_KEY"] }
[86/128] Compiling CryptoScraper CoinGeckoAggregator+Availability.swift
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Tron/TronChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'TronChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class TronChain: CryptoChain {
   |                    `- note: class 'TronChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let trxContractAddress = "TRX"
27 |
28 |     public static let `default`: TronChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'TronChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/DataAggregators/CoinGecko/CoinGeckoAggregator+Coins.swift:76:13: warning: var 'unknownChain' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 74 | }
 75 |
 76 | private var unknownChain = Set<String>()
    |             |- warning: var 'unknownChain' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |             |- note: convert 'unknownChain' to a 'let' constant to make 'Sendable' shared state immutable
    |             |- note: annotate 'unknownChain' with '@MainActor' if property should only be accessed from the main actor
    |             `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 77 |
 78 | private extension String {
/host/spi-builder-workspace/Sources/CryptoScraper/DataAggregators/CoinGecko/CoinGeckoAggregator.swift:29:24: warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
27 |     }()
28 |
29 |     private static var _apiKey: String?
   |                        |- warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert '_apiKey' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate '_apiKey' with '@MainActor' if property should only be accessed from the main actor
   |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
30 |     static var apiKey: String? {
31 |         get { _apiKey ?? ProcessInfo.processInfo.environment["COIN_GECKO_KEY"] }
[87/128] Compiling CryptoScraper CoinGeckoAggregator+Coins.swift
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Tron/TronChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'TronChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class TronChain: CryptoChain {
   |                    `- note: class 'TronChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let trxContractAddress = "TRX"
27 |
28 |     public static let `default`: TronChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'TronChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/DataAggregators/CoinGecko/CoinGeckoAggregator+Coins.swift:76:13: warning: var 'unknownChain' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 74 | }
 75 |
 76 | private var unknownChain = Set<String>()
    |             |- warning: var 'unknownChain' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |             |- note: convert 'unknownChain' to a 'let' constant to make 'Sendable' shared state immutable
    |             |- note: annotate 'unknownChain' with '@MainActor' if property should only be accessed from the main actor
    |             `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 77 |
 78 | private extension String {
/host/spi-builder-workspace/Sources/CryptoScraper/DataAggregators/CoinGecko/CoinGeckoAggregator.swift:29:24: warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
27 |     }()
28 |
29 |     private static var _apiKey: String?
   |                        |- warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert '_apiKey' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate '_apiKey' with '@MainActor' if property should only be accessed from the main actor
   |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
30 |     static var apiKey: String? {
31 |         get { _apiKey ?? ProcessInfo.processInfo.environment["COIN_GECKO_KEY"] }
[88/128] Compiling CryptoScraper CoinGeckoAggregator.swift
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Tron/TronChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'TronChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class TronChain: CryptoChain {
   |                    `- note: class 'TronChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let trxContractAddress = "TRX"
27 |
28 |     public static let `default`: TronChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'TronChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/DataAggregators/CoinGecko/CoinGeckoAggregator+Coins.swift:76:13: warning: var 'unknownChain' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 74 | }
 75 |
 76 | private var unknownChain = Set<String>()
    |             |- warning: var 'unknownChain' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |             |- note: convert 'unknownChain' to a 'let' constant to make 'Sendable' shared state immutable
    |             |- note: annotate 'unknownChain' with '@MainActor' if property should only be accessed from the main actor
    |             `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 77 |
 78 | private extension String {
/host/spi-builder-workspace/Sources/CryptoScraper/DataAggregators/CoinGecko/CoinGeckoAggregator.swift:29:24: warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
27 |     }()
28 |
29 |     private static var _apiKey: String?
   |                        |- warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert '_apiKey' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate '_apiKey' with '@MainActor' if property should only be accessed from the main actor
   |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
30 |     static var apiKey: String? {
31 |         get { _apiKey ?? ProcessInfo.processInfo.environment["COIN_GECKO_KEY"] }
[89/128] Compiling CryptoScraper Decodable.swift
/host/spi-builder-workspace/Sources/CryptoScraper/Utility/FoundationDataFetch.swift:28:16: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'FoundationDataFetch' may have shared mutable state; this is an error in the Swift 6 language mode
 23 | private struct DummyError: Decodable, Error {}
 24 |
 25 | final class FoundationDataFetch {
    |             `- note: class 'FoundationDataFetch' does not conform to the 'Sendable' protocol
 26 |     private let urlSession: URLSession
 27 |
 28 |     static let `default`: FoundationDataFetch = .init(urlSession: FoundationDataFetch.UrlSession())
    |                |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'FoundationDataFetch' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 29 |
 30 |     /// Fetches the given data of type ``ResultValue`` from the given ``URL``
[90/128] Compiling CryptoScraper DecodingError.swift
/host/spi-builder-workspace/Sources/CryptoScraper/Utility/FoundationDataFetch.swift:28:16: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'FoundationDataFetch' may have shared mutable state; this is an error in the Swift 6 language mode
 23 | private struct DummyError: Decodable, Error {}
 24 |
 25 | final class FoundationDataFetch {
    |             `- note: class 'FoundationDataFetch' does not conform to the 'Sendable' protocol
 26 |     private let urlSession: URLSession
 27 |
 28 |     static let `default`: FoundationDataFetch = .init(urlSession: FoundationDataFetch.UrlSession())
    |                |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'FoundationDataFetch' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 29 |
 30 |     /// Fetches the given data of type ``ResultValue`` from the given ``URL``
[91/128] Compiling CryptoScraper URL.swift
/host/spi-builder-workspace/Sources/CryptoScraper/Utility/FoundationDataFetch.swift:28:16: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'FoundationDataFetch' may have shared mutable state; this is an error in the Swift 6 language mode
 23 | private struct DummyError: Decodable, Error {}
 24 |
 25 | final class FoundationDataFetch {
    |             `- note: class 'FoundationDataFetch' does not conform to the 'Sendable' protocol
 26 |     private let urlSession: URLSession
 27 |
 28 |     static let `default`: FoundationDataFetch = .init(urlSession: FoundationDataFetch.UrlSession())
    |                |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'FoundationDataFetch' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 29 |
 30 |     /// Fetches the given data of type ``ResultValue`` from the given ``URL``
[92/128] Compiling CryptoScraper CryptoAmount.swift
/host/spi-builder-workspace/Sources/CryptoScraper/Utility/FoundationDataFetch.swift:28:16: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'FoundationDataFetch' may have shared mutable state; this is an error in the Swift 6 language mode
 23 | private struct DummyError: Decodable, Error {}
 24 |
 25 | final class FoundationDataFetch {
    |             `- note: class 'FoundationDataFetch' does not conform to the 'Sendable' protocol
 26 |     private let urlSession: URLSession
 27 |
 28 |     static let `default`: FoundationDataFetch = .init(urlSession: FoundationDataFetch.UrlSession())
    |                |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'FoundationDataFetch' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 29 |
 30 |     /// Fetches the given data of type ``ResultValue`` from the given ``URL``
[93/128] Compiling CryptoScraper CryptoChain.swift
/host/spi-builder-workspace/Sources/CryptoScraper/Utility/FoundationDataFetch.swift:28:16: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'FoundationDataFetch' may have shared mutable state; this is an error in the Swift 6 language mode
 23 | private struct DummyError: Decodable, Error {}
 24 |
 25 | final class FoundationDataFetch {
    |             `- note: class 'FoundationDataFetch' does not conform to the 'Sendable' protocol
 26 |     private let urlSession: URLSession
 27 |
 28 |     static let `default`: FoundationDataFetch = .init(urlSession: FoundationDataFetch.UrlSession())
    |                |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'FoundationDataFetch' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 29 |
 30 |     /// Fetches the given data of type ``ResultValue`` from the given ``URL``
[94/128] Compiling CryptoScraper CryptoContract.swift
/host/spi-builder-workspace/Sources/CryptoScraper/Utility/FoundationDataFetch.swift:28:16: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'FoundationDataFetch' may have shared mutable state; this is an error in the Swift 6 language mode
 23 | private struct DummyError: Decodable, Error {}
 24 |
 25 | final class FoundationDataFetch {
    |             `- note: class 'FoundationDataFetch' does not conform to the 'Sendable' protocol
 26 |     private let urlSession: URLSession
 27 |
 28 |     static let `default`: FoundationDataFetch = .init(urlSession: FoundationDataFetch.UrlSession())
    |                |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'FoundationDataFetch' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 29 |
 30 |     /// Fetches the given data of type ``ResultValue`` from the given ``URL``
[95/128] Compiling CryptoScraper EthereumScanner.swift
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Ethereum/Etherscan/Etherscan.swift:16:24: warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 |     public let userReadableName: String = "Etherscan"
15 |
16 |     private static var _apiKey: String?
   |                        |- warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert '_apiKey' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate '_apiKey' with '@MainActor' if property should only be accessed from the main actor
   |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |     public static var apiKey: String? {
18 |         get { _apiKey ?? ProcessInfo.processInfo.environment[apiKeyName] }
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Fantom/FTMScan/FTMScan.swift:16:24: warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 |     public let userReadableName: String = "FTMScan"
15 |
16 |     private static var _apiKey: String?
   |                        |- warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert '_apiKey' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate '_apiKey' with '@MainActor' if property should only be accessed from the main actor
   |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |     public static var apiKey: String? {
18 |         get { _apiKey ?? ProcessInfo.processInfo.environment[apiKeyName] }
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Fantom/FantomChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'FantomChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class FantomChain: CryptoChain {
   |                    `- note: class 'FantomChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let ftmContractAddress = "FTM"
27 |
28 |     public static let `default`: FantomChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'FantomChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Optimism/OptimismChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'OptimismChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class OptimismChain: CryptoChain {
   |                    `- note: class 'OptimismChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let opContractAddress = "OP"
27 |
28 |     public static let `default`: OptimismChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'OptimismChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
[96/128] Compiling CryptoScraper Etherscan.swift
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Ethereum/Etherscan/Etherscan.swift:16:24: warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 |     public let userReadableName: String = "Etherscan"
15 |
16 |     private static var _apiKey: String?
   |                        |- warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert '_apiKey' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate '_apiKey' with '@MainActor' if property should only be accessed from the main actor
   |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |     public static var apiKey: String? {
18 |         get { _apiKey ?? ProcessInfo.processInfo.environment[apiKeyName] }
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Fantom/FTMScan/FTMScan.swift:16:24: warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 |     public let userReadableName: String = "FTMScan"
15 |
16 |     private static var _apiKey: String?
   |                        |- warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert '_apiKey' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate '_apiKey' with '@MainActor' if property should only be accessed from the main actor
   |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |     public static var apiKey: String? {
18 |         get { _apiKey ?? ProcessInfo.processInfo.environment[apiKeyName] }
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Fantom/FantomChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'FantomChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class FantomChain: CryptoChain {
   |                    `- note: class 'FantomChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let ftmContractAddress = "FTM"
27 |
28 |     public static let `default`: FantomChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'FantomChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Optimism/OptimismChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'OptimismChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class OptimismChain: CryptoChain {
   |                    `- note: class 'OptimismChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let opContractAddress = "OP"
27 |
28 |     public static let `default`: OptimismChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'OptimismChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
[97/128] Compiling CryptoScraper FTMScan.swift
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Ethereum/Etherscan/Etherscan.swift:16:24: warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 |     public let userReadableName: String = "Etherscan"
15 |
16 |     private static var _apiKey: String?
   |                        |- warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert '_apiKey' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate '_apiKey' with '@MainActor' if property should only be accessed from the main actor
   |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |     public static var apiKey: String? {
18 |         get { _apiKey ?? ProcessInfo.processInfo.environment[apiKeyName] }
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Fantom/FTMScan/FTMScan.swift:16:24: warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 |     public let userReadableName: String = "FTMScan"
15 |
16 |     private static var _apiKey: String?
   |                        |- warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert '_apiKey' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate '_apiKey' with '@MainActor' if property should only be accessed from the main actor
   |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |     public static var apiKey: String? {
18 |         get { _apiKey ?? ProcessInfo.processInfo.environment[apiKeyName] }
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Fantom/FantomChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'FantomChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class FantomChain: CryptoChain {
   |                    `- note: class 'FantomChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let ftmContractAddress = "FTM"
27 |
28 |     public static let `default`: FantomChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'FantomChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Optimism/OptimismChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'OptimismChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class OptimismChain: CryptoChain {
   |                    `- note: class 'OptimismChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let opContractAddress = "OP"
27 |
28 |     public static let `default`: OptimismChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'OptimismChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
[98/128] Compiling CryptoScraper FantomChain.swift
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Ethereum/Etherscan/Etherscan.swift:16:24: warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 |     public let userReadableName: String = "Etherscan"
15 |
16 |     private static var _apiKey: String?
   |                        |- warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert '_apiKey' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate '_apiKey' with '@MainActor' if property should only be accessed from the main actor
   |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |     public static var apiKey: String? {
18 |         get { _apiKey ?? ProcessInfo.processInfo.environment[apiKeyName] }
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Fantom/FTMScan/FTMScan.swift:16:24: warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 |     public let userReadableName: String = "FTMScan"
15 |
16 |     private static var _apiKey: String?
   |                        |- warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert '_apiKey' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate '_apiKey' with '@MainActor' if property should only be accessed from the main actor
   |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |     public static var apiKey: String? {
18 |         get { _apiKey ?? ProcessInfo.processInfo.environment[apiKeyName] }
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Fantom/FantomChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'FantomChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class FantomChain: CryptoChain {
   |                    `- note: class 'FantomChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let ftmContractAddress = "FTM"
27 |
28 |     public static let `default`: FantomChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'FantomChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Optimism/OptimismChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'OptimismChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class OptimismChain: CryptoChain {
   |                    `- note: class 'OptimismChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let opContractAddress = "OP"
27 |
28 |     public static let `default`: OptimismChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'OptimismChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
[99/128] Compiling CryptoScraper FantomContract.swift
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Ethereum/Etherscan/Etherscan.swift:16:24: warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 |     public let userReadableName: String = "Etherscan"
15 |
16 |     private static var _apiKey: String?
   |                        |- warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert '_apiKey' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate '_apiKey' with '@MainActor' if property should only be accessed from the main actor
   |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |     public static var apiKey: String? {
18 |         get { _apiKey ?? ProcessInfo.processInfo.environment[apiKeyName] }
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Fantom/FTMScan/FTMScan.swift:16:24: warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 |     public let userReadableName: String = "FTMScan"
15 |
16 |     private static var _apiKey: String?
   |                        |- warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert '_apiKey' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate '_apiKey' with '@MainActor' if property should only be accessed from the main actor
   |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |     public static var apiKey: String? {
18 |         get { _apiKey ?? ProcessInfo.processInfo.environment[apiKeyName] }
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Fantom/FantomChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'FantomChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class FantomChain: CryptoChain {
   |                    `- note: class 'FantomChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let ftmContractAddress = "FTM"
27 |
28 |     public static let `default`: FantomChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'FantomChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Optimism/OptimismChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'OptimismChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class OptimismChain: CryptoChain {
   |                    `- note: class 'OptimismChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let opContractAddress = "OP"
27 |
28 |     public static let `default`: OptimismChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'OptimismChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
[100/128] Compiling CryptoScraper OptimismChain.swift
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Ethereum/Etherscan/Etherscan.swift:16:24: warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 |     public let userReadableName: String = "Etherscan"
15 |
16 |     private static var _apiKey: String?
   |                        |- warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert '_apiKey' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate '_apiKey' with '@MainActor' if property should only be accessed from the main actor
   |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |     public static var apiKey: String? {
18 |         get { _apiKey ?? ProcessInfo.processInfo.environment[apiKeyName] }
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Fantom/FTMScan/FTMScan.swift:16:24: warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 |     public let userReadableName: String = "FTMScan"
15 |
16 |     private static var _apiKey: String?
   |                        |- warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert '_apiKey' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate '_apiKey' with '@MainActor' if property should only be accessed from the main actor
   |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |     public static var apiKey: String? {
18 |         get { _apiKey ?? ProcessInfo.processInfo.environment[apiKeyName] }
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Fantom/FantomChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'FantomChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class FantomChain: CryptoChain {
   |                    `- note: class 'FantomChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let ftmContractAddress = "FTM"
27 |
28 |     public static let `default`: FantomChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'FantomChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Optimism/OptimismChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'OptimismChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class OptimismChain: CryptoChain {
   |                    `- note: class 'OptimismChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let opContractAddress = "OP"
27 |
28 |     public static let `default`: OptimismChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'OptimismChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
[101/128] Compiling CryptoScraper OptimismContract.swift
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Ethereum/Etherscan/Etherscan.swift:16:24: warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 |     public let userReadableName: String = "Etherscan"
15 |
16 |     private static var _apiKey: String?
   |                        |- warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert '_apiKey' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate '_apiKey' with '@MainActor' if property should only be accessed from the main actor
   |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |     public static var apiKey: String? {
18 |         get { _apiKey ?? ProcessInfo.processInfo.environment[apiKeyName] }
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Fantom/FTMScan/FTMScan.swift:16:24: warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 |     public let userReadableName: String = "FTMScan"
15 |
16 |     private static var _apiKey: String?
   |                        |- warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert '_apiKey' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate '_apiKey' with '@MainActor' if property should only be accessed from the main actor
   |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |     public static var apiKey: String? {
18 |         get { _apiKey ?? ProcessInfo.processInfo.environment[apiKeyName] }
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Fantom/FantomChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'FantomChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class FantomChain: CryptoChain {
   |                    `- note: class 'FantomChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let ftmContractAddress = "FTM"
27 |
28 |     public static let `default`: FantomChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'FantomChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Optimism/OptimismChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'OptimismChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class OptimismChain: CryptoChain {
   |                    `- note: class 'OptimismChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let opContractAddress = "OP"
27 |
28 |     public static let `default`: OptimismChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'OptimismChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
[102/128] Compiling CryptoScraper OptimisticEtherscan.swift
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Optimism/OptimisticEtherscan/OptimisticEtherscan.swift:16:24: warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 |     public let userReadableName: String = "OptimisticEtherscan"
15 |
16 |     private static var _apiKey: String?
   |                        |- warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert '_apiKey' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate '_apiKey' with '@MainActor' if property should only be accessed from the main actor
   |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |     public static var apiKey: String? {
18 |         get { _apiKey ?? ProcessInfo.processInfo.environment[apiKeyName] }
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Polygon/PolygonChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'PolygonChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class PolygonChain: CryptoChain {
   |                    `- note: class 'PolygonChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let maticContractAddress = "Matic"
27 |
28 |     public static let `default`: PolygonChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'PolygonChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Polygon/PolygonScan/PolygonScan.swift:16:24: warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 |     public let userReadableName: String = "PolygonScan"
15 |
16 |     private static var _apiKey: String?
   |                        |- warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert '_apiKey' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate '_apiKey' with '@MainActor' if property should only be accessed from the main actor
   |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |     public static var apiKey: String? {
18 |         get { _apiKey ?? ProcessInfo.processInfo.environment[apiKeyName] }
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Tron/TronChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'TronChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class TronChain: CryptoChain {
   |                    `- note: class 'TronChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let trxContractAddress = "TRX"
27 |
28 |     public static let `default`: TronChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'TronChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
[103/128] Compiling CryptoScraper MaticContract.swift
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Optimism/OptimisticEtherscan/OptimisticEtherscan.swift:16:24: warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 |     public let userReadableName: String = "OptimisticEtherscan"
15 |
16 |     private static var _apiKey: String?
   |                        |- warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert '_apiKey' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate '_apiKey' with '@MainActor' if property should only be accessed from the main actor
   |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |     public static var apiKey: String? {
18 |         get { _apiKey ?? ProcessInfo.processInfo.environment[apiKeyName] }
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Polygon/PolygonChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'PolygonChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class PolygonChain: CryptoChain {
   |                    `- note: class 'PolygonChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let maticContractAddress = "Matic"
27 |
28 |     public static let `default`: PolygonChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'PolygonChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Polygon/PolygonScan/PolygonScan.swift:16:24: warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 |     public let userReadableName: String = "PolygonScan"
15 |
16 |     private static var _apiKey: String?
   |                        |- warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert '_apiKey' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate '_apiKey' with '@MainActor' if property should only be accessed from the main actor
   |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |     public static var apiKey: String? {
18 |         get { _apiKey ?? ProcessInfo.processInfo.environment[apiKeyName] }
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Tron/TronChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'TronChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class TronChain: CryptoChain {
   |                    `- note: class 'TronChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let trxContractAddress = "TRX"
27 |
28 |     public static let `default`: TronChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'TronChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
[104/128] Compiling CryptoScraper PolygonChain.swift
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Optimism/OptimisticEtherscan/OptimisticEtherscan.swift:16:24: warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 |     public let userReadableName: String = "OptimisticEtherscan"
15 |
16 |     private static var _apiKey: String?
   |                        |- warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert '_apiKey' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate '_apiKey' with '@MainActor' if property should only be accessed from the main actor
   |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |     public static var apiKey: String? {
18 |         get { _apiKey ?? ProcessInfo.processInfo.environment[apiKeyName] }
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Polygon/PolygonChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'PolygonChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class PolygonChain: CryptoChain {
   |                    `- note: class 'PolygonChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let maticContractAddress = "Matic"
27 |
28 |     public static let `default`: PolygonChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'PolygonChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Polygon/PolygonScan/PolygonScan.swift:16:24: warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 |     public let userReadableName: String = "PolygonScan"
15 |
16 |     private static var _apiKey: String?
   |                        |- warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert '_apiKey' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate '_apiKey' with '@MainActor' if property should only be accessed from the main actor
   |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |     public static var apiKey: String? {
18 |         get { _apiKey ?? ProcessInfo.processInfo.environment[apiKeyName] }
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Tron/TronChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'TronChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class TronChain: CryptoChain {
   |                    `- note: class 'TronChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let trxContractAddress = "TRX"
27 |
28 |     public static let `default`: TronChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'TronChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
[105/128] Compiling CryptoScraper PolygonScan.swift
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Optimism/OptimisticEtherscan/OptimisticEtherscan.swift:16:24: warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 |     public let userReadableName: String = "OptimisticEtherscan"
15 |
16 |     private static var _apiKey: String?
   |                        |- warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert '_apiKey' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate '_apiKey' with '@MainActor' if property should only be accessed from the main actor
   |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |     public static var apiKey: String? {
18 |         get { _apiKey ?? ProcessInfo.processInfo.environment[apiKeyName] }
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Polygon/PolygonChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'PolygonChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class PolygonChain: CryptoChain {
   |                    `- note: class 'PolygonChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let maticContractAddress = "Matic"
27 |
28 |     public static let `default`: PolygonChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'PolygonChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Polygon/PolygonScan/PolygonScan.swift:16:24: warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 |     public let userReadableName: String = "PolygonScan"
15 |
16 |     private static var _apiKey: String?
   |                        |- warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert '_apiKey' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate '_apiKey' with '@MainActor' if property should only be accessed from the main actor
   |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |     public static var apiKey: String? {
18 |         get { _apiKey ?? ProcessInfo.processInfo.environment[apiKeyName] }
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Tron/TronChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'TronChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class TronChain: CryptoChain {
   |                    `- note: class 'TronChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let trxContractAddress = "TRX"
27 |
28 |     public static let `default`: TronChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'TronChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
[106/128] Compiling CryptoScraper TronChain.swift
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Optimism/OptimisticEtherscan/OptimisticEtherscan.swift:16:24: warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 |     public let userReadableName: String = "OptimisticEtherscan"
15 |
16 |     private static var _apiKey: String?
   |                        |- warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert '_apiKey' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate '_apiKey' with '@MainActor' if property should only be accessed from the main actor
   |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |     public static var apiKey: String? {
18 |         get { _apiKey ?? ProcessInfo.processInfo.environment[apiKeyName] }
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Polygon/PolygonChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'PolygonChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class PolygonChain: CryptoChain {
   |                    `- note: class 'PolygonChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let maticContractAddress = "Matic"
27 |
28 |     public static let `default`: PolygonChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'PolygonChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Polygon/PolygonScan/PolygonScan.swift:16:24: warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 |     public let userReadableName: String = "PolygonScan"
15 |
16 |     private static var _apiKey: String?
   |                        |- warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert '_apiKey' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate '_apiKey' with '@MainActor' if property should only be accessed from the main actor
   |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |     public static var apiKey: String? {
18 |         get { _apiKey ?? ProcessInfo.processInfo.environment[apiKeyName] }
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Tron/TronChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'TronChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class TronChain: CryptoChain {
   |                    `- note: class 'TronChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let trxContractAddress = "TRX"
27 |
28 |     public static let `default`: TronChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'TronChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
[107/128] Compiling CryptoScraper TronContract.swift
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Optimism/OptimisticEtherscan/OptimisticEtherscan.swift:16:24: warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 |     public let userReadableName: String = "OptimisticEtherscan"
15 |
16 |     private static var _apiKey: String?
   |                        |- warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert '_apiKey' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate '_apiKey' with '@MainActor' if property should only be accessed from the main actor
   |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |     public static var apiKey: String? {
18 |         get { _apiKey ?? ProcessInfo.processInfo.environment[apiKeyName] }
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Polygon/PolygonChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'PolygonChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class PolygonChain: CryptoChain {
   |                    `- note: class 'PolygonChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let maticContractAddress = "Matic"
27 |
28 |     public static let `default`: PolygonChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'PolygonChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Polygon/PolygonScan/PolygonScan.swift:16:24: warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 |     public let userReadableName: String = "PolygonScan"
15 |
16 |     private static var _apiKey: String?
   |                        |- warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert '_apiKey' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate '_apiKey' with '@MainActor' if property should only be accessed from the main actor
   |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |     public static var apiKey: String? {
18 |         get { _apiKey ?? ProcessInfo.processInfo.environment[apiKeyName] }
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Tron/TronChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'TronChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class TronChain: CryptoChain {
   |                    `- note: class 'TronChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let trxContractAddress = "TRX"
27 |
28 |     public static let `default`: TronChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'TronChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
[108/128] Compiling CryptoScraper TronScan+Accounts.swift
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Optimism/OptimisticEtherscan/OptimisticEtherscan.swift:16:24: warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 |     public let userReadableName: String = "OptimisticEtherscan"
15 |
16 |     private static var _apiKey: String?
   |                        |- warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert '_apiKey' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate '_apiKey' with '@MainActor' if property should only be accessed from the main actor
   |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |     public static var apiKey: String? {
18 |         get { _apiKey ?? ProcessInfo.processInfo.environment[apiKeyName] }
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Polygon/PolygonChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'PolygonChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class PolygonChain: CryptoChain {
   |                    `- note: class 'PolygonChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let maticContractAddress = "Matic"
27 |
28 |     public static let `default`: PolygonChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'PolygonChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Polygon/PolygonScan/PolygonScan.swift:16:24: warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 |     public let userReadableName: String = "PolygonScan"
15 |
16 |     private static var _apiKey: String?
   |                        |- warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert '_apiKey' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate '_apiKey' with '@MainActor' if property should only be accessed from the main actor
   |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |     public static var apiKey: String? {
18 |         get { _apiKey ?? ProcessInfo.processInfo.environment[apiKeyName] }
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Tron/TronChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'TronChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class TronChain: CryptoChain {
   |                    `- note: class 'TronChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let trxContractAddress = "TRX"
27 |
28 |     public static let `default`: TronChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'TronChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
[109/128] Compiling CryptoScraper BNBContract.swift
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/BinanceSmartChain/BinanceSmartChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BinanceSmartChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class BinanceSmartChain: CryptoChain {
   |                    `- note: class 'BinanceSmartChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let bnbContractAddress = "BNB"
27 |
28 |     public static let `default`: BinanceSmartChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BinanceSmartChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/BinanceSmartChain/BscScan/BscScan.swift:16:24: warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 |     public let userReadableName: String = "BscScan"
15 |
16 |     private static var _apiKey: String?
   |                        |- warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert '_apiKey' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate '_apiKey' with '@MainActor' if property should only be accessed from the main actor
   |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |     public static var apiKey: String? {
18 |         get { _apiKey ?? ProcessInfo.processInfo.environment[apiKeyName] }
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Bitcoin/BitcoinChain.swift:26:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BitcoinChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class BitcoinChain: CryptoChain {
   |                    `- note: class 'BitcoinChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
24 |     static let btcContractAddress = "BTC"
25 |
26 |     public static let `default`: BitcoinChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BitcoinChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
27 |
28 |     private init() {
[110/128] Compiling CryptoScraper BinanceSmartChain.swift
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/BinanceSmartChain/BinanceSmartChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BinanceSmartChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class BinanceSmartChain: CryptoChain {
   |                    `- note: class 'BinanceSmartChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let bnbContractAddress = "BNB"
27 |
28 |     public static let `default`: BinanceSmartChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BinanceSmartChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/BinanceSmartChain/BscScan/BscScan.swift:16:24: warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 |     public let userReadableName: String = "BscScan"
15 |
16 |     private static var _apiKey: String?
   |                        |- warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert '_apiKey' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate '_apiKey' with '@MainActor' if property should only be accessed from the main actor
   |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |     public static var apiKey: String? {
18 |         get { _apiKey ?? ProcessInfo.processInfo.environment[apiKeyName] }
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Bitcoin/BitcoinChain.swift:26:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BitcoinChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class BitcoinChain: CryptoChain {
   |                    `- note: class 'BitcoinChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
24 |     static let btcContractAddress = "BTC"
25 |
26 |     public static let `default`: BitcoinChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BitcoinChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
27 |
28 |     private init() {
[111/128] Compiling CryptoScraper BscScan.swift
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/BinanceSmartChain/BinanceSmartChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BinanceSmartChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class BinanceSmartChain: CryptoChain {
   |                    `- note: class 'BinanceSmartChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let bnbContractAddress = "BNB"
27 |
28 |     public static let `default`: BinanceSmartChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BinanceSmartChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/BinanceSmartChain/BscScan/BscScan.swift:16:24: warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 |     public let userReadableName: String = "BscScan"
15 |
16 |     private static var _apiKey: String?
   |                        |- warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert '_apiKey' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate '_apiKey' with '@MainActor' if property should only be accessed from the main actor
   |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |     public static var apiKey: String? {
18 |         get { _apiKey ?? ProcessInfo.processInfo.environment[apiKeyName] }
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Bitcoin/BitcoinChain.swift:26:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BitcoinChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class BitcoinChain: CryptoChain {
   |                    `- note: class 'BitcoinChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
24 |     static let btcContractAddress = "BTC"
25 |
26 |     public static let `default`: BitcoinChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BitcoinChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
27 |
28 |     private init() {
[112/128] Compiling CryptoScraper BitcoinChain.swift
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/BinanceSmartChain/BinanceSmartChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BinanceSmartChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class BinanceSmartChain: CryptoChain {
   |                    `- note: class 'BinanceSmartChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let bnbContractAddress = "BNB"
27 |
28 |     public static let `default`: BinanceSmartChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BinanceSmartChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/BinanceSmartChain/BscScan/BscScan.swift:16:24: warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 |     public let userReadableName: String = "BscScan"
15 |
16 |     private static var _apiKey: String?
   |                        |- warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert '_apiKey' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate '_apiKey' with '@MainActor' if property should only be accessed from the main actor
   |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |     public static var apiKey: String? {
18 |         get { _apiKey ?? ProcessInfo.processInfo.environment[apiKeyName] }
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Bitcoin/BitcoinChain.swift:26:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BitcoinChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class BitcoinChain: CryptoChain {
   |                    `- note: class 'BitcoinChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
24 |     static let btcContractAddress = "BTC"
25 |
26 |     public static let `default`: BitcoinChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BitcoinChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
27 |
28 |     private init() {
[113/128] Compiling CryptoScraper BitcoinContract.swift
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/BinanceSmartChain/BinanceSmartChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BinanceSmartChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class BinanceSmartChain: CryptoChain {
   |                    `- note: class 'BinanceSmartChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let bnbContractAddress = "BNB"
27 |
28 |     public static let `default`: BinanceSmartChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BinanceSmartChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/BinanceSmartChain/BscScan/BscScan.swift:16:24: warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 |     public let userReadableName: String = "BscScan"
15 |
16 |     private static var _apiKey: String?
   |                        |- warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert '_apiKey' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate '_apiKey' with '@MainActor' if property should only be accessed from the main actor
   |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |     public static var apiKey: String? {
18 |         get { _apiKey ?? ProcessInfo.processInfo.environment[apiKeyName] }
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Bitcoin/BitcoinChain.swift:26:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BitcoinChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class BitcoinChain: CryptoChain {
   |                    `- note: class 'BitcoinChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
24 |     static let btcContractAddress = "BTC"
25 |
26 |     public static let `default`: BitcoinChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BitcoinChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
27 |
28 |     private init() {
[114/128] Compiling CryptoScraper BlockChainInfo+Accounts.swift
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/BinanceSmartChain/BinanceSmartChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BinanceSmartChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class BinanceSmartChain: CryptoChain {
   |                    `- note: class 'BinanceSmartChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let bnbContractAddress = "BNB"
27 |
28 |     public static let `default`: BinanceSmartChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BinanceSmartChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/BinanceSmartChain/BscScan/BscScan.swift:16:24: warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 |     public let userReadableName: String = "BscScan"
15 |
16 |     private static var _apiKey: String?
   |                        |- warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert '_apiKey' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate '_apiKey' with '@MainActor' if property should only be accessed from the main actor
   |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |     public static var apiKey: String? {
18 |         get { _apiKey ?? ProcessInfo.processInfo.environment[apiKeyName] }
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Bitcoin/BitcoinChain.swift:26:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BitcoinChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class BitcoinChain: CryptoChain {
   |                    `- note: class 'BitcoinChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
24 |     static let btcContractAddress = "BTC"
25 |
26 |     public static let `default`: BitcoinChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BitcoinChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
27 |
28 |     private init() {
[115/128] Compiling CryptoScraper BlockChainInfo+Transactions.swift
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/BinanceSmartChain/BinanceSmartChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BinanceSmartChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class BinanceSmartChain: CryptoChain {
   |                    `- note: class 'BinanceSmartChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let bnbContractAddress = "BNB"
27 |
28 |     public static let `default`: BinanceSmartChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BinanceSmartChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/BinanceSmartChain/BscScan/BscScan.swift:16:24: warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 |     public let userReadableName: String = "BscScan"
15 |
16 |     private static var _apiKey: String?
   |                        |- warning: static property '_apiKey' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert '_apiKey' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate '_apiKey' with '@MainActor' if property should only be accessed from the main actor
   |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |     public static var apiKey: String? {
18 |         get { _apiKey ?? ProcessInfo.processInfo.environment[apiKeyName] }
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Bitcoin/BitcoinChain.swift:26:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BitcoinChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class BitcoinChain: CryptoChain {
   |                    `- note: class 'BitcoinChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
24 |     static let btcContractAddress = "BTC"
25 |
26 |     public static let `default`: BitcoinChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BitcoinChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
27 |
28 |     private init() {
[116/128] Compiling CryptoScraper BlockChainInfo.swift
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/BlockChains.swift:9:24: warning: static property 'initialized' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 7 |
 8 | enum BlockChains {
 9 |     private static var initialized: Bool = false
   |                        |- warning: static property 'initialized' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert 'initialized' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate 'initialized' with '@MainActor' if property should only be accessed from the main actor
   |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
10 |
11 |     /// Initializes all of the supported block chains
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Bitcoin/BitcoinChain.swift:26:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BitcoinChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class BitcoinChain: CryptoChain {
   |                    `- note: class 'BitcoinChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
24 |     static let btcContractAddress = "BTC"
25 |
26 |     public static let `default`: BitcoinChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BitcoinChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
27 |
28 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Ethereum/EthereumChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'EthereumChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class EthereumChain: CryptoChain {
   |                    `- note: class 'EthereumChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let ethContractAddress = "ETH"
27 |
28 |     public static let `default`: EthereumChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'EthereumChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Fantom/FantomChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'FantomChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class FantomChain: CryptoChain {
   |                    `- note: class 'FantomChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let ftmContractAddress = "FTM"
27 |
28 |     public static let `default`: FantomChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'FantomChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/BinanceSmartChain/BinanceSmartChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BinanceSmartChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class BinanceSmartChain: CryptoChain {
   |                    `- note: class 'BinanceSmartChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let bnbContractAddress = "BNB"
27 |
28 |     public static let `default`: BinanceSmartChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BinanceSmartChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Polygon/PolygonChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'PolygonChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class PolygonChain: CryptoChain {
   |                    `- note: class 'PolygonChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let maticContractAddress = "Matic"
27 |
28 |     public static let `default`: PolygonChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'PolygonChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Optimism/OptimismChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'OptimismChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class OptimismChain: CryptoChain {
   |                    `- note: class 'OptimismChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let opContractAddress = "OP"
27 |
28 |     public static let `default`: OptimismChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'OptimismChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Tron/TronChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'TronChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class TronChain: CryptoChain {
   |                    `- note: class 'TronChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let trxContractAddress = "TRX"
27 |
28 |     public static let `default`: TronChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'TronChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
[117/128] Compiling CryptoScraper BlockChains.swift
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/BlockChains.swift:9:24: warning: static property 'initialized' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 7 |
 8 | enum BlockChains {
 9 |     private static var initialized: Bool = false
   |                        |- warning: static property 'initialized' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert 'initialized' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate 'initialized' with '@MainActor' if property should only be accessed from the main actor
   |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
10 |
11 |     /// Initializes all of the supported block chains
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Bitcoin/BitcoinChain.swift:26:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BitcoinChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class BitcoinChain: CryptoChain {
   |                    `- note: class 'BitcoinChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
24 |     static let btcContractAddress = "BTC"
25 |
26 |     public static let `default`: BitcoinChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BitcoinChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
27 |
28 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Ethereum/EthereumChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'EthereumChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class EthereumChain: CryptoChain {
   |                    `- note: class 'EthereumChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let ethContractAddress = "ETH"
27 |
28 |     public static let `default`: EthereumChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'EthereumChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Fantom/FantomChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'FantomChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class FantomChain: CryptoChain {
   |                    `- note: class 'FantomChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let ftmContractAddress = "FTM"
27 |
28 |     public static let `default`: FantomChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'FantomChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/BinanceSmartChain/BinanceSmartChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BinanceSmartChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class BinanceSmartChain: CryptoChain {
   |                    `- note: class 'BinanceSmartChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let bnbContractAddress = "BNB"
27 |
28 |     public static let `default`: BinanceSmartChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BinanceSmartChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Polygon/PolygonChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'PolygonChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class PolygonChain: CryptoChain {
   |                    `- note: class 'PolygonChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let maticContractAddress = "Matic"
27 |
28 |     public static let `default`: PolygonChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'PolygonChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Optimism/OptimismChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'OptimismChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class OptimismChain: CryptoChain {
   |                    `- note: class 'OptimismChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let opContractAddress = "OP"
27 |
28 |     public static let `default`: OptimismChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'OptimismChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Tron/TronChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'TronChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class TronChain: CryptoChain {
   |                    `- note: class 'TronChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let trxContractAddress = "TRX"
27 |
28 |     public static let `default`: TronChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'TronChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
[118/128] Compiling CryptoScraper EthereumChain.swift
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/BlockChains.swift:9:24: warning: static property 'initialized' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 7 |
 8 | enum BlockChains {
 9 |     private static var initialized: Bool = false
   |                        |- warning: static property 'initialized' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert 'initialized' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate 'initialized' with '@MainActor' if property should only be accessed from the main actor
   |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
10 |
11 |     /// Initializes all of the supported block chains
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Bitcoin/BitcoinChain.swift:26:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BitcoinChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class BitcoinChain: CryptoChain {
   |                    `- note: class 'BitcoinChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
24 |     static let btcContractAddress = "BTC"
25 |
26 |     public static let `default`: BitcoinChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BitcoinChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
27 |
28 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Ethereum/EthereumChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'EthereumChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class EthereumChain: CryptoChain {
   |                    `- note: class 'EthereumChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let ethContractAddress = "ETH"
27 |
28 |     public static let `default`: EthereumChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'EthereumChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Fantom/FantomChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'FantomChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class FantomChain: CryptoChain {
   |                    `- note: class 'FantomChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let ftmContractAddress = "FTM"
27 |
28 |     public static let `default`: FantomChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'FantomChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/BinanceSmartChain/BinanceSmartChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BinanceSmartChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class BinanceSmartChain: CryptoChain {
   |                    `- note: class 'BinanceSmartChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let bnbContractAddress = "BNB"
27 |
28 |     public static let `default`: BinanceSmartChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BinanceSmartChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Polygon/PolygonChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'PolygonChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class PolygonChain: CryptoChain {
   |                    `- note: class 'PolygonChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let maticContractAddress = "Matic"
27 |
28 |     public static let `default`: PolygonChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'PolygonChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Optimism/OptimismChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'OptimismChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class OptimismChain: CryptoChain {
   |                    `- note: class 'OptimismChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let opContractAddress = "OP"
27 |
28 |     public static let `default`: OptimismChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'OptimismChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Tron/TronChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'TronChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class TronChain: CryptoChain {
   |                    `- note: class 'TronChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let trxContractAddress = "TRX"
27 |
28 |     public static let `default`: TronChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'TronChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
[119/128] Compiling CryptoScraper EthereumContract.swift
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/BlockChains.swift:9:24: warning: static property 'initialized' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 7 |
 8 | enum BlockChains {
 9 |     private static var initialized: Bool = false
   |                        |- warning: static property 'initialized' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert 'initialized' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate 'initialized' with '@MainActor' if property should only be accessed from the main actor
   |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
10 |
11 |     /// Initializes all of the supported block chains
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Bitcoin/BitcoinChain.swift:26:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BitcoinChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class BitcoinChain: CryptoChain {
   |                    `- note: class 'BitcoinChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
24 |     static let btcContractAddress = "BTC"
25 |
26 |     public static let `default`: BitcoinChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BitcoinChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
27 |
28 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Ethereum/EthereumChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'EthereumChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class EthereumChain: CryptoChain {
   |                    `- note: class 'EthereumChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let ethContractAddress = "ETH"
27 |
28 |     public static let `default`: EthereumChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'EthereumChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Fantom/FantomChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'FantomChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class FantomChain: CryptoChain {
   |                    `- note: class 'FantomChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let ftmContractAddress = "FTM"
27 |
28 |     public static let `default`: FantomChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'FantomChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/BinanceSmartChain/BinanceSmartChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BinanceSmartChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class BinanceSmartChain: CryptoChain {
   |                    `- note: class 'BinanceSmartChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let bnbContractAddress = "BNB"
27 |
28 |     public static let `default`: BinanceSmartChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BinanceSmartChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Polygon/PolygonChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'PolygonChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class PolygonChain: CryptoChain {
   |                    `- note: class 'PolygonChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let maticContractAddress = "Matic"
27 |
28 |     public static let `default`: PolygonChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'PolygonChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Optimism/OptimismChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'OptimismChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class OptimismChain: CryptoChain {
   |                    `- note: class 'OptimismChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let opContractAddress = "OP"
27 |
28 |     public static let `default`: OptimismChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'OptimismChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Tron/TronChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'TronChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class TronChain: CryptoChain {
   |                    `- note: class 'TronChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let trxContractAddress = "TRX"
27 |
28 |     public static let `default`: TronChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'TronChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
[120/128] Compiling CryptoScraper EthereumScanner+Accounts.swift
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/BlockChains.swift:9:24: warning: static property 'initialized' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 7 |
 8 | enum BlockChains {
 9 |     private static var initialized: Bool = false
   |                        |- warning: static property 'initialized' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert 'initialized' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate 'initialized' with '@MainActor' if property should only be accessed from the main actor
   |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
10 |
11 |     /// Initializes all of the supported block chains
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Bitcoin/BitcoinChain.swift:26:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BitcoinChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class BitcoinChain: CryptoChain {
   |                    `- note: class 'BitcoinChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
24 |     static let btcContractAddress = "BTC"
25 |
26 |     public static let `default`: BitcoinChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BitcoinChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
27 |
28 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Ethereum/EthereumChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'EthereumChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class EthereumChain: CryptoChain {
   |                    `- note: class 'EthereumChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let ethContractAddress = "ETH"
27 |
28 |     public static let `default`: EthereumChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'EthereumChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Fantom/FantomChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'FantomChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class FantomChain: CryptoChain {
   |                    `- note: class 'FantomChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let ftmContractAddress = "FTM"
27 |
28 |     public static let `default`: FantomChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'FantomChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/BinanceSmartChain/BinanceSmartChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BinanceSmartChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class BinanceSmartChain: CryptoChain {
   |                    `- note: class 'BinanceSmartChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let bnbContractAddress = "BNB"
27 |
28 |     public static let `default`: BinanceSmartChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BinanceSmartChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Polygon/PolygonChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'PolygonChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class PolygonChain: CryptoChain {
   |                    `- note: class 'PolygonChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let maticContractAddress = "Matic"
27 |
28 |     public static let `default`: PolygonChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'PolygonChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Optimism/OptimismChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'OptimismChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class OptimismChain: CryptoChain {
   |                    `- note: class 'OptimismChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let opContractAddress = "OP"
27 |
28 |     public static let `default`: OptimismChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'OptimismChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Tron/TronChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'TronChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class TronChain: CryptoChain {
   |                    `- note: class 'TronChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let trxContractAddress = "TRX"
27 |
28 |     public static let `default`: TronChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'TronChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
[121/128] Compiling CryptoScraper EthereumScanner+Tokens.swift
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/BlockChains.swift:9:24: warning: static property 'initialized' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 7 |
 8 | enum BlockChains {
 9 |     private static var initialized: Bool = false
   |                        |- warning: static property 'initialized' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert 'initialized' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate 'initialized' with '@MainActor' if property should only be accessed from the main actor
   |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
10 |
11 |     /// Initializes all of the supported block chains
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Bitcoin/BitcoinChain.swift:26:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BitcoinChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class BitcoinChain: CryptoChain {
   |                    `- note: class 'BitcoinChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
24 |     static let btcContractAddress = "BTC"
25 |
26 |     public static let `default`: BitcoinChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BitcoinChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
27 |
28 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Ethereum/EthereumChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'EthereumChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class EthereumChain: CryptoChain {
   |                    `- note: class 'EthereumChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let ethContractAddress = "ETH"
27 |
28 |     public static let `default`: EthereumChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'EthereumChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Fantom/FantomChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'FantomChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class FantomChain: CryptoChain {
   |                    `- note: class 'FantomChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let ftmContractAddress = "FTM"
27 |
28 |     public static let `default`: FantomChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'FantomChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/BinanceSmartChain/BinanceSmartChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BinanceSmartChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class BinanceSmartChain: CryptoChain {
   |                    `- note: class 'BinanceSmartChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let bnbContractAddress = "BNB"
27 |
28 |     public static let `default`: BinanceSmartChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BinanceSmartChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Polygon/PolygonChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'PolygonChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class PolygonChain: CryptoChain {
   |                    `- note: class 'PolygonChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let maticContractAddress = "Matic"
27 |
28 |     public static let `default`: PolygonChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'PolygonChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Optimism/OptimismChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'OptimismChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class OptimismChain: CryptoChain {
   |                    `- note: class 'OptimismChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let opContractAddress = "OP"
27 |
28 |     public static let `default`: OptimismChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'OptimismChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Tron/TronChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'TronChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class TronChain: CryptoChain {
   |                    `- note: class 'TronChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let trxContractAddress = "TRX"
27 |
28 |     public static let `default`: TronChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'TronChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
[122/128] Compiling CryptoScraper EthereumScanner+Transactions.swift
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/BlockChains.swift:9:24: warning: static property 'initialized' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 7 |
 8 | enum BlockChains {
 9 |     private static var initialized: Bool = false
   |                        |- warning: static property 'initialized' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert 'initialized' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate 'initialized' with '@MainActor' if property should only be accessed from the main actor
   |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
10 |
11 |     /// Initializes all of the supported block chains
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Bitcoin/BitcoinChain.swift:26:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BitcoinChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class BitcoinChain: CryptoChain {
   |                    `- note: class 'BitcoinChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
24 |     static let btcContractAddress = "BTC"
25 |
26 |     public static let `default`: BitcoinChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BitcoinChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
27 |
28 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Ethereum/EthereumChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'EthereumChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class EthereumChain: CryptoChain {
   |                    `- note: class 'EthereumChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let ethContractAddress = "ETH"
27 |
28 |     public static let `default`: EthereumChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'EthereumChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Fantom/FantomChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'FantomChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class FantomChain: CryptoChain {
   |                    `- note: class 'FantomChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let ftmContractAddress = "FTM"
27 |
28 |     public static let `default`: FantomChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'FantomChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/BinanceSmartChain/BinanceSmartChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BinanceSmartChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class BinanceSmartChain: CryptoChain {
   |                    `- note: class 'BinanceSmartChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let bnbContractAddress = "BNB"
27 |
28 |     public static let `default`: BinanceSmartChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BinanceSmartChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Polygon/PolygonChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'PolygonChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class PolygonChain: CryptoChain {
   |                    `- note: class 'PolygonChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let maticContractAddress = "Matic"
27 |
28 |     public static let `default`: PolygonChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'PolygonChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Optimism/OptimismChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'OptimismChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class OptimismChain: CryptoChain {
   |                    `- note: class 'OptimismChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let opContractAddress = "OP"
27 |
28 |     public static let `default`: OptimismChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'OptimismChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
/host/spi-builder-workspace/Sources/CryptoScraper/BlockChains/Tron/TronChain.swift:28:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'TronChain' may have shared mutable state; this is an error in the Swift 6 language mode
 6 | import Foundation
 7 |
 8 | public final class TronChain: CryptoChain {
   |                    `- note: class 'TronChain' does not conform to the 'Sendable' protocol
 9 |     // MARK: CryptoChain
10 |
   :
26 |     static let trxContractAddress = "TRX"
27 |
28 |     public static let `default`: TronChain = .init()
   |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'TronChain' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
29 |
30 |     private init() {
[123/128] Compiling CryptoScraper CryptoDataAggregator.swift
/host/spi-builder-workspace/Sources/CryptoScraper/Utility/FoundationDataFetch.swift:28:16: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'FoundationDataFetch' may have shared mutable state; this is an error in the Swift 6 language mode
 23 | private struct DummyError: Decodable, Error {}
 24 |
 25 | final class FoundationDataFetch {
    |             `- note: class 'FoundationDataFetch' does not conform to the 'Sendable' protocol
 26 |     private let urlSession: URLSession
 27 |
 28 |     static let `default`: FoundationDataFetch = .init(urlSession: FoundationDataFetch.UrlSession())
    |                |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'FoundationDataFetch' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 29 |
 30 |     /// Fetches the given data of type ``ResultValue`` from the given ``URL``
/host/spi-builder-workspace/Sources/CryptoScraper/Utility/FoundationDataFetch.swift:147:31: warning: capture of 'callback' with non-sendable type '(Result<ResultValue, DataFetchError>) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
145 |                     response: response,
146 |                     error: error,
147 |                     callback: callback
    |                               |- warning: capture of 'callback' with non-sendable type '(Result<ResultValue, DataFetchError>) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
    |                               `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
148 |                 )
149 |             }
[124/128] Compiling CryptoScraper CryptoInfo.swift
/host/spi-builder-workspace/Sources/CryptoScraper/Utility/FoundationDataFetch.swift:28:16: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'FoundationDataFetch' may have shared mutable state; this is an error in the Swift 6 language mode
 23 | private struct DummyError: Decodable, Error {}
 24 |
 25 | final class FoundationDataFetch {
    |             `- note: class 'FoundationDataFetch' does not conform to the 'Sendable' protocol
 26 |     private let urlSession: URLSession
 27 |
 28 |     static let `default`: FoundationDataFetch = .init(urlSession: FoundationDataFetch.UrlSession())
    |                |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'FoundationDataFetch' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 29 |
 30 |     /// Fetches the given data of type ``ResultValue`` from the given ``URL``
/host/spi-builder-workspace/Sources/CryptoScraper/Utility/FoundationDataFetch.swift:147:31: warning: capture of 'callback' with non-sendable type '(Result<ResultValue, DataFetchError>) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
145 |                     response: response,
146 |                     error: error,
147 |                     callback: callback
    |                               |- warning: capture of 'callback' with non-sendable type '(Result<ResultValue, DataFetchError>) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
    |                               `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
148 |                 )
149 |             }
[125/128] Compiling CryptoScraper CryptoScanner.swift
/host/spi-builder-workspace/Sources/CryptoScraper/Utility/FoundationDataFetch.swift:28:16: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'FoundationDataFetch' may have shared mutable state; this is an error in the Swift 6 language mode
 23 | private struct DummyError: Decodable, Error {}
 24 |
 25 | final class FoundationDataFetch {
    |             `- note: class 'FoundationDataFetch' does not conform to the 'Sendable' protocol
 26 |     private let urlSession: URLSession
 27 |
 28 |     static let `default`: FoundationDataFetch = .init(urlSession: FoundationDataFetch.UrlSession())
    |                |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'FoundationDataFetch' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 29 |
 30 |     /// Fetches the given data of type ``ResultValue`` from the given ``URL``
/host/spi-builder-workspace/Sources/CryptoScraper/Utility/FoundationDataFetch.swift:147:31: warning: capture of 'callback' with non-sendable type '(Result<ResultValue, DataFetchError>) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
145 |                     response: response,
146 |                     error: error,
147 |                     callback: callback
    |                               |- warning: capture of 'callback' with non-sendable type '(Result<ResultValue, DataFetchError>) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
    |                               `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
148 |                 )
149 |             }
[126/128] Compiling CryptoScraper CryptoTransaction.swift
/host/spi-builder-workspace/Sources/CryptoScraper/Utility/FoundationDataFetch.swift:28:16: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'FoundationDataFetch' may have shared mutable state; this is an error in the Swift 6 language mode
 23 | private struct DummyError: Decodable, Error {}
 24 |
 25 | final class FoundationDataFetch {
    |             `- note: class 'FoundationDataFetch' does not conform to the 'Sendable' protocol
 26 |     private let urlSession: URLSession
 27 |
 28 |     static let `default`: FoundationDataFetch = .init(urlSession: FoundationDataFetch.UrlSession())
    |                |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'FoundationDataFetch' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 29 |
 30 |     /// Fetches the given data of type ``ResultValue`` from the given ``URL``
/host/spi-builder-workspace/Sources/CryptoScraper/Utility/FoundationDataFetch.swift:147:31: warning: capture of 'callback' with non-sendable type '(Result<ResultValue, DataFetchError>) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
145 |                     response: response,
146 |                     error: error,
147 |                     callback: callback
    |                               |- warning: capture of 'callback' with non-sendable type '(Result<ResultValue, DataFetchError>) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
    |                               `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
148 |                 )
149 |             }
[127/128] Compiling CryptoScraper FoundationDataFetch.swift
/host/spi-builder-workspace/Sources/CryptoScraper/Utility/FoundationDataFetch.swift:28:16: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'FoundationDataFetch' may have shared mutable state; this is an error in the Swift 6 language mode
 23 | private struct DummyError: Decodable, Error {}
 24 |
 25 | final class FoundationDataFetch {
    |             `- note: class 'FoundationDataFetch' does not conform to the 'Sendable' protocol
 26 |     private let urlSession: URLSession
 27 |
 28 |     static let `default`: FoundationDataFetch = .init(urlSession: FoundationDataFetch.UrlSession())
    |                |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'FoundationDataFetch' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 29 |
 30 |     /// Fetches the given data of type ``ResultValue`` from the given ``URL``
/host/spi-builder-workspace/Sources/CryptoScraper/Utility/FoundationDataFetch.swift:147:31: warning: capture of 'callback' with non-sendable type '(Result<ResultValue, DataFetchError>) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
145 |                     response: response,
146 |                     error: error,
147 |                     callback: callback
    |                               |- warning: capture of 'callback' with non-sendable type '(Result<ResultValue, DataFetchError>) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
    |                               `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
148 |                 )
149 |             }
[128/128] Compiling CryptoScraper JSONDecoder.swift
/host/spi-builder-workspace/Sources/CryptoScraper/Utility/FoundationDataFetch.swift:28:16: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'FoundationDataFetch' may have shared mutable state; this is an error in the Swift 6 language mode
 23 | private struct DummyError: Decodable, Error {}
 24 |
 25 | final class FoundationDataFetch {
    |             `- note: class 'FoundationDataFetch' does not conform to the 'Sendable' protocol
 26 |     private let urlSession: URLSession
 27 |
 28 |     static let `default`: FoundationDataFetch = .init(urlSession: FoundationDataFetch.UrlSession())
    |                |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'FoundationDataFetch' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'default' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 29 |
 30 |     /// Fetches the given data of type ``ResultValue`` from the given ``URL``
/host/spi-builder-workspace/Sources/CryptoScraper/Utility/FoundationDataFetch.swift:147:31: warning: capture of 'callback' with non-sendable type '(Result<ResultValue, DataFetchError>) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
145 |                     response: response,
146 |                     error: error,
147 |                     callback: callback
    |                               |- warning: capture of 'callback' with non-sendable type '(Result<ResultValue, DataFetchError>) -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
    |                               `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
148 |                 )
149 |             }
Build complete! (31.21s)
Build complete.
{
  "dependencies" : [
    {
      "identity" : "awesomenumberskit",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "0.3.4",
            "upper_bound" : "1.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/oscbyspro/AwesomeNumbersKit.git"
    }
  ],
  "manifest_display_name" : "CryptoScraper",
  "name" : "CryptoScraper",
  "path" : "/host/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "12.0"
    },
    {
      "name" : "ios",
      "version" : "15.0"
    }
  ],
  "products" : [
    {
      "name" : "CryptoScraper",
      "targets" : [
        "CryptoScraper"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "CryptoScraperTests",
      "module_type" : "SwiftTarget",
      "name" : "CryptoScraperTests",
      "path" : "Tests/CryptoScraperTests",
      "sources" : [
        "BlockChains/BinanceSmartChain/BNBContractTests.swift",
        "BlockChains/BinanceSmartChain/BscScan/BscScanTests.swift",
        "BlockChains/Bitcoin/BitcoinContractTests.swift",
        "BlockChains/Bitcoin/BlockChainInfo/BlockChainInfoTests.swift",
        "BlockChains/BlockChainsTests.swift",
        "BlockChains/Ethereum/EthereumContractTests.swift",
        "BlockChains/Ethereum/Etherscan/EtherScanTests.swift",
        "BlockChains/Fantom/FTMScan/FTMScanTests.swift",
        "BlockChains/Fantom/FantomContractTests.swift",
        "BlockChains/Optimism/OptimismContractTests.swift",
        "BlockChains/Optimism/OptimisticEtherscan/OptimisticEtherscanTests.swift",
        "BlockChains/Polygon/MaticContractTests.swift",
        "BlockChains/Polygon/PolygonScan/PolygonScanTests.swift",
        "BlockChains/Tron/TronContractTests.swift",
        "BlockChains/Tron/TronScan/TronScanTests.swift",
        "CryptoScraperTests.swift",
        "DataAggregators/CoinGecko/CoinGeckoAggregatorTests.swift",
        "DataAggregators/CoinMarketCap/CoinMarketCapAggregatorTests.swift",
        "Utility/FoundationDataFetchTests.swift",
        "Utility/JSONDecoderTests.swift"
      ],
      "target_dependencies" : [
        "CryptoScraper"
      ],
      "type" : "test"
    },
    {
      "c99name" : "CryptoScraper",
      "module_type" : "SwiftTarget",
      "name" : "CryptoScraper",
      "path" : "Sources/CryptoScraper",
      "product_dependencies" : [
        "AwesomeNumbersKit"
      ],
      "product_memberships" : [
        "CryptoScraper"
      ],
      "sources" : [
        "BlockChains/BinanceSmartChain/BNBContract.swift",
        "BlockChains/BinanceSmartChain/BinanceSmartChain.swift",
        "BlockChains/BinanceSmartChain/BscScan/BscScan.swift",
        "BlockChains/Bitcoin/BitcoinChain.swift",
        "BlockChains/Bitcoin/BitcoinContract.swift",
        "BlockChains/Bitcoin/BlockChainInfo/BlockChainInfo+Accounts.swift",
        "BlockChains/Bitcoin/BlockChainInfo/BlockChainInfo+Transactions.swift",
        "BlockChains/Bitcoin/BlockChainInfo/BlockChainInfo.swift",
        "BlockChains/BlockChains.swift",
        "BlockChains/Ethereum/EthereumChain.swift",
        "BlockChains/Ethereum/EthereumContract.swift",
        "BlockChains/Ethereum/EthereumScanner/EthereumScanner+Accounts.swift",
        "BlockChains/Ethereum/EthereumScanner/EthereumScanner+Tokens.swift",
        "BlockChains/Ethereum/EthereumScanner/EthereumScanner+Transactions.swift",
        "BlockChains/Ethereum/EthereumScanner/EthereumScanner.swift",
        "BlockChains/Ethereum/Etherscan/Etherscan.swift",
        "BlockChains/Fantom/FTMScan/FTMScan.swift",
        "BlockChains/Fantom/FantomChain.swift",
        "BlockChains/Fantom/FantomContract.swift",
        "BlockChains/Optimism/OptimismChain.swift",
        "BlockChains/Optimism/OptimismContract.swift",
        "BlockChains/Optimism/OptimisticEtherscan/OptimisticEtherscan.swift",
        "BlockChains/Polygon/MaticContract.swift",
        "BlockChains/Polygon/PolygonChain.swift",
        "BlockChains/Polygon/PolygonScan/PolygonScan.swift",
        "BlockChains/Tron/TronChain.swift",
        "BlockChains/Tron/TronContract.swift",
        "BlockChains/Tron/TronScan/TronScan+Accounts.swift",
        "BlockChains/Tron/TronScan/TronScan+Transactions.swift",
        "BlockChains/Tron/TronScan/TronScan.swift",
        "CryptoScraper.swift",
        "DataAggregators/CoinGecko/CoinGeckoAggregator+Availability.swift",
        "DataAggregators/CoinGecko/CoinGeckoAggregator+Coins.swift",
        "DataAggregators/CoinGecko/CoinGeckoAggregator.swift",
        "DataAggregators/CoinGecko/CoinGeckoError.swift",
        "DataAggregators/CoinMarketCap/CoinMarketCapAggregator+Coins.swift",
        "DataAggregators/CoinMarketCap/CoinMarketCapAggregator.swift",
        "DataAggregators/CoinMarketCap/CoinMarketCapError.swift",
        "Exports.swift",
        "Extensions/DateFormatter.swift",
        "Extensions/Decodable.swift",
        "Extensions/DecodingError.swift",
        "Extensions/URL.swift",
        "Protocols/CryptoAmount.swift",
        "Protocols/CryptoChain.swift",
        "Protocols/CryptoContract.swift",
        "Protocols/CryptoDataAggregator.swift",
        "Protocols/CryptoInfo.swift",
        "Protocols/CryptoScanner.swift",
        "Protocols/CryptoTransaction.swift",
        "Utility/FoundationDataFetch.swift",
        "Utility/JSONDecoder.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.7"
}
basic-6.0-latest: Pulling from finestructure/spi-images
Digest: sha256:47d26c99ca4f1ac0a332c85fd5b13ff4390e72115219984a57a68fe9d1063a05
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.0-latest
Done.