This is a staging environment. For live and up-to-date package information, visit swiftpackageindex.com.

The Swift Package Index logo.Swift Package Index

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

Build Information

Failed to build PushNotifications with Swift 6.0 for Linux.

Build Command

bash -c docker run --rm -v "checkouts-4609320-0":/host -w "$workDir" registry.gitlab.com/finestructure/spi-images:basic-6.0-latest swift build --triple x86_64-unknown-linux-gnu -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete 2>&1

Build Log

    :
 66 |     func sendMessage(serverSyncJob: ServerSyncJob) {
 67 |         self.sendMessageQueue.async {
 68 |             self.jobQueue.append(serverSyncJob)
    |             `- warning: capture of 'self' with non-sendable type 'ServerSyncProcessHandler' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 69 |
 70 |             self.handleMessageQueue.async {
/host/spi-builder-workspace/Sources/Services/ServerSyncProcessHandler.swift:68:34: warning: capture of 'serverSyncJob' with non-sendable type 'ServerSyncJob' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 66 |     func sendMessage(serverSyncJob: ServerSyncJob) {
 67 |         self.sendMessageQueue.async {
 68 |             self.jobQueue.append(serverSyncJob)
    |                                  `- warning: capture of 'serverSyncJob' with non-sendable type 'ServerSyncJob' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 69 |
 70 |             self.handleMessageQueue.async {
/host/spi-builder-workspace/Sources/Models/ServerSyncJob.swift:3:6: note: consider making enum 'ServerSyncJob' conform to the 'Sendable' protocol
  1 | import Foundation
  2 |
  3 | enum ServerSyncJob {
    |      `- note: consider making enum 'ServerSyncJob' conform to the 'Sendable' protocol
  4 |     case startJob(instanceId: String, token: String)
  5 |     case refreshTokenJob(newToken: String)
/host/spi-builder-workspace/Sources/Services/ServerSyncProcessHandler.swift:71:17: warning: capture of 'self' with non-sendable type 'ServerSyncProcessHandler' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  1 | import Foundation
  2 |
  3 | class ServerSyncProcessHandler {
    |       `- note: class 'ServerSyncProcessHandler' does not conform to the 'Sendable' protocol
  4 |     private static let serverSyncHandlersQueue = DispatchQueue(label: "com.pusher.beams.serverSyncHandlersQueue")
  5 |     private static var serverSyncHandlers = [String: ServerSyncProcessHandler]()
    :
 69 |
 70 |             self.handleMessageQueue.async {
 71 |                 self.handleMessage(serverSyncJob: serverSyncJob)
    |                 `- warning: capture of 'self' with non-sendable type 'ServerSyncProcessHandler' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 72 |             }
 73 |         }
/host/spi-builder-workspace/Sources/Services/ServerSyncProcessHandler.swift:71:51: warning: capture of 'serverSyncJob' with non-sendable type 'ServerSyncJob' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 69 |
 70 |             self.handleMessageQueue.async {
 71 |                 self.handleMessage(serverSyncJob: serverSyncJob)
    |                                                   `- warning: capture of 'serverSyncJob' with non-sendable type 'ServerSyncJob' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 72 |             }
 73 |         }
/host/spi-builder-workspace/Sources/Models/ServerSyncJob.swift:3:6: note: consider making enum 'ServerSyncJob' conform to the 'Sendable' protocol
  1 | import Foundation
  2 |
  3 | enum ServerSyncJob {
    |      `- note: consider making enum 'ServerSyncJob' conform to the 'Sendable' protocol
  4 |     case startJob(instanceId: String, token: String)
  5 |     case refreshTokenJob(newToken: String)
/host/spi-builder-workspace/Sources/Models/Metadata.swift:8:16: warning: static property 'current' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
 6 |     let macosVersion: String?
 7 |
 8 |     static var current: Metadata = {
   |                |- warning: static property 'current' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'current' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'current' with '@MainActor' if property should only be accessed from the main actor
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 9 |         let sdkVersion = SDK.version
10 |         let systemVersion = SystemVersion.version
[7/46] Compiling PushNotifications ServerSyncJobStore.swift
/host/spi-builder-workspace/Sources/Services/EventTypeHandler.swift:147:31: error: cannot find 'isForeground' in scope
145 |         let hasCustomerData = data.count > 1 // checks if there's anything other than the `pusher` key
146 |
147 |         if hasCustomerData && isForeground {
    |                               `- error: cannot find 'isForeground' in scope
148 |             return .ShouldProcess
149 |         }
/host/spi-builder-workspace/Sources/Services/NetworkService.swift:4:18: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
  2 |
  3 | class NetworkService: PushNotificationsNetworkable {
  4 |     let session: URLSession
    |                  `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
  5 |
  6 |     init(session: URLSession) {
Foundation.URLSession:2:18: note: 'URLSession' 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 URLSession = AnyObject
  |                  `- note: 'URLSession' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/Services/NetworkService.swift:6:19: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
  4 |     let session: URLSession
  5 |
  6 |     init(session: URLSession) {
    |                   `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
  7 |         self.session = session
  8 |     }
Foundation.URLSession:2:18: note: 'URLSession' 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 URLSession = AnyObject
  |                  `- note: 'URLSession' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/Services/NetworkService.swift:225:44: error: cannot find type 'URLRequest' in scope
223 |
224 |     // MARK: Networking Layer
225 |     private func networkRequest(_ request: URLRequest,
    |                                            `- error: cannot find type 'URLRequest' in scope
226 |                                 session: URLSession,
227 |                                 retryStrategy: RetryStrategy) -> Result<Data, PushNotificationsAPIError> {
/host/spi-builder-workspace/Sources/Services/NetworkService.swift:226:42: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
224 |     // MARK: Networking Layer
225 |     private func networkRequest(_ request: URLRequest,
226 |                                 session: URLSession,
    |                                          `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
227 |                                 retryStrategy: RetryStrategy) -> Result<Data, PushNotificationsAPIError> {
228 |         let semaphore = DispatchSemaphore(value: 0)
Foundation.URLSession:2:18: note: 'URLSession' 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 URLSession = AnyObject
  |                  `- note: 'URLSession' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/Services/NetworkService.swift:287:85: error: cannot find type 'URLRequest' in scope
285 |     }
286 |
287 |     private func setRequest(url: URL, httpMethod: HTTPMethod, body: Data? = nil) -> URLRequest {
    |                                                                                     `- error: cannot find type 'URLRequest' in scope
288 |         var request = URLRequest(url: url)
289 |         request.addValue("application/json", forHTTPHeaderField: "Content-Type")
/host/spi-builder-workspace/Sources/Services/NetworkService.swift:28:66: error: cannot infer contextual base in reference to member 'POST'
 26 |             }
 27 |
 28 |             let request = self.setRequest(url: url, httpMethod: .POST, body: body)
    |                                                                  `- error: cannot infer contextual base in reference to member 'POST'
 29 |
 30 |             switch self.networkRequest(request, session: self.session, retryStrategy: retryStrategy) {
/host/spi-builder-workspace/Sources/Services/NetworkService.swift:54:66: error: cannot infer contextual base in reference to member 'POST'
 52 |             }
 53 |
 54 |             let request = self.setRequest(url: url, httpMethod: .POST)
    |                                                                  `- error: cannot infer contextual base in reference to member 'POST'
 55 |
 56 |             switch self.networkRequest(request, session: self.session, retryStrategy: retryStrategy) {
/host/spi-builder-workspace/Sources/Services/NetworkService.swift:79:66: error: cannot infer contextual base in reference to member 'PUT'
 77 |                 return .failure(.genericError(reason: "Error while encoding the interests payload."))
 78 |             }
 79 |             let request = self.setRequest(url: url, httpMethod: .PUT, body: body)
    |                                                                  `- error: cannot infer contextual base in reference to member 'PUT'
 80 |
 81 |             switch self.networkRequest(request, session: self.session, retryStrategy: retryStrategy) {
/host/spi-builder-workspace/Sources/Services/NetworkService.swift:102:66: error: cannot infer contextual base in reference to member 'DELETE'
100 |             }
101 |
102 |             let request = self.setRequest(url: url, httpMethod: .DELETE)
    |                                                                  `- error: cannot infer contextual base in reference to member 'DELETE'
103 |
104 |             switch self.networkRequest(request, session: self.session, retryStrategy: retryStrategy) {
/host/spi-builder-workspace/Sources/Services/NetworkService.swift:127:66: error: cannot infer contextual base in reference to member 'POST'
125 |             }
126 |
127 |             let request = self.setRequest(url: url, httpMethod: .POST, body: body)
    |                                                                  `- error: cannot infer contextual base in reference to member 'POST'
128 |             switch self.networkRequest(request, session: self.session, retryStrategy: retryStrategy) {
129 |             case .success:
/host/spi-builder-workspace/Sources/Services/NetworkService.swift:151:66: error: cannot infer contextual base in reference to member 'PUT'
149 |                 return .failure(.genericError(reason: "Error while encoding the metadata payload."))
150 |             }
151 |             let request = self.setRequest(url: url, httpMethod: .PUT, body: body)
    |                                                                  `- error: cannot infer contextual base in reference to member 'PUT'
152 |             switch self.networkRequest(request, session: self.session, retryStrategy: retryStrategy) {
153 |             case .success:
/host/spi-builder-workspace/Sources/Services/NetworkService.swift:172:66: error: cannot infer contextual base in reference to member 'PUT'
170 |             }
171 |
172 |             var request = self.setRequest(url: url, httpMethod: .PUT)
    |                                                                  `- error: cannot infer contextual base in reference to member 'PUT'
173 |             request.addValue("Bearer \(token)", forHTTPHeaderField: "Authorization")
174 |             switch self.networkRequest(request, session: self.session, retryStrategy: retryStrategy) {
/host/spi-builder-workspace/Sources/Services/NetworkService.swift:193:66: error: cannot infer contextual base in reference to member 'DELETE'
191 |             }
192 |
193 |             let request = self.setRequest(url: url, httpMethod: .DELETE)
    |                                                                  `- error: cannot infer contextual base in reference to member 'DELETE'
194 |             switch self.networkRequest(request, session: self.session, retryStrategy: retryStrategy) {
195 |             case .success:
/host/spi-builder-workspace/Sources/Services/NetworkService.swift:213:66: error: cannot infer contextual base in reference to member 'GET'
211 |             }
212 |
213 |             let request = self.setRequest(url: url, httpMethod: .GET)
    |                                                                  `- error: cannot infer contextual base in reference to member 'GET'
214 |             switch self.networkRequest(request, session: self.session, retryStrategy: retryStrategy) {
215 |             case .success:
/host/spi-builder-workspace/Sources/Services/NetworkService.swift:231:17: error: value of type 'URLSession' (aka 'AnyObject') has no member 'dataTask'
229 |         var result: Result<Data, PushNotificationsAPIError>?
230 |
231 |         session.dataTask(with: request, completionHandler: { data, response, error in
    |                 `- error: value of type 'URLSession' (aka 'AnyObject') has no member 'dataTask'
232 |             guard
233 |                 let data = data,
/host/spi-builder-workspace/Sources/Services/NetworkService.swift:247:46: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
245 |             }
246 |
247 |             let statusCode = httpURLResponse.statusCode
    |                                              `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
248 |             switch statusCode {
249 |             case 200..<300:
/host/spi-builder-workspace/Sources/Services/NetworkService.swift:288:23: error: cannot find 'URLRequest' in scope
286 |
287 |     private func setRequest(url: URL, httpMethod: HTTPMethod, body: Data? = nil) -> URLRequest {
288 |         var request = URLRequest(url: url)
    |                       `- error: cannot find 'URLRequest' in scope
289 |         request.addValue("application/json", forHTTPHeaderField: "Content-Type")
290 |         request.addValue("push-notifications-swift \(SDK.version)", forHTTPHeaderField: "X-Pusher-Library")
/host/spi-builder-workspace/Sources/Services/ServerSyncEventHandler.swift:6:16: warning: static property 'serverSyncEventHandlers' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
 4 |
 5 |     static let serverSyncEventHandlersQueue = DispatchQueue(label: "com.pusher.beams.serverSyncEventHandlersQueue")
 6 |     static var serverSyncEventHandlers = [String: ServerSyncEventHandler]()
   |                |- warning: static property 'serverSyncEventHandlers' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'serverSyncEventHandlers' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'serverSyncEventHandlers' with '@MainActor' if property should only be accessed from the main actor
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 7 |
 8 |     static func obtain(instanceId: String) -> ServerSyncEventHandler {
/host/spi-builder-workspace/Sources/Services/ServerSyncEventHandler.swift:36:17: warning: capture of 'self' with non-sendable type 'ServerSyncEventHandler' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 1 | import Foundation
 2 |
 3 | class ServerSyncEventHandler {
   |       `- note: class 'ServerSyncEventHandler' does not conform to the 'Sendable' protocol
 4 |
 5 |     static let serverSyncEventHandlersQueue = DispatchQueue(label: "com.pusher.beams.serverSyncEventHandlersQueue")
   :
34 |             switch event {
35 |             case .interestsChangedEvent(let interests):
36 |                 self.interestsChangedDelegates.forEach({ delegate in
   |                 `- warning: capture of 'self' with non-sendable type 'ServerSyncEventHandler' in a `@Sendable` closure; this is an error in the Swift 6 language mode
37 |                     if let delegate = delegate() {
38 |                         delegate.interestsSetOnDeviceDidChange(interests: interests)
/host/spi-builder-workspace/Sources/Services/ServerSyncProcessHandler.swift:5:24: warning: static property 'serverSyncHandlers' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
  3 | class ServerSyncProcessHandler {
  4 |     private static let serverSyncHandlersQueue = DispatchQueue(label: "com.pusher.beams.serverSyncHandlersQueue")
  5 |     private static var serverSyncHandlers = [String: ServerSyncProcessHandler]()
    |                        |- warning: static property 'serverSyncHandlers' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
    |                        |- note: convert 'serverSyncHandlers' to a 'let' constant to make 'Sendable' shared state immutable
    |                        |- note: annotate 'serverSyncHandlers' with '@MainActor' if property should only be accessed from the main actor
    |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
  6 |     static func obtain(instanceId: String, getTokenProvider: @escaping () -> TokenProvider?, handleServerSyncEvent: @escaping (ServerSyncEvent) -> Void) -> ServerSyncProcessHandler {
  7 |         return serverSyncHandlersQueue.sync {
/host/spi-builder-workspace/Sources/Services/ServerSyncProcessHandler.swift:47:23: error: 'URLSession' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
 45 |         self.sendMessageQueue = DispatchQueue(label: "com.pusher.beams.sendMessageQueue")
 46 |         self.handleMessageQueue = DispatchQueue(label: "com.pusher.beams.handleMessageQueue")
 47 |         let session = URLSession(configuration: .ephemeral)
    |                       `- error: 'URLSession' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
 48 |         self.networkService = NetworkService(session: session)
 49 |         self.jobQueue = ServerSyncJobStore(instanceId: self.instanceId)
/host/spi-builder-workspace/Sources/Services/ServerSyncProcessHandler.swift:47:50: error: cannot infer contextual base in reference to member 'ephemeral'
 45 |         self.sendMessageQueue = DispatchQueue(label: "com.pusher.beams.sendMessageQueue")
 46 |         self.handleMessageQueue = DispatchQueue(label: "com.pusher.beams.handleMessageQueue")
 47 |         let session = URLSession(configuration: .ephemeral)
    |                                                  `- error: cannot infer contextual base in reference to member 'ephemeral'
 48 |         self.networkService = NetworkService(session: session)
 49 |         self.jobQueue = ServerSyncJobStore(instanceId: self.instanceId)
/host/spi-builder-workspace/Sources/Services/ServerSyncProcessHandler.swift:60:21: warning: capture of 'self' with non-sendable type 'ServerSyncProcessHandler' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  1 | import Foundation
  2 |
  3 | class ServerSyncProcessHandler {
    |       `- note: class 'ServerSyncProcessHandler' does not conform to the 'Sendable' protocol
  4 |     private static let serverSyncHandlersQueue = DispatchQueue(label: "com.pusher.beams.serverSyncHandlersQueue")
  5 |     private static var serverSyncHandlers = [String: ServerSyncProcessHandler]()
    :
 58 |             default:
 59 |                 self.handleMessageQueue.async {
 60 |                     self.handleMessage(serverSyncJob: job)
    |                     `- warning: capture of 'self' with non-sendable type 'ServerSyncProcessHandler' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 61 |                 }
 62 |             }
/host/spi-builder-workspace/Sources/Services/ServerSyncProcessHandler.swift:60:55: warning: capture of 'job' with non-sendable type 'ServerSyncJob' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 58 |             default:
 59 |                 self.handleMessageQueue.async {
 60 |                     self.handleMessage(serverSyncJob: job)
    |                                                       `- warning: capture of 'job' with non-sendable type 'ServerSyncJob' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 61 |                 }
 62 |             }
/host/spi-builder-workspace/Sources/Models/ServerSyncJob.swift:3:6: note: consider making enum 'ServerSyncJob' conform to the 'Sendable' protocol
  1 | import Foundation
  2 |
  3 | enum ServerSyncJob {
    |      `- note: consider making enum 'ServerSyncJob' conform to the 'Sendable' protocol
  4 |     case startJob(instanceId: String, token: String)
  5 |     case refreshTokenJob(newToken: String)
/host/spi-builder-workspace/Sources/Services/ServerSyncProcessHandler.swift:68:13: warning: capture of 'self' with non-sendable type 'ServerSyncProcessHandler' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  1 | import Foundation
  2 |
  3 | class ServerSyncProcessHandler {
    |       `- note: class 'ServerSyncProcessHandler' does not conform to the 'Sendable' protocol
  4 |     private static let serverSyncHandlersQueue = DispatchQueue(label: "com.pusher.beams.serverSyncHandlersQueue")
  5 |     private static var serverSyncHandlers = [String: ServerSyncProcessHandler]()
    :
 66 |     func sendMessage(serverSyncJob: ServerSyncJob) {
 67 |         self.sendMessageQueue.async {
 68 |             self.jobQueue.append(serverSyncJob)
    |             `- warning: capture of 'self' with non-sendable type 'ServerSyncProcessHandler' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 69 |
 70 |             self.handleMessageQueue.async {
/host/spi-builder-workspace/Sources/Services/ServerSyncProcessHandler.swift:68:34: warning: capture of 'serverSyncJob' with non-sendable type 'ServerSyncJob' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 66 |     func sendMessage(serverSyncJob: ServerSyncJob) {
 67 |         self.sendMessageQueue.async {
 68 |             self.jobQueue.append(serverSyncJob)
    |                                  `- warning: capture of 'serverSyncJob' with non-sendable type 'ServerSyncJob' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 69 |
 70 |             self.handleMessageQueue.async {
/host/spi-builder-workspace/Sources/Models/ServerSyncJob.swift:3:6: note: consider making enum 'ServerSyncJob' conform to the 'Sendable' protocol
  1 | import Foundation
  2 |
  3 | enum ServerSyncJob {
    |      `- note: consider making enum 'ServerSyncJob' conform to the 'Sendable' protocol
  4 |     case startJob(instanceId: String, token: String)
  5 |     case refreshTokenJob(newToken: String)
/host/spi-builder-workspace/Sources/Services/ServerSyncProcessHandler.swift:71:17: warning: capture of 'self' with non-sendable type 'ServerSyncProcessHandler' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  1 | import Foundation
  2 |
  3 | class ServerSyncProcessHandler {
    |       `- note: class 'ServerSyncProcessHandler' does not conform to the 'Sendable' protocol
  4 |     private static let serverSyncHandlersQueue = DispatchQueue(label: "com.pusher.beams.serverSyncHandlersQueue")
  5 |     private static var serverSyncHandlers = [String: ServerSyncProcessHandler]()
    :
 69 |
 70 |             self.handleMessageQueue.async {
 71 |                 self.handleMessage(serverSyncJob: serverSyncJob)
    |                 `- warning: capture of 'self' with non-sendable type 'ServerSyncProcessHandler' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 72 |             }
 73 |         }
/host/spi-builder-workspace/Sources/Services/ServerSyncProcessHandler.swift:71:51: warning: capture of 'serverSyncJob' with non-sendable type 'ServerSyncJob' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 69 |
 70 |             self.handleMessageQueue.async {
 71 |                 self.handleMessage(serverSyncJob: serverSyncJob)
    |                                                   `- warning: capture of 'serverSyncJob' with non-sendable type 'ServerSyncJob' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 72 |             }
 73 |         }
/host/spi-builder-workspace/Sources/Models/ServerSyncJob.swift:3:6: note: consider making enum 'ServerSyncJob' conform to the 'Sendable' protocol
  1 | import Foundation
  2 |
  3 | enum ServerSyncJob {
    |      `- note: consider making enum 'ServerSyncJob' conform to the 'Sendable' protocol
  4 |     case startJob(instanceId: String, token: String)
  5 |     case refreshTokenJob(newToken: String)
/host/spi-builder-workspace/Sources/Models/Metadata.swift:8:16: warning: static property 'current' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
 6 |     let macosVersion: String?
 7 |
 8 |     static var current: Metadata = {
   |                |- warning: static property 'current' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'current' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'current' with '@MainActor' if property should only be accessed from the main actor
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 9 |         let sdkVersion = SDK.version
10 |         let systemVersion = SystemVersion.version
[8/46] Compiling PushNotifications ServerSyncProcessHandler.swift
/host/spi-builder-workspace/Sources/Services/EventTypeHandler.swift:147:31: error: cannot find 'isForeground' in scope
145 |         let hasCustomerData = data.count > 1 // checks if there's anything other than the `pusher` key
146 |
147 |         if hasCustomerData && isForeground {
    |                               `- error: cannot find 'isForeground' in scope
148 |             return .ShouldProcess
149 |         }
/host/spi-builder-workspace/Sources/Services/NetworkService.swift:4:18: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
  2 |
  3 | class NetworkService: PushNotificationsNetworkable {
  4 |     let session: URLSession
    |                  `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
  5 |
  6 |     init(session: URLSession) {
Foundation.URLSession:2:18: note: 'URLSession' 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 URLSession = AnyObject
  |                  `- note: 'URLSession' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/Services/NetworkService.swift:6:19: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
  4 |     let session: URLSession
  5 |
  6 |     init(session: URLSession) {
    |                   `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
  7 |         self.session = session
  8 |     }
Foundation.URLSession:2:18: note: 'URLSession' 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 URLSession = AnyObject
  |                  `- note: 'URLSession' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/Services/NetworkService.swift:225:44: error: cannot find type 'URLRequest' in scope
223 |
224 |     // MARK: Networking Layer
225 |     private func networkRequest(_ request: URLRequest,
    |                                            `- error: cannot find type 'URLRequest' in scope
226 |                                 session: URLSession,
227 |                                 retryStrategy: RetryStrategy) -> Result<Data, PushNotificationsAPIError> {
/host/spi-builder-workspace/Sources/Services/NetworkService.swift:226:42: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
224 |     // MARK: Networking Layer
225 |     private func networkRequest(_ request: URLRequest,
226 |                                 session: URLSession,
    |                                          `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
227 |                                 retryStrategy: RetryStrategy) -> Result<Data, PushNotificationsAPIError> {
228 |         let semaphore = DispatchSemaphore(value: 0)
Foundation.URLSession:2:18: note: 'URLSession' 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 URLSession = AnyObject
  |                  `- note: 'URLSession' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/Services/NetworkService.swift:287:85: error: cannot find type 'URLRequest' in scope
285 |     }
286 |
287 |     private func setRequest(url: URL, httpMethod: HTTPMethod, body: Data? = nil) -> URLRequest {
    |                                                                                     `- error: cannot find type 'URLRequest' in scope
288 |         var request = URLRequest(url: url)
289 |         request.addValue("application/json", forHTTPHeaderField: "Content-Type")
/host/spi-builder-workspace/Sources/Services/NetworkService.swift:28:66: error: cannot infer contextual base in reference to member 'POST'
 26 |             }
 27 |
 28 |             let request = self.setRequest(url: url, httpMethod: .POST, body: body)
    |                                                                  `- error: cannot infer contextual base in reference to member 'POST'
 29 |
 30 |             switch self.networkRequest(request, session: self.session, retryStrategy: retryStrategy) {
/host/spi-builder-workspace/Sources/Services/NetworkService.swift:54:66: error: cannot infer contextual base in reference to member 'POST'
 52 |             }
 53 |
 54 |             let request = self.setRequest(url: url, httpMethod: .POST)
    |                                                                  `- error: cannot infer contextual base in reference to member 'POST'
 55 |
 56 |             switch self.networkRequest(request, session: self.session, retryStrategy: retryStrategy) {
/host/spi-builder-workspace/Sources/Services/NetworkService.swift:79:66: error: cannot infer contextual base in reference to member 'PUT'
 77 |                 return .failure(.genericError(reason: "Error while encoding the interests payload."))
 78 |             }
 79 |             let request = self.setRequest(url: url, httpMethod: .PUT, body: body)
    |                                                                  `- error: cannot infer contextual base in reference to member 'PUT'
 80 |
 81 |             switch self.networkRequest(request, session: self.session, retryStrategy: retryStrategy) {
/host/spi-builder-workspace/Sources/Services/NetworkService.swift:102:66: error: cannot infer contextual base in reference to member 'DELETE'
100 |             }
101 |
102 |             let request = self.setRequest(url: url, httpMethod: .DELETE)
    |                                                                  `- error: cannot infer contextual base in reference to member 'DELETE'
103 |
104 |             switch self.networkRequest(request, session: self.session, retryStrategy: retryStrategy) {
/host/spi-builder-workspace/Sources/Services/NetworkService.swift:127:66: error: cannot infer contextual base in reference to member 'POST'
125 |             }
126 |
127 |             let request = self.setRequest(url: url, httpMethod: .POST, body: body)
    |                                                                  `- error: cannot infer contextual base in reference to member 'POST'
128 |             switch self.networkRequest(request, session: self.session, retryStrategy: retryStrategy) {
129 |             case .success:
/host/spi-builder-workspace/Sources/Services/NetworkService.swift:151:66: error: cannot infer contextual base in reference to member 'PUT'
149 |                 return .failure(.genericError(reason: "Error while encoding the metadata payload."))
150 |             }
151 |             let request = self.setRequest(url: url, httpMethod: .PUT, body: body)
    |                                                                  `- error: cannot infer contextual base in reference to member 'PUT'
152 |             switch self.networkRequest(request, session: self.session, retryStrategy: retryStrategy) {
153 |             case .success:
/host/spi-builder-workspace/Sources/Services/NetworkService.swift:172:66: error: cannot infer contextual base in reference to member 'PUT'
170 |             }
171 |
172 |             var request = self.setRequest(url: url, httpMethod: .PUT)
    |                                                                  `- error: cannot infer contextual base in reference to member 'PUT'
173 |             request.addValue("Bearer \(token)", forHTTPHeaderField: "Authorization")
174 |             switch self.networkRequest(request, session: self.session, retryStrategy: retryStrategy) {
/host/spi-builder-workspace/Sources/Services/NetworkService.swift:193:66: error: cannot infer contextual base in reference to member 'DELETE'
191 |             }
192 |
193 |             let request = self.setRequest(url: url, httpMethod: .DELETE)
    |                                                                  `- error: cannot infer contextual base in reference to member 'DELETE'
194 |             switch self.networkRequest(request, session: self.session, retryStrategy: retryStrategy) {
195 |             case .success:
/host/spi-builder-workspace/Sources/Services/NetworkService.swift:213:66: error: cannot infer contextual base in reference to member 'GET'
211 |             }
212 |
213 |             let request = self.setRequest(url: url, httpMethod: .GET)
    |                                                                  `- error: cannot infer contextual base in reference to member 'GET'
214 |             switch self.networkRequest(request, session: self.session, retryStrategy: retryStrategy) {
215 |             case .success:
/host/spi-builder-workspace/Sources/Services/NetworkService.swift:231:17: error: value of type 'URLSession' (aka 'AnyObject') has no member 'dataTask'
229 |         var result: Result<Data, PushNotificationsAPIError>?
230 |
231 |         session.dataTask(with: request, completionHandler: { data, response, error in
    |                 `- error: value of type 'URLSession' (aka 'AnyObject') has no member 'dataTask'
232 |             guard
233 |                 let data = data,
/host/spi-builder-workspace/Sources/Services/NetworkService.swift:247:46: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
245 |             }
246 |
247 |             let statusCode = httpURLResponse.statusCode
    |                                              `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
248 |             switch statusCode {
249 |             case 200..<300:
/host/spi-builder-workspace/Sources/Services/NetworkService.swift:288:23: error: cannot find 'URLRequest' in scope
286 |
287 |     private func setRequest(url: URL, httpMethod: HTTPMethod, body: Data? = nil) -> URLRequest {
288 |         var request = URLRequest(url: url)
    |                       `- error: cannot find 'URLRequest' in scope
289 |         request.addValue("application/json", forHTTPHeaderField: "Content-Type")
290 |         request.addValue("push-notifications-swift \(SDK.version)", forHTTPHeaderField: "X-Pusher-Library")
/host/spi-builder-workspace/Sources/Services/ServerSyncEventHandler.swift:6:16: warning: static property 'serverSyncEventHandlers' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
 4 |
 5 |     static let serverSyncEventHandlersQueue = DispatchQueue(label: "com.pusher.beams.serverSyncEventHandlersQueue")
 6 |     static var serverSyncEventHandlers = [String: ServerSyncEventHandler]()
   |                |- warning: static property 'serverSyncEventHandlers' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'serverSyncEventHandlers' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'serverSyncEventHandlers' with '@MainActor' if property should only be accessed from the main actor
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 7 |
 8 |     static func obtain(instanceId: String) -> ServerSyncEventHandler {
/host/spi-builder-workspace/Sources/Services/ServerSyncEventHandler.swift:36:17: warning: capture of 'self' with non-sendable type 'ServerSyncEventHandler' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 1 | import Foundation
 2 |
 3 | class ServerSyncEventHandler {
   |       `- note: class 'ServerSyncEventHandler' does not conform to the 'Sendable' protocol
 4 |
 5 |     static let serverSyncEventHandlersQueue = DispatchQueue(label: "com.pusher.beams.serverSyncEventHandlersQueue")
   :
34 |             switch event {
35 |             case .interestsChangedEvent(let interests):
36 |                 self.interestsChangedDelegates.forEach({ delegate in
   |                 `- warning: capture of 'self' with non-sendable type 'ServerSyncEventHandler' in a `@Sendable` closure; this is an error in the Swift 6 language mode
37 |                     if let delegate = delegate() {
38 |                         delegate.interestsSetOnDeviceDidChange(interests: interests)
/host/spi-builder-workspace/Sources/Services/ServerSyncProcessHandler.swift:5:24: warning: static property 'serverSyncHandlers' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
  3 | class ServerSyncProcessHandler {
  4 |     private static let serverSyncHandlersQueue = DispatchQueue(label: "com.pusher.beams.serverSyncHandlersQueue")
  5 |     private static var serverSyncHandlers = [String: ServerSyncProcessHandler]()
    |                        |- warning: static property 'serverSyncHandlers' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
    |                        |- note: convert 'serverSyncHandlers' to a 'let' constant to make 'Sendable' shared state immutable
    |                        |- note: annotate 'serverSyncHandlers' with '@MainActor' if property should only be accessed from the main actor
    |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
  6 |     static func obtain(instanceId: String, getTokenProvider: @escaping () -> TokenProvider?, handleServerSyncEvent: @escaping (ServerSyncEvent) -> Void) -> ServerSyncProcessHandler {
  7 |         return serverSyncHandlersQueue.sync {
/host/spi-builder-workspace/Sources/Services/ServerSyncProcessHandler.swift:47:23: error: 'URLSession' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
 45 |         self.sendMessageQueue = DispatchQueue(label: "com.pusher.beams.sendMessageQueue")
 46 |         self.handleMessageQueue = DispatchQueue(label: "com.pusher.beams.handleMessageQueue")
 47 |         let session = URLSession(configuration: .ephemeral)
    |                       `- error: 'URLSession' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
 48 |         self.networkService = NetworkService(session: session)
 49 |         self.jobQueue = ServerSyncJobStore(instanceId: self.instanceId)
/host/spi-builder-workspace/Sources/Services/ServerSyncProcessHandler.swift:47:50: error: cannot infer contextual base in reference to member 'ephemeral'
 45 |         self.sendMessageQueue = DispatchQueue(label: "com.pusher.beams.sendMessageQueue")
 46 |         self.handleMessageQueue = DispatchQueue(label: "com.pusher.beams.handleMessageQueue")
 47 |         let session = URLSession(configuration: .ephemeral)
    |                                                  `- error: cannot infer contextual base in reference to member 'ephemeral'
 48 |         self.networkService = NetworkService(session: session)
 49 |         self.jobQueue = ServerSyncJobStore(instanceId: self.instanceId)
/host/spi-builder-workspace/Sources/Services/ServerSyncProcessHandler.swift:60:21: warning: capture of 'self' with non-sendable type 'ServerSyncProcessHandler' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  1 | import Foundation
  2 |
  3 | class ServerSyncProcessHandler {
    |       `- note: class 'ServerSyncProcessHandler' does not conform to the 'Sendable' protocol
  4 |     private static let serverSyncHandlersQueue = DispatchQueue(label: "com.pusher.beams.serverSyncHandlersQueue")
  5 |     private static var serverSyncHandlers = [String: ServerSyncProcessHandler]()
    :
 58 |             default:
 59 |                 self.handleMessageQueue.async {
 60 |                     self.handleMessage(serverSyncJob: job)
    |                     `- warning: capture of 'self' with non-sendable type 'ServerSyncProcessHandler' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 61 |                 }
 62 |             }
/host/spi-builder-workspace/Sources/Services/ServerSyncProcessHandler.swift:60:55: warning: capture of 'job' with non-sendable type 'ServerSyncJob' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 58 |             default:
 59 |                 self.handleMessageQueue.async {
 60 |                     self.handleMessage(serverSyncJob: job)
    |                                                       `- warning: capture of 'job' with non-sendable type 'ServerSyncJob' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 61 |                 }
 62 |             }
/host/spi-builder-workspace/Sources/Models/ServerSyncJob.swift:3:6: note: consider making enum 'ServerSyncJob' conform to the 'Sendable' protocol
  1 | import Foundation
  2 |
  3 | enum ServerSyncJob {
    |      `- note: consider making enum 'ServerSyncJob' conform to the 'Sendable' protocol
  4 |     case startJob(instanceId: String, token: String)
  5 |     case refreshTokenJob(newToken: String)
/host/spi-builder-workspace/Sources/Services/ServerSyncProcessHandler.swift:68:13: warning: capture of 'self' with non-sendable type 'ServerSyncProcessHandler' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  1 | import Foundation
  2 |
  3 | class ServerSyncProcessHandler {
    |       `- note: class 'ServerSyncProcessHandler' does not conform to the 'Sendable' protocol
  4 |     private static let serverSyncHandlersQueue = DispatchQueue(label: "com.pusher.beams.serverSyncHandlersQueue")
  5 |     private static var serverSyncHandlers = [String: ServerSyncProcessHandler]()
    :
 66 |     func sendMessage(serverSyncJob: ServerSyncJob) {
 67 |         self.sendMessageQueue.async {
 68 |             self.jobQueue.append(serverSyncJob)
    |             `- warning: capture of 'self' with non-sendable type 'ServerSyncProcessHandler' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 69 |
 70 |             self.handleMessageQueue.async {
/host/spi-builder-workspace/Sources/Services/ServerSyncProcessHandler.swift:68:34: warning: capture of 'serverSyncJob' with non-sendable type 'ServerSyncJob' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 66 |     func sendMessage(serverSyncJob: ServerSyncJob) {
 67 |         self.sendMessageQueue.async {
 68 |             self.jobQueue.append(serverSyncJob)
    |                                  `- warning: capture of 'serverSyncJob' with non-sendable type 'ServerSyncJob' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 69 |
 70 |             self.handleMessageQueue.async {
/host/spi-builder-workspace/Sources/Models/ServerSyncJob.swift:3:6: note: consider making enum 'ServerSyncJob' conform to the 'Sendable' protocol
  1 | import Foundation
  2 |
  3 | enum ServerSyncJob {
    |      `- note: consider making enum 'ServerSyncJob' conform to the 'Sendable' protocol
  4 |     case startJob(instanceId: String, token: String)
  5 |     case refreshTokenJob(newToken: String)
/host/spi-builder-workspace/Sources/Services/ServerSyncProcessHandler.swift:71:17: warning: capture of 'self' with non-sendable type 'ServerSyncProcessHandler' in a `@Sendable` closure; this is an error in the Swift 6 language mode
  1 | import Foundation
  2 |
  3 | class ServerSyncProcessHandler {
    |       `- note: class 'ServerSyncProcessHandler' does not conform to the 'Sendable' protocol
  4 |     private static let serverSyncHandlersQueue = DispatchQueue(label: "com.pusher.beams.serverSyncHandlersQueue")
  5 |     private static var serverSyncHandlers = [String: ServerSyncProcessHandler]()
    :
 69 |
 70 |             self.handleMessageQueue.async {
 71 |                 self.handleMessage(serverSyncJob: serverSyncJob)
    |                 `- warning: capture of 'self' with non-sendable type 'ServerSyncProcessHandler' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 72 |             }
 73 |         }
/host/spi-builder-workspace/Sources/Services/ServerSyncProcessHandler.swift:71:51: warning: capture of 'serverSyncJob' with non-sendable type 'ServerSyncJob' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 69 |
 70 |             self.handleMessageQueue.async {
 71 |                 self.handleMessage(serverSyncJob: serverSyncJob)
    |                                                   `- warning: capture of 'serverSyncJob' with non-sendable type 'ServerSyncJob' in a `@Sendable` closure; this is an error in the Swift 6 language mode
 72 |             }
 73 |         }
/host/spi-builder-workspace/Sources/Models/ServerSyncJob.swift:3:6: note: consider making enum 'ServerSyncJob' conform to the 'Sendable' protocol
  1 | import Foundation
  2 |
  3 | enum ServerSyncJob {
    |      `- note: consider making enum 'ServerSyncJob' conform to the 'Sendable' protocol
  4 |     case startJob(instanceId: String, token: String)
  5 |     case refreshTokenJob(newToken: String)
/host/spi-builder-workspace/Sources/Models/Metadata.swift:8:16: warning: static property 'current' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
 6 |     let macosVersion: String?
 7 |
 8 |     static var current: Metadata = {
   |                |- warning: static property 'current' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'current' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'current' with '@MainActor' if property should only be accessed from the main actor
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 9 |         let sdkVersion = SDK.version
10 |         let systemVersion = SystemVersion.version
[9/46] Compiling PushNotifications RemoteNotificationType.swift
/host/spi-builder-workspace/Sources/Models/SystemVersion.swift:5:38: error: 'ProcessInfo' initializer is inaccessible due to 'internal' protection level
 3 | struct SystemVersion {
 4 |     static var version: String {
 5 |         let operatingSystemVersion = ProcessInfo().operatingSystemVersion
   |                                      `- error: 'ProcessInfo' initializer is inaccessible due to 'internal' protection level
 6 |         let majorVersion = operatingSystemVersion.majorVersion
 7 |         let minorVersion = operatingSystemVersion.minorVersion
Foundation.ProcessInfo (internal):3:23: note: 'init()' declared here
 1 | open class ProcessInfo : NSObject {
 2 |     public static let processInfo: ProcessInfo
 3 |     override internal init()
   |                       `- note: 'init()' declared here
 4 |     open var environment: [String : String] { get }
 5 |     open var arguments: [String] { get }
[10/46] Compiling PushNotifications SDK.swift
/host/spi-builder-workspace/Sources/Models/SystemVersion.swift:5:38: error: 'ProcessInfo' initializer is inaccessible due to 'internal' protection level
 3 | struct SystemVersion {
 4 |     static var version: String {
 5 |         let operatingSystemVersion = ProcessInfo().operatingSystemVersion
   |                                      `- error: 'ProcessInfo' initializer is inaccessible due to 'internal' protection level
 6 |         let majorVersion = operatingSystemVersion.majorVersion
 7 |         let minorVersion = operatingSystemVersion.minorVersion
Foundation.ProcessInfo (internal):3:23: note: 'init()' declared here
 1 | open class ProcessInfo : NSObject {
 2 |     public static let processInfo: ProcessInfo
 3 |     override internal init()
   |                       `- note: 'init()' declared here
 4 |     open var environment: [String : String] { get }
 5 |     open var arguments: [String] { get }
[11/46] Compiling PushNotifications ServerSyncEvent.swift
/host/spi-builder-workspace/Sources/Models/SystemVersion.swift:5:38: error: 'ProcessInfo' initializer is inaccessible due to 'internal' protection level
 3 | struct SystemVersion {
 4 |     static var version: String {
 5 |         let operatingSystemVersion = ProcessInfo().operatingSystemVersion
   |                                      `- error: 'ProcessInfo' initializer is inaccessible due to 'internal' protection level
 6 |         let majorVersion = operatingSystemVersion.majorVersion
 7 |         let minorVersion = operatingSystemVersion.minorVersion
Foundation.ProcessInfo (internal):3:23: note: 'init()' declared here
 1 | open class ProcessInfo : NSObject {
 2 |     public static let processInfo: ProcessInfo
 3 |     override internal init()
   |                       `- note: 'init()' declared here
 4 |     open var environment: [String : String] { get }
 5 |     open var arguments: [String] { get }
[12/46] Compiling PushNotifications ServerSyncJob.swift
/host/spi-builder-workspace/Sources/Models/SystemVersion.swift:5:38: error: 'ProcessInfo' initializer is inaccessible due to 'internal' protection level
 3 | struct SystemVersion {
 4 |     static var version: String {
 5 |         let operatingSystemVersion = ProcessInfo().operatingSystemVersion
   |                                      `- error: 'ProcessInfo' initializer is inaccessible due to 'internal' protection level
 6 |         let majorVersion = operatingSystemVersion.majorVersion
 7 |         let minorVersion = operatingSystemVersion.minorVersion
Foundation.ProcessInfo (internal):3:23: note: 'init()' declared here
 1 | open class ProcessInfo : NSObject {
 2 |     public static let processInfo: ProcessInfo
 3 |     override internal init()
   |                       `- note: 'init()' declared here
 4 |     open var environment: [String : String] { get }
 5 |     open var arguments: [String] { get }
[13/46] Compiling PushNotifications SystemVersion.swift
/host/spi-builder-workspace/Sources/Models/SystemVersion.swift:5:38: error: 'ProcessInfo' initializer is inaccessible due to 'internal' protection level
 3 | struct SystemVersion {
 4 |     static var version: String {
 5 |         let operatingSystemVersion = ProcessInfo().operatingSystemVersion
   |                                      `- error: 'ProcessInfo' initializer is inaccessible due to 'internal' protection level
 6 |         let majorVersion = operatingSystemVersion.majorVersion
 7 |         let minorVersion = operatingSystemVersion.minorVersion
Foundation.ProcessInfo (internal):3:23: note: 'init()' declared here
 1 | open class ProcessInfo : NSObject {
 2 |     public static let processInfo: ProcessInfo
 3 |     override internal init()
   |                       `- note: 'init()' declared here
 4 |     open var environment: [String : String] { get }
 5 |     open var arguments: [String] { get }
[14/46] Compiling PushNotifications AuthData.swift
/host/spi-builder-workspace/Sources/Models/AuthData.swift:4:2: error: Objective-C interoperability is disabled
 2 |
 3 | /// Authentication data that is provided to a `TokenProvider`, such as `BeamsTokenProvider`.
 4 | @objc public class AuthData: NSObject {
   |  `- error: Objective-C interoperability is disabled
 5 |
 6 |     /// The headers to attach to the `URLRequest` triggered by the `TokenProvider` when calling `fetchToken(userId:completion:)`.
/host/spi-builder-workspace/Sources/Models/AuthData.swift:16:6: error: Objective-C interoperability is disabled
14 |     ///   - headers: A `Dictionary` of header key / value pairs.
15 |     ///   - queryParams: A `Dictionary` of query parameters key / value pairs.
16 |     @objc public init(headers: [String: String], queryParams: [String: String]) {
   |      `- error: Objective-C interoperability is disabled
17 |         self.headers = headers
18 |         self.queryParams = queryParams
[15/46] Compiling PushNotifications Constants.swift
/host/spi-builder-workspace/Sources/Models/AuthData.swift:4:2: error: Objective-C interoperability is disabled
 2 |
 3 | /// Authentication data that is provided to a `TokenProvider`, such as `BeamsTokenProvider`.
 4 | @objc public class AuthData: NSObject {
   |  `- error: Objective-C interoperability is disabled
 5 |
 6 |     /// The headers to attach to the `URLRequest` triggered by the `TokenProvider` when calling `fetchToken(userId:completion:)`.
/host/spi-builder-workspace/Sources/Models/AuthData.swift:16:6: error: Objective-C interoperability is disabled
14 |     ///   - headers: A `Dictionary` of header key / value pairs.
15 |     ///   - queryParams: A `Dictionary` of query parameters key / value pairs.
16 |     @objc public init(headers: [String: String], queryParams: [String: String]) {
   |      `- error: Objective-C interoperability is disabled
17 |         self.headers = headers
18 |         self.queryParams = queryParams
[16/46] Compiling PushNotifications Device.swift
/host/spi-builder-workspace/Sources/Models/AuthData.swift:4:2: error: Objective-C interoperability is disabled
 2 |
 3 | /// Authentication data that is provided to a `TokenProvider`, such as `BeamsTokenProvider`.
 4 | @objc public class AuthData: NSObject {
   |  `- error: Objective-C interoperability is disabled
 5 |
 6 |     /// The headers to attach to the `URLRequest` triggered by the `TokenProvider` when calling `fetchToken(userId:completion:)`.
/host/spi-builder-workspace/Sources/Models/AuthData.swift:16:6: error: Objective-C interoperability is disabled
14 |     ///   - headers: A `Dictionary` of header key / value pairs.
15 |     ///   - queryParams: A `Dictionary` of query parameters key / value pairs.
16 |     @objc public init(headers: [String: String], queryParams: [String: String]) {
   |      `- error: Objective-C interoperability is disabled
17 |         self.headers = headers
18 |         self.queryParams = queryParams
[17/46] Compiling PushNotifications FeatureFlags.swift
/host/spi-builder-workspace/Sources/Models/AuthData.swift:4:2: error: Objective-C interoperability is disabled
 2 |
 3 | /// Authentication data that is provided to a `TokenProvider`, such as `BeamsTokenProvider`.
 4 | @objc public class AuthData: NSObject {
   |  `- error: Objective-C interoperability is disabled
 5 |
 6 |     /// The headers to attach to the `URLRequest` triggered by the `TokenProvider` when calling `fetchToken(userId:completion:)`.
/host/spi-builder-workspace/Sources/Models/AuthData.swift:16:6: error: Objective-C interoperability is disabled
14 |     ///   - headers: A `Dictionary` of header key / value pairs.
15 |     ///   - queryParams: A `Dictionary` of query parameters key / value pairs.
16 |     @objc public init(headers: [String: String], queryParams: [String: String]) {
   |      `- error: Objective-C interoperability is disabled
17 |         self.headers = headers
18 |         self.queryParams = queryParams
[18/46] Compiling PushNotifications HTTPMethod.swift
/host/spi-builder-workspace/Sources/Models/AuthData.swift:4:2: error: Objective-C interoperability is disabled
 2 |
 3 | /// Authentication data that is provided to a `TokenProvider`, such as `BeamsTokenProvider`.
 4 | @objc public class AuthData: NSObject {
   |  `- error: Objective-C interoperability is disabled
 5 |
 6 |     /// The headers to attach to the `URLRequest` triggered by the `TokenProvider` when calling `fetchToken(userId:completion:)`.
/host/spi-builder-workspace/Sources/Models/AuthData.swift:16:6: error: Objective-C interoperability is disabled
14 |     ///   - headers: A `Dictionary` of header key / value pairs.
15 |     ///   - queryParams: A `Dictionary` of query parameters key / value pairs.
16 |     @objc public init(headers: [String: String], queryParams: [String: String]) {
   |      `- error: Objective-C interoperability is disabled
17 |         self.headers = headers
18 |         self.queryParams = queryParams
[19/46] Compiling PushNotifications InstanceId.swift
/host/spi-builder-workspace/Sources/Models/AuthData.swift:4:2: error: Objective-C interoperability is disabled
 2 |
 3 | /// Authentication data that is provided to a `TokenProvider`, such as `BeamsTokenProvider`.
 4 | @objc public class AuthData: NSObject {
   |  `- error: Objective-C interoperability is disabled
 5 |
 6 |     /// The headers to attach to the `URLRequest` triggered by the `TokenProvider` when calling `fetchToken(userId:completion:)`.
/host/spi-builder-workspace/Sources/Models/AuthData.swift:16:6: error: Objective-C interoperability is disabled
14 |     ///   - headers: A `Dictionary` of header key / value pairs.
15 |     ///   - queryParams: A `Dictionary` of query parameters key / value pairs.
16 |     @objc public init(headers: [String: String], queryParams: [String: String]) {
   |      `- error: Objective-C interoperability is disabled
17 |         self.headers = headers
18 |         self.queryParams = queryParams
[20/46] Compiling PushNotifications InterestValidationError.swift
/host/spi-builder-workspace/Sources/Models/Metadata.swift:8:16: warning: static property 'current' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
 6 |     let macosVersion: String?
 7 |
 8 |     static var current: Metadata = {
   |                |- warning: static property 'current' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'current' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'current' with '@MainActor' if property should only be accessed from the main actor
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 9 |         let sdkVersion = SDK.version
10 |         let systemVersion = SystemVersion.version
/host/spi-builder-workspace/Sources/Models/Metadata.swift:17:5: error: missing return in closure expected to return 'Metadata'
15 |         return Metadata(sdkVersion: sdkVersion, iosVersion: nil, macosVersion: systemVersion)
16 |         #endif
17 |     }()
   |     `- error: missing return in closure expected to return 'Metadata'
18 | }
19 |
[21/46] Compiling PushNotifications Interests.swift
/host/spi-builder-workspace/Sources/Models/Metadata.swift:8:16: warning: static property 'current' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
 6 |     let macosVersion: String?
 7 |
 8 |     static var current: Metadata = {
   |                |- warning: static property 'current' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'current' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'current' with '@MainActor' if property should only be accessed from the main actor
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 9 |         let sdkVersion = SDK.version
10 |         let systemVersion = SystemVersion.version
/host/spi-builder-workspace/Sources/Models/Metadata.swift:17:5: error: missing return in closure expected to return 'Metadata'
15 |         return Metadata(sdkVersion: sdkVersion, iosVersion: nil, macosVersion: systemVersion)
16 |         #endif
17 |     }()
   |     `- error: missing return in closure expected to return 'Metadata'
18 | }
19 |
[22/46] Compiling PushNotifications Metadata.swift
/host/spi-builder-workspace/Sources/Models/Metadata.swift:8:16: warning: static property 'current' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
 6 |     let macosVersion: String?
 7 |
 8 |     static var current: Metadata = {
   |                |- warning: static property 'current' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'current' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'current' with '@MainActor' if property should only be accessed from the main actor
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 9 |         let sdkVersion = SDK.version
10 |         let systemVersion = SystemVersion.version
/host/spi-builder-workspace/Sources/Models/Metadata.swift:17:5: error: missing return in closure expected to return 'Metadata'
15 |         return Metadata(sdkVersion: sdkVersion, iosVersion: nil, macosVersion: systemVersion)
16 |         #endif
17 |     }()
   |     `- error: missing return in closure expected to return 'Metadata'
18 | }
19 |
[23/46] Compiling PushNotifications MultipleInvalidInterestsError.swift
/host/spi-builder-workspace/Sources/Models/Metadata.swift:8:16: warning: static property 'current' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
 6 |     let macosVersion: String?
 7 |
 8 |     static var current: Metadata = {
   |                |- warning: static property 'current' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'current' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'current' with '@MainActor' if property should only be accessed from the main actor
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 9 |         let sdkVersion = SDK.version
10 |         let systemVersion = SystemVersion.version
/host/spi-builder-workspace/Sources/Models/Metadata.swift:17:5: error: missing return in closure expected to return 'Metadata'
15 |         return Metadata(sdkVersion: sdkVersion, iosVersion: nil, macosVersion: systemVersion)
16 |         #endif
17 |     }()
   |     `- error: missing return in closure expected to return 'Metadata'
18 | }
19 |
[24/46] Compiling PushNotifications PersistenceConstants.swift
/host/spi-builder-workspace/Sources/Models/Metadata.swift:8:16: warning: static property 'current' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
 6 |     let macosVersion: String?
 7 |
 8 |     static var current: Metadata = {
   |                |- warning: static property 'current' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'current' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'current' with '@MainActor' if property should only be accessed from the main actor
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 9 |         let sdkVersion = SDK.version
10 |         let systemVersion = SystemVersion.version
/host/spi-builder-workspace/Sources/Models/Metadata.swift:17:5: error: missing return in closure expected to return 'Metadata'
15 |         return Metadata(sdkVersion: sdkVersion, iosVersion: nil, macosVersion: systemVersion)
16 |         #endif
17 |     }()
   |     `- error: missing return in closure expected to return 'Metadata'
18 | }
19 |
[25/46] Compiling PushNotifications PublishId.swift
/host/spi-builder-workspace/Sources/Models/Metadata.swift:8:16: warning: static property 'current' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
 6 |     let macosVersion: String?
 7 |
 8 |     static var current: Metadata = {
   |                |- warning: static property 'current' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'current' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'current' with '@MainActor' if property should only be accessed from the main actor
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 9 |         let sdkVersion = SDK.version
10 |         let systemVersion = SystemVersion.version
/host/spi-builder-workspace/Sources/Models/Metadata.swift:17:5: error: missing return in closure expected to return 'Metadata'
15 |         return Metadata(sdkVersion: sdkVersion, iosVersion: nil, macosVersion: systemVersion)
16 |         #endif
17 |     }()
   |     `- error: missing return in closure expected to return 'Metadata'
18 | }
19 |
[26/46] Compiling PushNotifications TokenProvider.swift
/host/spi-builder-workspace/Sources/Protocols/TokenProvider.swift:24:2: error: Objective-C interoperability is disabled
22 |  Conform to the TokenProvider protocol in order to generate the token for the user that you want to authenticate.
23 |  */
24 | @objc public protocol TokenProvider {
   |  `- error: Objective-C interoperability is disabled
25 |     /**
26 |      Method `fetchToken` will return the token on success or error on failure.
/host/spi-builder-workspace/Sources/PushNotifications.swift:11:2: error: Objective-C interoperability is disabled
  9 |
 10 | /// The top-level entrypoint to the Beams Swift SDK.
 11 | @objc public final class PushNotifications: NSObject {
    |  `- error: Objective-C interoperability is disabled
 12 |
 13 |     let instanceId: String
/host/spi-builder-workspace/Sources/PushNotifications.swift:22:6: error: Objective-C interoperability is disabled
 20 |     /// Creates a `PushNotifications` object with a given `instanceId`.
 21 |     /// - Parameter instanceId: The instance identifier (from your app dashboard).
 22 |     @objc public init(instanceId: String) {
    |      `- error: Objective-C interoperability is disabled
 23 |         self.instanceId = instanceId
 24 |         self.deviceStateStore = InstanceDeviceStateStore(instanceId)
/host/spi-builder-workspace/Sources/PushNotifications.swift:35:6: error: Objective-C interoperability is disabled
 33 |     /// Returns a shared singleton PushNotifications object
 34 |     /// that can be accessed from anywhere in your project.
 35 |     @objc public static let shared = PushNotificationsStatic.self
    |      `- error: Objective-C interoperability is disabled
 36 |
 37 |     private lazy var serverSyncHandler = ServerSyncProcessHandler.obtain(
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:18:16: warning: static property 'tokenProvider' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
 16 |
 17 |     private static var instance: PushNotifications?
 18 |     static var tokenProvider = [String: TokenProvider]()
    |                |- warning: static property 'tokenProvider' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: convert 'tokenProvider' to a 'let' constant to make 'Sendable' shared state immutable
    |                |- note: annotate 'tokenProvider' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 19 |
 20 |     /**
/host/spi-builder-workspace/Sources/PushNotifications.swift:51:6: error: Objective-C interoperability is disabled
 49 |      */
 50 |     /// - Tag: start
 51 |     @objc public func start() {
    |      `- error: Objective-C interoperability is disabled
 52 |         if UUID(uuidString: instanceId) == nil {
 53 |             print("[PushNotifications]: '\(instanceId)' is not a valid instance id.")
/host/spi-builder-workspace/Sources/PushNotifications.swift:78:6: error: Objective-C interoperability is disabled
 76 |      */
 77 |     /// - Tag: register
 78 |     @objc public func registerForRemoteNotifications() {
    |      `- error: Objective-C interoperability is disabled
 79 |         PushNotificationsStatic.registerForRemoteNotifications()
 80 |     }
/host/spi-builder-workspace/Sources/PushNotifications.swift:110:6: error: Objective-C interoperability is disabled
108 |     */
109 |     /// - Tag: setUserId
110 |     @objc public func setUserId(_ userId: String, tokenProvider: TokenProvider, completion: @escaping (Error?) -> Void) {
    |      `- error: Objective-C interoperability is disabled
111 |         if startHasBeenCalledThisSession == false {
112 |             completion(PushNotificationsError.error("[PushNotifications] - `start` method must be called before setting `userId`"))
/host/spi-builder-workspace/Sources/PushNotifications.swift:162:6: error: Objective-C interoperability is disabled
160 |      */
161 |     /// - Tag: getUserId
162 |     @objc public func getUserId() -> String? {
    |      `- error: Objective-C interoperability is disabled
163 |         return InstanceDeviceStateStore.synchronize {
164 |             return self.deviceStateStore.getUserId()
/host/spi-builder-workspace/Sources/PushNotifications.swift:168:6: error: Objective-C interoperability is disabled
166 |     }
167 |
168 |     @objc private func printHelpfulMessage() {
    |      `- error: Objective-C interoperability is disabled
169 |         print("[PushNotifications] - It looks like setUserId hasn't completed yet -- have you called `registerDeviceToken`?")
170 |     }
/host/spi-builder-workspace/Sources/PushNotifications.swift:179:6: error: Objective-C interoperability is disabled
177 |      */
178 |     /// - Tag: stop
179 |     @objc public func stop(completion: @escaping () -> Void) {
    |      `- error: Objective-C interoperability is disabled
180 |         let hadAnyInterests: Bool = InstanceDeviceStateStore.synchronize {
181 |             let hadAnyInterests = self.deviceStateStore.getInterests()?.isEmpty ?? false
/host/spi-builder-workspace/Sources/PushNotifications.swift:208:6: error: Objective-C interoperability is disabled
206 |      */
207 |     /// - Tag: clearAllState
208 |     @objc public func clearAllState(completion: @escaping () -> Void) {
    |      `- error: Objective-C interoperability is disabled
209 |         let storedAPNsToken = self.deviceStateStore.getAPNsToken()
210 |         let hasStartAlreadyBeenCalled = self.deviceStateStore.getStartJobHasBeenEnqueued()
/host/spi-builder-workspace/Sources/PushNotifications.swift:230:6: error: Objective-C interoperability is disabled
228 |      */
229 |     /// - Tag: registerDeviceToken
230 |     @objc public func registerDeviceToken(_ deviceToken: Data) {
    |      `- error: Objective-C interoperability is disabled
231 |         PushNotificationsStatic.registerDeviceToken(deviceToken)
232 |     }
/host/spi-builder-workspace/Sources/PushNotifications.swift:244:6: error: Objective-C interoperability is disabled
242 |      */
243 |     /// - Tag: addDeviceInterest
244 |     @objc public func addDeviceInterest(interest: String) throws {
    |      `- error: Objective-C interoperability is disabled
245 |         guard self.validateInterestName(interest) else {
246 |             throw InvalidInterestError.invalidName(interest)
/host/spi-builder-workspace/Sources/PushNotifications.swift:270:6: error: Objective-C interoperability is disabled
268 |      */
269 |     /// - Tag: setDeviceInterests
270 |     @objc public func setDeviceInterests(interests: [String]) throws {
    |      `- error: Objective-C interoperability is disabled
271 |         if let invalidInterests = self.validateInterestNames(interests), invalidInterests.count > 0 {
272 |             throw MultipleInvalidInterestsError.invalidNames(invalidInterests)
/host/spi-builder-workspace/Sources/PushNotifications.swift:295:7: error: Objective-C interoperability is disabled
293 |      */
294 |     /// - Tag: removeDeviceInterest
295 |      @objc public func removeDeviceInterest(interest: String) throws {
    |       `- error: Objective-C interoperability is disabled
296 |         guard self.validateInterestName(interest) else {
297 |             throw InvalidInterestError.invalidName(interest)
/host/spi-builder-workspace/Sources/PushNotifications.swift:312:6: error: Objective-C interoperability is disabled
310 |     /// Unsubscribes the device from all the interests.
311 |     /// - Tag: clearDeviceInterests
312 |     @objc public func clearDeviceInterests() throws {
    |      `- error: Objective-C interoperability is disabled
313 |         try self.setDeviceInterests(interests: [])
314 |     }
/host/spi-builder-workspace/Sources/PushNotifications.swift:322:6: error: Objective-C interoperability is disabled
320 |      */
321 |     /// - Tag: getDeviceInterests
322 |     @objc public func getDeviceInterests() -> [String]? {
    |      `- error: Objective-C interoperability is disabled
323 |         return InstanceDeviceStateStore.synchronize {
324 |             return self.deviceStateStore.getInterests()
/host/spi-builder-workspace/Sources/PushNotifications.swift:345:6: error: Objective-C interoperability is disabled
343 |     /// - Tag: handleNotification
344 |     @discardableResult
345 |     @objc public func handleNotification(userInfo: [AnyHashable: Any]) -> RemoteNotificationType {
    |      `- error: Objective-C interoperability is disabled
346 |         return PushNotificationsStatic.handleNotification(userInfo: userInfo)
347 |     }
/host/spi-builder-workspace/Sources/PushNotifications.swift:364:2: error: Objective-C interoperability is disabled
362 |  Method `interestsSetOnDeviceDidChange(interests:)` will be called when interests set changes.
363 |  */
364 | @objc public protocol InterestsChangedDelegate: AnyObject {
    |  `- error: Objective-C interoperability is disabled
365 |     /**
366 |      Tells the delegate that the device's interests subscriptions list has changed.
/host/spi-builder-workspace/Sources/Models/Metadata.swift:8:16: warning: static property 'current' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
 6 |     let macosVersion: String?
 7 |
 8 |     static var current: Metadata = {
   |                |- warning: static property 'current' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'current' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'current' with '@MainActor' if property should only be accessed from the main actor
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 9 |         let sdkVersion = SDK.version
10 |         let systemVersion = SystemVersion.version
/host/spi-builder-workspace/Sources/PushNotifications.swift:141:91: error: '#selector' can only be used with the Objective-C runtime
139 |         }
140 |
141 |         let helpfulTimer = Timer.scheduledTimer(timeInterval: 15, target: self, selector: #selector(printHelpfulMessage), userInfo: nil, repeats: false)
    |                                                                                           `- error: '#selector' can only be used with the Objective-C runtime
142 |
143 |         let wrapperCompletion: (Error?) -> Void = { error in
/host/spi-builder-workspace/Sources/PushNotifications.swift:351:37: error: 'init(format:_:)' has been renamed to 'init(block:)': Predicate strings and key-value coding are not supported in swift-corelibs-foundation. Use a closure instead if possible.
349 |     private func validateInterestName(_ interest: String) -> Bool {
350 |         let interestNameRegex = "^[a-zA-Z0-9_\\-=@,.;]{1,164}$"
351 |         let interestNamePredicate = NSPredicate(format: "SELF MATCHES %@", interestNameRegex)
    |                                     `- error: 'init(format:_:)' has been renamed to 'init(block:)': Predicate strings and key-value coding are not supported in swift-corelibs-foundation. Use a closure instead if possible.
352 |         return interestNamePredicate.evaluate(with: interest)
353 |     }
Foundation.NSPredicate:3:24: note: 'init(format:_:)' has been explicitly marked unavailable here
1 | extension NSPredicate {
2 |     @available(*, unavailable, renamed: "init(block:)", message: "Predicate strings and key-value coding are not supported in swift-corelibs-foundation. Use a closure instead if possible.")
3 |     public convenience init(format predicateFormat: String, _ args: any CVarArg...)
  |                        `- note: 'init(format:_:)' has been explicitly marked unavailable here
4 | }
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:11:2: error: Objective-C interoperability is disabled
  9 |
 10 | /// A static equivalent of the `PushNotifications` type.
 11 | @objc public final class PushNotificationsStatic: NSObject {
    |  `- error: Objective-C interoperability is disabled
 12 |
 13 |     override private init() {
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:17:24: warning: static property 'instance' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
 15 |     }
 16 |
 17 |     private static var instance: PushNotifications?
    |                        |- warning: static property 'instance' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
    |                        |- note: convert 'instance' to a 'let' constant to make 'Sendable' shared state immutable
    |                        |- note: annotate 'instance' with '@MainActor' if property should only be accessed from the main actor
    |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 18 |     static var tokenProvider = [String: TokenProvider]()
 19 |
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:28:6: error: Objective-C interoperability is disabled
 26 |      */
 27 |     /// - Tag: start
 28 |     @objc public static func start(instanceId: String) {
    |      `- error: Objective-C interoperability is disabled
 29 |         if instance == nil {
 30 |             instance = PushNotifications(instanceId: instanceId)
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:50:6: error: Objective-C interoperability is disabled
 48 |      */
 49 |     /// - Tag: register
 50 |     @objc public static func registerForRemoteNotifications() {
    |      `- error: Objective-C interoperability is disabled
 51 |         self.registerForPushNotifications(options: [.alert, .sound, .badge])
 52 |     }
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:102:6: error: Objective-C interoperability is disabled
100 |      */
101 |     /// - Tag: setUserId
102 |     @objc public static func setUserId(_ userId: String, tokenProvider: TokenProvider, completion: @escaping (Error?) -> Void) {
    |      `- error: Objective-C interoperability is disabled
103 |         if let staticInstance = instance {
104 |             staticInstance.setUserId(userId, tokenProvider: tokenProvider, completion: completion)
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:116:6: error: Objective-C interoperability is disabled
114 |      */
115 |     /// - Tag: getUserId
116 |     @objc public static func getUserId() -> String? {
    |      `- error: Objective-C interoperability is disabled
117 |         if let staticInstance = instance {
118 |             return staticInstance.getUserId()
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:130:6: error: Objective-C interoperability is disabled
128 |      */
129 |     /// - Tag: stop
130 |     @objc public static func stop(completion: @escaping () -> Void) {
    |      `- error: Objective-C interoperability is disabled
131 |         let instances = DeviceStateStore().getInstanceIds()
132 |         let dispatchGroup = DispatchGroup()
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:152:6: error: Objective-C interoperability is disabled
150 |      */
151 |     /// - Tag: clearAllState
152 |     @objc public static func clearAllState(completion: @escaping () -> Void) {
    |      `- error: Objective-C interoperability is disabled
153 |         let instances = DeviceStateStore().getInstanceIds()
154 |         let dispatchGroup = DispatchGroup()
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:174:6: error: Objective-C interoperability is disabled
172 |      */
173 |     /// - Tag: registerDeviceToken
174 |     @objc public static func registerDeviceToken(_ deviceToken: Data) {
    |      `- error: Objective-C interoperability is disabled
175 |         let instances = DeviceStateStore().getInstanceIds()
176 |         var hasAnInstanceBeenStarted = false
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:205:6: error: Objective-C interoperability is disabled
203 |      */
204 |     /// - Tag: addDeviceInterest
205 |     @objc public static func addDeviceInterest(interest: String) throws {
    |      `- error: Objective-C interoperability is disabled
206 |         if let staticInstance = instance {
207 |             try staticInstance.addDeviceInterest(interest: interest)
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:224:6: error: Objective-C interoperability is disabled
222 |      */
223 |     /// - Tag: setDeviceInterests
224 |     @objc public static func setDeviceInterests(interests: [String]) throws {
    |      `- error: Objective-C interoperability is disabled
225 |         if let staticInstance = instance {
226 |             try staticInstance.setDeviceInterests(interests: interests)
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:242:6: error: Objective-C interoperability is disabled
240 |      */
241 |     /// - Tag: removeDeviceInterest
242 |     @objc public static func removeDeviceInterest(interest: String) throws {
    |      `- error: Objective-C interoperability is disabled
243 |         if let staticInstance = instance {
244 |             try staticInstance.removeDeviceInterest(interest: interest)
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:252:6: error: Objective-C interoperability is disabled
250 |     /// Unsubscribes the device from all the interests.
251 |     /// - Tag: clearDeviceInterests
252 |     @objc public static func clearDeviceInterests() throws {
    |      `- error: Objective-C interoperability is disabled
253 |         if let staticInstance = instance {
254 |             try staticInstance.clearDeviceInterests()
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:266:6: error: Objective-C interoperability is disabled
264 |      */
265 |     /// - Tag: getDeviceInterests
266 |     @objc public static func getDeviceInterests() -> [String]? {
    |      `- error: Objective-C interoperability is disabled
267 |         if let staticInstance = instance {
268 |             return staticInstance.getDeviceInterests()
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:281:6: error: Objective-C interoperability is disabled
279 |     /// - Tag: handleNotification
280 |     @discardableResult
281 |     @objc public static func handleNotification(userInfo: [AnyHashable: Any]) -> RemoteNotificationType {
    |      `- error: Objective-C interoperability is disabled
282 |         guard FeatureFlags.DeliveryTrackingEnabled else {
283 |             return .ShouldProcess
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:51:14: error: type 'PushNotificationsStatic' has no member 'registerForPushNotifications'
 49 |     /// - Tag: register
 50 |     @objc public static func registerForRemoteNotifications() {
 51 |         self.registerForPushNotifications(options: [.alert, .sound, .badge])
    |              `- error: type 'PushNotificationsStatic' has no member 'registerForPushNotifications'
 52 |     }
 53 |
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:51:54: error: reference to member 'alert' cannot be resolved without a contextual type
 49 |     /// - Tag: register
 50 |     @objc public static func registerForRemoteNotifications() {
 51 |         self.registerForPushNotifications(options: [.alert, .sound, .badge])
    |                                                      `- error: reference to member 'alert' cannot be resolved without a contextual type
 52 |     }
 53 |
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:51:62: error: reference to member 'sound' cannot be resolved without a contextual type
 49 |     /// - Tag: register
 50 |     @objc public static func registerForRemoteNotifications() {
 51 |         self.registerForPushNotifications(options: [.alert, .sound, .badge])
    |                                                              `- error: reference to member 'sound' cannot be resolved without a contextual type
 52 |     }
 53 |
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:51:70: error: reference to member 'badge' cannot be resolved without a contextual type
 49 |     /// - Tag: register
 50 |     @objc public static func registerForRemoteNotifications() {
 51 |         self.registerForPushNotifications(options: [.alert, .sound, .badge])
    |                                                                      `- error: reference to member 'badge' cannot be resolved without a contextual type
 52 |     }
 53 |
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:297:84: error: cannot find 'eventType' in scope
295 |         #endif
296 |
297 |         let serverSyncProcessHandler = ServerSyncProcessHandler.obtain(instanceId: eventType.getInstanceId())
    |                                                                                    `- error: cannot find 'eventType' in scope
298 |         serverSyncProcessHandler?.sendMessage(serverSyncJob: .reportEventJob(eventType: eventType))
299 |
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:298:89: error: cannot find 'eventType' in scope
296 |
297 |         let serverSyncProcessHandler = ServerSyncProcessHandler.obtain(instanceId: eventType.getInstanceId())
298 |         serverSyncProcessHandler?.sendMessage(serverSyncJob: .reportEventJob(eventType: eventType))
    |                                                                                         `- error: cannot find 'eventType' in scope
299 |
300 |         return EventTypeHandler.getRemoteNotificationType(userInfo)
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:298:63: error: cannot infer contextual base in reference to member 'reportEventJob'
296 |
297 |         let serverSyncProcessHandler = ServerSyncProcessHandler.obtain(instanceId: eventType.getInstanceId())
298 |         serverSyncProcessHandler?.sendMessage(serverSyncJob: .reportEventJob(eventType: eventType))
    |                                                               `- error: cannot infer contextual base in reference to member 'reportEventJob'
299 |
300 |         return EventTypeHandler.getRemoteNotificationType(userInfo)
/host/spi-builder-workspace/Sources/Services/BeamsTokenProvider.swift:4:2: error: Objective-C interoperability is disabled
 2 |
 3 | /// Used to generate tokens for users to authenticate against.
 4 | @objc public final class BeamsTokenProvider: NSObject, TokenProvider {
   |  `- error: Objective-C interoperability is disabled
 5 |
 6 |     /// The authentication endpoint URL `String`.
/host/spi-builder-workspace/Sources/Services/BeamsTokenProvider.swift:16:6: error: Objective-C interoperability is disabled
14 |     ///   - authURL: The authentication endpoint URL `String`.
15 |     ///   - getAuthData: A closure that returns an `AuthData` object.
16 |     @objc public init(authURL: String, getAuthData: @escaping () -> (AuthData)) {
   |      `- error: Objective-C interoperability is disabled
17 |         self.authURL = authURL
18 |         self.getAuthData = getAuthData
/host/spi-builder-workspace/Sources/Services/BeamsTokenProvider.swift:30:26: error: 'URLSession' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
28 |         let queryParams = authData.queryParams
29 |
30 |         let urlSession = URLSession(configuration: .ephemeral)
   |                          `- error: 'URLSession' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
31 |
32 |         guard var components = URLComponents(string: authURL) else {
/host/spi-builder-workspace/Sources/Services/BeamsTokenProvider.swift:30:53: error: cannot infer contextual base in reference to member 'ephemeral'
28 |         let queryParams = authData.queryParams
29 |
30 |         let urlSession = URLSession(configuration: .ephemeral)
   |                                                     `- error: cannot infer contextual base in reference to member 'ephemeral'
31 |
32 |         guard var components = URLComponents(string: authURL) else {
/host/spi-builder-workspace/Sources/Services/BeamsTokenProvider.swift:43:26: error: cannot find 'URLRequest' in scope
41 |         }
42 |
43 |         var urlRequest = URLRequest(url: url)
   |                          `- error: cannot find 'URLRequest' in scope
44 |         urlRequest.httpMethod = "GET"
45 |         for header in headers {
/host/spi-builder-workspace/Sources/Services/BeamsTokenProvider.swift:56:46: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
54 |                 return completion("", TokenProviderError.error("[PushNotifications] - BeamsTokenProvider: Error while casting response object to `HTTPURLResponse`"))
55 |             }
56 |             let statusCode = httpURLResponse.statusCode
   |                                              `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
57 |             guard statusCode >= 200 && statusCode < 300 else {
58 |                 return completion("", TokenProviderError.error("[PushNotifications] - BeamsTokenProvider: Received HTTP Status Code: \(statusCode)"))
/host/spi-builder-workspace/Sources/Services/DeviceStateStore.swift:206:24: error: value of type 'UserDefaults' has no member 'value'
204 |
205 |     func getServerConfirmedInterestsHash() -> String {
206 |         return service.value(forKey: PersistenceConstants.PersistenceService.hashKey) as? String ?? ""
    |                        `- error: value of type 'UserDefaults' has no member 'value'
207 |     }
208 |
[27/46] Compiling PushNotifications PushNotifications.swift
/host/spi-builder-workspace/Sources/Protocols/TokenProvider.swift:24:2: error: Objective-C interoperability is disabled
22 |  Conform to the TokenProvider protocol in order to generate the token for the user that you want to authenticate.
23 |  */
24 | @objc public protocol TokenProvider {
   |  `- error: Objective-C interoperability is disabled
25 |     /**
26 |      Method `fetchToken` will return the token on success or error on failure.
/host/spi-builder-workspace/Sources/PushNotifications.swift:11:2: error: Objective-C interoperability is disabled
  9 |
 10 | /// The top-level entrypoint to the Beams Swift SDK.
 11 | @objc public final class PushNotifications: NSObject {
    |  `- error: Objective-C interoperability is disabled
 12 |
 13 |     let instanceId: String
/host/spi-builder-workspace/Sources/PushNotifications.swift:22:6: error: Objective-C interoperability is disabled
 20 |     /// Creates a `PushNotifications` object with a given `instanceId`.
 21 |     /// - Parameter instanceId: The instance identifier (from your app dashboard).
 22 |     @objc public init(instanceId: String) {
    |      `- error: Objective-C interoperability is disabled
 23 |         self.instanceId = instanceId
 24 |         self.deviceStateStore = InstanceDeviceStateStore(instanceId)
/host/spi-builder-workspace/Sources/PushNotifications.swift:35:6: error: Objective-C interoperability is disabled
 33 |     /// Returns a shared singleton PushNotifications object
 34 |     /// that can be accessed from anywhere in your project.
 35 |     @objc public static let shared = PushNotificationsStatic.self
    |      `- error: Objective-C interoperability is disabled
 36 |
 37 |     private lazy var serverSyncHandler = ServerSyncProcessHandler.obtain(
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:18:16: warning: static property 'tokenProvider' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
 16 |
 17 |     private static var instance: PushNotifications?
 18 |     static var tokenProvider = [String: TokenProvider]()
    |                |- warning: static property 'tokenProvider' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: convert 'tokenProvider' to a 'let' constant to make 'Sendable' shared state immutable
    |                |- note: annotate 'tokenProvider' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 19 |
 20 |     /**
/host/spi-builder-workspace/Sources/PushNotifications.swift:51:6: error: Objective-C interoperability is disabled
 49 |      */
 50 |     /// - Tag: start
 51 |     @objc public func start() {
    |      `- error: Objective-C interoperability is disabled
 52 |         if UUID(uuidString: instanceId) == nil {
 53 |             print("[PushNotifications]: '\(instanceId)' is not a valid instance id.")
/host/spi-builder-workspace/Sources/PushNotifications.swift:78:6: error: Objective-C interoperability is disabled
 76 |      */
 77 |     /// - Tag: register
 78 |     @objc public func registerForRemoteNotifications() {
    |      `- error: Objective-C interoperability is disabled
 79 |         PushNotificationsStatic.registerForRemoteNotifications()
 80 |     }
/host/spi-builder-workspace/Sources/PushNotifications.swift:110:6: error: Objective-C interoperability is disabled
108 |     */
109 |     /// - Tag: setUserId
110 |     @objc public func setUserId(_ userId: String, tokenProvider: TokenProvider, completion: @escaping (Error?) -> Void) {
    |      `- error: Objective-C interoperability is disabled
111 |         if startHasBeenCalledThisSession == false {
112 |             completion(PushNotificationsError.error("[PushNotifications] - `start` method must be called before setting `userId`"))
/host/spi-builder-workspace/Sources/PushNotifications.swift:162:6: error: Objective-C interoperability is disabled
160 |      */
161 |     /// - Tag: getUserId
162 |     @objc public func getUserId() -> String? {
    |      `- error: Objective-C interoperability is disabled
163 |         return InstanceDeviceStateStore.synchronize {
164 |             return self.deviceStateStore.getUserId()
/host/spi-builder-workspace/Sources/PushNotifications.swift:168:6: error: Objective-C interoperability is disabled
166 |     }
167 |
168 |     @objc private func printHelpfulMessage() {
    |      `- error: Objective-C interoperability is disabled
169 |         print("[PushNotifications] - It looks like setUserId hasn't completed yet -- have you called `registerDeviceToken`?")
170 |     }
/host/spi-builder-workspace/Sources/PushNotifications.swift:179:6: error: Objective-C interoperability is disabled
177 |      */
178 |     /// - Tag: stop
179 |     @objc public func stop(completion: @escaping () -> Void) {
    |      `- error: Objective-C interoperability is disabled
180 |         let hadAnyInterests: Bool = InstanceDeviceStateStore.synchronize {
181 |             let hadAnyInterests = self.deviceStateStore.getInterests()?.isEmpty ?? false
/host/spi-builder-workspace/Sources/PushNotifications.swift:208:6: error: Objective-C interoperability is disabled
206 |      */
207 |     /// - Tag: clearAllState
208 |     @objc public func clearAllState(completion: @escaping () -> Void) {
    |      `- error: Objective-C interoperability is disabled
209 |         let storedAPNsToken = self.deviceStateStore.getAPNsToken()
210 |         let hasStartAlreadyBeenCalled = self.deviceStateStore.getStartJobHasBeenEnqueued()
/host/spi-builder-workspace/Sources/PushNotifications.swift:230:6: error: Objective-C interoperability is disabled
228 |      */
229 |     /// - Tag: registerDeviceToken
230 |     @objc public func registerDeviceToken(_ deviceToken: Data) {
    |      `- error: Objective-C interoperability is disabled
231 |         PushNotificationsStatic.registerDeviceToken(deviceToken)
232 |     }
/host/spi-builder-workspace/Sources/PushNotifications.swift:244:6: error: Objective-C interoperability is disabled
242 |      */
243 |     /// - Tag: addDeviceInterest
244 |     @objc public func addDeviceInterest(interest: String) throws {
    |      `- error: Objective-C interoperability is disabled
245 |         guard self.validateInterestName(interest) else {
246 |             throw InvalidInterestError.invalidName(interest)
/host/spi-builder-workspace/Sources/PushNotifications.swift:270:6: error: Objective-C interoperability is disabled
268 |      */
269 |     /// - Tag: setDeviceInterests
270 |     @objc public func setDeviceInterests(interests: [String]) throws {
    |      `- error: Objective-C interoperability is disabled
271 |         if let invalidInterests = self.validateInterestNames(interests), invalidInterests.count > 0 {
272 |             throw MultipleInvalidInterestsError.invalidNames(invalidInterests)
/host/spi-builder-workspace/Sources/PushNotifications.swift:295:7: error: Objective-C interoperability is disabled
293 |      */
294 |     /// - Tag: removeDeviceInterest
295 |      @objc public func removeDeviceInterest(interest: String) throws {
    |       `- error: Objective-C interoperability is disabled
296 |         guard self.validateInterestName(interest) else {
297 |             throw InvalidInterestError.invalidName(interest)
/host/spi-builder-workspace/Sources/PushNotifications.swift:312:6: error: Objective-C interoperability is disabled
310 |     /// Unsubscribes the device from all the interests.
311 |     /// - Tag: clearDeviceInterests
312 |     @objc public func clearDeviceInterests() throws {
    |      `- error: Objective-C interoperability is disabled
313 |         try self.setDeviceInterests(interests: [])
314 |     }
/host/spi-builder-workspace/Sources/PushNotifications.swift:322:6: error: Objective-C interoperability is disabled
320 |      */
321 |     /// - Tag: getDeviceInterests
322 |     @objc public func getDeviceInterests() -> [String]? {
    |      `- error: Objective-C interoperability is disabled
323 |         return InstanceDeviceStateStore.synchronize {
324 |             return self.deviceStateStore.getInterests()
/host/spi-builder-workspace/Sources/PushNotifications.swift:345:6: error: Objective-C interoperability is disabled
343 |     /// - Tag: handleNotification
344 |     @discardableResult
345 |     @objc public func handleNotification(userInfo: [AnyHashable: Any]) -> RemoteNotificationType {
    |      `- error: Objective-C interoperability is disabled
346 |         return PushNotificationsStatic.handleNotification(userInfo: userInfo)
347 |     }
/host/spi-builder-workspace/Sources/PushNotifications.swift:364:2: error: Objective-C interoperability is disabled
362 |  Method `interestsSetOnDeviceDidChange(interests:)` will be called when interests set changes.
363 |  */
364 | @objc public protocol InterestsChangedDelegate: AnyObject {
    |  `- error: Objective-C interoperability is disabled
365 |     /**
366 |      Tells the delegate that the device's interests subscriptions list has changed.
/host/spi-builder-workspace/Sources/Models/Metadata.swift:8:16: warning: static property 'current' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
 6 |     let macosVersion: String?
 7 |
 8 |     static var current: Metadata = {
   |                |- warning: static property 'current' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'current' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'current' with '@MainActor' if property should only be accessed from the main actor
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 9 |         let sdkVersion = SDK.version
10 |         let systemVersion = SystemVersion.version
/host/spi-builder-workspace/Sources/PushNotifications.swift:141:91: error: '#selector' can only be used with the Objective-C runtime
139 |         }
140 |
141 |         let helpfulTimer = Timer.scheduledTimer(timeInterval: 15, target: self, selector: #selector(printHelpfulMessage), userInfo: nil, repeats: false)
    |                                                                                           `- error: '#selector' can only be used with the Objective-C runtime
142 |
143 |         let wrapperCompletion: (Error?) -> Void = { error in
/host/spi-builder-workspace/Sources/PushNotifications.swift:351:37: error: 'init(format:_:)' has been renamed to 'init(block:)': Predicate strings and key-value coding are not supported in swift-corelibs-foundation. Use a closure instead if possible.
349 |     private func validateInterestName(_ interest: String) -> Bool {
350 |         let interestNameRegex = "^[a-zA-Z0-9_\\-=@,.;]{1,164}$"
351 |         let interestNamePredicate = NSPredicate(format: "SELF MATCHES %@", interestNameRegex)
    |                                     `- error: 'init(format:_:)' has been renamed to 'init(block:)': Predicate strings and key-value coding are not supported in swift-corelibs-foundation. Use a closure instead if possible.
352 |         return interestNamePredicate.evaluate(with: interest)
353 |     }
Foundation.NSPredicate:3:24: note: 'init(format:_:)' has been explicitly marked unavailable here
1 | extension NSPredicate {
2 |     @available(*, unavailable, renamed: "init(block:)", message: "Predicate strings and key-value coding are not supported in swift-corelibs-foundation. Use a closure instead if possible.")
3 |     public convenience init(format predicateFormat: String, _ args: any CVarArg...)
  |                        `- note: 'init(format:_:)' has been explicitly marked unavailable here
4 | }
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:11:2: error: Objective-C interoperability is disabled
  9 |
 10 | /// A static equivalent of the `PushNotifications` type.
 11 | @objc public final class PushNotificationsStatic: NSObject {
    |  `- error: Objective-C interoperability is disabled
 12 |
 13 |     override private init() {
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:17:24: warning: static property 'instance' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
 15 |     }
 16 |
 17 |     private static var instance: PushNotifications?
    |                        |- warning: static property 'instance' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
    |                        |- note: convert 'instance' to a 'let' constant to make 'Sendable' shared state immutable
    |                        |- note: annotate 'instance' with '@MainActor' if property should only be accessed from the main actor
    |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 18 |     static var tokenProvider = [String: TokenProvider]()
 19 |
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:28:6: error: Objective-C interoperability is disabled
 26 |      */
 27 |     /// - Tag: start
 28 |     @objc public static func start(instanceId: String) {
    |      `- error: Objective-C interoperability is disabled
 29 |         if instance == nil {
 30 |             instance = PushNotifications(instanceId: instanceId)
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:50:6: error: Objective-C interoperability is disabled
 48 |      */
 49 |     /// - Tag: register
 50 |     @objc public static func registerForRemoteNotifications() {
    |      `- error: Objective-C interoperability is disabled
 51 |         self.registerForPushNotifications(options: [.alert, .sound, .badge])
 52 |     }
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:102:6: error: Objective-C interoperability is disabled
100 |      */
101 |     /// - Tag: setUserId
102 |     @objc public static func setUserId(_ userId: String, tokenProvider: TokenProvider, completion: @escaping (Error?) -> Void) {
    |      `- error: Objective-C interoperability is disabled
103 |         if let staticInstance = instance {
104 |             staticInstance.setUserId(userId, tokenProvider: tokenProvider, completion: completion)
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:116:6: error: Objective-C interoperability is disabled
114 |      */
115 |     /// - Tag: getUserId
116 |     @objc public static func getUserId() -> String? {
    |      `- error: Objective-C interoperability is disabled
117 |         if let staticInstance = instance {
118 |             return staticInstance.getUserId()
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:130:6: error: Objective-C interoperability is disabled
128 |      */
129 |     /// - Tag: stop
130 |     @objc public static func stop(completion: @escaping () -> Void) {
    |      `- error: Objective-C interoperability is disabled
131 |         let instances = DeviceStateStore().getInstanceIds()
132 |         let dispatchGroup = DispatchGroup()
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:152:6: error: Objective-C interoperability is disabled
150 |      */
151 |     /// - Tag: clearAllState
152 |     @objc public static func clearAllState(completion: @escaping () -> Void) {
    |      `- error: Objective-C interoperability is disabled
153 |         let instances = DeviceStateStore().getInstanceIds()
154 |         let dispatchGroup = DispatchGroup()
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:174:6: error: Objective-C interoperability is disabled
172 |      */
173 |     /// - Tag: registerDeviceToken
174 |     @objc public static func registerDeviceToken(_ deviceToken: Data) {
    |      `- error: Objective-C interoperability is disabled
175 |         let instances = DeviceStateStore().getInstanceIds()
176 |         var hasAnInstanceBeenStarted = false
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:205:6: error: Objective-C interoperability is disabled
203 |      */
204 |     /// - Tag: addDeviceInterest
205 |     @objc public static func addDeviceInterest(interest: String) throws {
    |      `- error: Objective-C interoperability is disabled
206 |         if let staticInstance = instance {
207 |             try staticInstance.addDeviceInterest(interest: interest)
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:224:6: error: Objective-C interoperability is disabled
222 |      */
223 |     /// - Tag: setDeviceInterests
224 |     @objc public static func setDeviceInterests(interests: [String]) throws {
    |      `- error: Objective-C interoperability is disabled
225 |         if let staticInstance = instance {
226 |             try staticInstance.setDeviceInterests(interests: interests)
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:242:6: error: Objective-C interoperability is disabled
240 |      */
241 |     /// - Tag: removeDeviceInterest
242 |     @objc public static func removeDeviceInterest(interest: String) throws {
    |      `- error: Objective-C interoperability is disabled
243 |         if let staticInstance = instance {
244 |             try staticInstance.removeDeviceInterest(interest: interest)
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:252:6: error: Objective-C interoperability is disabled
250 |     /// Unsubscribes the device from all the interests.
251 |     /// - Tag: clearDeviceInterests
252 |     @objc public static func clearDeviceInterests() throws {
    |      `- error: Objective-C interoperability is disabled
253 |         if let staticInstance = instance {
254 |             try staticInstance.clearDeviceInterests()
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:266:6: error: Objective-C interoperability is disabled
264 |      */
265 |     /// - Tag: getDeviceInterests
266 |     @objc public static func getDeviceInterests() -> [String]? {
    |      `- error: Objective-C interoperability is disabled
267 |         if let staticInstance = instance {
268 |             return staticInstance.getDeviceInterests()
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:281:6: error: Objective-C interoperability is disabled
279 |     /// - Tag: handleNotification
280 |     @discardableResult
281 |     @objc public static func handleNotification(userInfo: [AnyHashable: Any]) -> RemoteNotificationType {
    |      `- error: Objective-C interoperability is disabled
282 |         guard FeatureFlags.DeliveryTrackingEnabled else {
283 |             return .ShouldProcess
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:51:14: error: type 'PushNotificationsStatic' has no member 'registerForPushNotifications'
 49 |     /// - Tag: register
 50 |     @objc public static func registerForRemoteNotifications() {
 51 |         self.registerForPushNotifications(options: [.alert, .sound, .badge])
    |              `- error: type 'PushNotificationsStatic' has no member 'registerForPushNotifications'
 52 |     }
 53 |
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:51:54: error: reference to member 'alert' cannot be resolved without a contextual type
 49 |     /// - Tag: register
 50 |     @objc public static func registerForRemoteNotifications() {
 51 |         self.registerForPushNotifications(options: [.alert, .sound, .badge])
    |                                                      `- error: reference to member 'alert' cannot be resolved without a contextual type
 52 |     }
 53 |
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:51:62: error: reference to member 'sound' cannot be resolved without a contextual type
 49 |     /// - Tag: register
 50 |     @objc public static func registerForRemoteNotifications() {
 51 |         self.registerForPushNotifications(options: [.alert, .sound, .badge])
    |                                                              `- error: reference to member 'sound' cannot be resolved without a contextual type
 52 |     }
 53 |
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:51:70: error: reference to member 'badge' cannot be resolved without a contextual type
 49 |     /// - Tag: register
 50 |     @objc public static func registerForRemoteNotifications() {
 51 |         self.registerForPushNotifications(options: [.alert, .sound, .badge])
    |                                                                      `- error: reference to member 'badge' cannot be resolved without a contextual type
 52 |     }
 53 |
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:297:84: error: cannot find 'eventType' in scope
295 |         #endif
296 |
297 |         let serverSyncProcessHandler = ServerSyncProcessHandler.obtain(instanceId: eventType.getInstanceId())
    |                                                                                    `- error: cannot find 'eventType' in scope
298 |         serverSyncProcessHandler?.sendMessage(serverSyncJob: .reportEventJob(eventType: eventType))
299 |
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:298:89: error: cannot find 'eventType' in scope
296 |
297 |         let serverSyncProcessHandler = ServerSyncProcessHandler.obtain(instanceId: eventType.getInstanceId())
298 |         serverSyncProcessHandler?.sendMessage(serverSyncJob: .reportEventJob(eventType: eventType))
    |                                                                                         `- error: cannot find 'eventType' in scope
299 |
300 |         return EventTypeHandler.getRemoteNotificationType(userInfo)
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:298:63: error: cannot infer contextual base in reference to member 'reportEventJob'
296 |
297 |         let serverSyncProcessHandler = ServerSyncProcessHandler.obtain(instanceId: eventType.getInstanceId())
298 |         serverSyncProcessHandler?.sendMessage(serverSyncJob: .reportEventJob(eventType: eventType))
    |                                                               `- error: cannot infer contextual base in reference to member 'reportEventJob'
299 |
300 |         return EventTypeHandler.getRemoteNotificationType(userInfo)
/host/spi-builder-workspace/Sources/Services/BeamsTokenProvider.swift:4:2: error: Objective-C interoperability is disabled
 2 |
 3 | /// Used to generate tokens for users to authenticate against.
 4 | @objc public final class BeamsTokenProvider: NSObject, TokenProvider {
   |  `- error: Objective-C interoperability is disabled
 5 |
 6 |     /// The authentication endpoint URL `String`.
/host/spi-builder-workspace/Sources/Services/BeamsTokenProvider.swift:16:6: error: Objective-C interoperability is disabled
14 |     ///   - authURL: The authentication endpoint URL `String`.
15 |     ///   - getAuthData: A closure that returns an `AuthData` object.
16 |     @objc public init(authURL: String, getAuthData: @escaping () -> (AuthData)) {
   |      `- error: Objective-C interoperability is disabled
17 |         self.authURL = authURL
18 |         self.getAuthData = getAuthData
/host/spi-builder-workspace/Sources/Services/BeamsTokenProvider.swift:30:26: error: 'URLSession' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
28 |         let queryParams = authData.queryParams
29 |
30 |         let urlSession = URLSession(configuration: .ephemeral)
   |                          `- error: 'URLSession' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
31 |
32 |         guard var components = URLComponents(string: authURL) else {
/host/spi-builder-workspace/Sources/Services/BeamsTokenProvider.swift:30:53: error: cannot infer contextual base in reference to member 'ephemeral'
28 |         let queryParams = authData.queryParams
29 |
30 |         let urlSession = URLSession(configuration: .ephemeral)
   |                                                     `- error: cannot infer contextual base in reference to member 'ephemeral'
31 |
32 |         guard var components = URLComponents(string: authURL) else {
/host/spi-builder-workspace/Sources/Services/BeamsTokenProvider.swift:43:26: error: cannot find 'URLRequest' in scope
41 |         }
42 |
43 |         var urlRequest = URLRequest(url: url)
   |                          `- error: cannot find 'URLRequest' in scope
44 |         urlRequest.httpMethod = "GET"
45 |         for header in headers {
/host/spi-builder-workspace/Sources/Services/BeamsTokenProvider.swift:56:46: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
54 |                 return completion("", TokenProviderError.error("[PushNotifications] - BeamsTokenProvider: Error while casting response object to `HTTPURLResponse`"))
55 |             }
56 |             let statusCode = httpURLResponse.statusCode
   |                                              `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
57 |             guard statusCode >= 200 && statusCode < 300 else {
58 |                 return completion("", TokenProviderError.error("[PushNotifications] - BeamsTokenProvider: Received HTTP Status Code: \(statusCode)"))
/host/spi-builder-workspace/Sources/Services/DeviceStateStore.swift:206:24: error: value of type 'UserDefaults' has no member 'value'
204 |
205 |     func getServerConfirmedInterestsHash() -> String {
206 |         return service.value(forKey: PersistenceConstants.PersistenceService.hashKey) as? String ?? ""
    |                        `- error: value of type 'UserDefaults' has no member 'value'
207 |     }
208 |
[28/46] Compiling PushNotifications PushNotificationsStatic.swift
/host/spi-builder-workspace/Sources/Protocols/TokenProvider.swift:24:2: error: Objective-C interoperability is disabled
22 |  Conform to the TokenProvider protocol in order to generate the token for the user that you want to authenticate.
23 |  */
24 | @objc public protocol TokenProvider {
   |  `- error: Objective-C interoperability is disabled
25 |     /**
26 |      Method `fetchToken` will return the token on success or error on failure.
/host/spi-builder-workspace/Sources/PushNotifications.swift:11:2: error: Objective-C interoperability is disabled
  9 |
 10 | /// The top-level entrypoint to the Beams Swift SDK.
 11 | @objc public final class PushNotifications: NSObject {
    |  `- error: Objective-C interoperability is disabled
 12 |
 13 |     let instanceId: String
/host/spi-builder-workspace/Sources/PushNotifications.swift:22:6: error: Objective-C interoperability is disabled
 20 |     /// Creates a `PushNotifications` object with a given `instanceId`.
 21 |     /// - Parameter instanceId: The instance identifier (from your app dashboard).
 22 |     @objc public init(instanceId: String) {
    |      `- error: Objective-C interoperability is disabled
 23 |         self.instanceId = instanceId
 24 |         self.deviceStateStore = InstanceDeviceStateStore(instanceId)
/host/spi-builder-workspace/Sources/PushNotifications.swift:35:6: error: Objective-C interoperability is disabled
 33 |     /// Returns a shared singleton PushNotifications object
 34 |     /// that can be accessed from anywhere in your project.
 35 |     @objc public static let shared = PushNotificationsStatic.self
    |      `- error: Objective-C interoperability is disabled
 36 |
 37 |     private lazy var serverSyncHandler = ServerSyncProcessHandler.obtain(
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:18:16: warning: static property 'tokenProvider' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
 16 |
 17 |     private static var instance: PushNotifications?
 18 |     static var tokenProvider = [String: TokenProvider]()
    |                |- warning: static property 'tokenProvider' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: convert 'tokenProvider' to a 'let' constant to make 'Sendable' shared state immutable
    |                |- note: annotate 'tokenProvider' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 19 |
 20 |     /**
/host/spi-builder-workspace/Sources/PushNotifications.swift:51:6: error: Objective-C interoperability is disabled
 49 |      */
 50 |     /// - Tag: start
 51 |     @objc public func start() {
    |      `- error: Objective-C interoperability is disabled
 52 |         if UUID(uuidString: instanceId) == nil {
 53 |             print("[PushNotifications]: '\(instanceId)' is not a valid instance id.")
/host/spi-builder-workspace/Sources/PushNotifications.swift:78:6: error: Objective-C interoperability is disabled
 76 |      */
 77 |     /// - Tag: register
 78 |     @objc public func registerForRemoteNotifications() {
    |      `- error: Objective-C interoperability is disabled
 79 |         PushNotificationsStatic.registerForRemoteNotifications()
 80 |     }
/host/spi-builder-workspace/Sources/PushNotifications.swift:110:6: error: Objective-C interoperability is disabled
108 |     */
109 |     /// - Tag: setUserId
110 |     @objc public func setUserId(_ userId: String, tokenProvider: TokenProvider, completion: @escaping (Error?) -> Void) {
    |      `- error: Objective-C interoperability is disabled
111 |         if startHasBeenCalledThisSession == false {
112 |             completion(PushNotificationsError.error("[PushNotifications] - `start` method must be called before setting `userId`"))
/host/spi-builder-workspace/Sources/PushNotifications.swift:162:6: error: Objective-C interoperability is disabled
160 |      */
161 |     /// - Tag: getUserId
162 |     @objc public func getUserId() -> String? {
    |      `- error: Objective-C interoperability is disabled
163 |         return InstanceDeviceStateStore.synchronize {
164 |             return self.deviceStateStore.getUserId()
/host/spi-builder-workspace/Sources/PushNotifications.swift:168:6: error: Objective-C interoperability is disabled
166 |     }
167 |
168 |     @objc private func printHelpfulMessage() {
    |      `- error: Objective-C interoperability is disabled
169 |         print("[PushNotifications] - It looks like setUserId hasn't completed yet -- have you called `registerDeviceToken`?")
170 |     }
/host/spi-builder-workspace/Sources/PushNotifications.swift:179:6: error: Objective-C interoperability is disabled
177 |      */
178 |     /// - Tag: stop
179 |     @objc public func stop(completion: @escaping () -> Void) {
    |      `- error: Objective-C interoperability is disabled
180 |         let hadAnyInterests: Bool = InstanceDeviceStateStore.synchronize {
181 |             let hadAnyInterests = self.deviceStateStore.getInterests()?.isEmpty ?? false
/host/spi-builder-workspace/Sources/PushNotifications.swift:208:6: error: Objective-C interoperability is disabled
206 |      */
207 |     /// - Tag: clearAllState
208 |     @objc public func clearAllState(completion: @escaping () -> Void) {
    |      `- error: Objective-C interoperability is disabled
209 |         let storedAPNsToken = self.deviceStateStore.getAPNsToken()
210 |         let hasStartAlreadyBeenCalled = self.deviceStateStore.getStartJobHasBeenEnqueued()
/host/spi-builder-workspace/Sources/PushNotifications.swift:230:6: error: Objective-C interoperability is disabled
228 |      */
229 |     /// - Tag: registerDeviceToken
230 |     @objc public func registerDeviceToken(_ deviceToken: Data) {
    |      `- error: Objective-C interoperability is disabled
231 |         PushNotificationsStatic.registerDeviceToken(deviceToken)
232 |     }
/host/spi-builder-workspace/Sources/PushNotifications.swift:244:6: error: Objective-C interoperability is disabled
242 |      */
243 |     /// - Tag: addDeviceInterest
244 |     @objc public func addDeviceInterest(interest: String) throws {
    |      `- error: Objective-C interoperability is disabled
245 |         guard self.validateInterestName(interest) else {
246 |             throw InvalidInterestError.invalidName(interest)
/host/spi-builder-workspace/Sources/PushNotifications.swift:270:6: error: Objective-C interoperability is disabled
268 |      */
269 |     /// - Tag: setDeviceInterests
270 |     @objc public func setDeviceInterests(interests: [String]) throws {
    |      `- error: Objective-C interoperability is disabled
271 |         if let invalidInterests = self.validateInterestNames(interests), invalidInterests.count > 0 {
272 |             throw MultipleInvalidInterestsError.invalidNames(invalidInterests)
/host/spi-builder-workspace/Sources/PushNotifications.swift:295:7: error: Objective-C interoperability is disabled
293 |      */
294 |     /// - Tag: removeDeviceInterest
295 |      @objc public func removeDeviceInterest(interest: String) throws {
    |       `- error: Objective-C interoperability is disabled
296 |         guard self.validateInterestName(interest) else {
297 |             throw InvalidInterestError.invalidName(interest)
/host/spi-builder-workspace/Sources/PushNotifications.swift:312:6: error: Objective-C interoperability is disabled
310 |     /// Unsubscribes the device from all the interests.
311 |     /// - Tag: clearDeviceInterests
312 |     @objc public func clearDeviceInterests() throws {
    |      `- error: Objective-C interoperability is disabled
313 |         try self.setDeviceInterests(interests: [])
314 |     }
/host/spi-builder-workspace/Sources/PushNotifications.swift:322:6: error: Objective-C interoperability is disabled
320 |      */
321 |     /// - Tag: getDeviceInterests
322 |     @objc public func getDeviceInterests() -> [String]? {
    |      `- error: Objective-C interoperability is disabled
323 |         return InstanceDeviceStateStore.synchronize {
324 |             return self.deviceStateStore.getInterests()
/host/spi-builder-workspace/Sources/PushNotifications.swift:345:6: error: Objective-C interoperability is disabled
343 |     /// - Tag: handleNotification
344 |     @discardableResult
345 |     @objc public func handleNotification(userInfo: [AnyHashable: Any]) -> RemoteNotificationType {
    |      `- error: Objective-C interoperability is disabled
346 |         return PushNotificationsStatic.handleNotification(userInfo: userInfo)
347 |     }
/host/spi-builder-workspace/Sources/PushNotifications.swift:364:2: error: Objective-C interoperability is disabled
362 |  Method `interestsSetOnDeviceDidChange(interests:)` will be called when interests set changes.
363 |  */
364 | @objc public protocol InterestsChangedDelegate: AnyObject {
    |  `- error: Objective-C interoperability is disabled
365 |     /**
366 |      Tells the delegate that the device's interests subscriptions list has changed.
/host/spi-builder-workspace/Sources/Models/Metadata.swift:8:16: warning: static property 'current' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
 6 |     let macosVersion: String?
 7 |
 8 |     static var current: Metadata = {
   |                |- warning: static property 'current' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'current' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'current' with '@MainActor' if property should only be accessed from the main actor
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 9 |         let sdkVersion = SDK.version
10 |         let systemVersion = SystemVersion.version
/host/spi-builder-workspace/Sources/PushNotifications.swift:141:91: error: '#selector' can only be used with the Objective-C runtime
139 |         }
140 |
141 |         let helpfulTimer = Timer.scheduledTimer(timeInterval: 15, target: self, selector: #selector(printHelpfulMessage), userInfo: nil, repeats: false)
    |                                                                                           `- error: '#selector' can only be used with the Objective-C runtime
142 |
143 |         let wrapperCompletion: (Error?) -> Void = { error in
/host/spi-builder-workspace/Sources/PushNotifications.swift:351:37: error: 'init(format:_:)' has been renamed to 'init(block:)': Predicate strings and key-value coding are not supported in swift-corelibs-foundation. Use a closure instead if possible.
349 |     private func validateInterestName(_ interest: String) -> Bool {
350 |         let interestNameRegex = "^[a-zA-Z0-9_\\-=@,.;]{1,164}$"
351 |         let interestNamePredicate = NSPredicate(format: "SELF MATCHES %@", interestNameRegex)
    |                                     `- error: 'init(format:_:)' has been renamed to 'init(block:)': Predicate strings and key-value coding are not supported in swift-corelibs-foundation. Use a closure instead if possible.
352 |         return interestNamePredicate.evaluate(with: interest)
353 |     }
Foundation.NSPredicate:3:24: note: 'init(format:_:)' has been explicitly marked unavailable here
1 | extension NSPredicate {
2 |     @available(*, unavailable, renamed: "init(block:)", message: "Predicate strings and key-value coding are not supported in swift-corelibs-foundation. Use a closure instead if possible.")
3 |     public convenience init(format predicateFormat: String, _ args: any CVarArg...)
  |                        `- note: 'init(format:_:)' has been explicitly marked unavailable here
4 | }
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:11:2: error: Objective-C interoperability is disabled
  9 |
 10 | /// A static equivalent of the `PushNotifications` type.
 11 | @objc public final class PushNotificationsStatic: NSObject {
    |  `- error: Objective-C interoperability is disabled
 12 |
 13 |     override private init() {
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:17:24: warning: static property 'instance' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
 15 |     }
 16 |
 17 |     private static var instance: PushNotifications?
    |                        |- warning: static property 'instance' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
    |                        |- note: convert 'instance' to a 'let' constant to make 'Sendable' shared state immutable
    |                        |- note: annotate 'instance' with '@MainActor' if property should only be accessed from the main actor
    |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 18 |     static var tokenProvider = [String: TokenProvider]()
 19 |
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:28:6: error: Objective-C interoperability is disabled
 26 |      */
 27 |     /// - Tag: start
 28 |     @objc public static func start(instanceId: String) {
    |      `- error: Objective-C interoperability is disabled
 29 |         if instance == nil {
 30 |             instance = PushNotifications(instanceId: instanceId)
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:50:6: error: Objective-C interoperability is disabled
 48 |      */
 49 |     /// - Tag: register
 50 |     @objc public static func registerForRemoteNotifications() {
    |      `- error: Objective-C interoperability is disabled
 51 |         self.registerForPushNotifications(options: [.alert, .sound, .badge])
 52 |     }
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:102:6: error: Objective-C interoperability is disabled
100 |      */
101 |     /// - Tag: setUserId
102 |     @objc public static func setUserId(_ userId: String, tokenProvider: TokenProvider, completion: @escaping (Error?) -> Void) {
    |      `- error: Objective-C interoperability is disabled
103 |         if let staticInstance = instance {
104 |             staticInstance.setUserId(userId, tokenProvider: tokenProvider, completion: completion)
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:116:6: error: Objective-C interoperability is disabled
114 |      */
115 |     /// - Tag: getUserId
116 |     @objc public static func getUserId() -> String? {
    |      `- error: Objective-C interoperability is disabled
117 |         if let staticInstance = instance {
118 |             return staticInstance.getUserId()
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:130:6: error: Objective-C interoperability is disabled
128 |      */
129 |     /// - Tag: stop
130 |     @objc public static func stop(completion: @escaping () -> Void) {
    |      `- error: Objective-C interoperability is disabled
131 |         let instances = DeviceStateStore().getInstanceIds()
132 |         let dispatchGroup = DispatchGroup()
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:152:6: error: Objective-C interoperability is disabled
150 |      */
151 |     /// - Tag: clearAllState
152 |     @objc public static func clearAllState(completion: @escaping () -> Void) {
    |      `- error: Objective-C interoperability is disabled
153 |         let instances = DeviceStateStore().getInstanceIds()
154 |         let dispatchGroup = DispatchGroup()
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:174:6: error: Objective-C interoperability is disabled
172 |      */
173 |     /// - Tag: registerDeviceToken
174 |     @objc public static func registerDeviceToken(_ deviceToken: Data) {
    |      `- error: Objective-C interoperability is disabled
175 |         let instances = DeviceStateStore().getInstanceIds()
176 |         var hasAnInstanceBeenStarted = false
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:205:6: error: Objective-C interoperability is disabled
203 |      */
204 |     /// - Tag: addDeviceInterest
205 |     @objc public static func addDeviceInterest(interest: String) throws {
    |      `- error: Objective-C interoperability is disabled
206 |         if let staticInstance = instance {
207 |             try staticInstance.addDeviceInterest(interest: interest)
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:224:6: error: Objective-C interoperability is disabled
222 |      */
223 |     /// - Tag: setDeviceInterests
224 |     @objc public static func setDeviceInterests(interests: [String]) throws {
    |      `- error: Objective-C interoperability is disabled
225 |         if let staticInstance = instance {
226 |             try staticInstance.setDeviceInterests(interests: interests)
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:242:6: error: Objective-C interoperability is disabled
240 |      */
241 |     /// - Tag: removeDeviceInterest
242 |     @objc public static func removeDeviceInterest(interest: String) throws {
    |      `- error: Objective-C interoperability is disabled
243 |         if let staticInstance = instance {
244 |             try staticInstance.removeDeviceInterest(interest: interest)
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:252:6: error: Objective-C interoperability is disabled
250 |     /// Unsubscribes the device from all the interests.
251 |     /// - Tag: clearDeviceInterests
252 |     @objc public static func clearDeviceInterests() throws {
    |      `- error: Objective-C interoperability is disabled
253 |         if let staticInstance = instance {
254 |             try staticInstance.clearDeviceInterests()
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:266:6: error: Objective-C interoperability is disabled
264 |      */
265 |     /// - Tag: getDeviceInterests
266 |     @objc public static func getDeviceInterests() -> [String]? {
    |      `- error: Objective-C interoperability is disabled
267 |         if let staticInstance = instance {
268 |             return staticInstance.getDeviceInterests()
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:281:6: error: Objective-C interoperability is disabled
279 |     /// - Tag: handleNotification
280 |     @discardableResult
281 |     @objc public static func handleNotification(userInfo: [AnyHashable: Any]) -> RemoteNotificationType {
    |      `- error: Objective-C interoperability is disabled
282 |         guard FeatureFlags.DeliveryTrackingEnabled else {
283 |             return .ShouldProcess
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:51:14: error: type 'PushNotificationsStatic' has no member 'registerForPushNotifications'
 49 |     /// - Tag: register
 50 |     @objc public static func registerForRemoteNotifications() {
 51 |         self.registerForPushNotifications(options: [.alert, .sound, .badge])
    |              `- error: type 'PushNotificationsStatic' has no member 'registerForPushNotifications'
 52 |     }
 53 |
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:51:54: error: reference to member 'alert' cannot be resolved without a contextual type
 49 |     /// - Tag: register
 50 |     @objc public static func registerForRemoteNotifications() {
 51 |         self.registerForPushNotifications(options: [.alert, .sound, .badge])
    |                                                      `- error: reference to member 'alert' cannot be resolved without a contextual type
 52 |     }
 53 |
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:51:62: error: reference to member 'sound' cannot be resolved without a contextual type
 49 |     /// - Tag: register
 50 |     @objc public static func registerForRemoteNotifications() {
 51 |         self.registerForPushNotifications(options: [.alert, .sound, .badge])
    |                                                              `- error: reference to member 'sound' cannot be resolved without a contextual type
 52 |     }
 53 |
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:51:70: error: reference to member 'badge' cannot be resolved without a contextual type
 49 |     /// - Tag: register
 50 |     @objc public static func registerForRemoteNotifications() {
 51 |         self.registerForPushNotifications(options: [.alert, .sound, .badge])
    |                                                                      `- error: reference to member 'badge' cannot be resolved without a contextual type
 52 |     }
 53 |
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:297:84: error: cannot find 'eventType' in scope
295 |         #endif
296 |
297 |         let serverSyncProcessHandler = ServerSyncProcessHandler.obtain(instanceId: eventType.getInstanceId())
    |                                                                                    `- error: cannot find 'eventType' in scope
298 |         serverSyncProcessHandler?.sendMessage(serverSyncJob: .reportEventJob(eventType: eventType))
299 |
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:298:89: error: cannot find 'eventType' in scope
296 |
297 |         let serverSyncProcessHandler = ServerSyncProcessHandler.obtain(instanceId: eventType.getInstanceId())
298 |         serverSyncProcessHandler?.sendMessage(serverSyncJob: .reportEventJob(eventType: eventType))
    |                                                                                         `- error: cannot find 'eventType' in scope
299 |
300 |         return EventTypeHandler.getRemoteNotificationType(userInfo)
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:298:63: error: cannot infer contextual base in reference to member 'reportEventJob'
296 |
297 |         let serverSyncProcessHandler = ServerSyncProcessHandler.obtain(instanceId: eventType.getInstanceId())
298 |         serverSyncProcessHandler?.sendMessage(serverSyncJob: .reportEventJob(eventType: eventType))
    |                                                               `- error: cannot infer contextual base in reference to member 'reportEventJob'
299 |
300 |         return EventTypeHandler.getRemoteNotificationType(userInfo)
/host/spi-builder-workspace/Sources/Services/BeamsTokenProvider.swift:4:2: error: Objective-C interoperability is disabled
 2 |
 3 | /// Used to generate tokens for users to authenticate against.
 4 | @objc public final class BeamsTokenProvider: NSObject, TokenProvider {
   |  `- error: Objective-C interoperability is disabled
 5 |
 6 |     /// The authentication endpoint URL `String`.
/host/spi-builder-workspace/Sources/Services/BeamsTokenProvider.swift:16:6: error: Objective-C interoperability is disabled
14 |     ///   - authURL: The authentication endpoint URL `String`.
15 |     ///   - getAuthData: A closure that returns an `AuthData` object.
16 |     @objc public init(authURL: String, getAuthData: @escaping () -> (AuthData)) {
   |      `- error: Objective-C interoperability is disabled
17 |         self.authURL = authURL
18 |         self.getAuthData = getAuthData
/host/spi-builder-workspace/Sources/Services/BeamsTokenProvider.swift:30:26: error: 'URLSession' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
28 |         let queryParams = authData.queryParams
29 |
30 |         let urlSession = URLSession(configuration: .ephemeral)
   |                          `- error: 'URLSession' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
31 |
32 |         guard var components = URLComponents(string: authURL) else {
/host/spi-builder-workspace/Sources/Services/BeamsTokenProvider.swift:30:53: error: cannot infer contextual base in reference to member 'ephemeral'
28 |         let queryParams = authData.queryParams
29 |
30 |         let urlSession = URLSession(configuration: .ephemeral)
   |                                                     `- error: cannot infer contextual base in reference to member 'ephemeral'
31 |
32 |         guard var components = URLComponents(string: authURL) else {
/host/spi-builder-workspace/Sources/Services/BeamsTokenProvider.swift:43:26: error: cannot find 'URLRequest' in scope
41 |         }
42 |
43 |         var urlRequest = URLRequest(url: url)
   |                          `- error: cannot find 'URLRequest' in scope
44 |         urlRequest.httpMethod = "GET"
45 |         for header in headers {
/host/spi-builder-workspace/Sources/Services/BeamsTokenProvider.swift:56:46: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
54 |                 return completion("", TokenProviderError.error("[PushNotifications] - BeamsTokenProvider: Error while casting response object to `HTTPURLResponse`"))
55 |             }
56 |             let statusCode = httpURLResponse.statusCode
   |                                              `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
57 |             guard statusCode >= 200 && statusCode < 300 else {
58 |                 return completion("", TokenProviderError.error("[PushNotifications] - BeamsTokenProvider: Received HTTP Status Code: \(statusCode)"))
/host/spi-builder-workspace/Sources/Services/DeviceStateStore.swift:206:24: error: value of type 'UserDefaults' has no member 'value'
204 |
205 |     func getServerConfirmedInterestsHash() -> String {
206 |         return service.value(forKey: PersistenceConstants.PersistenceService.hashKey) as? String ?? ""
    |                        `- error: value of type 'UserDefaults' has no member 'value'
207 |     }
208 |
[29/46] Compiling PushNotifications BeamsTokenProvider.swift
/host/spi-builder-workspace/Sources/Protocols/TokenProvider.swift:24:2: error: Objective-C interoperability is disabled
22 |  Conform to the TokenProvider protocol in order to generate the token for the user that you want to authenticate.
23 |  */
24 | @objc public protocol TokenProvider {
   |  `- error: Objective-C interoperability is disabled
25 |     /**
26 |      Method `fetchToken` will return the token on success or error on failure.
/host/spi-builder-workspace/Sources/PushNotifications.swift:11:2: error: Objective-C interoperability is disabled
  9 |
 10 | /// The top-level entrypoint to the Beams Swift SDK.
 11 | @objc public final class PushNotifications: NSObject {
    |  `- error: Objective-C interoperability is disabled
 12 |
 13 |     let instanceId: String
/host/spi-builder-workspace/Sources/PushNotifications.swift:22:6: error: Objective-C interoperability is disabled
 20 |     /// Creates a `PushNotifications` object with a given `instanceId`.
 21 |     /// - Parameter instanceId: The instance identifier (from your app dashboard).
 22 |     @objc public init(instanceId: String) {
    |      `- error: Objective-C interoperability is disabled
 23 |         self.instanceId = instanceId
 24 |         self.deviceStateStore = InstanceDeviceStateStore(instanceId)
/host/spi-builder-workspace/Sources/PushNotifications.swift:35:6: error: Objective-C interoperability is disabled
 33 |     /// Returns a shared singleton PushNotifications object
 34 |     /// that can be accessed from anywhere in your project.
 35 |     @objc public static let shared = PushNotificationsStatic.self
    |      `- error: Objective-C interoperability is disabled
 36 |
 37 |     private lazy var serverSyncHandler = ServerSyncProcessHandler.obtain(
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:18:16: warning: static property 'tokenProvider' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
 16 |
 17 |     private static var instance: PushNotifications?
 18 |     static var tokenProvider = [String: TokenProvider]()
    |                |- warning: static property 'tokenProvider' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: convert 'tokenProvider' to a 'let' constant to make 'Sendable' shared state immutable
    |                |- note: annotate 'tokenProvider' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 19 |
 20 |     /**
/host/spi-builder-workspace/Sources/PushNotifications.swift:51:6: error: Objective-C interoperability is disabled
 49 |      */
 50 |     /// - Tag: start
 51 |     @objc public func start() {
    |      `- error: Objective-C interoperability is disabled
 52 |         if UUID(uuidString: instanceId) == nil {
 53 |             print("[PushNotifications]: '\(instanceId)' is not a valid instance id.")
/host/spi-builder-workspace/Sources/PushNotifications.swift:78:6: error: Objective-C interoperability is disabled
 76 |      */
 77 |     /// - Tag: register
 78 |     @objc public func registerForRemoteNotifications() {
    |      `- error: Objective-C interoperability is disabled
 79 |         PushNotificationsStatic.registerForRemoteNotifications()
 80 |     }
/host/spi-builder-workspace/Sources/PushNotifications.swift:110:6: error: Objective-C interoperability is disabled
108 |     */
109 |     /// - Tag: setUserId
110 |     @objc public func setUserId(_ userId: String, tokenProvider: TokenProvider, completion: @escaping (Error?) -> Void) {
    |      `- error: Objective-C interoperability is disabled
111 |         if startHasBeenCalledThisSession == false {
112 |             completion(PushNotificationsError.error("[PushNotifications] - `start` method must be called before setting `userId`"))
/host/spi-builder-workspace/Sources/PushNotifications.swift:162:6: error: Objective-C interoperability is disabled
160 |      */
161 |     /// - Tag: getUserId
162 |     @objc public func getUserId() -> String? {
    |      `- error: Objective-C interoperability is disabled
163 |         return InstanceDeviceStateStore.synchronize {
164 |             return self.deviceStateStore.getUserId()
/host/spi-builder-workspace/Sources/PushNotifications.swift:168:6: error: Objective-C interoperability is disabled
166 |     }
167 |
168 |     @objc private func printHelpfulMessage() {
    |      `- error: Objective-C interoperability is disabled
169 |         print("[PushNotifications] - It looks like setUserId hasn't completed yet -- have you called `registerDeviceToken`?")
170 |     }
/host/spi-builder-workspace/Sources/PushNotifications.swift:179:6: error: Objective-C interoperability is disabled
177 |      */
178 |     /// - Tag: stop
179 |     @objc public func stop(completion: @escaping () -> Void) {
    |      `- error: Objective-C interoperability is disabled
180 |         let hadAnyInterests: Bool = InstanceDeviceStateStore.synchronize {
181 |             let hadAnyInterests = self.deviceStateStore.getInterests()?.isEmpty ?? false
/host/spi-builder-workspace/Sources/PushNotifications.swift:208:6: error: Objective-C interoperability is disabled
206 |      */
207 |     /// - Tag: clearAllState
208 |     @objc public func clearAllState(completion: @escaping () -> Void) {
    |      `- error: Objective-C interoperability is disabled
209 |         let storedAPNsToken = self.deviceStateStore.getAPNsToken()
210 |         let hasStartAlreadyBeenCalled = self.deviceStateStore.getStartJobHasBeenEnqueued()
/host/spi-builder-workspace/Sources/PushNotifications.swift:230:6: error: Objective-C interoperability is disabled
228 |      */
229 |     /// - Tag: registerDeviceToken
230 |     @objc public func registerDeviceToken(_ deviceToken: Data) {
    |      `- error: Objective-C interoperability is disabled
231 |         PushNotificationsStatic.registerDeviceToken(deviceToken)
232 |     }
/host/spi-builder-workspace/Sources/PushNotifications.swift:244:6: error: Objective-C interoperability is disabled
242 |      */
243 |     /// - Tag: addDeviceInterest
244 |     @objc public func addDeviceInterest(interest: String) throws {
    |      `- error: Objective-C interoperability is disabled
245 |         guard self.validateInterestName(interest) else {
246 |             throw InvalidInterestError.invalidName(interest)
/host/spi-builder-workspace/Sources/PushNotifications.swift:270:6: error: Objective-C interoperability is disabled
268 |      */
269 |     /// - Tag: setDeviceInterests
270 |     @objc public func setDeviceInterests(interests: [String]) throws {
    |      `- error: Objective-C interoperability is disabled
271 |         if let invalidInterests = self.validateInterestNames(interests), invalidInterests.count > 0 {
272 |             throw MultipleInvalidInterestsError.invalidNames(invalidInterests)
/host/spi-builder-workspace/Sources/PushNotifications.swift:295:7: error: Objective-C interoperability is disabled
293 |      */
294 |     /// - Tag: removeDeviceInterest
295 |      @objc public func removeDeviceInterest(interest: String) throws {
    |       `- error: Objective-C interoperability is disabled
296 |         guard self.validateInterestName(interest) else {
297 |             throw InvalidInterestError.invalidName(interest)
/host/spi-builder-workspace/Sources/PushNotifications.swift:312:6: error: Objective-C interoperability is disabled
310 |     /// Unsubscribes the device from all the interests.
311 |     /// - Tag: clearDeviceInterests
312 |     @objc public func clearDeviceInterests() throws {
    |      `- error: Objective-C interoperability is disabled
313 |         try self.setDeviceInterests(interests: [])
314 |     }
/host/spi-builder-workspace/Sources/PushNotifications.swift:322:6: error: Objective-C interoperability is disabled
320 |      */
321 |     /// - Tag: getDeviceInterests
322 |     @objc public func getDeviceInterests() -> [String]? {
    |      `- error: Objective-C interoperability is disabled
323 |         return InstanceDeviceStateStore.synchronize {
324 |             return self.deviceStateStore.getInterests()
/host/spi-builder-workspace/Sources/PushNotifications.swift:345:6: error: Objective-C interoperability is disabled
343 |     /// - Tag: handleNotification
344 |     @discardableResult
345 |     @objc public func handleNotification(userInfo: [AnyHashable: Any]) -> RemoteNotificationType {
    |      `- error: Objective-C interoperability is disabled
346 |         return PushNotificationsStatic.handleNotification(userInfo: userInfo)
347 |     }
/host/spi-builder-workspace/Sources/PushNotifications.swift:364:2: error: Objective-C interoperability is disabled
362 |  Method `interestsSetOnDeviceDidChange(interests:)` will be called when interests set changes.
363 |  */
364 | @objc public protocol InterestsChangedDelegate: AnyObject {
    |  `- error: Objective-C interoperability is disabled
365 |     /**
366 |      Tells the delegate that the device's interests subscriptions list has changed.
/host/spi-builder-workspace/Sources/Models/Metadata.swift:8:16: warning: static property 'current' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
 6 |     let macosVersion: String?
 7 |
 8 |     static var current: Metadata = {
   |                |- warning: static property 'current' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'current' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'current' with '@MainActor' if property should only be accessed from the main actor
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 9 |         let sdkVersion = SDK.version
10 |         let systemVersion = SystemVersion.version
/host/spi-builder-workspace/Sources/PushNotifications.swift:141:91: error: '#selector' can only be used with the Objective-C runtime
139 |         }
140 |
141 |         let helpfulTimer = Timer.scheduledTimer(timeInterval: 15, target: self, selector: #selector(printHelpfulMessage), userInfo: nil, repeats: false)
    |                                                                                           `- error: '#selector' can only be used with the Objective-C runtime
142 |
143 |         let wrapperCompletion: (Error?) -> Void = { error in
/host/spi-builder-workspace/Sources/PushNotifications.swift:351:37: error: 'init(format:_:)' has been renamed to 'init(block:)': Predicate strings and key-value coding are not supported in swift-corelibs-foundation. Use a closure instead if possible.
349 |     private func validateInterestName(_ interest: String) -> Bool {
350 |         let interestNameRegex = "^[a-zA-Z0-9_\\-=@,.;]{1,164}$"
351 |         let interestNamePredicate = NSPredicate(format: "SELF MATCHES %@", interestNameRegex)
    |                                     `- error: 'init(format:_:)' has been renamed to 'init(block:)': Predicate strings and key-value coding are not supported in swift-corelibs-foundation. Use a closure instead if possible.
352 |         return interestNamePredicate.evaluate(with: interest)
353 |     }
Foundation.NSPredicate:3:24: note: 'init(format:_:)' has been explicitly marked unavailable here
1 | extension NSPredicate {
2 |     @available(*, unavailable, renamed: "init(block:)", message: "Predicate strings and key-value coding are not supported in swift-corelibs-foundation. Use a closure instead if possible.")
3 |     public convenience init(format predicateFormat: String, _ args: any CVarArg...)
  |                        `- note: 'init(format:_:)' has been explicitly marked unavailable here
4 | }
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:11:2: error: Objective-C interoperability is disabled
  9 |
 10 | /// A static equivalent of the `PushNotifications` type.
 11 | @objc public final class PushNotificationsStatic: NSObject {
    |  `- error: Objective-C interoperability is disabled
 12 |
 13 |     override private init() {
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:17:24: warning: static property 'instance' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
 15 |     }
 16 |
 17 |     private static var instance: PushNotifications?
    |                        |- warning: static property 'instance' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
    |                        |- note: convert 'instance' to a 'let' constant to make 'Sendable' shared state immutable
    |                        |- note: annotate 'instance' with '@MainActor' if property should only be accessed from the main actor
    |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 18 |     static var tokenProvider = [String: TokenProvider]()
 19 |
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:28:6: error: Objective-C interoperability is disabled
 26 |      */
 27 |     /// - Tag: start
 28 |     @objc public static func start(instanceId: String) {
    |      `- error: Objective-C interoperability is disabled
 29 |         if instance == nil {
 30 |             instance = PushNotifications(instanceId: instanceId)
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:50:6: error: Objective-C interoperability is disabled
 48 |      */
 49 |     /// - Tag: register
 50 |     @objc public static func registerForRemoteNotifications() {
    |      `- error: Objective-C interoperability is disabled
 51 |         self.registerForPushNotifications(options: [.alert, .sound, .badge])
 52 |     }
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:102:6: error: Objective-C interoperability is disabled
100 |      */
101 |     /// - Tag: setUserId
102 |     @objc public static func setUserId(_ userId: String, tokenProvider: TokenProvider, completion: @escaping (Error?) -> Void) {
    |      `- error: Objective-C interoperability is disabled
103 |         if let staticInstance = instance {
104 |             staticInstance.setUserId(userId, tokenProvider: tokenProvider, completion: completion)
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:116:6: error: Objective-C interoperability is disabled
114 |      */
115 |     /// - Tag: getUserId
116 |     @objc public static func getUserId() -> String? {
    |      `- error: Objective-C interoperability is disabled
117 |         if let staticInstance = instance {
118 |             return staticInstance.getUserId()
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:130:6: error: Objective-C interoperability is disabled
128 |      */
129 |     /// - Tag: stop
130 |     @objc public static func stop(completion: @escaping () -> Void) {
    |      `- error: Objective-C interoperability is disabled
131 |         let instances = DeviceStateStore().getInstanceIds()
132 |         let dispatchGroup = DispatchGroup()
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:152:6: error: Objective-C interoperability is disabled
150 |      */
151 |     /// - Tag: clearAllState
152 |     @objc public static func clearAllState(completion: @escaping () -> Void) {
    |      `- error: Objective-C interoperability is disabled
153 |         let instances = DeviceStateStore().getInstanceIds()
154 |         let dispatchGroup = DispatchGroup()
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:174:6: error: Objective-C interoperability is disabled
172 |      */
173 |     /// - Tag: registerDeviceToken
174 |     @objc public static func registerDeviceToken(_ deviceToken: Data) {
    |      `- error: Objective-C interoperability is disabled
175 |         let instances = DeviceStateStore().getInstanceIds()
176 |         var hasAnInstanceBeenStarted = false
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:205:6: error: Objective-C interoperability is disabled
203 |      */
204 |     /// - Tag: addDeviceInterest
205 |     @objc public static func addDeviceInterest(interest: String) throws {
    |      `- error: Objective-C interoperability is disabled
206 |         if let staticInstance = instance {
207 |             try staticInstance.addDeviceInterest(interest: interest)
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:224:6: error: Objective-C interoperability is disabled
222 |      */
223 |     /// - Tag: setDeviceInterests
224 |     @objc public static func setDeviceInterests(interests: [String]) throws {
    |      `- error: Objective-C interoperability is disabled
225 |         if let staticInstance = instance {
226 |             try staticInstance.setDeviceInterests(interests: interests)
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:242:6: error: Objective-C interoperability is disabled
240 |      */
241 |     /// - Tag: removeDeviceInterest
242 |     @objc public static func removeDeviceInterest(interest: String) throws {
    |      `- error: Objective-C interoperability is disabled
243 |         if let staticInstance = instance {
244 |             try staticInstance.removeDeviceInterest(interest: interest)
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:252:6: error: Objective-C interoperability is disabled
250 |     /// Unsubscribes the device from all the interests.
251 |     /// - Tag: clearDeviceInterests
252 |     @objc public static func clearDeviceInterests() throws {
    |      `- error: Objective-C interoperability is disabled
253 |         if let staticInstance = instance {
254 |             try staticInstance.clearDeviceInterests()
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:266:6: error: Objective-C interoperability is disabled
264 |      */
265 |     /// - Tag: getDeviceInterests
266 |     @objc public static func getDeviceInterests() -> [String]? {
    |      `- error: Objective-C interoperability is disabled
267 |         if let staticInstance = instance {
268 |             return staticInstance.getDeviceInterests()
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:281:6: error: Objective-C interoperability is disabled
279 |     /// - Tag: handleNotification
280 |     @discardableResult
281 |     @objc public static func handleNotification(userInfo: [AnyHashable: Any]) -> RemoteNotificationType {
    |      `- error: Objective-C interoperability is disabled
282 |         guard FeatureFlags.DeliveryTrackingEnabled else {
283 |             return .ShouldProcess
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:51:14: error: type 'PushNotificationsStatic' has no member 'registerForPushNotifications'
 49 |     /// - Tag: register
 50 |     @objc public static func registerForRemoteNotifications() {
 51 |         self.registerForPushNotifications(options: [.alert, .sound, .badge])
    |              `- error: type 'PushNotificationsStatic' has no member 'registerForPushNotifications'
 52 |     }
 53 |
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:51:54: error: reference to member 'alert' cannot be resolved without a contextual type
 49 |     /// - Tag: register
 50 |     @objc public static func registerForRemoteNotifications() {
 51 |         self.registerForPushNotifications(options: [.alert, .sound, .badge])
    |                                                      `- error: reference to member 'alert' cannot be resolved without a contextual type
 52 |     }
 53 |
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:51:62: error: reference to member 'sound' cannot be resolved without a contextual type
 49 |     /// - Tag: register
 50 |     @objc public static func registerForRemoteNotifications() {
 51 |         self.registerForPushNotifications(options: [.alert, .sound, .badge])
    |                                                              `- error: reference to member 'sound' cannot be resolved without a contextual type
 52 |     }
 53 |
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:51:70: error: reference to member 'badge' cannot be resolved without a contextual type
 49 |     /// - Tag: register
 50 |     @objc public static func registerForRemoteNotifications() {
 51 |         self.registerForPushNotifications(options: [.alert, .sound, .badge])
    |                                                                      `- error: reference to member 'badge' cannot be resolved without a contextual type
 52 |     }
 53 |
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:297:84: error: cannot find 'eventType' in scope
295 |         #endif
296 |
297 |         let serverSyncProcessHandler = ServerSyncProcessHandler.obtain(instanceId: eventType.getInstanceId())
    |                                                                                    `- error: cannot find 'eventType' in scope
298 |         serverSyncProcessHandler?.sendMessage(serverSyncJob: .reportEventJob(eventType: eventType))
299 |
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:298:89: error: cannot find 'eventType' in scope
296 |
297 |         let serverSyncProcessHandler = ServerSyncProcessHandler.obtain(instanceId: eventType.getInstanceId())
298 |         serverSyncProcessHandler?.sendMessage(serverSyncJob: .reportEventJob(eventType: eventType))
    |                                                                                         `- error: cannot find 'eventType' in scope
299 |
300 |         return EventTypeHandler.getRemoteNotificationType(userInfo)
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:298:63: error: cannot infer contextual base in reference to member 'reportEventJob'
296 |
297 |         let serverSyncProcessHandler = ServerSyncProcessHandler.obtain(instanceId: eventType.getInstanceId())
298 |         serverSyncProcessHandler?.sendMessage(serverSyncJob: .reportEventJob(eventType: eventType))
    |                                                               `- error: cannot infer contextual base in reference to member 'reportEventJob'
299 |
300 |         return EventTypeHandler.getRemoteNotificationType(userInfo)
/host/spi-builder-workspace/Sources/Services/BeamsTokenProvider.swift:4:2: error: Objective-C interoperability is disabled
 2 |
 3 | /// Used to generate tokens for users to authenticate against.
 4 | @objc public final class BeamsTokenProvider: NSObject, TokenProvider {
   |  `- error: Objective-C interoperability is disabled
 5 |
 6 |     /// The authentication endpoint URL `String`.
/host/spi-builder-workspace/Sources/Services/BeamsTokenProvider.swift:16:6: error: Objective-C interoperability is disabled
14 |     ///   - authURL: The authentication endpoint URL `String`.
15 |     ///   - getAuthData: A closure that returns an `AuthData` object.
16 |     @objc public init(authURL: String, getAuthData: @escaping () -> (AuthData)) {
   |      `- error: Objective-C interoperability is disabled
17 |         self.authURL = authURL
18 |         self.getAuthData = getAuthData
/host/spi-builder-workspace/Sources/Services/BeamsTokenProvider.swift:30:26: error: 'URLSession' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
28 |         let queryParams = authData.queryParams
29 |
30 |         let urlSession = URLSession(configuration: .ephemeral)
   |                          `- error: 'URLSession' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
31 |
32 |         guard var components = URLComponents(string: authURL) else {
/host/spi-builder-workspace/Sources/Services/BeamsTokenProvider.swift:30:53: error: cannot infer contextual base in reference to member 'ephemeral'
28 |         let queryParams = authData.queryParams
29 |
30 |         let urlSession = URLSession(configuration: .ephemeral)
   |                                                     `- error: cannot infer contextual base in reference to member 'ephemeral'
31 |
32 |         guard var components = URLComponents(string: authURL) else {
/host/spi-builder-workspace/Sources/Services/BeamsTokenProvider.swift:43:26: error: cannot find 'URLRequest' in scope
41 |         }
42 |
43 |         var urlRequest = URLRequest(url: url)
   |                          `- error: cannot find 'URLRequest' in scope
44 |         urlRequest.httpMethod = "GET"
45 |         for header in headers {
/host/spi-builder-workspace/Sources/Services/BeamsTokenProvider.swift:56:46: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
54 |                 return completion("", TokenProviderError.error("[PushNotifications] - BeamsTokenProvider: Error while casting response object to `HTTPURLResponse`"))
55 |             }
56 |             let statusCode = httpURLResponse.statusCode
   |                                              `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
57 |             guard statusCode >= 200 && statusCode < 300 else {
58 |                 return completion("", TokenProviderError.error("[PushNotifications] - BeamsTokenProvider: Received HTTP Status Code: \(statusCode)"))
/host/spi-builder-workspace/Sources/Services/DeviceStateStore.swift:206:24: error: value of type 'UserDefaults' has no member 'value'
204 |
205 |     func getServerConfirmedInterestsHash() -> String {
206 |         return service.value(forKey: PersistenceConstants.PersistenceService.hashKey) as? String ?? ""
    |                        `- error: value of type 'UserDefaults' has no member 'value'
207 |     }
208 |
[30/46] Compiling PushNotifications DeviceStateStore.swift
/host/spi-builder-workspace/Sources/Protocols/TokenProvider.swift:24:2: error: Objective-C interoperability is disabled
22 |  Conform to the TokenProvider protocol in order to generate the token for the user that you want to authenticate.
23 |  */
24 | @objc public protocol TokenProvider {
   |  `- error: Objective-C interoperability is disabled
25 |     /**
26 |      Method `fetchToken` will return the token on success or error on failure.
/host/spi-builder-workspace/Sources/PushNotifications.swift:11:2: error: Objective-C interoperability is disabled
  9 |
 10 | /// The top-level entrypoint to the Beams Swift SDK.
 11 | @objc public final class PushNotifications: NSObject {
    |  `- error: Objective-C interoperability is disabled
 12 |
 13 |     let instanceId: String
/host/spi-builder-workspace/Sources/PushNotifications.swift:22:6: error: Objective-C interoperability is disabled
 20 |     /// Creates a `PushNotifications` object with a given `instanceId`.
 21 |     /// - Parameter instanceId: The instance identifier (from your app dashboard).
 22 |     @objc public init(instanceId: String) {
    |      `- error: Objective-C interoperability is disabled
 23 |         self.instanceId = instanceId
 24 |         self.deviceStateStore = InstanceDeviceStateStore(instanceId)
/host/spi-builder-workspace/Sources/PushNotifications.swift:35:6: error: Objective-C interoperability is disabled
 33 |     /// Returns a shared singleton PushNotifications object
 34 |     /// that can be accessed from anywhere in your project.
 35 |     @objc public static let shared = PushNotificationsStatic.self
    |      `- error: Objective-C interoperability is disabled
 36 |
 37 |     private lazy var serverSyncHandler = ServerSyncProcessHandler.obtain(
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:18:16: warning: static property 'tokenProvider' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
 16 |
 17 |     private static var instance: PushNotifications?
 18 |     static var tokenProvider = [String: TokenProvider]()
    |                |- warning: static property 'tokenProvider' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: convert 'tokenProvider' to a 'let' constant to make 'Sendable' shared state immutable
    |                |- note: annotate 'tokenProvider' with '@MainActor' if property should only be accessed from the main actor
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 19 |
 20 |     /**
/host/spi-builder-workspace/Sources/PushNotifications.swift:51:6: error: Objective-C interoperability is disabled
 49 |      */
 50 |     /// - Tag: start
 51 |     @objc public func start() {
    |      `- error: Objective-C interoperability is disabled
 52 |         if UUID(uuidString: instanceId) == nil {
 53 |             print("[PushNotifications]: '\(instanceId)' is not a valid instance id.")
/host/spi-builder-workspace/Sources/PushNotifications.swift:78:6: error: Objective-C interoperability is disabled
 76 |      */
 77 |     /// - Tag: register
 78 |     @objc public func registerForRemoteNotifications() {
    |      `- error: Objective-C interoperability is disabled
 79 |         PushNotificationsStatic.registerForRemoteNotifications()
 80 |     }
/host/spi-builder-workspace/Sources/PushNotifications.swift:110:6: error: Objective-C interoperability is disabled
108 |     */
109 |     /// - Tag: setUserId
110 |     @objc public func setUserId(_ userId: String, tokenProvider: TokenProvider, completion: @escaping (Error?) -> Void) {
    |      `- error: Objective-C interoperability is disabled
111 |         if startHasBeenCalledThisSession == false {
112 |             completion(PushNotificationsError.error("[PushNotifications] - `start` method must be called before setting `userId`"))
/host/spi-builder-workspace/Sources/PushNotifications.swift:162:6: error: Objective-C interoperability is disabled
160 |      */
161 |     /// - Tag: getUserId
162 |     @objc public func getUserId() -> String? {
    |      `- error: Objective-C interoperability is disabled
163 |         return InstanceDeviceStateStore.synchronize {
164 |             return self.deviceStateStore.getUserId()
/host/spi-builder-workspace/Sources/PushNotifications.swift:168:6: error: Objective-C interoperability is disabled
166 |     }
167 |
168 |     @objc private func printHelpfulMessage() {
    |      `- error: Objective-C interoperability is disabled
169 |         print("[PushNotifications] - It looks like setUserId hasn't completed yet -- have you called `registerDeviceToken`?")
170 |     }
/host/spi-builder-workspace/Sources/PushNotifications.swift:179:6: error: Objective-C interoperability is disabled
177 |      */
178 |     /// - Tag: stop
179 |     @objc public func stop(completion: @escaping () -> Void) {
    |      `- error: Objective-C interoperability is disabled
180 |         let hadAnyInterests: Bool = InstanceDeviceStateStore.synchronize {
181 |             let hadAnyInterests = self.deviceStateStore.getInterests()?.isEmpty ?? false
/host/spi-builder-workspace/Sources/PushNotifications.swift:208:6: error: Objective-C interoperability is disabled
206 |      */
207 |     /// - Tag: clearAllState
208 |     @objc public func clearAllState(completion: @escaping () -> Void) {
    |      `- error: Objective-C interoperability is disabled
209 |         let storedAPNsToken = self.deviceStateStore.getAPNsToken()
210 |         let hasStartAlreadyBeenCalled = self.deviceStateStore.getStartJobHasBeenEnqueued()
/host/spi-builder-workspace/Sources/PushNotifications.swift:230:6: error: Objective-C interoperability is disabled
228 |      */
229 |     /// - Tag: registerDeviceToken
230 |     @objc public func registerDeviceToken(_ deviceToken: Data) {
    |      `- error: Objective-C interoperability is disabled
231 |         PushNotificationsStatic.registerDeviceToken(deviceToken)
232 |     }
/host/spi-builder-workspace/Sources/PushNotifications.swift:244:6: error: Objective-C interoperability is disabled
242 |      */
243 |     /// - Tag: addDeviceInterest
244 |     @objc public func addDeviceInterest(interest: String) throws {
    |      `- error: Objective-C interoperability is disabled
245 |         guard self.validateInterestName(interest) else {
246 |             throw InvalidInterestError.invalidName(interest)
/host/spi-builder-workspace/Sources/PushNotifications.swift:270:6: error: Objective-C interoperability is disabled
268 |      */
269 |     /// - Tag: setDeviceInterests
270 |     @objc public func setDeviceInterests(interests: [String]) throws {
    |      `- error: Objective-C interoperability is disabled
271 |         if let invalidInterests = self.validateInterestNames(interests), invalidInterests.count > 0 {
272 |             throw MultipleInvalidInterestsError.invalidNames(invalidInterests)
/host/spi-builder-workspace/Sources/PushNotifications.swift:295:7: error: Objective-C interoperability is disabled
293 |      */
294 |     /// - Tag: removeDeviceInterest
295 |      @objc public func removeDeviceInterest(interest: String) throws {
    |       `- error: Objective-C interoperability is disabled
296 |         guard self.validateInterestName(interest) else {
297 |             throw InvalidInterestError.invalidName(interest)
/host/spi-builder-workspace/Sources/PushNotifications.swift:312:6: error: Objective-C interoperability is disabled
310 |     /// Unsubscribes the device from all the interests.
311 |     /// - Tag: clearDeviceInterests
312 |     @objc public func clearDeviceInterests() throws {
    |      `- error: Objective-C interoperability is disabled
313 |         try self.setDeviceInterests(interests: [])
314 |     }
/host/spi-builder-workspace/Sources/PushNotifications.swift:322:6: error: Objective-C interoperability is disabled
320 |      */
321 |     /// - Tag: getDeviceInterests
322 |     @objc public func getDeviceInterests() -> [String]? {
    |      `- error: Objective-C interoperability is disabled
323 |         return InstanceDeviceStateStore.synchronize {
324 |             return self.deviceStateStore.getInterests()
/host/spi-builder-workspace/Sources/PushNotifications.swift:345:6: error: Objective-C interoperability is disabled
343 |     /// - Tag: handleNotification
344 |     @discardableResult
345 |     @objc public func handleNotification(userInfo: [AnyHashable: Any]) -> RemoteNotificationType {
    |      `- error: Objective-C interoperability is disabled
346 |         return PushNotificationsStatic.handleNotification(userInfo: userInfo)
347 |     }
/host/spi-builder-workspace/Sources/PushNotifications.swift:364:2: error: Objective-C interoperability is disabled
362 |  Method `interestsSetOnDeviceDidChange(interests:)` will be called when interests set changes.
363 |  */
364 | @objc public protocol InterestsChangedDelegate: AnyObject {
    |  `- error: Objective-C interoperability is disabled
365 |     /**
366 |      Tells the delegate that the device's interests subscriptions list has changed.
/host/spi-builder-workspace/Sources/Models/Metadata.swift:8:16: warning: static property 'current' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
 6 |     let macosVersion: String?
 7 |
 8 |     static var current: Metadata = {
   |                |- warning: static property 'current' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
   |                |- note: convert 'current' to a 'let' constant to make 'Sendable' shared state immutable
   |                |- note: annotate 'current' with '@MainActor' if property should only be accessed from the main actor
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 9 |         let sdkVersion = SDK.version
10 |         let systemVersion = SystemVersion.version
/host/spi-builder-workspace/Sources/PushNotifications.swift:141:91: error: '#selector' can only be used with the Objective-C runtime
139 |         }
140 |
141 |         let helpfulTimer = Timer.scheduledTimer(timeInterval: 15, target: self, selector: #selector(printHelpfulMessage), userInfo: nil, repeats: false)
    |                                                                                           `- error: '#selector' can only be used with the Objective-C runtime
142 |
143 |         let wrapperCompletion: (Error?) -> Void = { error in
/host/spi-builder-workspace/Sources/PushNotifications.swift:351:37: error: 'init(format:_:)' has been renamed to 'init(block:)': Predicate strings and key-value coding are not supported in swift-corelibs-foundation. Use a closure instead if possible.
349 |     private func validateInterestName(_ interest: String) -> Bool {
350 |         let interestNameRegex = "^[a-zA-Z0-9_\\-=@,.;]{1,164}$"
351 |         let interestNamePredicate = NSPredicate(format: "SELF MATCHES %@", interestNameRegex)
    |                                     `- error: 'init(format:_:)' has been renamed to 'init(block:)': Predicate strings and key-value coding are not supported in swift-corelibs-foundation. Use a closure instead if possible.
352 |         return interestNamePredicate.evaluate(with: interest)
353 |     }
Foundation.NSPredicate:3:24: note: 'init(format:_:)' has been explicitly marked unavailable here
1 | extension NSPredicate {
2 |     @available(*, unavailable, renamed: "init(block:)", message: "Predicate strings and key-value coding are not supported in swift-corelibs-foundation. Use a closure instead if possible.")
3 |     public convenience init(format predicateFormat: String, _ args: any CVarArg...)
  |                        `- note: 'init(format:_:)' has been explicitly marked unavailable here
4 | }
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:11:2: error: Objective-C interoperability is disabled
  9 |
 10 | /// A static equivalent of the `PushNotifications` type.
 11 | @objc public final class PushNotificationsStatic: NSObject {
    |  `- error: Objective-C interoperability is disabled
 12 |
 13 |     override private init() {
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:17:24: warning: static property 'instance' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
 15 |     }
 16 |
 17 |     private static var instance: PushNotifications?
    |                        |- warning: static property 'instance' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
    |                        |- note: convert 'instance' to a 'let' constant to make 'Sendable' shared state immutable
    |                        |- note: annotate 'instance' with '@MainActor' if property should only be accessed from the main actor
    |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 18 |     static var tokenProvider = [String: TokenProvider]()
 19 |
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:28:6: error: Objective-C interoperability is disabled
 26 |      */
 27 |     /// - Tag: start
 28 |     @objc public static func start(instanceId: String) {
    |      `- error: Objective-C interoperability is disabled
 29 |         if instance == nil {
 30 |             instance = PushNotifications(instanceId: instanceId)
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:50:6: error: Objective-C interoperability is disabled
 48 |      */
 49 |     /// - Tag: register
 50 |     @objc public static func registerForRemoteNotifications() {
    |      `- error: Objective-C interoperability is disabled
 51 |         self.registerForPushNotifications(options: [.alert, .sound, .badge])
 52 |     }
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:102:6: error: Objective-C interoperability is disabled
100 |      */
101 |     /// - Tag: setUserId
102 |     @objc public static func setUserId(_ userId: String, tokenProvider: TokenProvider, completion: @escaping (Error?) -> Void) {
    |      `- error: Objective-C interoperability is disabled
103 |         if let staticInstance = instance {
104 |             staticInstance.setUserId(userId, tokenProvider: tokenProvider, completion: completion)
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:116:6: error: Objective-C interoperability is disabled
114 |      */
115 |     /// - Tag: getUserId
116 |     @objc public static func getUserId() -> String? {
    |      `- error: Objective-C interoperability is disabled
117 |         if let staticInstance = instance {
118 |             return staticInstance.getUserId()
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:130:6: error: Objective-C interoperability is disabled
128 |      */
129 |     /// - Tag: stop
130 |     @objc public static func stop(completion: @escaping () -> Void) {
    |      `- error: Objective-C interoperability is disabled
131 |         let instances = DeviceStateStore().getInstanceIds()
132 |         let dispatchGroup = DispatchGroup()
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:152:6: error: Objective-C interoperability is disabled
150 |      */
151 |     /// - Tag: clearAllState
152 |     @objc public static func clearAllState(completion: @escaping () -> Void) {
    |      `- error: Objective-C interoperability is disabled
153 |         let instances = DeviceStateStore().getInstanceIds()
154 |         let dispatchGroup = DispatchGroup()
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:174:6: error: Objective-C interoperability is disabled
172 |      */
173 |     /// - Tag: registerDeviceToken
174 |     @objc public static func registerDeviceToken(_ deviceToken: Data) {
    |      `- error: Objective-C interoperability is disabled
175 |         let instances = DeviceStateStore().getInstanceIds()
176 |         var hasAnInstanceBeenStarted = false
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:205:6: error: Objective-C interoperability is disabled
203 |      */
204 |     /// - Tag: addDeviceInterest
205 |     @objc public static func addDeviceInterest(interest: String) throws {
    |      `- error: Objective-C interoperability is disabled
206 |         if let staticInstance = instance {
207 |             try staticInstance.addDeviceInterest(interest: interest)
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:224:6: error: Objective-C interoperability is disabled
222 |      */
223 |     /// - Tag: setDeviceInterests
224 |     @objc public static func setDeviceInterests(interests: [String]) throws {
    |      `- error: Objective-C interoperability is disabled
225 |         if let staticInstance = instance {
226 |             try staticInstance.setDeviceInterests(interests: interests)
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:242:6: error: Objective-C interoperability is disabled
240 |      */
241 |     /// - Tag: removeDeviceInterest
242 |     @objc public static func removeDeviceInterest(interest: String) throws {
    |      `- error: Objective-C interoperability is disabled
243 |         if let staticInstance = instance {
244 |             try staticInstance.removeDeviceInterest(interest: interest)
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:252:6: error: Objective-C interoperability is disabled
250 |     /// Unsubscribes the device from all the interests.
251 |     /// - Tag: clearDeviceInterests
252 |     @objc public static func clearDeviceInterests() throws {
    |      `- error: Objective-C interoperability is disabled
253 |         if let staticInstance = instance {
254 |             try staticInstance.clearDeviceInterests()
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:266:6: error: Objective-C interoperability is disabled
264 |      */
265 |     /// - Tag: getDeviceInterests
266 |     @objc public static func getDeviceInterests() -> [String]? {
    |      `- error: Objective-C interoperability is disabled
267 |         if let staticInstance = instance {
268 |             return staticInstance.getDeviceInterests()
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:281:6: error: Objective-C interoperability is disabled
279 |     /// - Tag: handleNotification
280 |     @discardableResult
281 |     @objc public static func handleNotification(userInfo: [AnyHashable: Any]) -> RemoteNotificationType {
    |      `- error: Objective-C interoperability is disabled
282 |         guard FeatureFlags.DeliveryTrackingEnabled else {
283 |             return .ShouldProcess
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:51:14: error: type 'PushNotificationsStatic' has no member 'registerForPushNotifications'
 49 |     /// - Tag: register
 50 |     @objc public static func registerForRemoteNotifications() {
 51 |         self.registerForPushNotifications(options: [.alert, .sound, .badge])
    |              `- error: type 'PushNotificationsStatic' has no member 'registerForPushNotifications'
 52 |     }
 53 |
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:51:54: error: reference to member 'alert' cannot be resolved without a contextual type
 49 |     /// - Tag: register
 50 |     @objc public static func registerForRemoteNotifications() {
 51 |         self.registerForPushNotifications(options: [.alert, .sound, .badge])
    |                                                      `- error: reference to member 'alert' cannot be resolved without a contextual type
 52 |     }
 53 |
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:51:62: error: reference to member 'sound' cannot be resolved without a contextual type
 49 |     /// - Tag: register
 50 |     @objc public static func registerForRemoteNotifications() {
 51 |         self.registerForPushNotifications(options: [.alert, .sound, .badge])
    |                                                              `- error: reference to member 'sound' cannot be resolved without a contextual type
 52 |     }
 53 |
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:51:70: error: reference to member 'badge' cannot be resolved without a contextual type
 49 |     /// - Tag: register
 50 |     @objc public static func registerForRemoteNotifications() {
 51 |         self.registerForPushNotifications(options: [.alert, .sound, .badge])
    |                                                                      `- error: reference to member 'badge' cannot be resolved without a contextual type
 52 |     }
 53 |
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:297:84: error: cannot find 'eventType' in scope
295 |         #endif
296 |
297 |         let serverSyncProcessHandler = ServerSyncProcessHandler.obtain(instanceId: eventType.getInstanceId())
    |                                                                                    `- error: cannot find 'eventType' in scope
298 |         serverSyncProcessHandler?.sendMessage(serverSyncJob: .reportEventJob(eventType: eventType))
299 |
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:298:89: error: cannot find 'eventType' in scope
296 |
297 |         let serverSyncProcessHandler = ServerSyncProcessHandler.obtain(instanceId: eventType.getInstanceId())
298 |         serverSyncProcessHandler?.sendMessage(serverSyncJob: .reportEventJob(eventType: eventType))
    |                                                                                         `- error: cannot find 'eventType' in scope
299 |
300 |         return EventTypeHandler.getRemoteNotificationType(userInfo)
/host/spi-builder-workspace/Sources/PushNotificationsStatic.swift:298:63: error: cannot infer contextual base in reference to member 'reportEventJob'
296 |
297 |         let serverSyncProcessHandler = ServerSyncProcessHandler.obtain(instanceId: eventType.getInstanceId())
298 |         serverSyncProcessHandler?.sendMessage(serverSyncJob: .reportEventJob(eventType: eventType))
    |                                                               `- error: cannot infer contextual base in reference to member 'reportEventJob'
299 |
300 |         return EventTypeHandler.getRemoteNotificationType(userInfo)
/host/spi-builder-workspace/Sources/Services/BeamsTokenProvider.swift:4:2: error: Objective-C interoperability is disabled
 2 |
 3 | /// Used to generate tokens for users to authenticate against.
 4 | @objc public final class BeamsTokenProvider: NSObject, TokenProvider {
   |  `- error: Objective-C interoperability is disabled
 5 |
 6 |     /// The authentication endpoint URL `String`.
/host/spi-builder-workspace/Sources/Services/BeamsTokenProvider.swift:16:6: error: Objective-C interoperability is disabled
14 |     ///   - authURL: The authentication endpoint URL `String`.
15 |     ///   - getAuthData: A closure that returns an `AuthData` object.
16 |     @objc public init(authURL: String, getAuthData: @escaping () -> (AuthData)) {
   |      `- error: Objective-C interoperability is disabled
17 |         self.authURL = authURL
18 |         self.getAuthData = getAuthData
/host/spi-builder-workspace/Sources/Services/BeamsTokenProvider.swift:30:26: error: 'URLSession' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
28 |         let queryParams = authData.queryParams
29 |
30 |         let urlSession = URLSession(configuration: .ephemeral)
   |                          `- error: 'URLSession' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
31 |
32 |         guard var components = URLComponents(string: authURL) else {
/host/spi-builder-workspace/Sources/Services/BeamsTokenProvider.swift:30:53: error: cannot infer contextual base in reference to member 'ephemeral'
28 |         let queryParams = authData.queryParams
29 |
30 |         let urlSession = URLSession(configuration: .ephemeral)
   |                                                     `- error: cannot infer contextual base in reference to member 'ephemeral'
31 |
32 |         guard var components = URLComponents(string: authURL) else {
/host/spi-builder-workspace/Sources/Services/BeamsTokenProvider.swift:43:26: error: cannot find 'URLRequest' in scope
41 |         }
42 |
43 |         var urlRequest = URLRequest(url: url)
   |                          `- error: cannot find 'URLRequest' in scope
44 |         urlRequest.httpMethod = "GET"
45 |         for header in headers {
/host/spi-builder-workspace/Sources/Services/BeamsTokenProvider.swift:56:46: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
54 |                 return completion("", TokenProviderError.error("[PushNotifications] - BeamsTokenProvider: Error while casting response object to `HTTPURLResponse`"))
55 |             }
56 |             let statusCode = httpURLResponse.statusCode
   |                                              `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
57 |             guard statusCode >= 200 && statusCode < 300 else {
58 |                 return completion("", TokenProviderError.error("[PushNotifications] - BeamsTokenProvider: Received HTTP Status Code: \(statusCode)"))
/host/spi-builder-workspace/Sources/Services/DeviceStateStore.swift:206:24: error: value of type 'UserDefaults' has no member 'value'
204 |
205 |     func getServerConfirmedInterestsHash() -> String {
206 |         return service.value(forKey: PersistenceConstants.PersistenceService.hashKey) as? String ?? ""
    |                        `- error: value of type 'UserDefaults' has no member 'value'
207 |     }
208 |
[31/46] Compiling PushNotifications Array+CalculateMD5Hash.swift
[32/46] Compiling PushNotifications Encodable+Encode.swift
[33/46] Compiling PushNotifications String+HexStringToData.swift
[34/46] Compiling PushNotifications URL+NetworkService.swift
[35/46] Compiling PushNotifications DeviceTokenHelper.swift
[36/46] Compiling PushNotifications MD5.swift
[37/46] Compiling PushNotifications Token.swift
[38/46] Compiling PushNotifications PropertyListReadable.swift
[39/46] Compiling PushNotifications PushNotificationsNetworkable.swift
[40/46] Compiling PushNotifications ReportEventType.swift
[41/46] Compiling PushNotifications RetryStrategy.swift
[42/46] Compiling PushNotifications PushNotificationsAPIError.swift
[43/46] Compiling PushNotifications PushNotificationsError.swift
[44/46] Compiling PushNotifications PusherAlreadyRegisteredError.swift
[45/46] Compiling PushNotifications Reason.swift
[46/46] Compiling PushNotifications Register.swift
BUILD FAILURE 6.0 linux
This is a staging environment. For live and up-to-date package information, visit swiftpackageindex.com.