The Swift Package Index logo.Swift Package Index

Build Information

Failed to build Featureflip, reference master (839974), with Swift 6.3 for Android on 16 Apr 2026 11:09:55 UTC.

Build Command

bash -c docker run --pull=always --rm -v "checkouts-4606859-2":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/swiftpackageindex/spi-images:android-6.3-latest swift build --swift-sdk aarch64-unknown-linux-android28 2>&1

Build Log

========================================
RunAll
========================================
Builder version: 4.70.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/canopy-labs/featureflip-swift.git
Reference: master
Initialized empty Git repository in /host/spi-builder-workspace/.git/
hint: Using 'master' as the name for the initial branch. This default branch name
hint: is subject to change. To configure the initial branch name to use in all
hint: of your new repositories, which will suppress this warning, call:
hint:
hint: 	git config --global init.defaultBranch <name>
hint:
hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
hint: 'development'. The just-created branch can be renamed via this command:
hint:
hint: 	git branch -m <name>
From https://github.com/canopy-labs/featureflip-swift
 * branch            master     -> FETCH_HEAD
 * [new branch]      master     -> origin/master
HEAD is now at 8399740 Release v2.0.0
Cloned https://github.com/canopy-labs/featureflip-swift.git
Revision (git rev-parse @):
839974002ab83b442ccf39ce15dead49a142c0ae
SUCCESS checkout https://github.com/canopy-labs/featureflip-swift.git at master
========================================
Build
========================================
Selected platform:         android
Swift version:             6.3
Building package at path:  $PWD
https://github.com/canopy-labs/featureflip-swift.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4606859-2":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/swiftpackageindex/spi-images:android-6.3-latest swift build --swift-sdk aarch64-unknown-linux-android28 2>&1
android-6.3-latest: Pulling from swiftpackageindex/spi-images
Digest: sha256:9008270ea37a55e78725e6225015adb5eff8582da520c5232bf0499f32c36dc4
Status: Image is up to date for registry.gitlab.com/swiftpackageindex/spi-images:android-6.3-latest
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version--4F562202D5529B1.txt
[3/15] Compiling Featureflip Models.swift
/host/spi-builder-workspace/Sources/Featureflip/PollingDataSource.swift:49:14: warning: instance method 'lock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
47 |
48 |     func pollOnce() async {
49 |         lock.lock()
   |              `- warning: instance method 'lock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
50 |         let currentContext = context
51 |         lock.unlock()
/host/spi-builder-workspace/Sources/Featureflip/PollingDataSource.swift:51:14: warning: instance method 'unlock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
49 |         lock.lock()
50 |         let currentContext = context
51 |         lock.unlock()
   |              `- warning: instance method 'unlock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
52 |         do {
53 |             let result = try await httpClient.evaluate(context: currentContext)
[4/15] Compiling Featureflip PollingDataSource.swift
/host/spi-builder-workspace/Sources/Featureflip/PollingDataSource.swift:49:14: warning: instance method 'lock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
47 |
48 |     func pollOnce() async {
49 |         lock.lock()
   |              `- warning: instance method 'lock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
50 |         let currentContext = context
51 |         lock.unlock()
/host/spi-builder-workspace/Sources/Featureflip/PollingDataSource.swift:51:14: warning: instance method 'unlock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
49 |         lock.lock()
50 |         let currentContext = context
51 |         lock.unlock()
   |              `- warning: instance method 'unlock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
52 |         do {
53 |             let result = try await httpClient.evaluate(context: currentContext)
[5/15] Compiling Featureflip FeatureFlag.swift
[6/15] Compiling Featureflip StreamingDataSource.swift
/host/spi-builder-workspace/Sources/Featureflip/StreamingDataSource.swift:115:18: warning: instance method 'lock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
113 |     private func connectLoop() async {
114 |         while !Task.isCancelled {
115 |             lock.lock()
    |                  `- warning: instance method 'lock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
116 |             let currentRetryCount = retryCount
117 |             let currentBackoff = backoff
/host/spi-builder-workspace/Sources/Featureflip/StreamingDataSource.swift:118:18: warning: instance method 'unlock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
116 |             let currentRetryCount = retryCount
117 |             let currentBackoff = backoff
118 |             lock.unlock()
    |                  `- warning: instance method 'unlock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
119 |
120 |             guard currentRetryCount < Self.maxRetries else { return }
/host/spi-builder-workspace/Sources/Featureflip/StreamingDataSource.swift:128:18: warning: instance method 'lock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
126 |             }
127 |
128 |             lock.lock()
    |                  `- warning: instance method 'lock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
129 |             retryCount += 1
130 |             lock.unlock()
/host/spi-builder-workspace/Sources/Featureflip/StreamingDataSource.swift:130:18: warning: instance method 'unlock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
128 |             lock.lock()
129 |             retryCount += 1
130 |             lock.unlock()
    |                  `- warning: instance method 'unlock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
131 |
132 |             try? await Task.sleep(nanoseconds: UInt64(currentBackoff * 1_000_000_000))
/host/spi-builder-workspace/Sources/Featureflip/StreamingDataSource.swift:134:18: warning: instance method 'lock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
132 |             try? await Task.sleep(nanoseconds: UInt64(currentBackoff * 1_000_000_000))
133 |
134 |             lock.lock()
    |                  `- warning: instance method 'lock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
135 |             backoff = Self.nextBackoff(backoff)
136 |             lock.unlock()
/host/spi-builder-workspace/Sources/Featureflip/StreamingDataSource.swift:136:18: warning: instance method 'unlock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
134 |             lock.lock()
135 |             backoff = Self.nextBackoff(backoff)
136 |             lock.unlock()
    |                  `- warning: instance method 'unlock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
137 |         }
138 |     }
/host/spi-builder-workspace/Sources/Featureflip/StreamingDataSource.swift:141:14: warning: instance method 'lock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
139 |
140 |     private func connect() async throws {
141 |         lock.lock()
    |              `- warning: instance method 'lock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
142 |         let currentContext = context
143 |         lock.unlock()
/host/spi-builder-workspace/Sources/Featureflip/StreamingDataSource.swift:143:14: warning: instance method 'unlock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
141 |         lock.lock()
142 |         let currentContext = context
143 |         lock.unlock()
    |              `- warning: instance method 'unlock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
144 |
145 |         guard let url = Self.buildStreamURL(baseUrl: baseUrl, clientKey: clientKey, context: currentContext) else { return }
/host/spi-builder-workspace/Sources/Featureflip/StreamingDataSource.swift:146:23: error: cannot find 'URLRequest' in scope
144 |
145 |         guard let url = Self.buildStreamURL(baseUrl: baseUrl, clientKey: clientKey, context: currentContext) else { return }
146 |         var request = URLRequest(url: url)
    |                       `- error: cannot find 'URLRequest' in scope
147 |         request.setValue("text/event-stream", forHTTPHeaderField: "Accept")
148 |
/host/spi-builder-workspace/Sources/Featureflip/StreamingDataSource.swift:149:54: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
147 |         request.setValue("text/event-stream", forHTTPHeaderField: "Accept")
148 |
149 |         let (bytes, response) = try await URLSession.shared.bytes(for: request)
    |                                                      `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
150 |         guard let http = response as? HTTPURLResponse, http.statusCode == 200 else { return }
151 |
/host/spi-builder-workspace/Sources/Featureflip/StreamingDataSource.swift:153:14: warning: instance method 'lock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
151 |
152 |         // Reset backoff on successful connection
153 |         lock.lock()
    |              `- warning: instance method 'lock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
154 |         backoff = Self.initialBackoff
155 |         retryCount = 0
/host/spi-builder-workspace/Sources/Featureflip/StreamingDataSource.swift:156:14: warning: instance method 'unlock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
154 |         backoff = Self.initialBackoff
155 |         retryCount = 0
156 |         lock.unlock()
    |              `- warning: instance method 'unlock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
157 |
158 |         var lineBuffer: [String] = []
[7/15] Compiling Featureflip Protocols.swift
/host/spi-builder-workspace/Sources/Featureflip/Protocols.swift:5:28: error: cannot find type 'URLRequest' in scope
3 | /// Abstraction over URLSession for testability.
4 | protocol HTTPDataLoader: Sendable {
5 |     func data(for request: URLRequest) async throws -> (Data, URLResponse)
  |                            `- error: cannot find type 'URLRequest' in scope
6 | }
7 |
/host/spi-builder-workspace/Sources/Featureflip/Protocols.swift:5:63: error: 'URLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
3 | /// Abstraction over URLSession for testability.
4 | protocol HTTPDataLoader: Sendable {
5 |     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.
6 | }
7 |
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/Featureflip/Protocols.swift:8:1: error: non-nominal type 'URLSession' (aka 'AnyObject') cannot be extended [#NominalTypes]
6 | }
7 |
8 | extension URLSession: HTTPDataLoader {}
  | `- error: non-nominal type 'URLSession' (aka 'AnyObject') cannot be extended [#NominalTypes]
9 |
/host/spi-builder-workspace/Sources/Featureflip/HttpClient.swift:14:82: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
12 |     private let loader: HTTPDataLoader
13 |
14 |     init(baseUrl: String, clientKey: String, loader: HTTPDataLoader = URLSession.shared) {
   |                                                                                  `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
15 |         self.baseUrl = baseUrl
16 |         self.clientKey = clientKey
[#NominalTypes]: <https://docs.swift.org/compiler/documentation/diagnostics/nominal-types>
[8/15] Compiling Featureflip SharedFeatureflipCore.swift
/host/spi-builder-workspace/Sources/Featureflip/Protocols.swift:5:28: error: cannot find type 'URLRequest' in scope
3 | /// Abstraction over URLSession for testability.
4 | protocol HTTPDataLoader: Sendable {
5 |     func data(for request: URLRequest) async throws -> (Data, URLResponse)
  |                            `- error: cannot find type 'URLRequest' in scope
6 | }
7 |
/host/spi-builder-workspace/Sources/Featureflip/Protocols.swift:5:63: error: 'URLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
3 | /// Abstraction over URLSession for testability.
4 | protocol HTTPDataLoader: Sendable {
5 |     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.
6 | }
7 |
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/Featureflip/Protocols.swift:8:1: error: non-nominal type 'URLSession' (aka 'AnyObject') cannot be extended [#NominalTypes]
6 | }
7 |
8 | extension URLSession: HTTPDataLoader {}
  | `- error: non-nominal type 'URLSession' (aka 'AnyObject') cannot be extended [#NominalTypes]
9 |
/host/spi-builder-workspace/Sources/Featureflip/HttpClient.swift:14:82: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
12 |     private let loader: HTTPDataLoader
13 |
14 |     init(baseUrl: String, clientKey: String, loader: HTTPDataLoader = URLSession.shared) {
   |                                                                                  `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
15 |         self.baseUrl = baseUrl
16 |         self.clientKey = clientKey
[#NominalTypes]: <https://docs.swift.org/compiler/documentation/diagnostics/nominal-types>
[9/16] Compiling Featureflip EventProcessor.swift
/host/spi-builder-workspace/Sources/Featureflip/Protocols.swift:5:28: error: cannot find type 'URLRequest' in scope
3 | /// Abstraction over URLSession for testability.
4 | protocol HTTPDataLoader: Sendable {
5 |     func data(for request: URLRequest) async throws -> (Data, URLResponse)
  |                            `- error: cannot find type 'URLRequest' in scope
6 | }
7 |
[10/16] Compiling Featureflip FeatureflipClient.swift
/host/spi-builder-workspace/Sources/Featureflip/Protocols.swift:5:28: error: cannot find type 'URLRequest' in scope
3 | /// Abstraction over URLSession for testability.
4 | protocol HTTPDataLoader: Sendable {
5 |     func data(for request: URLRequest) async throws -> (Data, URLResponse)
  |                            `- error: cannot find type 'URLRequest' in scope
6 | }
7 |
error: emit-module command failed with exit code 1 (use -v to see invocation)
[11/16] Compiling Featureflip FeatureflipConfig.swift
[12/16] Compiling Featureflip FlagCache.swift
[13/16] Emitting module Featureflip
/host/spi-builder-workspace/Sources/Featureflip/Protocols.swift:5:28: error: cannot find type 'URLRequest' in scope
3 | /// Abstraction over URLSession for testability.
4 | protocol HTTPDataLoader: Sendable {
5 |     func data(for request: URLRequest) async throws -> (Data, URLResponse)
  |                            `- error: cannot find type 'URLRequest' in scope
6 | }
7 |
/host/spi-builder-workspace/Sources/Featureflip/HttpClient.swift:14:82: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
12 |     private let loader: HTTPDataLoader
13 |
14 |     init(baseUrl: String, clientKey: String, loader: HTTPDataLoader = URLSession.shared) {
   |                                                                                  `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
15 |         self.baseUrl = baseUrl
16 |         self.clientKey = clientKey
/host/spi-builder-workspace/Sources/Featureflip/HttpClient.swift:57:70: error: cannot find type 'URLRequest' in scope
55 |     }
56 |
57 |     private func makeRequest(path: String, method: String) throws -> URLRequest {
   |                                                                      `- error: cannot find type 'URLRequest' in scope
58 |         guard let url = URL(string: baseUrl + path) else { throw Error.invalidURL }
59 |         var request = URLRequest(url: url)
/host/spi-builder-workspace/Sources/Featureflip/Protocols.swift:5:63: error: 'URLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
3 | /// Abstraction over URLSession for testability.
4 | protocol HTTPDataLoader: Sendable {
5 |     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.
6 | }
7 |
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/Featureflip/Protocols.swift:8:1: error: non-nominal type 'URLSession' (aka 'AnyObject') cannot be extended [#NominalTypes]
6 | }
7 |
8 | extension URLSession: HTTPDataLoader {}
  | `- error: non-nominal type 'URLSession' (aka 'AnyObject') cannot be extended [#NominalTypes]
9 |
/host/spi-builder-workspace/Sources/Featureflip/SwiftUI/FeatureFlagProvider.swift:7:41: error: cannot find type 'ObservableObject' in scope
 5 |
 6 | /// Observable provider for SwiftUI views that need reactive flag updates.
 7 | public final class FeatureFlagProvider: ObservableObject {
   |                                         `- error: cannot find type 'ObservableObject' in scope
 8 |     @Published public private(set) var revision: UInt = 0
 9 |     private let client: FeatureflipClient
/host/spi-builder-workspace/Sources/Featureflip/SwiftUI/FeatureFlagProvider.swift:8:6: error: unknown attribute 'Published'
 6 | /// Observable provider for SwiftUI views that need reactive flag updates.
 7 | public final class FeatureFlagProvider: ObservableObject {
 8 |     @Published public private(set) var revision: UInt = 0
   |      `- error: unknown attribute 'Published'
 9 |     private let client: FeatureflipClient
10 |
[#NominalTypes]: <https://docs.swift.org/compiler/documentation/diagnostics/nominal-types>
[14/16] Compiling Featureflip HttpClient.swift
/host/spi-builder-workspace/Sources/Featureflip/Protocols.swift:5:28: error: cannot find type 'URLRequest' in scope
3 | /// Abstraction over URLSession for testability.
4 | protocol HTTPDataLoader: Sendable {
5 |     func data(for request: URLRequest) async throws -> (Data, URLResponse)
  |                            `- error: cannot find type 'URLRequest' in scope
6 | }
7 |
/host/spi-builder-workspace/Sources/Featureflip/HttpClient.swift:14:82: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
12 |     private let loader: HTTPDataLoader
13 |
14 |     init(baseUrl: String, clientKey: String, loader: HTTPDataLoader = URLSession.shared) {
   |                                                                                  `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
15 |         self.baseUrl = baseUrl
16 |         self.clientKey = clientKey
/host/spi-builder-workspace/Sources/Featureflip/HttpClient.swift:57:70: error: cannot find type 'URLRequest' in scope
55 |     }
56 |
57 |     private func makeRequest(path: String, method: String) throws -> URLRequest {
   |                                                                      `- error: cannot find type 'URLRequest' in scope
58 |         guard let url = URL(string: baseUrl + path) else { throw Error.invalidURL }
59 |         var request = URLRequest(url: url)
/host/spi-builder-workspace/Sources/Featureflip/HttpClient.swift:35:56: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
33 |         let (_, response) = try await loader.data(for: request)
34 |         guard let http = response as? HTTPURLResponse, (200..<300).contains(http.statusCode) else {
35 |             let code = (response as? HTTPURLResponse)?.statusCode ?? 0
   |                                                        `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
36 |             throw Error.httpError(statusCode: code)
37 |         }
/host/spi-builder-workspace/Sources/Featureflip/HttpClient.swift:51:56: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
49 |         let (responseData, response) = try await loader.data(for: request)
50 |         guard let http = response as? HTTPURLResponse, (200..<300).contains(http.statusCode) else {
51 |             let code = (response as? HTTPURLResponse)?.statusCode ?? 0
   |                                                        `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
52 |             throw Error.httpError(statusCode: code)
53 |         }
/host/spi-builder-workspace/Sources/Featureflip/HttpClient.swift:59:23: error: cannot find 'URLRequest' in scope
57 |     private func makeRequest(path: String, method: String) throws -> URLRequest {
58 |         guard let url = URL(string: baseUrl + path) else { throw Error.invalidURL }
59 |         var request = URLRequest(url: url)
   |                       `- error: cannot find 'URLRequest' in scope
60 |         request.httpMethod = method
61 |         request.setValue("application/json", forHTTPHeaderField: "Content-Type")
[15/16] Compiling Featureflip LifecycleObserver.swift
/host/spi-builder-workspace/Sources/Featureflip/Protocols.swift:5:28: error: cannot find type 'URLRequest' in scope
3 | /// Abstraction over URLSession for testability.
4 | protocol HTTPDataLoader: Sendable {
5 |     func data(for request: URLRequest) async throws -> (Data, URLResponse)
  |                            `- error: cannot find type 'URLRequest' in scope
6 | }
7 |
/host/spi-builder-workspace/Sources/Featureflip/HttpClient.swift:14:82: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
12 |     private let loader: HTTPDataLoader
13 |
14 |     init(baseUrl: String, clientKey: String, loader: HTTPDataLoader = URLSession.shared) {
   |                                                                                  `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
15 |         self.baseUrl = baseUrl
16 |         self.clientKey = clientKey
/host/spi-builder-workspace/Sources/Featureflip/HttpClient.swift:57:70: error: cannot find type 'URLRequest' in scope
55 |     }
56 |
57 |     private func makeRequest(path: String, method: String) throws -> URLRequest {
   |                                                                      `- error: cannot find type 'URLRequest' in scope
58 |         guard let url = URL(string: baseUrl + path) else { throw Error.invalidURL }
59 |         var request = URLRequest(url: url)
/host/spi-builder-workspace/Sources/Featureflip/HttpClient.swift:35:56: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
33 |         let (_, response) = try await loader.data(for: request)
34 |         guard let http = response as? HTTPURLResponse, (200..<300).contains(http.statusCode) else {
35 |             let code = (response as? HTTPURLResponse)?.statusCode ?? 0
   |                                                        `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
36 |             throw Error.httpError(statusCode: code)
37 |         }
/host/spi-builder-workspace/Sources/Featureflip/HttpClient.swift:51:56: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
49 |         let (responseData, response) = try await loader.data(for: request)
50 |         guard let http = response as? HTTPURLResponse, (200..<300).contains(http.statusCode) else {
51 |             let code = (response as? HTTPURLResponse)?.statusCode ?? 0
   |                                                        `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
52 |             throw Error.httpError(statusCode: code)
53 |         }
/host/spi-builder-workspace/Sources/Featureflip/HttpClient.swift:59:23: error: cannot find 'URLRequest' in scope
57 |     private func makeRequest(path: String, method: String) throws -> URLRequest {
58 |         guard let url = URL(string: baseUrl + path) else { throw Error.invalidURL }
59 |         var request = URLRequest(url: url)
   |                       `- error: cannot find 'URLRequest' in scope
60 |         request.httpMethod = method
61 |         request.setValue("application/json", forHTTPHeaderField: "Content-Type")
[16/16] Compiling Featureflip FeatureFlagProvider.swift
/host/spi-builder-workspace/Sources/Featureflip/SwiftUI/FeatureFlagProvider.swift:7:41: error: cannot find type 'ObservableObject' in scope
 5 |
 6 | /// Observable provider for SwiftUI views that need reactive flag updates.
 7 | public final class FeatureFlagProvider: ObservableObject {
   |                                         `- error: cannot find type 'ObservableObject' in scope
 8 |     @Published public private(set) var revision: UInt = 0
 9 |     private let client: FeatureflipClient
/host/spi-builder-workspace/Sources/Featureflip/SwiftUI/FeatureFlagProvider.swift:8:6: error: unknown attribute 'Published'
 6 | /// Observable provider for SwiftUI views that need reactive flag updates.
 7 | public final class FeatureFlagProvider: ObservableObject {
 8 |     @Published public private(set) var revision: UInt = 0
   |      `- error: unknown attribute 'Published'
 9 |     private let client: FeatureflipClient
10 |
BUILD FAILURE 6.3 android