The Swift Package Index logo.Swift Package Index

Build Information

Failed to build GoogleSheetsSwift, reference master (14bbd7), with Swift 6.1 for Linux on 24 Aug 2025 15:19:42 UTC.

Build Command

bash -c docker run --pull=always --rm -v "checkouts-4606859-0":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/finestructure/spi-images:basic-6.1-latest swift build --triple x86_64-unknown-linux-gnu 2>&1

Build Log

 14 | }
 15 |
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:13:63: error: 'URLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 11 | /// Protocol for URLSession abstraction to enable testing
 12 | public protocol URLSessionProtocol {
 13 |     func data(for request: URLRequest) async throws -> (Data, URLResponse)
    |                                                               `- error: 'URLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 14 | }
 15 |
Foundation.URLResponse:2:18: note: 'URLResponse' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLResponse = AnyObject
  |                  `- note: 'URLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:17:1: error: non-nominal type 'URLSession' (aka 'AnyObject') cannot be extended
 15 |
 16 | /// Extension to make URLSession conform to URLSessionProtocol
 17 | extension URLSession: URLSessionProtocol {}
    | `- error: non-nominal type 'URLSession' (aka 'AnyObject') cannot be extended
 18 |
 19 | /// Request builder for constructing Google Sheets API requests
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:341:34: error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
339 | public protocol HTTPLogger {
340 |     func logRequest(_ request: HTTPRequest)
341 |     func logResponse(_ response: HTTPURLResponse, data: Data)
    |                                  `- error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
342 |     func logError(_ error: Error, for request: HTTPRequest)
343 | }
Foundation.HTTPURLResponse:2:18: note: 'HTTPURLResponse' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias HTTPURLResponse = AnyObject
  |                  `- note: 'HTTPURLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:359:41: error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
357 |     }
358 |
359 |     public func logResponse(_ response: HTTPURLResponse, data: Data) {
    |                                         `- error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
360 |         print("✅ HTTP Response: \(response.statusCode) from \(response.url?.absoluteString ?? "unknown")")
361 |         if let responseString = String(data: data, encoding: .utf8) {
Foundation.HTTPURLResponse:2:18: note: 'HTTPURLResponse' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias HTTPURLResponse = AnyObject
  |                  `- note: 'HTTPURLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:379:50: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
377 |
378 |     public init(
379 |         session: URLSessionProtocol = URLSession.shared,
    |                                                  `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
380 |         logger: HTTPLogger? = nil,
381 |         retryConfiguration: RetryConfiguration = .default,
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:443:79: error: cannot find type 'SecKey' in scope
441 |     }
442 |
443 |     private static func parsePrivateKey(_ privateKeyString: String) throws -> SecKey {
    |                                                                               `- error: cannot find type 'SecKey' in scope
444 |         // Remove PEM headers and whitespace
445 |         let cleanKey = privateKeyString
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/Performance/BatchOptimizer.swift:20:27: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BatchOptimizer.Configuration' may have shared mutable state; this is an error in the Swift 6 language mode
  5 |
  6 |     /// Configuration for batch optimization
  7 |     public struct Configuration {
    |                   `- note: consider making struct 'Configuration' conform to the 'Sendable' protocol
  8 |         /// Maximum number of ranges to include in a single batch request
  9 |         public let maxBatchSize: Int
    :
 18 |         public let sortRanges: Bool
 19 |
 20 |         public static let `default` = Configuration(
    |                           |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BatchOptimizer.Configuration' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'default' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 21 |             maxBatchSize: 100,
 22 |             minBatchSize: 2,
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/Performance/MemoryEfficientDataHandler.swift:23:27: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'MemoryEfficientDataHandler.Configuration' may have shared mutable state; this is an error in the Swift 6 language mode
  5 |
  6 |     /// Configuration for memory-efficient operations
  7 |     public struct Configuration {
    |                   `- note: consider making struct 'Configuration' conform to the 'Sendable' protocol
  8 |         /// Maximum number of rows to process in memory at once
  9 |         public let maxRowsInMemory: Int
    :
 21 |         public let compressInMemory: Bool
 22 |
 23 |         public static let `default` = Configuration(
    |                           |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'MemoryEfficientDataHandler.Configuration' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'default' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 24 |             maxRowsInMemory: 10000,
 25 |             maxColumnsInMemory: 100,
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/Performance/MemoryEfficientDataHandler.swift:31:27: warning: static property 'conservative' is not concurrency-safe because non-'Sendable' type 'MemoryEfficientDataHandler.Configuration' may have shared mutable state; this is an error in the Swift 6 language mode
  5 |
  6 |     /// Configuration for memory-efficient operations
  7 |     public struct Configuration {
    |                   `- note: consider making struct 'Configuration' conform to the 'Sendable' protocol
  8 |         /// Maximum number of rows to process in memory at once
  9 |         public let maxRowsInMemory: Int
    :
 29 |         )
 30 |
 31 |         public static let conservative = Configuration(
    |                           |- warning: static property 'conservative' is not concurrency-safe because non-'Sendable' type 'MemoryEfficientDataHandler.Configuration' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'conservative' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 32 |             maxRowsInMemory: 1000,
 33 |             maxColumnsInMemory: 50,
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/RetryConfiguration.swift:43:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'RetryConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
  2 |
  3 | /// Configuration for retry behavior with exponential backoff
  4 | public struct RetryConfiguration {
    |               `- note: consider making struct 'RetryConfiguration' conform to the 'Sendable' protocol
  5 |     /// Maximum number of retry attempts
  6 |     public let maxRetries: Int
    :
 41 |
 42 |     /// Default retry configuration
 43 |     public static let `default` = RetryConfiguration()
    |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'RetryConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'default' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 44 |
 45 |     /// Conservative retry configuration with longer delays
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/RetryConfiguration.swift:46:23: warning: static property 'conservative' is not concurrency-safe because non-'Sendable' type 'RetryConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
  2 |
  3 | /// Configuration for retry behavior with exponential backoff
  4 | public struct RetryConfiguration {
    |               `- note: consider making struct 'RetryConfiguration' conform to the 'Sendable' protocol
  5 |     /// Maximum number of retry attempts
  6 |     public let maxRetries: Int
    :
 44 |
 45 |     /// Conservative retry configuration with longer delays
 46 |     public static let conservative = RetryConfiguration(
    |                       |- warning: static property 'conservative' is not concurrency-safe because non-'Sendable' type 'RetryConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'conservative' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 47 |         maxRetries: 5,
 48 |         baseDelay: 2.0,
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/RetryConfiguration.swift:55:23: warning: static property 'aggressive' is not concurrency-safe because non-'Sendable' type 'RetryConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
  2 |
  3 | /// Configuration for retry behavior with exponential backoff
  4 | public struct RetryConfiguration {
    |               `- note: consider making struct 'RetryConfiguration' conform to the 'Sendable' protocol
  5 |     /// Maximum number of retry attempts
  6 |     public let maxRetries: Int
    :
 53 |
 54 |     /// Aggressive retry configuration with shorter delays
 55 |     public static let aggressive = RetryConfiguration(
    |                       |- warning: static property 'aggressive' is not concurrency-safe because non-'Sendable' type 'RetryConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'aggressive' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 56 |         maxRetries: 2,
 57 |         baseDelay: 0.5,
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/RetryConfiguration.swift:64:23: warning: static property 'none' is not concurrency-safe because non-'Sendable' type 'RetryConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
  2 |
  3 | /// Configuration for retry behavior with exponential backoff
  4 | public struct RetryConfiguration {
    |               `- note: consider making struct 'RetryConfiguration' conform to the 'Sendable' protocol
  5 |     /// Maximum number of retry attempts
  6 |     public let maxRetries: Int
    :
 62 |
 63 |     /// No retry configuration
 64 |     public static let none = RetryConfiguration(maxRetries: 0)
    |                       |- warning: static property 'none' is not concurrency-safe because non-'Sendable' type 'RetryConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'none' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 65 |
 66 |     /// Calculate the delay for a specific retry attempt
[5/27] Compiling GoogleSheetsSwift ValuesService.swift
[6/27] Compiling GoogleSheetsSwift ValuesServiceProtocol.swift
[7/27] Compiling GoogleSheetsSwift SpreadsheetsService.swift
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/Services/SpreadsheetsService.swift:194:13: warning: initialization of immutable value 'requestBuilder' was never used; consider replacing with assignment to '_' or removing it
192 |     ) async throws -> HTTPRequest {
193 |         let accessToken = try await tokenManager.getAccessToken()
194 |         let requestBuilder = RequestBuilder(accessToken: accessToken)
    |             `- warning: initialization of immutable value 'requestBuilder' was never used; consider replacing with assignment to '_' or removing it
195 |
196 |         let baseURL = "https://sheets.googleapis.com/v4"
[8/27] Compiling GoogleSheetsSwift SpreadsheetsServiceProtocol.swift
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/Services/SpreadsheetsService.swift:194:13: warning: initialization of immutable value 'requestBuilder' was never used; consider replacing with assignment to '_' or removing it
192 |     ) async throws -> HTTPRequest {
193 |         let accessToken = try await tokenManager.getAccessToken()
194 |         let requestBuilder = RequestBuilder(accessToken: accessToken)
    |             `- warning: initialization of immutable value 'requestBuilder' was never used; consider replacing with assignment to '_' or removing it
195 |
196 |         let baseURL = "https://sheets.googleapis.com/v4"
[9/27] Compiling GoogleSheetsSwift GoogleSheetsLogger.swift
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsLogger.swift:315:45: error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
313 |
314 |     /// Log HTTP response details
315 |     public func logHTTPResponse(_ response: HTTPURLResponse, data: Data, context: LoggingContext) {
    |                                             `- error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
316 |         guard isEnabled(for: .debug) else { return }
317 |
Foundation.HTTPURLResponse:2:18: note: 'HTTPURLResponse' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias HTTPURLResponse = AnyObject
  |                  `- note: 'HTTPURLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsLogger.swift:387:41: error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
385 |     }
386 |
387 |     public func logResponse(_ response: HTTPURLResponse, data: Data) {
    |                                         `- error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
388 |         guard logger.isEnabled(for: .debug) else { return }
389 |
Foundation.HTTPURLResponse:2:18: note: 'HTTPURLResponse' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias HTTPURLResponse = AnyObject
  |                  `- note: 'HTTPURLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsLogger.swift:136:33: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
134 |         // Create file if it doesn't exist
135 |         if !FileManager.default.fileExists(atPath: fileURL.path) {
136 |             FileManager.default.createFile(atPath: fileURL.path, contents: nil, attributes: nil)
    |                                 `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
137 |         }
138 |
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsLogger.swift:319:43: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
317 |
318 |         var metadata = context.toMetadata()
319 |         metadata["statusCode"] = response.statusCode
    |                                           `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
320 |         metadata["responseHeaders"] = response.allHeaderFields
321 |
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsLogger.swift:320:48: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'allHeaderFields'
318 |         var metadata = context.toMetadata()
319 |         metadata["statusCode"] = response.statusCode
320 |         metadata["responseHeaders"] = response.allHeaderFields
    |                                                `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'allHeaderFields'
321 |
322 |         if let responseString = String(data: data, encoding: .utf8) {
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsLogger.swift:391:36: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
389 |
390 |         var metadata: [String: Any] = [
391 |             "statusCode": response.statusCode,
    |                                    `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
392 |             "url": response.url?.absoluteString ?? "unknown",
393 |             "headers": response.allHeaderFields
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsLogger.swift:392:29: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'url'
390 |         var metadata: [String: Any] = [
391 |             "statusCode": response.statusCode,
392 |             "url": response.url?.absoluteString ?? "unknown",
    |                             `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'url'
393 |             "headers": response.allHeaderFields
394 |         ]
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsLogger.swift:393:33: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'allHeaderFields'
391 |             "statusCode": response.statusCode,
392 |             "url": response.url?.absoluteString ?? "unknown",
393 |             "headers": response.allHeaderFields
    |                                 `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'allHeaderFields'
394 |         ]
395 |
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsSwift.swift:40:23: warning: static property 'buildInfo' is not concurrency-safe because non-'Sendable' type 'BuildInfo' may have shared mutable state; this is an error in the Swift 6 language mode
38 |
39 |     /// SDK build information
40 |     public static let buildInfo = BuildInfo(
   |                       |- warning: static property 'buildInfo' is not concurrency-safe because non-'Sendable' type 'BuildInfo' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: add '@MainActor' to make static property 'buildInfo' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
41 |         version: version,
42 |         apiVersion: googleSheetsAPIVersion,
   :
52 |
53 | /// Build information for the SDK
54 | public struct BuildInfo {
   |               `- note: consider making struct 'BuildInfo' conform to the 'Sendable' protocol
55 |     public let version: String
56 |     public let apiVersion: String
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:13:28: error: cannot find type 'URLRequest' in scope
 11 | /// Protocol for URLSession abstraction to enable testing
 12 | public protocol URLSessionProtocol {
 13 |     func data(for request: URLRequest) async throws -> (Data, URLResponse)
    |                            `- error: cannot find type 'URLRequest' in scope
 14 | }
 15 |
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:13:63: error: 'URLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 11 | /// Protocol for URLSession abstraction to enable testing
 12 | public protocol URLSessionProtocol {
 13 |     func data(for request: URLRequest) async throws -> (Data, URLResponse)
    |                                                               `- error: 'URLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 14 | }
 15 |
Foundation.URLResponse:2:18: note: 'URLResponse' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLResponse = AnyObject
  |                  `- note: 'URLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:17:1: error: non-nominal type 'URLSession' (aka 'AnyObject') cannot be extended
 15 |
 16 | /// Extension to make URLSession conform to URLSessionProtocol
 17 | extension URLSession: URLSessionProtocol {}
    | `- error: non-nominal type 'URLSession' (aka 'AnyObject') cannot be extended
 18 |
 19 | /// Request builder for constructing Google Sheets API requests
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:341:34: error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
339 | public protocol HTTPLogger {
340 |     func logRequest(_ request: HTTPRequest)
341 |     func logResponse(_ response: HTTPURLResponse, data: Data)
    |                                  `- error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
342 |     func logError(_ error: Error, for request: HTTPRequest)
343 | }
Foundation.HTTPURLResponse:2:18: note: 'HTTPURLResponse' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias HTTPURLResponse = AnyObject
  |                  `- note: 'HTTPURLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:359:41: error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
357 |     }
358 |
359 |     public func logResponse(_ response: HTTPURLResponse, data: Data) {
    |                                         `- error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
360 |         print("✅ HTTP Response: \(response.statusCode) from \(response.url?.absoluteString ?? "unknown")")
361 |         if let responseString = String(data: data, encoding: .utf8) {
Foundation.HTTPURLResponse:2:18: note: 'HTTPURLResponse' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias HTTPURLResponse = AnyObject
  |                  `- note: 'HTTPURLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:379:50: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
377 |
378 |     public init(
379 |         session: URLSessionProtocol = URLSession.shared,
    |                                                  `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
380 |         logger: HTTPLogger? = nil,
381 |         retryConfiguration: RetryConfiguration = .default,
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:360:46: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
358 |
359 |     public func logResponse(_ response: HTTPURLResponse, data: Data) {
360 |         print("✅ HTTP Response: \(response.statusCode) from \(response.url?.absoluteString ?? "unknown")")
    |                                            `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
361 |         if let responseString = String(data: data, encoding: .utf8) {
362 |             print("📥 Response Data: \(responseString)")
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:431:26: error: cannot find 'URLRequest' in scope
429 |         logger?.logRequest(request)
430 |
431 |         var urlRequest = URLRequest(url: request.url)
    |                          `- error: cannot find 'URLRequest' in scope
432 |         urlRequest.httpMethod = request.method.rawValue
433 |         urlRequest.httpBody = request.body
[10/27] Compiling GoogleSheetsSwift GoogleSheetsSwift.swift
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsLogger.swift:315:45: error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
313 |
314 |     /// Log HTTP response details
315 |     public func logHTTPResponse(_ response: HTTPURLResponse, data: Data, context: LoggingContext) {
    |                                             `- error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
316 |         guard isEnabled(for: .debug) else { return }
317 |
Foundation.HTTPURLResponse:2:18: note: 'HTTPURLResponse' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias HTTPURLResponse = AnyObject
  |                  `- note: 'HTTPURLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsLogger.swift:387:41: error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
385 |     }
386 |
387 |     public func logResponse(_ response: HTTPURLResponse, data: Data) {
    |                                         `- error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
388 |         guard logger.isEnabled(for: .debug) else { return }
389 |
Foundation.HTTPURLResponse:2:18: note: 'HTTPURLResponse' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias HTTPURLResponse = AnyObject
  |                  `- note: 'HTTPURLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsLogger.swift:136:33: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
134 |         // Create file if it doesn't exist
135 |         if !FileManager.default.fileExists(atPath: fileURL.path) {
136 |             FileManager.default.createFile(atPath: fileURL.path, contents: nil, attributes: nil)
    |                                 `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
137 |         }
138 |
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsLogger.swift:319:43: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
317 |
318 |         var metadata = context.toMetadata()
319 |         metadata["statusCode"] = response.statusCode
    |                                           `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
320 |         metadata["responseHeaders"] = response.allHeaderFields
321 |
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsLogger.swift:320:48: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'allHeaderFields'
318 |         var metadata = context.toMetadata()
319 |         metadata["statusCode"] = response.statusCode
320 |         metadata["responseHeaders"] = response.allHeaderFields
    |                                                `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'allHeaderFields'
321 |
322 |         if let responseString = String(data: data, encoding: .utf8) {
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsLogger.swift:391:36: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
389 |
390 |         var metadata: [String: Any] = [
391 |             "statusCode": response.statusCode,
    |                                    `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
392 |             "url": response.url?.absoluteString ?? "unknown",
393 |             "headers": response.allHeaderFields
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsLogger.swift:392:29: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'url'
390 |         var metadata: [String: Any] = [
391 |             "statusCode": response.statusCode,
392 |             "url": response.url?.absoluteString ?? "unknown",
    |                             `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'url'
393 |             "headers": response.allHeaderFields
394 |         ]
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsLogger.swift:393:33: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'allHeaderFields'
391 |             "statusCode": response.statusCode,
392 |             "url": response.url?.absoluteString ?? "unknown",
393 |             "headers": response.allHeaderFields
    |                                 `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'allHeaderFields'
394 |         ]
395 |
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsSwift.swift:40:23: warning: static property 'buildInfo' is not concurrency-safe because non-'Sendable' type 'BuildInfo' may have shared mutable state; this is an error in the Swift 6 language mode
38 |
39 |     /// SDK build information
40 |     public static let buildInfo = BuildInfo(
   |                       |- warning: static property 'buildInfo' is not concurrency-safe because non-'Sendable' type 'BuildInfo' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: add '@MainActor' to make static property 'buildInfo' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
41 |         version: version,
42 |         apiVersion: googleSheetsAPIVersion,
   :
52 |
53 | /// Build information for the SDK
54 | public struct BuildInfo {
   |               `- note: consider making struct 'BuildInfo' conform to the 'Sendable' protocol
55 |     public let version: String
56 |     public let apiVersion: String
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:13:28: error: cannot find type 'URLRequest' in scope
 11 | /// Protocol for URLSession abstraction to enable testing
 12 | public protocol URLSessionProtocol {
 13 |     func data(for request: URLRequest) async throws -> (Data, URLResponse)
    |                            `- error: cannot find type 'URLRequest' in scope
 14 | }
 15 |
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:13:63: error: 'URLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 11 | /// Protocol for URLSession abstraction to enable testing
 12 | public protocol URLSessionProtocol {
 13 |     func data(for request: URLRequest) async throws -> (Data, URLResponse)
    |                                                               `- error: 'URLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 14 | }
 15 |
Foundation.URLResponse:2:18: note: 'URLResponse' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLResponse = AnyObject
  |                  `- note: 'URLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:17:1: error: non-nominal type 'URLSession' (aka 'AnyObject') cannot be extended
 15 |
 16 | /// Extension to make URLSession conform to URLSessionProtocol
 17 | extension URLSession: URLSessionProtocol {}
    | `- error: non-nominal type 'URLSession' (aka 'AnyObject') cannot be extended
 18 |
 19 | /// Request builder for constructing Google Sheets API requests
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:341:34: error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
339 | public protocol HTTPLogger {
340 |     func logRequest(_ request: HTTPRequest)
341 |     func logResponse(_ response: HTTPURLResponse, data: Data)
    |                                  `- error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
342 |     func logError(_ error: Error, for request: HTTPRequest)
343 | }
Foundation.HTTPURLResponse:2:18: note: 'HTTPURLResponse' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias HTTPURLResponse = AnyObject
  |                  `- note: 'HTTPURLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:359:41: error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
357 |     }
358 |
359 |     public func logResponse(_ response: HTTPURLResponse, data: Data) {
    |                                         `- error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
360 |         print("✅ HTTP Response: \(response.statusCode) from \(response.url?.absoluteString ?? "unknown")")
361 |         if let responseString = String(data: data, encoding: .utf8) {
Foundation.HTTPURLResponse:2:18: note: 'HTTPURLResponse' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias HTTPURLResponse = AnyObject
  |                  `- note: 'HTTPURLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:379:50: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
377 |
378 |     public init(
379 |         session: URLSessionProtocol = URLSession.shared,
    |                                                  `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
380 |         logger: HTTPLogger? = nil,
381 |         retryConfiguration: RetryConfiguration = .default,
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:360:46: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
358 |
359 |     public func logResponse(_ response: HTTPURLResponse, data: Data) {
360 |         print("✅ HTTP Response: \(response.statusCode) from \(response.url?.absoluteString ?? "unknown")")
    |                                            `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
361 |         if let responseString = String(data: data, encoding: .utf8) {
362 |             print("📥 Response Data: \(responseString)")
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:431:26: error: cannot find 'URLRequest' in scope
429 |         logger?.logRequest(request)
430 |
431 |         var urlRequest = URLRequest(url: request.url)
    |                          `- error: cannot find 'URLRequest' in scope
432 |         urlRequest.httpMethod = request.method.rawValue
433 |         urlRequest.httpBody = request.body
[11/27] Compiling GoogleSheetsSwift HTTPClient.swift
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsLogger.swift:315:45: error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
313 |
314 |     /// Log HTTP response details
315 |     public func logHTTPResponse(_ response: HTTPURLResponse, data: Data, context: LoggingContext) {
    |                                             `- error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
316 |         guard isEnabled(for: .debug) else { return }
317 |
Foundation.HTTPURLResponse:2:18: note: 'HTTPURLResponse' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias HTTPURLResponse = AnyObject
  |                  `- note: 'HTTPURLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsLogger.swift:387:41: error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
385 |     }
386 |
387 |     public func logResponse(_ response: HTTPURLResponse, data: Data) {
    |                                         `- error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
388 |         guard logger.isEnabled(for: .debug) else { return }
389 |
Foundation.HTTPURLResponse:2:18: note: 'HTTPURLResponse' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias HTTPURLResponse = AnyObject
  |                  `- note: 'HTTPURLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsLogger.swift:136:33: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
134 |         // Create file if it doesn't exist
135 |         if !FileManager.default.fileExists(atPath: fileURL.path) {
136 |             FileManager.default.createFile(atPath: fileURL.path, contents: nil, attributes: nil)
    |                                 `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
137 |         }
138 |
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsLogger.swift:319:43: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
317 |
318 |         var metadata = context.toMetadata()
319 |         metadata["statusCode"] = response.statusCode
    |                                           `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
320 |         metadata["responseHeaders"] = response.allHeaderFields
321 |
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsLogger.swift:320:48: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'allHeaderFields'
318 |         var metadata = context.toMetadata()
319 |         metadata["statusCode"] = response.statusCode
320 |         metadata["responseHeaders"] = response.allHeaderFields
    |                                                `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'allHeaderFields'
321 |
322 |         if let responseString = String(data: data, encoding: .utf8) {
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsLogger.swift:391:36: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
389 |
390 |         var metadata: [String: Any] = [
391 |             "statusCode": response.statusCode,
    |                                    `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
392 |             "url": response.url?.absoluteString ?? "unknown",
393 |             "headers": response.allHeaderFields
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsLogger.swift:392:29: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'url'
390 |         var metadata: [String: Any] = [
391 |             "statusCode": response.statusCode,
392 |             "url": response.url?.absoluteString ?? "unknown",
    |                             `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'url'
393 |             "headers": response.allHeaderFields
394 |         ]
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsLogger.swift:393:33: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'allHeaderFields'
391 |             "statusCode": response.statusCode,
392 |             "url": response.url?.absoluteString ?? "unknown",
393 |             "headers": response.allHeaderFields
    |                                 `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'allHeaderFields'
394 |         ]
395 |
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsSwift.swift:40:23: warning: static property 'buildInfo' is not concurrency-safe because non-'Sendable' type 'BuildInfo' may have shared mutable state; this is an error in the Swift 6 language mode
38 |
39 |     /// SDK build information
40 |     public static let buildInfo = BuildInfo(
   |                       |- warning: static property 'buildInfo' is not concurrency-safe because non-'Sendable' type 'BuildInfo' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: add '@MainActor' to make static property 'buildInfo' part of global actor 'MainActor'
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
41 |         version: version,
42 |         apiVersion: googleSheetsAPIVersion,
   :
52 |
53 | /// Build information for the SDK
54 | public struct BuildInfo {
   |               `- note: consider making struct 'BuildInfo' conform to the 'Sendable' protocol
55 |     public let version: String
56 |     public let apiVersion: String
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:13:28: error: cannot find type 'URLRequest' in scope
 11 | /// Protocol for URLSession abstraction to enable testing
 12 | public protocol URLSessionProtocol {
 13 |     func data(for request: URLRequest) async throws -> (Data, URLResponse)
    |                            `- error: cannot find type 'URLRequest' in scope
 14 | }
 15 |
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:13:63: error: 'URLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 11 | /// Protocol for URLSession abstraction to enable testing
 12 | public protocol URLSessionProtocol {
 13 |     func data(for request: URLRequest) async throws -> (Data, URLResponse)
    |                                                               `- error: 'URLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 14 | }
 15 |
Foundation.URLResponse:2:18: note: 'URLResponse' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLResponse = AnyObject
  |                  `- note: 'URLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:17:1: error: non-nominal type 'URLSession' (aka 'AnyObject') cannot be extended
 15 |
 16 | /// Extension to make URLSession conform to URLSessionProtocol
 17 | extension URLSession: URLSessionProtocol {}
    | `- error: non-nominal type 'URLSession' (aka 'AnyObject') cannot be extended
 18 |
 19 | /// Request builder for constructing Google Sheets API requests
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:341:34: error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
339 | public protocol HTTPLogger {
340 |     func logRequest(_ request: HTTPRequest)
341 |     func logResponse(_ response: HTTPURLResponse, data: Data)
    |                                  `- error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
342 |     func logError(_ error: Error, for request: HTTPRequest)
343 | }
Foundation.HTTPURLResponse:2:18: note: 'HTTPURLResponse' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias HTTPURLResponse = AnyObject
  |                  `- note: 'HTTPURLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:359:41: error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
357 |     }
358 |
359 |     public func logResponse(_ response: HTTPURLResponse, data: Data) {
    |                                         `- error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
360 |         print("✅ HTTP Response: \(response.statusCode) from \(response.url?.absoluteString ?? "unknown")")
361 |         if let responseString = String(data: data, encoding: .utf8) {
Foundation.HTTPURLResponse:2:18: note: 'HTTPURLResponse' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias HTTPURLResponse = AnyObject
  |                  `- note: 'HTTPURLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:379:50: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
377 |
378 |     public init(
379 |         session: URLSessionProtocol = URLSession.shared,
    |                                                  `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
380 |         logger: HTTPLogger? = nil,
381 |         retryConfiguration: RetryConfiguration = .default,
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:360:46: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
358 |
359 |     public func logResponse(_ response: HTTPURLResponse, data: Data) {
360 |         print("✅ HTTP Response: \(response.statusCode) from \(response.url?.absoluteString ?? "unknown")")
    |                                            `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
361 |         if let responseString = String(data: data, encoding: .utf8) {
362 |             print("📥 Response Data: \(responseString)")
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:431:26: error: cannot find 'URLRequest' in scope
429 |         logger?.logRequest(request)
430 |
431 |         var urlRequest = URLRequest(url: request.url)
    |                          `- error: cannot find 'URLRequest' in scope
432 |         urlRequest.httpMethod = request.method.rawValue
433 |         urlRequest.httpBody = request.body
[12/27] Compiling GoogleSheetsSwift ValueModels.swift
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:443:79: error: cannot find type 'SecKey' in scope
441 |     }
442 |
443 |     private static func parsePrivateKey(_ privateKeyString: String) throws -> SecKey {
    |                                                                               `- error: cannot find type 'SecKey' in scope
444 |         // Remove PEM headers and whitespace
445 |         let cleanKey = privateKeyString
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:426:30: error: cannot find type 'CFError' in scope
424 |         // Create signature
425 |         let dataToSign = data.data(using: .utf8)!
426 |         var error: Unmanaged<CFError>?
    |                              `- error: cannot find type 'CFError' in scope
427 |
428 |         guard let signature = SecKeyCreateSignature(
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:428:31: error: cannot find 'SecKeyCreateSignature' in scope
426 |         var error: Unmanaged<CFError>?
427 |
428 |         guard let signature = SecKeyCreateSignature(
    |                               `- error: cannot find 'SecKeyCreateSignature' in scope
429 |             secKey,
430 |             .rsaSignatureMessagePKCS1v15SHA256,
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:431:27: error: cannot find type 'CFData' in scope
429 |             secKey,
430 |             .rsaSignatureMessagePKCS1v15SHA256,
431 |             dataToSign as CFData,
    |                           `- error: cannot find type 'CFData' in scope
432 |             &error
433 |         ) else {
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:430:14: error: cannot infer contextual base in reference to member 'rsaSignatureMessagePKCS1v15SHA256'
428 |         guard let signature = SecKeyCreateSignature(
429 |             secKey,
430 |             .rsaSignatureMessagePKCS1v15SHA256,
    |              `- error: cannot infer contextual base in reference to member 'rsaSignatureMessagePKCS1v15SHA256'
431 |             dataToSign as CFData,
432 |             &error
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:459:28: error: cannot find 'SecItemImportExportKeyParameters' in scope
457 |
458 |         // Try using SecItemImport which is more robust for PKCS#8 keys
459 |         var importParams = SecItemImportExportKeyParameters()
    |                            `- error: cannot find 'SecItemImportExportKeyParameters' in scope
460 |         importParams.version = UInt32(SEC_KEY_IMPORT_EXPORT_PARAMS_VERSION)
461 |         importParams.flags = SecKeyImportExportFlags(rawValue: 0)
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:460:39: error: cannot find 'SEC_KEY_IMPORT_EXPORT_PARAMS_VERSION' in scope
458 |         // Try using SecItemImport which is more robust for PKCS#8 keys
459 |         var importParams = SecItemImportExportKeyParameters()
460 |         importParams.version = UInt32(SEC_KEY_IMPORT_EXPORT_PARAMS_VERSION)
    |                                       `- error: cannot find 'SEC_KEY_IMPORT_EXPORT_PARAMS_VERSION' in scope
461 |         importParams.flags = SecKeyImportExportFlags(rawValue: 0)
462 |         importParams.passphrase = nil
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:461:30: error: cannot find 'SecKeyImportExportFlags' in scope
459 |         var importParams = SecItemImportExportKeyParameters()
460 |         importParams.version = UInt32(SEC_KEY_IMPORT_EXPORT_PARAMS_VERSION)
461 |         importParams.flags = SecKeyImportExportFlags(rawValue: 0)
    |                              `- error: cannot find 'SecKeyImportExportFlags' in scope
462 |         importParams.passphrase = nil
463 |         importParams.alertTitle = nil
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:469:23: error: cannot find type 'CFArray' in scope
467 |         importParams.keyAttributes = nil
468 |
469 |         var outItems: CFArray?
    |                       `- error: cannot find type 'CFArray' in scope
470 |         let importStatus = SecItemImport(
471 |             keyData as CFData,
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:470:28: error: cannot find 'SecItemImport' in scope
468 |
469 |         var outItems: CFArray?
470 |         let importStatus = SecItemImport(
    |                            `- error: cannot find 'SecItemImport' in scope
471 |             keyData as CFData,
472 |             nil, // filename
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:475:13: error: cannot find 'SecItemImportExportFlags' in scope
473 |             nil, // inputFormat (let system determine)
474 |             nil, // itemType (let system determine)
475 |             SecItemImportExportFlags(rawValue: 0),
    |             `- error: cannot find 'SecItemImportExportFlags' in scope
476 |             &importParams,
477 |             nil, // keychain (use default)
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:471:24: error: cannot find type 'CFData' in scope
469 |         var outItems: CFArray?
470 |         let importStatus = SecItemImport(
471 |             keyData as CFData,
    |                        `- error: cannot find type 'CFData' in scope
472 |             nil, // filename
473 |             nil, // inputFormat (let system determine)
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:472:13: error: 'nil' requires a contextual type
470 |         let importStatus = SecItemImport(
471 |             keyData as CFData,
472 |             nil, // filename
    |             `- error: 'nil' requires a contextual type
473 |             nil, // inputFormat (let system determine)
474 |             nil, // itemType (let system determine)
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:473:13: error: 'nil' requires a contextual type
471 |             keyData as CFData,
472 |             nil, // filename
473 |             nil, // inputFormat (let system determine)
    |             `- error: 'nil' requires a contextual type
474 |             nil, // itemType (let system determine)
475 |             SecItemImportExportFlags(rawValue: 0),
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:474:13: error: 'nil' requires a contextual type
472 |             nil, // filename
473 |             nil, // inputFormat (let system determine)
474 |             nil, // itemType (let system determine)
    |             `- error: 'nil' requires a contextual type
475 |             SecItemImportExportFlags(rawValue: 0),
476 |             &importParams,
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:477:13: error: 'nil' requires a contextual type
475 |             SecItemImportExportFlags(rawValue: 0),
476 |             &importParams,
477 |             nil, // keychain (use default)
    |             `- error: 'nil' requires a contextual type
478 |             &outItems
479 |         )
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:481:28: error: cannot find 'errSecSuccess' in scope
479 |         )
480 |
481 |         if importStatus == errSecSuccess, let items = outItems as? [Any], !items.isEmpty {
    |                            `- error: cannot find 'errSecSuccess' in scope
482 |             // Successfully imported, now extract the SecKey
483 |             if let firstItem = items.first {
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:485:20: error: cannot find 'CFGetTypeID' in scope
483 |             if let firstItem = items.first {
484 |                 // Check if it's a SecKey by comparing CFTypeIDs
485 |                 if CFGetTypeID(firstItem as CFTypeRef) == SecKeyGetTypeID() {
    |                    `- error: cannot find 'CFGetTypeID' in scope
486 |                     return (firstItem as! SecKey)
487 |                 }
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:485:59: error: cannot find 'SecKeyGetTypeID' in scope
483 |             if let firstItem = items.first {
484 |                 // Check if it's a SecKey by comparing CFTypeIDs
485 |                 if CFGetTypeID(firstItem as CFTypeRef) == SecKeyGetTypeID() {
    |                                                           `- error: cannot find 'SecKeyGetTypeID' in scope
486 |                     return (firstItem as! SecKey)
487 |                 }
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:485:45: error: cannot find type 'CFTypeRef' in scope
483 |             if let firstItem = items.first {
484 |                 // Check if it's a SecKey by comparing CFTypeIDs
485 |                 if CFGetTypeID(firstItem as CFTypeRef) == SecKeyGetTypeID() {
    |                                             `- error: cannot find type 'CFTypeRef' in scope
486 |                     return (firstItem as! SecKey)
487 |                 }
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:492:30: error: cannot find type 'CFError' in scope
490 |
491 |         // If SecItemImport fails, fall back to SecKeyCreateWithData
492 |         var error: Unmanaged<CFError>?
    |                              `- error: cannot find type 'CFError' in scope
493 |
494 |         // Try with minimal attributes
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:496:13: error: cannot find 'kSecAttrKeyType' in scope
494 |         // Try with minimal attributes
495 |         let attributes: [String: Any] = [
496 |             kSecAttrKeyType as String: kSecAttrKeyTypeRSA,
    |             `- error: cannot find 'kSecAttrKeyType' in scope
497 |             kSecAttrKeyClass as String: kSecAttrKeyClassPrivate
498 |         ]
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:496:40: error: cannot find 'kSecAttrKeyTypeRSA' in scope
494 |         // Try with minimal attributes
495 |         let attributes: [String: Any] = [
496 |             kSecAttrKeyType as String: kSecAttrKeyTypeRSA,
    |                                        `- error: cannot find 'kSecAttrKeyTypeRSA' in scope
497 |             kSecAttrKeyClass as String: kSecAttrKeyClassPrivate
498 |         ]
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:497:13: error: cannot find 'kSecAttrKeyClass' in scope
495 |         let attributes: [String: Any] = [
496 |             kSecAttrKeyType as String: kSecAttrKeyTypeRSA,
497 |             kSecAttrKeyClass as String: kSecAttrKeyClassPrivate
    |             `- error: cannot find 'kSecAttrKeyClass' in scope
498 |         ]
499 |
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:497:41: error: cannot find 'kSecAttrKeyClassPrivate' in scope
495 |         let attributes: [String: Any] = [
496 |             kSecAttrKeyType as String: kSecAttrKeyTypeRSA,
497 |             kSecAttrKeyClass as String: kSecAttrKeyClassPrivate
    |                                         `- error: cannot find 'kSecAttrKeyClassPrivate' in scope
498 |         ]
499 |
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:500:25: error: cannot find 'SecKeyCreateWithData' in scope
498 |         ]
499 |
500 |         if let secKey = SecKeyCreateWithData(keyData as CFData, attributes as CFDictionary, &error) {
    |                         `- error: cannot find 'SecKeyCreateWithData' in scope
501 |             return secKey
502 |         }
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:500:57: error: cannot find type 'CFData' in scope
498 |         ]
499 |
500 |         if let secKey = SecKeyCreateWithData(keyData as CFData, attributes as CFDictionary, &error) {
    |                                                         `- error: cannot find type 'CFData' in scope
501 |             return secKey
502 |         }
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:500:79: error: cannot find type 'CFDictionary' in scope
498 |         ]
499 |
500 |         if let secKey = SecKeyCreateWithData(keyData as CFData, attributes as CFDictionary, &error) {
    |                                                                               `- error: cannot find type 'CFDictionary' in scope
501 |             return secKey
502 |         }
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:508:36: error: cannot find 'CFErrorCopyDescription' in scope
506 |
507 |         if let error = error?.takeRetainedValue() {
508 |             let errorDescription = CFErrorCopyDescription(error)
    |                                    `- error: cannot find 'CFErrorCopyDescription' in scope
509 |             let errorString = errorDescription as String? ?? "Unknown CFError"
510 |             errorMessage += ": \(errorString)"
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:379:50: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
377 |
378 |     public init(
379 |         session: URLSessionProtocol = URLSession.shared,
    |                                                  `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
380 |         logger: HTTPLogger? = nil,
381 |         retryConfiguration: RetryConfiguration = .default,
[13/27] Compiling GoogleSheetsSwift OAuth2TokenManager.swift
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:443:79: error: cannot find type 'SecKey' in scope
441 |     }
442 |
443 |     private static func parsePrivateKey(_ privateKeyString: String) throws -> SecKey {
    |                                                                               `- error: cannot find type 'SecKey' in scope
444 |         // Remove PEM headers and whitespace
445 |         let cleanKey = privateKeyString
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:426:30: error: cannot find type 'CFError' in scope
424 |         // Create signature
425 |         let dataToSign = data.data(using: .utf8)!
426 |         var error: Unmanaged<CFError>?
    |                              `- error: cannot find type 'CFError' in scope
427 |
428 |         guard let signature = SecKeyCreateSignature(
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:428:31: error: cannot find 'SecKeyCreateSignature' in scope
426 |         var error: Unmanaged<CFError>?
427 |
428 |         guard let signature = SecKeyCreateSignature(
    |                               `- error: cannot find 'SecKeyCreateSignature' in scope
429 |             secKey,
430 |             .rsaSignatureMessagePKCS1v15SHA256,
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:431:27: error: cannot find type 'CFData' in scope
429 |             secKey,
430 |             .rsaSignatureMessagePKCS1v15SHA256,
431 |             dataToSign as CFData,
    |                           `- error: cannot find type 'CFData' in scope
432 |             &error
433 |         ) else {
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:430:14: error: cannot infer contextual base in reference to member 'rsaSignatureMessagePKCS1v15SHA256'
428 |         guard let signature = SecKeyCreateSignature(
429 |             secKey,
430 |             .rsaSignatureMessagePKCS1v15SHA256,
    |              `- error: cannot infer contextual base in reference to member 'rsaSignatureMessagePKCS1v15SHA256'
431 |             dataToSign as CFData,
432 |             &error
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:459:28: error: cannot find 'SecItemImportExportKeyParameters' in scope
457 |
458 |         // Try using SecItemImport which is more robust for PKCS#8 keys
459 |         var importParams = SecItemImportExportKeyParameters()
    |                            `- error: cannot find 'SecItemImportExportKeyParameters' in scope
460 |         importParams.version = UInt32(SEC_KEY_IMPORT_EXPORT_PARAMS_VERSION)
461 |         importParams.flags = SecKeyImportExportFlags(rawValue: 0)
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:460:39: error: cannot find 'SEC_KEY_IMPORT_EXPORT_PARAMS_VERSION' in scope
458 |         // Try using SecItemImport which is more robust for PKCS#8 keys
459 |         var importParams = SecItemImportExportKeyParameters()
460 |         importParams.version = UInt32(SEC_KEY_IMPORT_EXPORT_PARAMS_VERSION)
    |                                       `- error: cannot find 'SEC_KEY_IMPORT_EXPORT_PARAMS_VERSION' in scope
461 |         importParams.flags = SecKeyImportExportFlags(rawValue: 0)
462 |         importParams.passphrase = nil
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:461:30: error: cannot find 'SecKeyImportExportFlags' in scope
459 |         var importParams = SecItemImportExportKeyParameters()
460 |         importParams.version = UInt32(SEC_KEY_IMPORT_EXPORT_PARAMS_VERSION)
461 |         importParams.flags = SecKeyImportExportFlags(rawValue: 0)
    |                              `- error: cannot find 'SecKeyImportExportFlags' in scope
462 |         importParams.passphrase = nil
463 |         importParams.alertTitle = nil
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:469:23: error: cannot find type 'CFArray' in scope
467 |         importParams.keyAttributes = nil
468 |
469 |         var outItems: CFArray?
    |                       `- error: cannot find type 'CFArray' in scope
470 |         let importStatus = SecItemImport(
471 |             keyData as CFData,
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:470:28: error: cannot find 'SecItemImport' in scope
468 |
469 |         var outItems: CFArray?
470 |         let importStatus = SecItemImport(
    |                            `- error: cannot find 'SecItemImport' in scope
471 |             keyData as CFData,
472 |             nil, // filename
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:475:13: error: cannot find 'SecItemImportExportFlags' in scope
473 |             nil, // inputFormat (let system determine)
474 |             nil, // itemType (let system determine)
475 |             SecItemImportExportFlags(rawValue: 0),
    |             `- error: cannot find 'SecItemImportExportFlags' in scope
476 |             &importParams,
477 |             nil, // keychain (use default)
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:471:24: error: cannot find type 'CFData' in scope
469 |         var outItems: CFArray?
470 |         let importStatus = SecItemImport(
471 |             keyData as CFData,
    |                        `- error: cannot find type 'CFData' in scope
472 |             nil, // filename
473 |             nil, // inputFormat (let system determine)
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:472:13: error: 'nil' requires a contextual type
470 |         let importStatus = SecItemImport(
471 |             keyData as CFData,
472 |             nil, // filename
    |             `- error: 'nil' requires a contextual type
473 |             nil, // inputFormat (let system determine)
474 |             nil, // itemType (let system determine)
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:473:13: error: 'nil' requires a contextual type
471 |             keyData as CFData,
472 |             nil, // filename
473 |             nil, // inputFormat (let system determine)
    |             `- error: 'nil' requires a contextual type
474 |             nil, // itemType (let system determine)
475 |             SecItemImportExportFlags(rawValue: 0),
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:474:13: error: 'nil' requires a contextual type
472 |             nil, // filename
473 |             nil, // inputFormat (let system determine)
474 |             nil, // itemType (let system determine)
    |             `- error: 'nil' requires a contextual type
475 |             SecItemImportExportFlags(rawValue: 0),
476 |             &importParams,
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:477:13: error: 'nil' requires a contextual type
475 |             SecItemImportExportFlags(rawValue: 0),
476 |             &importParams,
477 |             nil, // keychain (use default)
    |             `- error: 'nil' requires a contextual type
478 |             &outItems
479 |         )
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:481:28: error: cannot find 'errSecSuccess' in scope
479 |         )
480 |
481 |         if importStatus == errSecSuccess, let items = outItems as? [Any], !items.isEmpty {
    |                            `- error: cannot find 'errSecSuccess' in scope
482 |             // Successfully imported, now extract the SecKey
483 |             if let firstItem = items.first {
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:485:20: error: cannot find 'CFGetTypeID' in scope
483 |             if let firstItem = items.first {
484 |                 // Check if it's a SecKey by comparing CFTypeIDs
485 |                 if CFGetTypeID(firstItem as CFTypeRef) == SecKeyGetTypeID() {
    |                    `- error: cannot find 'CFGetTypeID' in scope
486 |                     return (firstItem as! SecKey)
487 |                 }
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:485:59: error: cannot find 'SecKeyGetTypeID' in scope
483 |             if let firstItem = items.first {
484 |                 // Check if it's a SecKey by comparing CFTypeIDs
485 |                 if CFGetTypeID(firstItem as CFTypeRef) == SecKeyGetTypeID() {
    |                                                           `- error: cannot find 'SecKeyGetTypeID' in scope
486 |                     return (firstItem as! SecKey)
487 |                 }
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:485:45: error: cannot find type 'CFTypeRef' in scope
483 |             if let firstItem = items.first {
484 |                 // Check if it's a SecKey by comparing CFTypeIDs
485 |                 if CFGetTypeID(firstItem as CFTypeRef) == SecKeyGetTypeID() {
    |                                             `- error: cannot find type 'CFTypeRef' in scope
486 |                     return (firstItem as! SecKey)
487 |                 }
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:492:30: error: cannot find type 'CFError' in scope
490 |
491 |         // If SecItemImport fails, fall back to SecKeyCreateWithData
492 |         var error: Unmanaged<CFError>?
    |                              `- error: cannot find type 'CFError' in scope
493 |
494 |         // Try with minimal attributes
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:496:13: error: cannot find 'kSecAttrKeyType' in scope
494 |         // Try with minimal attributes
495 |         let attributes: [String: Any] = [
496 |             kSecAttrKeyType as String: kSecAttrKeyTypeRSA,
    |             `- error: cannot find 'kSecAttrKeyType' in scope
497 |             kSecAttrKeyClass as String: kSecAttrKeyClassPrivate
498 |         ]
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:496:40: error: cannot find 'kSecAttrKeyTypeRSA' in scope
494 |         // Try with minimal attributes
495 |         let attributes: [String: Any] = [
496 |             kSecAttrKeyType as String: kSecAttrKeyTypeRSA,
    |                                        `- error: cannot find 'kSecAttrKeyTypeRSA' in scope
497 |             kSecAttrKeyClass as String: kSecAttrKeyClassPrivate
498 |         ]
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:497:13: error: cannot find 'kSecAttrKeyClass' in scope
495 |         let attributes: [String: Any] = [
496 |             kSecAttrKeyType as String: kSecAttrKeyTypeRSA,
497 |             kSecAttrKeyClass as String: kSecAttrKeyClassPrivate
    |             `- error: cannot find 'kSecAttrKeyClass' in scope
498 |         ]
499 |
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:497:41: error: cannot find 'kSecAttrKeyClassPrivate' in scope
495 |         let attributes: [String: Any] = [
496 |             kSecAttrKeyType as String: kSecAttrKeyTypeRSA,
497 |             kSecAttrKeyClass as String: kSecAttrKeyClassPrivate
    |                                         `- error: cannot find 'kSecAttrKeyClassPrivate' in scope
498 |         ]
499 |
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:500:25: error: cannot find 'SecKeyCreateWithData' in scope
498 |         ]
499 |
500 |         if let secKey = SecKeyCreateWithData(keyData as CFData, attributes as CFDictionary, &error) {
    |                         `- error: cannot find 'SecKeyCreateWithData' in scope
501 |             return secKey
502 |         }
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:500:57: error: cannot find type 'CFData' in scope
498 |         ]
499 |
500 |         if let secKey = SecKeyCreateWithData(keyData as CFData, attributes as CFDictionary, &error) {
    |                                                         `- error: cannot find type 'CFData' in scope
501 |             return secKey
502 |         }
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:500:79: error: cannot find type 'CFDictionary' in scope
498 |         ]
499 |
500 |         if let secKey = SecKeyCreateWithData(keyData as CFData, attributes as CFDictionary, &error) {
    |                                                                               `- error: cannot find type 'CFDictionary' in scope
501 |             return secKey
502 |         }
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:508:36: error: cannot find 'CFErrorCopyDescription' in scope
506 |
507 |         if let error = error?.takeRetainedValue() {
508 |             let errorDescription = CFErrorCopyDescription(error)
    |                                    `- error: cannot find 'CFErrorCopyDescription' in scope
509 |             let errorString = errorDescription as String? ?? "Unknown CFError"
510 |             errorMessage += ": \(errorString)"
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:379:50: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
377 |
378 |     public init(
379 |         session: URLSessionProtocol = URLSession.shared,
    |                                                  `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
380 |         logger: HTTPLogger? = nil,
381 |         retryConfiguration: RetryConfiguration = .default,
[14/27] Compiling GoogleSheetsSwift ResponseCache.swift
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/Cache/ResponseCache.swift:146:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'CacheConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
131 |
132 | /// Cache configuration
133 | public struct CacheConfiguration {
    |               `- note: consider making struct 'CacheConfiguration' conform to the 'Sendable' protocol
134 |     /// Default TTL for cached responses (in seconds)
135 |     public let defaultTTL: TimeInterval
    :
144 |     public let enabled: Bool
145 |
146 |     public static let `default` = CacheConfiguration(
    |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'CacheConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'default' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
147 |         defaultTTL: 300, // 5 minutes
148 |         spreadsheetTTL: 600, // 10 minutes
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/Cache/ResponseCache.swift:153:23: warning: static property 'disabled' is not concurrency-safe because non-'Sendable' type 'CacheConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
131 |
132 | /// Cache configuration
133 | public struct CacheConfiguration {
    |               `- note: consider making struct 'CacheConfiguration' conform to the 'Sendable' protocol
134 |     /// Default TTL for cached responses (in seconds)
135 |     public let defaultTTL: TimeInterval
    :
151 |     )
152 |
153 |     public static let disabled = CacheConfiguration(
    |                       |- warning: static property 'disabled' is not concurrency-safe because non-'Sendable' type 'CacheConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'disabled' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
154 |         defaultTTL: 0,
155 |         spreadsheetTTL: 0,
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:379:50: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
377 |
378 |     public init(
379 |         session: URLSessionProtocol = URLSession.shared,
    |                                                  `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
380 |         logger: HTTPLogger? = nil,
381 |         retryConfiguration: RetryConfiguration = .default,
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsClient.swift:496:21: error: cannot find 'parseA1Range' in scope
494 |     public static func isValidA1Range(_ range: String) -> Bool {
495 |         do {
496 |             _ = try parseA1Range(range)
    |                     `- error: cannot find 'parseA1Range' in scope
497 |             return true
498 |         } catch {
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsError.swift:28:10: warning: associated value 'apiError(code:message:details:)' of 'Sendable'-conforming enum 'GoogleSheetsError' has non-sendable type 'Any'; this is an error in the Swift 6 language mode
 26 |
 27 |     /// API returned an error response
 28 |     case apiError(code: Int, message: String, details: [String: Any]?)
    |          `- warning: associated value 'apiError(code:message:details:)' of 'Sendable'-conforming enum 'GoogleSheetsError' has non-sendable type 'Any'; this is an error in the Swift 6 language mode
 29 |
 30 |     /// Rate limit exceeded - too many requests
[15/27] Compiling GoogleSheetsSwift GoogleSheetsClient.swift
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/Cache/ResponseCache.swift:146:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'CacheConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
131 |
132 | /// Cache configuration
133 | public struct CacheConfiguration {
    |               `- note: consider making struct 'CacheConfiguration' conform to the 'Sendable' protocol
134 |     /// Default TTL for cached responses (in seconds)
135 |     public let defaultTTL: TimeInterval
    :
144 |     public let enabled: Bool
145 |
146 |     public static let `default` = CacheConfiguration(
    |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'CacheConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'default' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
147 |         defaultTTL: 300, // 5 minutes
148 |         spreadsheetTTL: 600, // 10 minutes
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/Cache/ResponseCache.swift:153:23: warning: static property 'disabled' is not concurrency-safe because non-'Sendable' type 'CacheConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
131 |
132 | /// Cache configuration
133 | public struct CacheConfiguration {
    |               `- note: consider making struct 'CacheConfiguration' conform to the 'Sendable' protocol
134 |     /// Default TTL for cached responses (in seconds)
135 |     public let defaultTTL: TimeInterval
    :
151 |     )
152 |
153 |     public static let disabled = CacheConfiguration(
    |                       |- warning: static property 'disabled' is not concurrency-safe because non-'Sendable' type 'CacheConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'disabled' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
154 |         defaultTTL: 0,
155 |         spreadsheetTTL: 0,
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:379:50: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
377 |
378 |     public init(
379 |         session: URLSessionProtocol = URLSession.shared,
    |                                                  `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
380 |         logger: HTTPLogger? = nil,
381 |         retryConfiguration: RetryConfiguration = .default,
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsClient.swift:496:21: error: cannot find 'parseA1Range' in scope
494 |     public static func isValidA1Range(_ range: String) -> Bool {
495 |         do {
496 |             _ = try parseA1Range(range)
    |                     `- error: cannot find 'parseA1Range' in scope
497 |             return true
498 |         } catch {
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsError.swift:28:10: warning: associated value 'apiError(code:message:details:)' of 'Sendable'-conforming enum 'GoogleSheetsError' has non-sendable type 'Any'; this is an error in the Swift 6 language mode
 26 |
 27 |     /// API returned an error response
 28 |     case apiError(code: Int, message: String, details: [String: Any]?)
    |          `- warning: associated value 'apiError(code:message:details:)' of 'Sendable'-conforming enum 'GoogleSheetsError' has non-sendable type 'Any'; this is an error in the Swift 6 language mode
 29 |
 30 |     /// Rate limit exceeded - too many requests
[16/27] Compiling GoogleSheetsSwift GoogleSheetsError.swift
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/Cache/ResponseCache.swift:146:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'CacheConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
131 |
132 | /// Cache configuration
133 | public struct CacheConfiguration {
    |               `- note: consider making struct 'CacheConfiguration' conform to the 'Sendable' protocol
134 |     /// Default TTL for cached responses (in seconds)
135 |     public let defaultTTL: TimeInterval
    :
144 |     public let enabled: Bool
145 |
146 |     public static let `default` = CacheConfiguration(
    |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'CacheConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'default' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
147 |         defaultTTL: 300, // 5 minutes
148 |         spreadsheetTTL: 600, // 10 minutes
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/Cache/ResponseCache.swift:153:23: warning: static property 'disabled' is not concurrency-safe because non-'Sendable' type 'CacheConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
131 |
132 | /// Cache configuration
133 | public struct CacheConfiguration {
    |               `- note: consider making struct 'CacheConfiguration' conform to the 'Sendable' protocol
134 |     /// Default TTL for cached responses (in seconds)
135 |     public let defaultTTL: TimeInterval
    :
151 |     )
152 |
153 |     public static let disabled = CacheConfiguration(
    |                       |- warning: static property 'disabled' is not concurrency-safe because non-'Sendable' type 'CacheConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'disabled' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
154 |         defaultTTL: 0,
155 |         spreadsheetTTL: 0,
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:379:50: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
377 |
378 |     public init(
379 |         session: URLSessionProtocol = URLSession.shared,
    |                                                  `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
380 |         logger: HTTPLogger? = nil,
381 |         retryConfiguration: RetryConfiguration = .default,
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsClient.swift:496:21: error: cannot find 'parseA1Range' in scope
494 |     public static func isValidA1Range(_ range: String) -> Bool {
495 |         do {
496 |             _ = try parseA1Range(range)
    |                     `- error: cannot find 'parseA1Range' in scope
497 |             return true
498 |         } catch {
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsError.swift:28:10: warning: associated value 'apiError(code:message:details:)' of 'Sendable'-conforming enum 'GoogleSheetsError' has non-sendable type 'Any'; this is an error in the Swift 6 language mode
 26 |
 27 |     /// API returned an error response
 28 |     case apiError(code: Int, message: String, details: [String: Any]?)
    |          `- warning: associated value 'apiError(code:message:details:)' of 'Sendable'-conforming enum 'GoogleSheetsError' has non-sendable type 'Any'; this is an error in the Swift 6 language mode
 29 |
 30 |     /// Rate limit exceeded - too many requests
[17/27] Compiling GoogleSheetsSwift AnyCodable.swift
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/Models/AnyCodable.swift:39:16: error: cannot find 'CFGetTypeID' in scope
 37 |         if let number = value as? NSNumber {
 38 |             // Check if it's actually a boolean stored as NSNumber
 39 |             if CFGetTypeID(number) == CFBooleanGetTypeID() {
    |                `- error: cannot find 'CFGetTypeID' in scope
 40 |                 return number.boolValue ? "true" : "false"
 41 |             }
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/Models/AnyCodable.swift:39:39: error: cannot find 'CFBooleanGetTypeID' in scope
 37 |         if let number = value as? NSNumber {
 38 |             // Check if it's actually a boolean stored as NSNumber
 39 |             if CFGetTypeID(number) == CFBooleanGetTypeID() {
    |                                       `- error: cannot find 'CFBooleanGetTypeID' in scope
 40 |                 return number.boolValue ? "true" : "false"
 41 |             }
[18/27] Compiling GoogleSheetsSwift Enums.swift
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/Models/AnyCodable.swift:39:16: error: cannot find 'CFGetTypeID' in scope
 37 |         if let number = value as? NSNumber {
 38 |             // Check if it's actually a boolean stored as NSNumber
 39 |             if CFGetTypeID(number) == CFBooleanGetTypeID() {
    |                `- error: cannot find 'CFGetTypeID' in scope
 40 |                 return number.boolValue ? "true" : "false"
 41 |             }
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/Models/AnyCodable.swift:39:39: error: cannot find 'CFBooleanGetTypeID' in scope
 37 |         if let number = value as? NSNumber {
 38 |             // Check if it's actually a boolean stored as NSNumber
 39 |             if CFGetTypeID(number) == CFBooleanGetTypeID() {
    |                                       `- error: cannot find 'CFBooleanGetTypeID' in scope
 40 |                 return number.boolValue ? "true" : "false"
 41 |             }
[19/27] Compiling GoogleSheetsSwift SpreadsheetModels.swift
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/Models/AnyCodable.swift:39:16: error: cannot find 'CFGetTypeID' in scope
 37 |         if let number = value as? NSNumber {
 38 |             // Check if it's actually a boolean stored as NSNumber
 39 |             if CFGetTypeID(number) == CFBooleanGetTypeID() {
    |                `- error: cannot find 'CFGetTypeID' in scope
 40 |                 return number.boolValue ? "true" : "false"
 41 |             }
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/Models/AnyCodable.swift:39:39: error: cannot find 'CFBooleanGetTypeID' in scope
 37 |         if let number = value as? NSNumber {
 38 |             // Check if it's actually a boolean stored as NSNumber
 39 |             if CFGetTypeID(number) == CFBooleanGetTypeID() {
    |                                       `- error: cannot find 'CFBooleanGetTypeID' in scope
 40 |                 return number.boolValue ? "true" : "false"
 41 |             }
[20/27] Compiling GoogleSheetsSwift RetryConfiguration.swift
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/RetryConfiguration.swift:43:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'RetryConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
  2 |
  3 | /// Configuration for retry behavior with exponential backoff
  4 | public struct RetryConfiguration {
    |               `- note: consider making struct 'RetryConfiguration' conform to the 'Sendable' protocol
  5 |     /// Maximum number of retry attempts
  6 |     public let maxRetries: Int
    :
 41 |
 42 |     /// Default retry configuration
 43 |     public static let `default` = RetryConfiguration()
    |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'RetryConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'default' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 44 |
 45 |     /// Conservative retry configuration with longer delays
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/RetryConfiguration.swift:46:23: warning: static property 'conservative' is not concurrency-safe because non-'Sendable' type 'RetryConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
  2 |
  3 | /// Configuration for retry behavior with exponential backoff
  4 | public struct RetryConfiguration {
    |               `- note: consider making struct 'RetryConfiguration' conform to the 'Sendable' protocol
  5 |     /// Maximum number of retry attempts
  6 |     public let maxRetries: Int
    :
 44 |
 45 |     /// Conservative retry configuration with longer delays
 46 |     public static let conservative = RetryConfiguration(
    |                       |- warning: static property 'conservative' is not concurrency-safe because non-'Sendable' type 'RetryConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'conservative' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 47 |         maxRetries: 5,
 48 |         baseDelay: 2.0,
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/RetryConfiguration.swift:55:23: warning: static property 'aggressive' is not concurrency-safe because non-'Sendable' type 'RetryConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
  2 |
  3 | /// Configuration for retry behavior with exponential backoff
  4 | public struct RetryConfiguration {
    |               `- note: consider making struct 'RetryConfiguration' conform to the 'Sendable' protocol
  5 |     /// Maximum number of retry attempts
  6 |     public let maxRetries: Int
    :
 53 |
 54 |     /// Aggressive retry configuration with shorter delays
 55 |     public static let aggressive = RetryConfiguration(
    |                       |- warning: static property 'aggressive' is not concurrency-safe because non-'Sendable' type 'RetryConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'aggressive' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 56 |         maxRetries: 2,
 57 |         baseDelay: 0.5,
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/RetryConfiguration.swift:64:23: warning: static property 'none' is not concurrency-safe because non-'Sendable' type 'RetryConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
  2 |
  3 | /// Configuration for retry behavior with exponential backoff
  4 | public struct RetryConfiguration {
    |               `- note: consider making struct 'RetryConfiguration' conform to the 'Sendable' protocol
  5 |     /// Maximum number of retry attempts
  6 |     public let maxRetries: Int
    :
 62 |
 63 |     /// No retry configuration
 64 |     public static let none = RetryConfiguration(maxRetries: 0)
    |                       |- warning: static property 'none' is not concurrency-safe because non-'Sendable' type 'RetryConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'none' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 65 |
 66 |     /// Calculate the delay for a specific retry attempt
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/RetryConfiguration.swift:314:54: warning: capture of 'self' with non-sendable type 'RateLimiter' in a '@Sendable' closure; this is an error in the Swift 6 language mode
292 |
293 | /// Rate limiting helper
294 | public class RateLimiter {
    |              `- note: class 'RateLimiter' does not conform to the 'Sendable' protocol
295 |     private let maxRequestsPerSecond: Double
296 |     private let timeWindow: TimeInterval
    :
312 |             queue.async(flags: .barrier) {
313 |                 let now = Date()
314 |                 let cutoff = now.addingTimeInterval(-self.timeWindow)
    |                                                      `- warning: capture of 'self' with non-sendable type 'RateLimiter' in a '@Sendable' closure; this is an error in the Swift 6 language mode
315 |
316 |                 // Remove old requests outside the time window
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/RetryConfiguration.swift:326:33: warning: capture of 'self' with non-sendable type 'RateLimiter' in a '@Sendable' closure; this is an error in the Swift 6 language mode
292 |
293 | /// Rate limiting helper
294 | public class RateLimiter {
    |              `- note: class 'RateLimiter' does not conform to the 'Sendable' protocol
295 |     private let maxRequestsPerSecond: Double
296 |     private let timeWindow: TimeInterval
    :
324 |                         if delay > 0 {
325 |                             DispatchQueue.global().asyncAfter(deadline: .now() + delay) {
326 |                                 self.requestTimes.append(now.addingTimeInterval(delay))
    |                                 `- warning: capture of 'self' with non-sendable type 'RateLimiter' in a '@Sendable' closure; this is an error in the Swift 6 language mode
327 |                                 continuation.resume()
328 |                             }
[21/27] Compiling GoogleSheetsSwift BaseService.swift
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/RetryConfiguration.swift:43:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'RetryConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
  2 |
  3 | /// Configuration for retry behavior with exponential backoff
  4 | public struct RetryConfiguration {
    |               `- note: consider making struct 'RetryConfiguration' conform to the 'Sendable' protocol
  5 |     /// Maximum number of retry attempts
  6 |     public let maxRetries: Int
    :
 41 |
 42 |     /// Default retry configuration
 43 |     public static let `default` = RetryConfiguration()
    |                       |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'RetryConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'default' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 44 |
 45 |     /// Conservative retry configuration with longer delays
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/RetryConfiguration.swift:46:23: warning: static property 'conservative' is not concurrency-safe because non-'Sendable' type 'RetryConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
  2 |
  3 | /// Configuration for retry behavior with exponential backoff
  4 | public struct RetryConfiguration {
    |               `- note: consider making struct 'RetryConfiguration' conform to the 'Sendable' protocol
  5 |     /// Maximum number of retry attempts
  6 |     public let maxRetries: Int
    :
 44 |
 45 |     /// Conservative retry configuration with longer delays
 46 |     public static let conservative = RetryConfiguration(
    |                       |- warning: static property 'conservative' is not concurrency-safe because non-'Sendable' type 'RetryConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'conservative' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 47 |         maxRetries: 5,
 48 |         baseDelay: 2.0,
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/RetryConfiguration.swift:55:23: warning: static property 'aggressive' is not concurrency-safe because non-'Sendable' type 'RetryConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
  2 |
  3 | /// Configuration for retry behavior with exponential backoff
  4 | public struct RetryConfiguration {
    |               `- note: consider making struct 'RetryConfiguration' conform to the 'Sendable' protocol
  5 |     /// Maximum number of retry attempts
  6 |     public let maxRetries: Int
    :
 53 |
 54 |     /// Aggressive retry configuration with shorter delays
 55 |     public static let aggressive = RetryConfiguration(
    |                       |- warning: static property 'aggressive' is not concurrency-safe because non-'Sendable' type 'RetryConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'aggressive' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 56 |         maxRetries: 2,
 57 |         baseDelay: 0.5,
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/RetryConfiguration.swift:64:23: warning: static property 'none' is not concurrency-safe because non-'Sendable' type 'RetryConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
  2 |
  3 | /// Configuration for retry behavior with exponential backoff
  4 | public struct RetryConfiguration {
    |               `- note: consider making struct 'RetryConfiguration' conform to the 'Sendable' protocol
  5 |     /// Maximum number of retry attempts
  6 |     public let maxRetries: Int
    :
 62 |
 63 |     /// No retry configuration
 64 |     public static let none = RetryConfiguration(maxRetries: 0)
    |                       |- warning: static property 'none' is not concurrency-safe because non-'Sendable' type 'RetryConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'none' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 65 |
 66 |     /// Calculate the delay for a specific retry attempt
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/RetryConfiguration.swift:314:54: warning: capture of 'self' with non-sendable type 'RateLimiter' in a '@Sendable' closure; this is an error in the Swift 6 language mode
292 |
293 | /// Rate limiting helper
294 | public class RateLimiter {
    |              `- note: class 'RateLimiter' does not conform to the 'Sendable' protocol
295 |     private let maxRequestsPerSecond: Double
296 |     private let timeWindow: TimeInterval
    :
312 |             queue.async(flags: .barrier) {
313 |                 let now = Date()
314 |                 let cutoff = now.addingTimeInterval(-self.timeWindow)
    |                                                      `- warning: capture of 'self' with non-sendable type 'RateLimiter' in a '@Sendable' closure; this is an error in the Swift 6 language mode
315 |
316 |                 // Remove old requests outside the time window
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/RetryConfiguration.swift:326:33: warning: capture of 'self' with non-sendable type 'RateLimiter' in a '@Sendable' closure; this is an error in the Swift 6 language mode
292 |
293 | /// Rate limiting helper
294 | public class RateLimiter {
    |              `- note: class 'RateLimiter' does not conform to the 'Sendable' protocol
295 |     private let maxRequestsPerSecond: Double
296 |     private let timeWindow: TimeInterval
    :
324 |                         if delay > 0 {
325 |                             DispatchQueue.global().asyncAfter(deadline: .now() + delay) {
326 |                                 self.requestTimes.append(now.addingTimeInterval(delay))
    |                                 `- warning: capture of 'self' with non-sendable type 'RateLimiter' in a '@Sendable' closure; this is an error in the Swift 6 language mode
327 |                                 continuation.resume()
328 |                             }
[22/27] Compiling GoogleSheetsSwift BatchOptimizer.swift
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/Performance/BatchOptimizer.swift:20:27: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BatchOptimizer.Configuration' may have shared mutable state; this is an error in the Swift 6 language mode
  5 |
  6 |     /// Configuration for batch optimization
  7 |     public struct Configuration {
    |                   `- note: consider making struct 'Configuration' conform to the 'Sendable' protocol
  8 |         /// Maximum number of ranges to include in a single batch request
  9 |         public let maxBatchSize: Int
    :
 18 |         public let sortRanges: Bool
 19 |
 20 |         public static let `default` = Configuration(
    |                           |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BatchOptimizer.Configuration' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'default' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 21 |             maxBatchSize: 100,
 22 |             minBatchSize: 2,
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/Performance/BatchOptimizer.swift:133:14: warning: immutable value 'majorDimension' was never used; consider replacing with '_' or removing it
131 |         var optimizedOperations: [BatchWriteOperation] = []
132 |
133 |         for (majorDimension, ops) in groupedOperations {
    |              `- warning: immutable value 'majorDimension' was never used; consider replacing with '_' or removing it
134 |             // Sort operations by range for better performance
135 |             let sortedOps = ops.sorted { op1, op2 in
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/Performance/MemoryEfficientDataHandler.swift:23:27: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'MemoryEfficientDataHandler.Configuration' may have shared mutable state; this is an error in the Swift 6 language mode
  5 |
  6 |     /// Configuration for memory-efficient operations
  7 |     public struct Configuration {
    |                   `- note: consider making struct 'Configuration' conform to the 'Sendable' protocol
  8 |         /// Maximum number of rows to process in memory at once
  9 |         public let maxRowsInMemory: Int
    :
 21 |         public let compressInMemory: Bool
 22 |
 23 |         public static let `default` = Configuration(
    |                           |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'MemoryEfficientDataHandler.Configuration' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'default' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 24 |             maxRowsInMemory: 10000,
 25 |             maxColumnsInMemory: 100,
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/Performance/MemoryEfficientDataHandler.swift:31:27: warning: static property 'conservative' is not concurrency-safe because non-'Sendable' type 'MemoryEfficientDataHandler.Configuration' may have shared mutable state; this is an error in the Swift 6 language mode
  5 |
  6 |     /// Configuration for memory-efficient operations
  7 |     public struct Configuration {
    |                   `- note: consider making struct 'Configuration' conform to the 'Sendable' protocol
  8 |         /// Maximum number of rows to process in memory at once
  9 |         public let maxRowsInMemory: Int
    :
 29 |         )
 30 |
 31 |         public static let conservative = Configuration(
    |                           |- warning: static property 'conservative' is not concurrency-safe because non-'Sendable' type 'MemoryEfficientDataHandler.Configuration' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'conservative' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 32 |             maxRowsInMemory: 1000,
 33 |             maxColumnsInMemory: 50,
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/Performance/MemoryEfficientDataHandler.swift:357:20: error: cannot find 'mach_task_basic_info' in scope
355 |     /// Get current memory usage in bytes
356 |     public static func getCurrentMemoryUsage() -> Int {
357 |         var info = mach_task_basic_info()
    |                    `- error: cannot find 'mach_task_basic_info' in scope
358 |         var count = mach_msg_type_number_t(MemoryLayout<mach_task_basic_info>.size)/4
359 |
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/Performance/MemoryEfficientDataHandler.swift:358:21: error: cannot find 'mach_msg_type_number_t' in scope
356 |     public static func getCurrentMemoryUsage() -> Int {
357 |         var info = mach_task_basic_info()
358 |         var count = mach_msg_type_number_t(MemoryLayout<mach_task_basic_info>.size)/4
    |                     `- error: cannot find 'mach_msg_type_number_t' in scope
359 |
360 |         let kerr: kern_return_t = withUnsafeMutablePointer(to: &info) {
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/Performance/MemoryEfficientDataHandler.swift:358:57: error: cannot find type 'mach_task_basic_info' in scope
356 |     public static func getCurrentMemoryUsage() -> Int {
357 |         var info = mach_task_basic_info()
358 |         var count = mach_msg_type_number_t(MemoryLayout<mach_task_basic_info>.size)/4
    |                                                         `- error: cannot find type 'mach_task_basic_info' in scope
359 |
360 |         let kerr: kern_return_t = withUnsafeMutablePointer(to: &info) {
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/Performance/MemoryEfficientDataHandler.swift:360:19: error: cannot find type 'kern_return_t' in scope
358 |         var count = mach_msg_type_number_t(MemoryLayout<mach_task_basic_info>.size)/4
359 |
360 |         let kerr: kern_return_t = withUnsafeMutablePointer(to: &info) {
    |                   `- error: cannot find type 'kern_return_t' in scope
361 |             $0.withMemoryRebound(to: integer_t.self, capacity: 1) {
362 |                 task_info(mach_task_self_,
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/Performance/MemoryEfficientDataHandler.swift:369:20: error: cannot find 'KERN_SUCCESS' in scope
367 |         }
368 |
369 |         if kerr == KERN_SUCCESS {
    |                    `- error: cannot find 'KERN_SUCCESS' in scope
370 |             return Int(info.resident_size)
371 |         } else {
[23/27] Compiling GoogleSheetsSwift MemoryEfficientDataHandler.swift
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/Performance/BatchOptimizer.swift:20:27: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BatchOptimizer.Configuration' may have shared mutable state; this is an error in the Swift 6 language mode
  5 |
  6 |     /// Configuration for batch optimization
  7 |     public struct Configuration {
    |                   `- note: consider making struct 'Configuration' conform to the 'Sendable' protocol
  8 |         /// Maximum number of ranges to include in a single batch request
  9 |         public let maxBatchSize: Int
    :
 18 |         public let sortRanges: Bool
 19 |
 20 |         public static let `default` = Configuration(
    |                           |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'BatchOptimizer.Configuration' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'default' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 21 |             maxBatchSize: 100,
 22 |             minBatchSize: 2,
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/Performance/BatchOptimizer.swift:133:14: warning: immutable value 'majorDimension' was never used; consider replacing with '_' or removing it
131 |         var optimizedOperations: [BatchWriteOperation] = []
132 |
133 |         for (majorDimension, ops) in groupedOperations {
    |              `- warning: immutable value 'majorDimension' was never used; consider replacing with '_' or removing it
134 |             // Sort operations by range for better performance
135 |             let sortedOps = ops.sorted { op1, op2 in
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/Performance/MemoryEfficientDataHandler.swift:23:27: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'MemoryEfficientDataHandler.Configuration' may have shared mutable state; this is an error in the Swift 6 language mode
  5 |
  6 |     /// Configuration for memory-efficient operations
  7 |     public struct Configuration {
    |                   `- note: consider making struct 'Configuration' conform to the 'Sendable' protocol
  8 |         /// Maximum number of rows to process in memory at once
  9 |         public let maxRowsInMemory: Int
    :
 21 |         public let compressInMemory: Bool
 22 |
 23 |         public static let `default` = Configuration(
    |                           |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'MemoryEfficientDataHandler.Configuration' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'default' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 24 |             maxRowsInMemory: 10000,
 25 |             maxColumnsInMemory: 100,
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/Performance/MemoryEfficientDataHandler.swift:31:27: warning: static property 'conservative' is not concurrency-safe because non-'Sendable' type 'MemoryEfficientDataHandler.Configuration' may have shared mutable state; this is an error in the Swift 6 language mode
  5 |
  6 |     /// Configuration for memory-efficient operations
  7 |     public struct Configuration {
    |                   `- note: consider making struct 'Configuration' conform to the 'Sendable' protocol
  8 |         /// Maximum number of rows to process in memory at once
  9 |         public let maxRowsInMemory: Int
    :
 29 |         )
 30 |
 31 |         public static let conservative = Configuration(
    |                           |- warning: static property 'conservative' is not concurrency-safe because non-'Sendable' type 'MemoryEfficientDataHandler.Configuration' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'conservative' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 32 |             maxRowsInMemory: 1000,
 33 |             maxColumnsInMemory: 50,
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/Performance/MemoryEfficientDataHandler.swift:357:20: error: cannot find 'mach_task_basic_info' in scope
355 |     /// Get current memory usage in bytes
356 |     public static func getCurrentMemoryUsage() -> Int {
357 |         var info = mach_task_basic_info()
    |                    `- error: cannot find 'mach_task_basic_info' in scope
358 |         var count = mach_msg_type_number_t(MemoryLayout<mach_task_basic_info>.size)/4
359 |
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/Performance/MemoryEfficientDataHandler.swift:358:21: error: cannot find 'mach_msg_type_number_t' in scope
356 |     public static func getCurrentMemoryUsage() -> Int {
357 |         var info = mach_task_basic_info()
358 |         var count = mach_msg_type_number_t(MemoryLayout<mach_task_basic_info>.size)/4
    |                     `- error: cannot find 'mach_msg_type_number_t' in scope
359 |
360 |         let kerr: kern_return_t = withUnsafeMutablePointer(to: &info) {
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/Performance/MemoryEfficientDataHandler.swift:358:57: error: cannot find type 'mach_task_basic_info' in scope
356 |     public static func getCurrentMemoryUsage() -> Int {
357 |         var info = mach_task_basic_info()
358 |         var count = mach_msg_type_number_t(MemoryLayout<mach_task_basic_info>.size)/4
    |                                                         `- error: cannot find type 'mach_task_basic_info' in scope
359 |
360 |         let kerr: kern_return_t = withUnsafeMutablePointer(to: &info) {
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/Performance/MemoryEfficientDataHandler.swift:360:19: error: cannot find type 'kern_return_t' in scope
358 |         var count = mach_msg_type_number_t(MemoryLayout<mach_task_basic_info>.size)/4
359 |
360 |         let kerr: kern_return_t = withUnsafeMutablePointer(to: &info) {
    |                   `- error: cannot find type 'kern_return_t' in scope
361 |             $0.withMemoryRebound(to: integer_t.self, capacity: 1) {
362 |                 task_info(mach_task_self_,
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/Performance/MemoryEfficientDataHandler.swift:369:20: error: cannot find 'KERN_SUCCESS' in scope
367 |         }
368 |
369 |         if kerr == KERN_SUCCESS {
    |                    `- error: cannot find 'KERN_SUCCESS' in scope
370 |             return Int(info.resident_size)
371 |         } else {
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4606859-0":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/finestructure/spi-images:basic-6.1-latest swift build --triple x86_64-unknown-linux-gnu 2>&1
basic-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:99ea6d26ace67c023f359493a2ac553a612b92a7f2dee009657225f46f43aa0e
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.1-latest
[0/1] Planning build
Building for debugging...
[0/5] Write swift-version-24593BA9C3E375BF.txt
[2/23] Compiling GoogleSheetsSwift BatchOptimizer.swift
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/Performance/BatchOptimizer.swift:133:14: warning: immutable value 'majorDimension' was never used; consider replacing with '_' or removing it
131 |         var optimizedOperations: [BatchWriteOperation] = []
132 |
133 |         for (majorDimension, ops) in groupedOperations {
    |              `- warning: immutable value 'majorDimension' was never used; consider replacing with '_' or removing it
134 |             // Sort operations by range for better performance
135 |             let sortedOps = ops.sorted { op1, op2 in
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/Performance/MemoryEfficientDataHandler.swift:357:20: error: cannot find 'mach_task_basic_info' in scope
355 |     /// Get current memory usage in bytes
356 |     public static func getCurrentMemoryUsage() -> Int {
357 |         var info = mach_task_basic_info()
    |                    `- error: cannot find 'mach_task_basic_info' in scope
358 |         var count = mach_msg_type_number_t(MemoryLayout<mach_task_basic_info>.size)/4
359 |
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/Performance/MemoryEfficientDataHandler.swift:358:21: error: cannot find 'mach_msg_type_number_t' in scope
356 |     public static func getCurrentMemoryUsage() -> Int {
357 |         var info = mach_task_basic_info()
358 |         var count = mach_msg_type_number_t(MemoryLayout<mach_task_basic_info>.size)/4
    |                     `- error: cannot find 'mach_msg_type_number_t' in scope
359 |
360 |         let kerr: kern_return_t = withUnsafeMutablePointer(to: &info) {
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/Performance/MemoryEfficientDataHandler.swift:358:57: error: cannot find type 'mach_task_basic_info' in scope
356 |     public static func getCurrentMemoryUsage() -> Int {
357 |         var info = mach_task_basic_info()
358 |         var count = mach_msg_type_number_t(MemoryLayout<mach_task_basic_info>.size)/4
    |                                                         `- error: cannot find type 'mach_task_basic_info' in scope
359 |
360 |         let kerr: kern_return_t = withUnsafeMutablePointer(to: &info) {
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/Performance/MemoryEfficientDataHandler.swift:360:19: error: cannot find type 'kern_return_t' in scope
358 |         var count = mach_msg_type_number_t(MemoryLayout<mach_task_basic_info>.size)/4
359 |
360 |         let kerr: kern_return_t = withUnsafeMutablePointer(to: &info) {
    |                   `- error: cannot find type 'kern_return_t' in scope
361 |             $0.withMemoryRebound(to: integer_t.self, capacity: 1) {
362 |                 task_info(mach_task_self_,
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/Performance/MemoryEfficientDataHandler.swift:369:20: error: cannot find 'KERN_SUCCESS' in scope
367 |         }
368 |
369 |         if kerr == KERN_SUCCESS {
    |                    `- error: cannot find 'KERN_SUCCESS' in scope
370 |             return Int(info.resident_size)
371 |         } else {
[3/23] Compiling GoogleSheetsSwift MemoryEfficientDataHandler.swift
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/Performance/BatchOptimizer.swift:133:14: warning: immutable value 'majorDimension' was never used; consider replacing with '_' or removing it
131 |         var optimizedOperations: [BatchWriteOperation] = []
132 |
133 |         for (majorDimension, ops) in groupedOperations {
    |              `- warning: immutable value 'majorDimension' was never used; consider replacing with '_' or removing it
134 |             // Sort operations by range for better performance
135 |             let sortedOps = ops.sorted { op1, op2 in
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/Performance/MemoryEfficientDataHandler.swift:357:20: error: cannot find 'mach_task_basic_info' in scope
355 |     /// Get current memory usage in bytes
356 |     public static func getCurrentMemoryUsage() -> Int {
357 |         var info = mach_task_basic_info()
    |                    `- error: cannot find 'mach_task_basic_info' in scope
358 |         var count = mach_msg_type_number_t(MemoryLayout<mach_task_basic_info>.size)/4
359 |
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/Performance/MemoryEfficientDataHandler.swift:358:21: error: cannot find 'mach_msg_type_number_t' in scope
356 |     public static func getCurrentMemoryUsage() -> Int {
357 |         var info = mach_task_basic_info()
358 |         var count = mach_msg_type_number_t(MemoryLayout<mach_task_basic_info>.size)/4
    |                     `- error: cannot find 'mach_msg_type_number_t' in scope
359 |
360 |         let kerr: kern_return_t = withUnsafeMutablePointer(to: &info) {
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/Performance/MemoryEfficientDataHandler.swift:358:57: error: cannot find type 'mach_task_basic_info' in scope
356 |     public static func getCurrentMemoryUsage() -> Int {
357 |         var info = mach_task_basic_info()
358 |         var count = mach_msg_type_number_t(MemoryLayout<mach_task_basic_info>.size)/4
    |                                                         `- error: cannot find type 'mach_task_basic_info' in scope
359 |
360 |         let kerr: kern_return_t = withUnsafeMutablePointer(to: &info) {
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/Performance/MemoryEfficientDataHandler.swift:360:19: error: cannot find type 'kern_return_t' in scope
358 |         var count = mach_msg_type_number_t(MemoryLayout<mach_task_basic_info>.size)/4
359 |
360 |         let kerr: kern_return_t = withUnsafeMutablePointer(to: &info) {
    |                   `- error: cannot find type 'kern_return_t' in scope
361 |             $0.withMemoryRebound(to: integer_t.self, capacity: 1) {
362 |                 task_info(mach_task_self_,
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/Performance/MemoryEfficientDataHandler.swift:369:20: error: cannot find 'KERN_SUCCESS' in scope
367 |         }
368 |
369 |         if kerr == KERN_SUCCESS {
    |                    `- error: cannot find 'KERN_SUCCESS' in scope
370 |             return Int(info.resident_size)
371 |         } else {
[4/23] Compiling GoogleSheetsSwift GoogleSheetsLogger.swift
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsLogger.swift:315:45: error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
313 |
314 |     /// Log HTTP response details
315 |     public func logHTTPResponse(_ response: HTTPURLResponse, data: Data, context: LoggingContext) {
    |                                             `- error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
316 |         guard isEnabled(for: .debug) else { return }
317 |
Foundation.HTTPURLResponse:2:18: note: 'HTTPURLResponse' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias HTTPURLResponse = AnyObject
  |                  `- note: 'HTTPURLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsLogger.swift:387:41: error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
385 |     }
386 |
387 |     public func logResponse(_ response: HTTPURLResponse, data: Data) {
    |                                         `- error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
388 |         guard logger.isEnabled(for: .debug) else { return }
389 |
Foundation.HTTPURLResponse:2:18: note: 'HTTPURLResponse' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias HTTPURLResponse = AnyObject
  |                  `- note: 'HTTPURLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsLogger.swift:136:33: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
134 |         // Create file if it doesn't exist
135 |         if !FileManager.default.fileExists(atPath: fileURL.path) {
136 |             FileManager.default.createFile(atPath: fileURL.path, contents: nil, attributes: nil)
    |                                 `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
137 |         }
138 |
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsLogger.swift:319:43: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
317 |
318 |         var metadata = context.toMetadata()
319 |         metadata["statusCode"] = response.statusCode
    |                                           `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
320 |         metadata["responseHeaders"] = response.allHeaderFields
321 |
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsLogger.swift:320:48: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'allHeaderFields'
318 |         var metadata = context.toMetadata()
319 |         metadata["statusCode"] = response.statusCode
320 |         metadata["responseHeaders"] = response.allHeaderFields
    |                                                `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'allHeaderFields'
321 |
322 |         if let responseString = String(data: data, encoding: .utf8) {
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsLogger.swift:391:36: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
389 |
390 |         var metadata: [String: Any] = [
391 |             "statusCode": response.statusCode,
    |                                    `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
392 |             "url": response.url?.absoluteString ?? "unknown",
393 |             "headers": response.allHeaderFields
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsLogger.swift:392:29: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'url'
390 |         var metadata: [String: Any] = [
391 |             "statusCode": response.statusCode,
392 |             "url": response.url?.absoluteString ?? "unknown",
    |                             `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'url'
393 |             "headers": response.allHeaderFields
394 |         ]
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsLogger.swift:393:33: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'allHeaderFields'
391 |             "statusCode": response.statusCode,
392 |             "url": response.url?.absoluteString ?? "unknown",
393 |             "headers": response.allHeaderFields
    |                                 `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'allHeaderFields'
394 |         ]
395 |
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:13:28: error: cannot find type 'URLRequest' in scope
 11 | /// Protocol for URLSession abstraction to enable testing
 12 | public protocol URLSessionProtocol {
 13 |     func data(for request: URLRequest) async throws -> (Data, URLResponse)
    |                            `- error: cannot find type 'URLRequest' in scope
 14 | }
 15 |
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:13:63: error: 'URLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 11 | /// Protocol for URLSession abstraction to enable testing
 12 | public protocol URLSessionProtocol {
 13 |     func data(for request: URLRequest) async throws -> (Data, URLResponse)
    |                                                               `- error: 'URLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 14 | }
 15 |
Foundation.URLResponse:2:18: note: 'URLResponse' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLResponse = AnyObject
  |                  `- note: 'URLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:17:1: error: non-nominal type 'URLSession' (aka 'AnyObject') cannot be extended
 15 |
 16 | /// Extension to make URLSession conform to URLSessionProtocol
 17 | extension URLSession: URLSessionProtocol {}
    | `- error: non-nominal type 'URLSession' (aka 'AnyObject') cannot be extended
 18 |
 19 | /// Request builder for constructing Google Sheets API requests
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:341:34: error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
339 | public protocol HTTPLogger {
340 |     func logRequest(_ request: HTTPRequest)
341 |     func logResponse(_ response: HTTPURLResponse, data: Data)
    |                                  `- error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
342 |     func logError(_ error: Error, for request: HTTPRequest)
343 | }
Foundation.HTTPURLResponse:2:18: note: 'HTTPURLResponse' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias HTTPURLResponse = AnyObject
  |                  `- note: 'HTTPURLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:359:41: error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
357 |     }
358 |
359 |     public func logResponse(_ response: HTTPURLResponse, data: Data) {
    |                                         `- error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
360 |         print("✅ HTTP Response: \(response.statusCode) from \(response.url?.absoluteString ?? "unknown")")
361 |         if let responseString = String(data: data, encoding: .utf8) {
Foundation.HTTPURLResponse:2:18: note: 'HTTPURLResponse' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias HTTPURLResponse = AnyObject
  |                  `- note: 'HTTPURLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:379:50: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
377 |
378 |     public init(
379 |         session: URLSessionProtocol = URLSession.shared,
    |                                                  `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
380 |         logger: HTTPLogger? = nil,
381 |         retryConfiguration: RetryConfiguration = .default,
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:360:46: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
358 |
359 |     public func logResponse(_ response: HTTPURLResponse, data: Data) {
360 |         print("✅ HTTP Response: \(response.statusCode) from \(response.url?.absoluteString ?? "unknown")")
    |                                            `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
361 |         if let responseString = String(data: data, encoding: .utf8) {
362 |             print("📥 Response Data: \(responseString)")
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:431:26: error: cannot find 'URLRequest' in scope
429 |         logger?.logRequest(request)
430 |
431 |         var urlRequest = URLRequest(url: request.url)
    |                          `- error: cannot find 'URLRequest' in scope
432 |         urlRequest.httpMethod = request.method.rawValue
433 |         urlRequest.httpBody = request.body
[5/23] Compiling GoogleSheetsSwift GoogleSheetsSwift.swift
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsLogger.swift:315:45: error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
313 |
314 |     /// Log HTTP response details
315 |     public func logHTTPResponse(_ response: HTTPURLResponse, data: Data, context: LoggingContext) {
    |                                             `- error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
316 |         guard isEnabled(for: .debug) else { return }
317 |
Foundation.HTTPURLResponse:2:18: note: 'HTTPURLResponse' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias HTTPURLResponse = AnyObject
  |                  `- note: 'HTTPURLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsLogger.swift:387:41: error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
385 |     }
386 |
387 |     public func logResponse(_ response: HTTPURLResponse, data: Data) {
    |                                         `- error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
388 |         guard logger.isEnabled(for: .debug) else { return }
389 |
Foundation.HTTPURLResponse:2:18: note: 'HTTPURLResponse' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias HTTPURLResponse = AnyObject
  |                  `- note: 'HTTPURLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsLogger.swift:136:33: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
134 |         // Create file if it doesn't exist
135 |         if !FileManager.default.fileExists(atPath: fileURL.path) {
136 |             FileManager.default.createFile(atPath: fileURL.path, contents: nil, attributes: nil)
    |                                 `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
137 |         }
138 |
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsLogger.swift:319:43: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
317 |
318 |         var metadata = context.toMetadata()
319 |         metadata["statusCode"] = response.statusCode
    |                                           `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
320 |         metadata["responseHeaders"] = response.allHeaderFields
321 |
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsLogger.swift:320:48: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'allHeaderFields'
318 |         var metadata = context.toMetadata()
319 |         metadata["statusCode"] = response.statusCode
320 |         metadata["responseHeaders"] = response.allHeaderFields
    |                                                `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'allHeaderFields'
321 |
322 |         if let responseString = String(data: data, encoding: .utf8) {
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsLogger.swift:391:36: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
389 |
390 |         var metadata: [String: Any] = [
391 |             "statusCode": response.statusCode,
    |                                    `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
392 |             "url": response.url?.absoluteString ?? "unknown",
393 |             "headers": response.allHeaderFields
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsLogger.swift:392:29: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'url'
390 |         var metadata: [String: Any] = [
391 |             "statusCode": response.statusCode,
392 |             "url": response.url?.absoluteString ?? "unknown",
    |                             `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'url'
393 |             "headers": response.allHeaderFields
394 |         ]
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsLogger.swift:393:33: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'allHeaderFields'
391 |             "statusCode": response.statusCode,
392 |             "url": response.url?.absoluteString ?? "unknown",
393 |             "headers": response.allHeaderFields
    |                                 `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'allHeaderFields'
394 |         ]
395 |
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:13:28: error: cannot find type 'URLRequest' in scope
 11 | /// Protocol for URLSession abstraction to enable testing
 12 | public protocol URLSessionProtocol {
 13 |     func data(for request: URLRequest) async throws -> (Data, URLResponse)
    |                            `- error: cannot find type 'URLRequest' in scope
 14 | }
 15 |
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:13:63: error: 'URLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 11 | /// Protocol for URLSession abstraction to enable testing
 12 | public protocol URLSessionProtocol {
 13 |     func data(for request: URLRequest) async throws -> (Data, URLResponse)
    |                                                               `- error: 'URLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 14 | }
 15 |
Foundation.URLResponse:2:18: note: 'URLResponse' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLResponse = AnyObject
  |                  `- note: 'URLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:17:1: error: non-nominal type 'URLSession' (aka 'AnyObject') cannot be extended
 15 |
 16 | /// Extension to make URLSession conform to URLSessionProtocol
 17 | extension URLSession: URLSessionProtocol {}
    | `- error: non-nominal type 'URLSession' (aka 'AnyObject') cannot be extended
 18 |
 19 | /// Request builder for constructing Google Sheets API requests
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:341:34: error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
339 | public protocol HTTPLogger {
340 |     func logRequest(_ request: HTTPRequest)
341 |     func logResponse(_ response: HTTPURLResponse, data: Data)
    |                                  `- error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
342 |     func logError(_ error: Error, for request: HTTPRequest)
343 | }
Foundation.HTTPURLResponse:2:18: note: 'HTTPURLResponse' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias HTTPURLResponse = AnyObject
  |                  `- note: 'HTTPURLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:359:41: error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
357 |     }
358 |
359 |     public func logResponse(_ response: HTTPURLResponse, data: Data) {
    |                                         `- error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
360 |         print("✅ HTTP Response: \(response.statusCode) from \(response.url?.absoluteString ?? "unknown")")
361 |         if let responseString = String(data: data, encoding: .utf8) {
Foundation.HTTPURLResponse:2:18: note: 'HTTPURLResponse' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias HTTPURLResponse = AnyObject
  |                  `- note: 'HTTPURLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:379:50: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
377 |
378 |     public init(
379 |         session: URLSessionProtocol = URLSession.shared,
    |                                                  `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
380 |         logger: HTTPLogger? = nil,
381 |         retryConfiguration: RetryConfiguration = .default,
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:360:46: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
358 |
359 |     public func logResponse(_ response: HTTPURLResponse, data: Data) {
360 |         print("✅ HTTP Response: \(response.statusCode) from \(response.url?.absoluteString ?? "unknown")")
    |                                            `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
361 |         if let responseString = String(data: data, encoding: .utf8) {
362 |             print("📥 Response Data: \(responseString)")
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:431:26: error: cannot find 'URLRequest' in scope
429 |         logger?.logRequest(request)
430 |
431 |         var urlRequest = URLRequest(url: request.url)
    |                          `- error: cannot find 'URLRequest' in scope
432 |         urlRequest.httpMethod = request.method.rawValue
433 |         urlRequest.httpBody = request.body
[6/23] Compiling GoogleSheetsSwift HTTPClient.swift
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsLogger.swift:315:45: error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
313 |
314 |     /// Log HTTP response details
315 |     public func logHTTPResponse(_ response: HTTPURLResponse, data: Data, context: LoggingContext) {
    |                                             `- error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
316 |         guard isEnabled(for: .debug) else { return }
317 |
Foundation.HTTPURLResponse:2:18: note: 'HTTPURLResponse' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias HTTPURLResponse = AnyObject
  |                  `- note: 'HTTPURLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsLogger.swift:387:41: error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
385 |     }
386 |
387 |     public func logResponse(_ response: HTTPURLResponse, data: Data) {
    |                                         `- error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
388 |         guard logger.isEnabled(for: .debug) else { return }
389 |
Foundation.HTTPURLResponse:2:18: note: 'HTTPURLResponse' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias HTTPURLResponse = AnyObject
  |                  `- note: 'HTTPURLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsLogger.swift:136:33: warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
134 |         // Create file if it doesn't exist
135 |         if !FileManager.default.fileExists(atPath: fileURL.path) {
136 |             FileManager.default.createFile(atPath: fileURL.path, contents: nil, attributes: nil)
    |                                 `- warning: result of call to 'createFile(atPath:contents:attributes:)' is unused
137 |         }
138 |
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsLogger.swift:319:43: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
317 |
318 |         var metadata = context.toMetadata()
319 |         metadata["statusCode"] = response.statusCode
    |                                           `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
320 |         metadata["responseHeaders"] = response.allHeaderFields
321 |
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsLogger.swift:320:48: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'allHeaderFields'
318 |         var metadata = context.toMetadata()
319 |         metadata["statusCode"] = response.statusCode
320 |         metadata["responseHeaders"] = response.allHeaderFields
    |                                                `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'allHeaderFields'
321 |
322 |         if let responseString = String(data: data, encoding: .utf8) {
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsLogger.swift:391:36: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
389 |
390 |         var metadata: [String: Any] = [
391 |             "statusCode": response.statusCode,
    |                                    `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
392 |             "url": response.url?.absoluteString ?? "unknown",
393 |             "headers": response.allHeaderFields
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsLogger.swift:392:29: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'url'
390 |         var metadata: [String: Any] = [
391 |             "statusCode": response.statusCode,
392 |             "url": response.url?.absoluteString ?? "unknown",
    |                             `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'url'
393 |             "headers": response.allHeaderFields
394 |         ]
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsLogger.swift:393:33: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'allHeaderFields'
391 |             "statusCode": response.statusCode,
392 |             "url": response.url?.absoluteString ?? "unknown",
393 |             "headers": response.allHeaderFields
    |                                 `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'allHeaderFields'
394 |         ]
395 |
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:13:28: error: cannot find type 'URLRequest' in scope
 11 | /// Protocol for URLSession abstraction to enable testing
 12 | public protocol URLSessionProtocol {
 13 |     func data(for request: URLRequest) async throws -> (Data, URLResponse)
    |                            `- error: cannot find type 'URLRequest' in scope
 14 | }
 15 |
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:13:63: error: 'URLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 11 | /// Protocol for URLSession abstraction to enable testing
 12 | public protocol URLSessionProtocol {
 13 |     func data(for request: URLRequest) async throws -> (Data, URLResponse)
    |                                                               `- error: 'URLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 14 | }
 15 |
Foundation.URLResponse:2:18: note: 'URLResponse' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLResponse = AnyObject
  |                  `- note: 'URLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:17:1: error: non-nominal type 'URLSession' (aka 'AnyObject') cannot be extended
 15 |
 16 | /// Extension to make URLSession conform to URLSessionProtocol
 17 | extension URLSession: URLSessionProtocol {}
    | `- error: non-nominal type 'URLSession' (aka 'AnyObject') cannot be extended
 18 |
 19 | /// Request builder for constructing Google Sheets API requests
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:341:34: error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
339 | public protocol HTTPLogger {
340 |     func logRequest(_ request: HTTPRequest)
341 |     func logResponse(_ response: HTTPURLResponse, data: Data)
    |                                  `- error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
342 |     func logError(_ error: Error, for request: HTTPRequest)
343 | }
Foundation.HTTPURLResponse:2:18: note: 'HTTPURLResponse' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias HTTPURLResponse = AnyObject
  |                  `- note: 'HTTPURLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:359:41: error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
357 |     }
358 |
359 |     public func logResponse(_ response: HTTPURLResponse, data: Data) {
    |                                         `- error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
360 |         print("✅ HTTP Response: \(response.statusCode) from \(response.url?.absoluteString ?? "unknown")")
361 |         if let responseString = String(data: data, encoding: .utf8) {
Foundation.HTTPURLResponse:2:18: note: 'HTTPURLResponse' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias HTTPURLResponse = AnyObject
  |                  `- note: 'HTTPURLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:379:50: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
377 |
378 |     public init(
379 |         session: URLSessionProtocol = URLSession.shared,
    |                                                  `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
380 |         logger: HTTPLogger? = nil,
381 |         retryConfiguration: RetryConfiguration = .default,
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:360:46: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
358 |
359 |     public func logResponse(_ response: HTTPURLResponse, data: Data) {
360 |         print("✅ HTTP Response: \(response.statusCode) from \(response.url?.absoluteString ?? "unknown")")
    |                                            `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
361 |         if let responseString = String(data: data, encoding: .utf8) {
362 |             print("📥 Response Data: \(responseString)")
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:431:26: error: cannot find 'URLRequest' in scope
429 |         logger?.logRequest(request)
430 |
431 |         var urlRequest = URLRequest(url: request.url)
    |                          `- error: cannot find 'URLRequest' in scope
432 |         urlRequest.httpMethod = request.method.rawValue
433 |         urlRequest.httpBody = request.body
[7/25] Compiling GoogleSheetsSwift ResponseCache.swift
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:379:50: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
377 |
378 |     public init(
379 |         session: URLSessionProtocol = URLSession.shared,
    |                                                  `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
380 |         logger: HTTPLogger? = nil,
381 |         retryConfiguration: RetryConfiguration = .default,
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsClient.swift:496:21: error: cannot find 'parseA1Range' in scope
494 |     public static func isValidA1Range(_ range: String) -> Bool {
495 |         do {
496 |             _ = try parseA1Range(range)
    |                     `- error: cannot find 'parseA1Range' in scope
497 |             return true
498 |         } catch {
[8/25] Compiling GoogleSheetsSwift GoogleSheetsClient.swift
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:379:50: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
377 |
378 |     public init(
379 |         session: URLSessionProtocol = URLSession.shared,
    |                                                  `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
380 |         logger: HTTPLogger? = nil,
381 |         retryConfiguration: RetryConfiguration = .default,
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsClient.swift:496:21: error: cannot find 'parseA1Range' in scope
494 |     public static func isValidA1Range(_ range: String) -> Bool {
495 |         do {
496 |             _ = try parseA1Range(range)
    |                     `- error: cannot find 'parseA1Range' in scope
497 |             return true
498 |         } catch {
[9/25] Compiling GoogleSheetsSwift GoogleSheetsError.swift
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:379:50: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
377 |
378 |     public init(
379 |         session: URLSessionProtocol = URLSession.shared,
    |                                                  `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
380 |         logger: HTTPLogger? = nil,
381 |         retryConfiguration: RetryConfiguration = .default,
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsClient.swift:496:21: error: cannot find 'parseA1Range' in scope
494 |     public static func isValidA1Range(_ range: String) -> Bool {
495 |         do {
496 |             _ = try parseA1Range(range)
    |                     `- error: cannot find 'parseA1Range' in scope
497 |             return true
498 |         } catch {
error: emit-module command failed with exit code 1 (use -v to see invocation)
[10/25] Emitting module GoogleSheetsSwift
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsLogger.swift:315:45: error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
313 |
314 |     /// Log HTTP response details
315 |     public func logHTTPResponse(_ response: HTTPURLResponse, data: Data, context: LoggingContext) {
    |                                             `- error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
316 |         guard isEnabled(for: .debug) else { return }
317 |
Foundation.HTTPURLResponse:2:18: note: 'HTTPURLResponse' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias HTTPURLResponse = AnyObject
  |                  `- note: 'HTTPURLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/GoogleSheetsLogger.swift:387:41: error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
385 |     }
386 |
387 |     public func logResponse(_ response: HTTPURLResponse, data: Data) {
    |                                         `- error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
388 |         guard logger.isEnabled(for: .debug) else { return }
389 |
Foundation.HTTPURLResponse:2:18: note: 'HTTPURLResponse' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias HTTPURLResponse = AnyObject
  |                  `- note: 'HTTPURLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:13:28: error: cannot find type 'URLRequest' in scope
 11 | /// Protocol for URLSession abstraction to enable testing
 12 | public protocol URLSessionProtocol {
 13 |     func data(for request: URLRequest) async throws -> (Data, URLResponse)
    |                            `- error: cannot find type 'URLRequest' in scope
 14 | }
 15 |
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:13:63: error: 'URLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 11 | /// Protocol for URLSession abstraction to enable testing
 12 | public protocol URLSessionProtocol {
 13 |     func data(for request: URLRequest) async throws -> (Data, URLResponse)
    |                                                               `- error: 'URLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 14 | }
 15 |
Foundation.URLResponse:2:18: note: 'URLResponse' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLResponse = AnyObject
  |                  `- note: 'URLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:17:1: error: non-nominal type 'URLSession' (aka 'AnyObject') cannot be extended
 15 |
 16 | /// Extension to make URLSession conform to URLSessionProtocol
 17 | extension URLSession: URLSessionProtocol {}
    | `- error: non-nominal type 'URLSession' (aka 'AnyObject') cannot be extended
 18 |
 19 | /// Request builder for constructing Google Sheets API requests
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:341:34: error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
339 | public protocol HTTPLogger {
340 |     func logRequest(_ request: HTTPRequest)
341 |     func logResponse(_ response: HTTPURLResponse, data: Data)
    |                                  `- error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
342 |     func logError(_ error: Error, for request: HTTPRequest)
343 | }
Foundation.HTTPURLResponse:2:18: note: 'HTTPURLResponse' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias HTTPURLResponse = AnyObject
  |                  `- note: 'HTTPURLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:359:41: error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
357 |     }
358 |
359 |     public func logResponse(_ response: HTTPURLResponse, data: Data) {
    |                                         `- error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
360 |         print("✅ HTTP Response: \(response.statusCode) from \(response.url?.absoluteString ?? "unknown")")
361 |         if let responseString = String(data: data, encoding: .utf8) {
Foundation.HTTPURLResponse:2:18: note: 'HTTPURLResponse' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias HTTPURLResponse = AnyObject
  |                  `- note: 'HTTPURLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:379:50: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
377 |
378 |     public init(
379 |         session: URLSessionProtocol = URLSession.shared,
    |                                                  `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
380 |         logger: HTTPLogger? = nil,
381 |         retryConfiguration: RetryConfiguration = .default,
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:443:79: error: cannot find type 'SecKey' in scope
441 |     }
442 |
443 |     private static func parsePrivateKey(_ privateKeyString: String) throws -> SecKey {
    |                                                                               `- error: cannot find type 'SecKey' in scope
444 |         // Remove PEM headers and whitespace
445 |         let cleanKey = privateKeyString
[11/25] Compiling GoogleSheetsSwift SpreadsheetsService.swift
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/Services/SpreadsheetsService.swift:194:13: warning: initialization of immutable value 'requestBuilder' was never used; consider replacing with assignment to '_' or removing it
192 |     ) async throws -> HTTPRequest {
193 |         let accessToken = try await tokenManager.getAccessToken()
194 |         let requestBuilder = RequestBuilder(accessToken: accessToken)
    |             `- warning: initialization of immutable value 'requestBuilder' was never used; consider replacing with assignment to '_' or removing it
195 |
196 |         let baseURL = "https://sheets.googleapis.com/v4"
[12/25] Compiling GoogleSheetsSwift SpreadsheetsServiceProtocol.swift
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/Services/SpreadsheetsService.swift:194:13: warning: initialization of immutable value 'requestBuilder' was never used; consider replacing with assignment to '_' or removing it
192 |     ) async throws -> HTTPRequest {
193 |         let accessToken = try await tokenManager.getAccessToken()
194 |         let requestBuilder = RequestBuilder(accessToken: accessToken)
    |             `- warning: initialization of immutable value 'requestBuilder' was never used; consider replacing with assignment to '_' or removing it
195 |
196 |         let baseURL = "https://sheets.googleapis.com/v4"
[13/25] Compiling GoogleSheetsSwift ValueModels.swift
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:443:79: error: cannot find type 'SecKey' in scope
441 |     }
442 |
443 |     private static func parsePrivateKey(_ privateKeyString: String) throws -> SecKey {
    |                                                                               `- error: cannot find type 'SecKey' in scope
444 |         // Remove PEM headers and whitespace
445 |         let cleanKey = privateKeyString
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:426:30: error: cannot find type 'CFError' in scope
424 |         // Create signature
425 |         let dataToSign = data.data(using: .utf8)!
426 |         var error: Unmanaged<CFError>?
    |                              `- error: cannot find type 'CFError' in scope
427 |
428 |         guard let signature = SecKeyCreateSignature(
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:428:31: error: cannot find 'SecKeyCreateSignature' in scope
426 |         var error: Unmanaged<CFError>?
427 |
428 |         guard let signature = SecKeyCreateSignature(
    |                               `- error: cannot find 'SecKeyCreateSignature' in scope
429 |             secKey,
430 |             .rsaSignatureMessagePKCS1v15SHA256,
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:431:27: error: cannot find type 'CFData' in scope
429 |             secKey,
430 |             .rsaSignatureMessagePKCS1v15SHA256,
431 |             dataToSign as CFData,
    |                           `- error: cannot find type 'CFData' in scope
432 |             &error
433 |         ) else {
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:430:14: error: cannot infer contextual base in reference to member 'rsaSignatureMessagePKCS1v15SHA256'
428 |         guard let signature = SecKeyCreateSignature(
429 |             secKey,
430 |             .rsaSignatureMessagePKCS1v15SHA256,
    |              `- error: cannot infer contextual base in reference to member 'rsaSignatureMessagePKCS1v15SHA256'
431 |             dataToSign as CFData,
432 |             &error
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:459:28: error: cannot find 'SecItemImportExportKeyParameters' in scope
457 |
458 |         // Try using SecItemImport which is more robust for PKCS#8 keys
459 |         var importParams = SecItemImportExportKeyParameters()
    |                            `- error: cannot find 'SecItemImportExportKeyParameters' in scope
460 |         importParams.version = UInt32(SEC_KEY_IMPORT_EXPORT_PARAMS_VERSION)
461 |         importParams.flags = SecKeyImportExportFlags(rawValue: 0)
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:460:39: error: cannot find 'SEC_KEY_IMPORT_EXPORT_PARAMS_VERSION' in scope
458 |         // Try using SecItemImport which is more robust for PKCS#8 keys
459 |         var importParams = SecItemImportExportKeyParameters()
460 |         importParams.version = UInt32(SEC_KEY_IMPORT_EXPORT_PARAMS_VERSION)
    |                                       `- error: cannot find 'SEC_KEY_IMPORT_EXPORT_PARAMS_VERSION' in scope
461 |         importParams.flags = SecKeyImportExportFlags(rawValue: 0)
462 |         importParams.passphrase = nil
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:461:30: error: cannot find 'SecKeyImportExportFlags' in scope
459 |         var importParams = SecItemImportExportKeyParameters()
460 |         importParams.version = UInt32(SEC_KEY_IMPORT_EXPORT_PARAMS_VERSION)
461 |         importParams.flags = SecKeyImportExportFlags(rawValue: 0)
    |                              `- error: cannot find 'SecKeyImportExportFlags' in scope
462 |         importParams.passphrase = nil
463 |         importParams.alertTitle = nil
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:469:23: error: cannot find type 'CFArray' in scope
467 |         importParams.keyAttributes = nil
468 |
469 |         var outItems: CFArray?
    |                       `- error: cannot find type 'CFArray' in scope
470 |         let importStatus = SecItemImport(
471 |             keyData as CFData,
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:470:28: error: cannot find 'SecItemImport' in scope
468 |
469 |         var outItems: CFArray?
470 |         let importStatus = SecItemImport(
    |                            `- error: cannot find 'SecItemImport' in scope
471 |             keyData as CFData,
472 |             nil, // filename
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:475:13: error: cannot find 'SecItemImportExportFlags' in scope
473 |             nil, // inputFormat (let system determine)
474 |             nil, // itemType (let system determine)
475 |             SecItemImportExportFlags(rawValue: 0),
    |             `- error: cannot find 'SecItemImportExportFlags' in scope
476 |             &importParams,
477 |             nil, // keychain (use default)
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:471:24: error: cannot find type 'CFData' in scope
469 |         var outItems: CFArray?
470 |         let importStatus = SecItemImport(
471 |             keyData as CFData,
    |                        `- error: cannot find type 'CFData' in scope
472 |             nil, // filename
473 |             nil, // inputFormat (let system determine)
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:472:13: error: 'nil' requires a contextual type
470 |         let importStatus = SecItemImport(
471 |             keyData as CFData,
472 |             nil, // filename
    |             `- error: 'nil' requires a contextual type
473 |             nil, // inputFormat (let system determine)
474 |             nil, // itemType (let system determine)
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:473:13: error: 'nil' requires a contextual type
471 |             keyData as CFData,
472 |             nil, // filename
473 |             nil, // inputFormat (let system determine)
    |             `- error: 'nil' requires a contextual type
474 |             nil, // itemType (let system determine)
475 |             SecItemImportExportFlags(rawValue: 0),
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:474:13: error: 'nil' requires a contextual type
472 |             nil, // filename
473 |             nil, // inputFormat (let system determine)
474 |             nil, // itemType (let system determine)
    |             `- error: 'nil' requires a contextual type
475 |             SecItemImportExportFlags(rawValue: 0),
476 |             &importParams,
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:477:13: error: 'nil' requires a contextual type
475 |             SecItemImportExportFlags(rawValue: 0),
476 |             &importParams,
477 |             nil, // keychain (use default)
    |             `- error: 'nil' requires a contextual type
478 |             &outItems
479 |         )
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:481:28: error: cannot find 'errSecSuccess' in scope
479 |         )
480 |
481 |         if importStatus == errSecSuccess, let items = outItems as? [Any], !items.isEmpty {
    |                            `- error: cannot find 'errSecSuccess' in scope
482 |             // Successfully imported, now extract the SecKey
483 |             if let firstItem = items.first {
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:485:20: error: cannot find 'CFGetTypeID' in scope
483 |             if let firstItem = items.first {
484 |                 // Check if it's a SecKey by comparing CFTypeIDs
485 |                 if CFGetTypeID(firstItem as CFTypeRef) == SecKeyGetTypeID() {
    |                    `- error: cannot find 'CFGetTypeID' in scope
486 |                     return (firstItem as! SecKey)
487 |                 }
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:485:59: error: cannot find 'SecKeyGetTypeID' in scope
483 |             if let firstItem = items.first {
484 |                 // Check if it's a SecKey by comparing CFTypeIDs
485 |                 if CFGetTypeID(firstItem as CFTypeRef) == SecKeyGetTypeID() {
    |                                                           `- error: cannot find 'SecKeyGetTypeID' in scope
486 |                     return (firstItem as! SecKey)
487 |                 }
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:485:45: error: cannot find type 'CFTypeRef' in scope
483 |             if let firstItem = items.first {
484 |                 // Check if it's a SecKey by comparing CFTypeIDs
485 |                 if CFGetTypeID(firstItem as CFTypeRef) == SecKeyGetTypeID() {
    |                                             `- error: cannot find type 'CFTypeRef' in scope
486 |                     return (firstItem as! SecKey)
487 |                 }
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:492:30: error: cannot find type 'CFError' in scope
490 |
491 |         // If SecItemImport fails, fall back to SecKeyCreateWithData
492 |         var error: Unmanaged<CFError>?
    |                              `- error: cannot find type 'CFError' in scope
493 |
494 |         // Try with minimal attributes
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:496:13: error: cannot find 'kSecAttrKeyType' in scope
494 |         // Try with minimal attributes
495 |         let attributes: [String: Any] = [
496 |             kSecAttrKeyType as String: kSecAttrKeyTypeRSA,
    |             `- error: cannot find 'kSecAttrKeyType' in scope
497 |             kSecAttrKeyClass as String: kSecAttrKeyClassPrivate
498 |         ]
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:496:40: error: cannot find 'kSecAttrKeyTypeRSA' in scope
494 |         // Try with minimal attributes
495 |         let attributes: [String: Any] = [
496 |             kSecAttrKeyType as String: kSecAttrKeyTypeRSA,
    |                                        `- error: cannot find 'kSecAttrKeyTypeRSA' in scope
497 |             kSecAttrKeyClass as String: kSecAttrKeyClassPrivate
498 |         ]
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:497:13: error: cannot find 'kSecAttrKeyClass' in scope
495 |         let attributes: [String: Any] = [
496 |             kSecAttrKeyType as String: kSecAttrKeyTypeRSA,
497 |             kSecAttrKeyClass as String: kSecAttrKeyClassPrivate
    |             `- error: cannot find 'kSecAttrKeyClass' in scope
498 |         ]
499 |
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:497:41: error: cannot find 'kSecAttrKeyClassPrivate' in scope
495 |         let attributes: [String: Any] = [
496 |             kSecAttrKeyType as String: kSecAttrKeyTypeRSA,
497 |             kSecAttrKeyClass as String: kSecAttrKeyClassPrivate
    |                                         `- error: cannot find 'kSecAttrKeyClassPrivate' in scope
498 |         ]
499 |
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:500:25: error: cannot find 'SecKeyCreateWithData' in scope
498 |         ]
499 |
500 |         if let secKey = SecKeyCreateWithData(keyData as CFData, attributes as CFDictionary, &error) {
    |                         `- error: cannot find 'SecKeyCreateWithData' in scope
501 |             return secKey
502 |         }
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:500:57: error: cannot find type 'CFData' in scope
498 |         ]
499 |
500 |         if let secKey = SecKeyCreateWithData(keyData as CFData, attributes as CFDictionary, &error) {
    |                                                         `- error: cannot find type 'CFData' in scope
501 |             return secKey
502 |         }
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:500:79: error: cannot find type 'CFDictionary' in scope
498 |         ]
499 |
500 |         if let secKey = SecKeyCreateWithData(keyData as CFData, attributes as CFDictionary, &error) {
    |                                                                               `- error: cannot find type 'CFDictionary' in scope
501 |             return secKey
502 |         }
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:508:36: error: cannot find 'CFErrorCopyDescription' in scope
506 |
507 |         if let error = error?.takeRetainedValue() {
508 |             let errorDescription = CFErrorCopyDescription(error)
    |                                    `- error: cannot find 'CFErrorCopyDescription' in scope
509 |             let errorString = errorDescription as String? ?? "Unknown CFError"
510 |             errorMessage += ": \(errorString)"
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:379:50: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
377 |
378 |     public init(
379 |         session: URLSessionProtocol = URLSession.shared,
    |                                                  `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
380 |         logger: HTTPLogger? = nil,
381 |         retryConfiguration: RetryConfiguration = .default,
[14/25] Compiling GoogleSheetsSwift OAuth2TokenManager.swift
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:443:79: error: cannot find type 'SecKey' in scope
441 |     }
442 |
443 |     private static func parsePrivateKey(_ privateKeyString: String) throws -> SecKey {
    |                                                                               `- error: cannot find type 'SecKey' in scope
444 |         // Remove PEM headers and whitespace
445 |         let cleanKey = privateKeyString
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:426:30: error: cannot find type 'CFError' in scope
424 |         // Create signature
425 |         let dataToSign = data.data(using: .utf8)!
426 |         var error: Unmanaged<CFError>?
    |                              `- error: cannot find type 'CFError' in scope
427 |
428 |         guard let signature = SecKeyCreateSignature(
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:428:31: error: cannot find 'SecKeyCreateSignature' in scope
426 |         var error: Unmanaged<CFError>?
427 |
428 |         guard let signature = SecKeyCreateSignature(
    |                               `- error: cannot find 'SecKeyCreateSignature' in scope
429 |             secKey,
430 |             .rsaSignatureMessagePKCS1v15SHA256,
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:431:27: error: cannot find type 'CFData' in scope
429 |             secKey,
430 |             .rsaSignatureMessagePKCS1v15SHA256,
431 |             dataToSign as CFData,
    |                           `- error: cannot find type 'CFData' in scope
432 |             &error
433 |         ) else {
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:430:14: error: cannot infer contextual base in reference to member 'rsaSignatureMessagePKCS1v15SHA256'
428 |         guard let signature = SecKeyCreateSignature(
429 |             secKey,
430 |             .rsaSignatureMessagePKCS1v15SHA256,
    |              `- error: cannot infer contextual base in reference to member 'rsaSignatureMessagePKCS1v15SHA256'
431 |             dataToSign as CFData,
432 |             &error
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:459:28: error: cannot find 'SecItemImportExportKeyParameters' in scope
457 |
458 |         // Try using SecItemImport which is more robust for PKCS#8 keys
459 |         var importParams = SecItemImportExportKeyParameters()
    |                            `- error: cannot find 'SecItemImportExportKeyParameters' in scope
460 |         importParams.version = UInt32(SEC_KEY_IMPORT_EXPORT_PARAMS_VERSION)
461 |         importParams.flags = SecKeyImportExportFlags(rawValue: 0)
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:460:39: error: cannot find 'SEC_KEY_IMPORT_EXPORT_PARAMS_VERSION' in scope
458 |         // Try using SecItemImport which is more robust for PKCS#8 keys
459 |         var importParams = SecItemImportExportKeyParameters()
460 |         importParams.version = UInt32(SEC_KEY_IMPORT_EXPORT_PARAMS_VERSION)
    |                                       `- error: cannot find 'SEC_KEY_IMPORT_EXPORT_PARAMS_VERSION' in scope
461 |         importParams.flags = SecKeyImportExportFlags(rawValue: 0)
462 |         importParams.passphrase = nil
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:461:30: error: cannot find 'SecKeyImportExportFlags' in scope
459 |         var importParams = SecItemImportExportKeyParameters()
460 |         importParams.version = UInt32(SEC_KEY_IMPORT_EXPORT_PARAMS_VERSION)
461 |         importParams.flags = SecKeyImportExportFlags(rawValue: 0)
    |                              `- error: cannot find 'SecKeyImportExportFlags' in scope
462 |         importParams.passphrase = nil
463 |         importParams.alertTitle = nil
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:469:23: error: cannot find type 'CFArray' in scope
467 |         importParams.keyAttributes = nil
468 |
469 |         var outItems: CFArray?
    |                       `- error: cannot find type 'CFArray' in scope
470 |         let importStatus = SecItemImport(
471 |             keyData as CFData,
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:470:28: error: cannot find 'SecItemImport' in scope
468 |
469 |         var outItems: CFArray?
470 |         let importStatus = SecItemImport(
    |                            `- error: cannot find 'SecItemImport' in scope
471 |             keyData as CFData,
472 |             nil, // filename
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:475:13: error: cannot find 'SecItemImportExportFlags' in scope
473 |             nil, // inputFormat (let system determine)
474 |             nil, // itemType (let system determine)
475 |             SecItemImportExportFlags(rawValue: 0),
    |             `- error: cannot find 'SecItemImportExportFlags' in scope
476 |             &importParams,
477 |             nil, // keychain (use default)
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:471:24: error: cannot find type 'CFData' in scope
469 |         var outItems: CFArray?
470 |         let importStatus = SecItemImport(
471 |             keyData as CFData,
    |                        `- error: cannot find type 'CFData' in scope
472 |             nil, // filename
473 |             nil, // inputFormat (let system determine)
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:472:13: error: 'nil' requires a contextual type
470 |         let importStatus = SecItemImport(
471 |             keyData as CFData,
472 |             nil, // filename
    |             `- error: 'nil' requires a contextual type
473 |             nil, // inputFormat (let system determine)
474 |             nil, // itemType (let system determine)
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:473:13: error: 'nil' requires a contextual type
471 |             keyData as CFData,
472 |             nil, // filename
473 |             nil, // inputFormat (let system determine)
    |             `- error: 'nil' requires a contextual type
474 |             nil, // itemType (let system determine)
475 |             SecItemImportExportFlags(rawValue: 0),
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:474:13: error: 'nil' requires a contextual type
472 |             nil, // filename
473 |             nil, // inputFormat (let system determine)
474 |             nil, // itemType (let system determine)
    |             `- error: 'nil' requires a contextual type
475 |             SecItemImportExportFlags(rawValue: 0),
476 |             &importParams,
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:477:13: error: 'nil' requires a contextual type
475 |             SecItemImportExportFlags(rawValue: 0),
476 |             &importParams,
477 |             nil, // keychain (use default)
    |             `- error: 'nil' requires a contextual type
478 |             &outItems
479 |         )
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:481:28: error: cannot find 'errSecSuccess' in scope
479 |         )
480 |
481 |         if importStatus == errSecSuccess, let items = outItems as? [Any], !items.isEmpty {
    |                            `- error: cannot find 'errSecSuccess' in scope
482 |             // Successfully imported, now extract the SecKey
483 |             if let firstItem = items.first {
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:485:20: error: cannot find 'CFGetTypeID' in scope
483 |             if let firstItem = items.first {
484 |                 // Check if it's a SecKey by comparing CFTypeIDs
485 |                 if CFGetTypeID(firstItem as CFTypeRef) == SecKeyGetTypeID() {
    |                    `- error: cannot find 'CFGetTypeID' in scope
486 |                     return (firstItem as! SecKey)
487 |                 }
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:485:59: error: cannot find 'SecKeyGetTypeID' in scope
483 |             if let firstItem = items.first {
484 |                 // Check if it's a SecKey by comparing CFTypeIDs
485 |                 if CFGetTypeID(firstItem as CFTypeRef) == SecKeyGetTypeID() {
    |                                                           `- error: cannot find 'SecKeyGetTypeID' in scope
486 |                     return (firstItem as! SecKey)
487 |                 }
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:485:45: error: cannot find type 'CFTypeRef' in scope
483 |             if let firstItem = items.first {
484 |                 // Check if it's a SecKey by comparing CFTypeIDs
485 |                 if CFGetTypeID(firstItem as CFTypeRef) == SecKeyGetTypeID() {
    |                                             `- error: cannot find type 'CFTypeRef' in scope
486 |                     return (firstItem as! SecKey)
487 |                 }
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:492:30: error: cannot find type 'CFError' in scope
490 |
491 |         // If SecItemImport fails, fall back to SecKeyCreateWithData
492 |         var error: Unmanaged<CFError>?
    |                              `- error: cannot find type 'CFError' in scope
493 |
494 |         // Try with minimal attributes
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:496:13: error: cannot find 'kSecAttrKeyType' in scope
494 |         // Try with minimal attributes
495 |         let attributes: [String: Any] = [
496 |             kSecAttrKeyType as String: kSecAttrKeyTypeRSA,
    |             `- error: cannot find 'kSecAttrKeyType' in scope
497 |             kSecAttrKeyClass as String: kSecAttrKeyClassPrivate
498 |         ]
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:496:40: error: cannot find 'kSecAttrKeyTypeRSA' in scope
494 |         // Try with minimal attributes
495 |         let attributes: [String: Any] = [
496 |             kSecAttrKeyType as String: kSecAttrKeyTypeRSA,
    |                                        `- error: cannot find 'kSecAttrKeyTypeRSA' in scope
497 |             kSecAttrKeyClass as String: kSecAttrKeyClassPrivate
498 |         ]
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:497:13: error: cannot find 'kSecAttrKeyClass' in scope
495 |         let attributes: [String: Any] = [
496 |             kSecAttrKeyType as String: kSecAttrKeyTypeRSA,
497 |             kSecAttrKeyClass as String: kSecAttrKeyClassPrivate
    |             `- error: cannot find 'kSecAttrKeyClass' in scope
498 |         ]
499 |
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:497:41: error: cannot find 'kSecAttrKeyClassPrivate' in scope
495 |         let attributes: [String: Any] = [
496 |             kSecAttrKeyType as String: kSecAttrKeyTypeRSA,
497 |             kSecAttrKeyClass as String: kSecAttrKeyClassPrivate
    |                                         `- error: cannot find 'kSecAttrKeyClassPrivate' in scope
498 |         ]
499 |
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:500:25: error: cannot find 'SecKeyCreateWithData' in scope
498 |         ]
499 |
500 |         if let secKey = SecKeyCreateWithData(keyData as CFData, attributes as CFDictionary, &error) {
    |                         `- error: cannot find 'SecKeyCreateWithData' in scope
501 |             return secKey
502 |         }
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:500:57: error: cannot find type 'CFData' in scope
498 |         ]
499 |
500 |         if let secKey = SecKeyCreateWithData(keyData as CFData, attributes as CFDictionary, &error) {
    |                                                         `- error: cannot find type 'CFData' in scope
501 |             return secKey
502 |         }
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:500:79: error: cannot find type 'CFDictionary' in scope
498 |         ]
499 |
500 |         if let secKey = SecKeyCreateWithData(keyData as CFData, attributes as CFDictionary, &error) {
    |                                                                               `- error: cannot find type 'CFDictionary' in scope
501 |             return secKey
502 |         }
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/OAuth2TokenManager.swift:508:36: error: cannot find 'CFErrorCopyDescription' in scope
506 |
507 |         if let error = error?.takeRetainedValue() {
508 |             let errorDescription = CFErrorCopyDescription(error)
    |                                    `- error: cannot find 'CFErrorCopyDescription' in scope
509 |             let errorString = errorDescription as String? ?? "Unknown CFError"
510 |             errorMessage += ": \(errorString)"
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/HTTPClient.swift:379:50: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
377 |
378 |     public init(
379 |         session: URLSessionProtocol = URLSession.shared,
    |                                                  `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
380 |         logger: HTTPLogger? = nil,
381 |         retryConfiguration: RetryConfiguration = .default,
[15/25] Compiling GoogleSheetsSwift AnyCodable.swift
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/Models/AnyCodable.swift:39:16: error: cannot find 'CFGetTypeID' in scope
 37 |         if let number = value as? NSNumber {
 38 |             // Check if it's actually a boolean stored as NSNumber
 39 |             if CFGetTypeID(number) == CFBooleanGetTypeID() {
    |                `- error: cannot find 'CFGetTypeID' in scope
 40 |                 return number.boolValue ? "true" : "false"
 41 |             }
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/Models/AnyCodable.swift:39:39: error: cannot find 'CFBooleanGetTypeID' in scope
 37 |         if let number = value as? NSNumber {
 38 |             // Check if it's actually a boolean stored as NSNumber
 39 |             if CFGetTypeID(number) == CFBooleanGetTypeID() {
    |                                       `- error: cannot find 'CFBooleanGetTypeID' in scope
 40 |                 return number.boolValue ? "true" : "false"
 41 |             }
[16/25] Compiling GoogleSheetsSwift Enums.swift
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/Models/AnyCodable.swift:39:16: error: cannot find 'CFGetTypeID' in scope
 37 |         if let number = value as? NSNumber {
 38 |             // Check if it's actually a boolean stored as NSNumber
 39 |             if CFGetTypeID(number) == CFBooleanGetTypeID() {
    |                `- error: cannot find 'CFGetTypeID' in scope
 40 |                 return number.boolValue ? "true" : "false"
 41 |             }
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/Models/AnyCodable.swift:39:39: error: cannot find 'CFBooleanGetTypeID' in scope
 37 |         if let number = value as? NSNumber {
 38 |             // Check if it's actually a boolean stored as NSNumber
 39 |             if CFGetTypeID(number) == CFBooleanGetTypeID() {
    |                                       `- error: cannot find 'CFBooleanGetTypeID' in scope
 40 |                 return number.boolValue ? "true" : "false"
 41 |             }
[17/25] Compiling GoogleSheetsSwift SpreadsheetModels.swift
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/Models/AnyCodable.swift:39:16: error: cannot find 'CFGetTypeID' in scope
 37 |         if let number = value as? NSNumber {
 38 |             // Check if it's actually a boolean stored as NSNumber
 39 |             if CFGetTypeID(number) == CFBooleanGetTypeID() {
    |                `- error: cannot find 'CFGetTypeID' in scope
 40 |                 return number.boolValue ? "true" : "false"
 41 |             }
/host/spi-builder-workspace/Sources/GoogleSheetsSwift/Models/AnyCodable.swift:39:39: error: cannot find 'CFBooleanGetTypeID' in scope
 37 |         if let number = value as? NSNumber {
 38 |             // Check if it's actually a boolean stored as NSNumber
 39 |             if CFGetTypeID(number) == CFBooleanGetTypeID() {
    |                                       `- error: cannot find 'CFBooleanGetTypeID' in scope
 40 |                 return number.boolValue ? "true" : "false"
 41 |             }
[18/25] Compiling GoogleSheetsSwift RetryConfiguration.swift
[19/25] Compiling GoogleSheetsSwift BaseService.swift
[20/25] Compiling GoogleSheetsSwift ValuesService.swift
[21/25] Compiling GoogleSheetsSwift ValuesServiceProtocol.swift
BUILD FAILURE 6.1 linux