The Swift Package Index logo.Swift Package Index

Build Information

Failed to build TonConnect, reference 1.0.1 (354279), with Swift 6.3 for Linux on 20 Sep 2026 20:07:49 UTC.

Build Command

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

Build Log

========================================
RunAll
========================================
Builder version: 5.1.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/bbetsey/tonconnect-swift.git
Reference: 1.0.1
Initialized empty Git repository in /host/spi-builder-workspace/.git/
hint: Using 'master' as the name for the initial branch. This default branch name
hint: is subject to change. To configure the initial branch name to use in all
hint: of your new repositories, which will suppress this warning, call:
hint:
hint: 	git config --global init.defaultBranch <name>
hint:
hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
hint: 'development'. The just-created branch can be renamed via this command:
hint:
hint: 	git branch -m <name>
From https://github.com/bbetsey/tonconnect-swift
 * tag               1.0.1      -> FETCH_HEAD
HEAD is now at 3542799 Merge pull request #49 from bbetsey/develop
Cloned https://github.com/bbetsey/tonconnect-swift.git
Revision (git rev-parse @):
35427994b83dbc1842d0a0a5ef63f3ea80dd3487
SPI manifest file found: $PWD/.spi.yml
SUCCESS checkout https://github.com/bbetsey/tonconnect-swift.git at 1.0.1
========================================
Build
========================================
Selected platform:         linux
Swift version:             6.3
Building package at path:  $PWD
https://github.com/bbetsey/tonconnect-swift.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-53886770-2":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/saguaro1/spi-images:basic-6.3-latest swift build --triple x86_64-unknown-linux-gnu 2>&1
basic-6.3-latest: Pulling from saguaro1/spi-images
Digest: sha256:c577f8f8f4df4f423827bf5e7d96027716bb7030ef75b2fd4a15f7fb0043ce6d
Status: Image is up to date for registry.gitlab.com/saguaro1/spi-images:basic-6.3-latest
Fetching https://github.com/swiftlang/swift-docc-plugin
[1/2345] Fetching swift-docc-plugin
Fetched https://github.com/swiftlang/swift-docc-plugin from cache (0.56s)
Computing version for https://github.com/swiftlang/swift-docc-plugin
Computed https://github.com/swiftlang/swift-docc-plugin at 1.5.0 (1.47s)
Fetching https://github.com/swiftlang/swift-docc-symbolkit
[1/3824] Fetching swift-docc-symbolkit
Fetched https://github.com/swiftlang/swift-docc-symbolkit from cache (0.57s)
Computing version for https://github.com/swiftlang/swift-docc-symbolkit
Computed https://github.com/swiftlang/swift-docc-symbolkit at 1.0.0 (0.80s)
Creating working copy for https://github.com/swiftlang/swift-docc-symbolkit
Working copy of https://github.com/swiftlang/swift-docc-symbolkit resolved at 1.0.0
Creating working copy for https://github.com/swiftlang/swift-docc-plugin
Working copy of https://github.com/swiftlang/swift-docc-plugin resolved at 1.5.0
[1/1] Compiling plugin Swift-DocC Preview
[2/2] Compiling plugin Swift-DocC
Building for debugging...
[2/16] Copying wallets-v2.snapshot.json
[2/16] Copying tonconnect-sdk.bundle.js
[4/16] Write sources
[9/16] Copying Media.xcassets
[10/16] Write sources
[13/16] Compiling CTweetNacl randombytes_shim.c
[14/16] Compiling CTweetNacl tweetnacl.c
[15/16] Write swift-version-24593BA9C3E375BF.txt
error: emit-module command failed with exit code 1 (use -v to see invocation)
[17/40] Emitting module TonConnectCore
/host/spi-builder-workspace/Sources/TonConnectCore/Storage/KeychainStorage.swift:2:8: error: no such module 'Security'
 1 | import Foundation
 2 | import Security
   |        `- error: no such module 'Security'
 3 |
 4 | /// The default session store: `TonConnectStorage` on top of the Security
[18/42] Compiling TonConnectCore WalletLink.swift
/host/spi-builder-workspace/Sources/TonConnectCore/Storage/KeychainStorage.swift:2:8: error: no such module 'Security'
 1 | import Foundation
 2 | import Security
   |        `- error: no such module 'Security'
 3 |
 4 | /// The default session store: `TonConnectStorage` on top of the Security
[19/42] Compiling TonConnectCore WalletOpener.swift
/host/spi-builder-workspace/Sources/TonConnectCore/Storage/KeychainStorage.swift:2:8: error: no such module 'Security'
 1 | import Foundation
 2 | import Security
   |        `- error: no such module 'Security'
 3 |
 4 | /// The default session store: `TonConnectStorage` on top of the Security
[20/42] Compiling TonConnectCore InMemoryStorage.swift
/host/spi-builder-workspace/Sources/TonConnectCore/Storage/KeychainStorage.swift:2:8: error: no such module 'Security'
 1 | import Foundation
 2 | import Security
   |        `- error: no such module 'Security'
 3 |
 4 | /// The default session store: `TonConnectStorage` on top of the Security
[21/42] Compiling TonConnectCore KeychainStorage.swift
/host/spi-builder-workspace/Sources/TonConnectCore/Storage/KeychainStorage.swift:2:8: error: no such module 'Security'
 1 | import Foundation
 2 | import Security
   |        `- error: no such module 'Security'
 3 |
 4 | /// The default session store: `TonConnectStorage` on top of the Security
[22/42] Compiling TonConnectCore SessionKey.swift
/host/spi-builder-workspace/Sources/TonConnectCore/Storage/KeychainStorage.swift:2:8: error: no such module 'Security'
 1 | import Foundation
 2 | import Security
   |        `- error: no such module 'Security'
 3 |
 4 | /// The default session store: `TonConnectStorage` on top of the Security
[23/42] Compiling TonConnectTransport SSEEventParser.swift
[24/42] Compiling TonConnectCore AppRequest.swift
/host/spi-builder-workspace/Sources/TonConnectCore/Storage/KeychainStorage.swift:2:8: error: no such module 'Security'
 1 | import Foundation
 2 | import Security
   |        `- error: no such module 'Security'
 3 |
 4 | /// The default session store: `TonConnectStorage` on top of the Security
[25/42] Compiling TonConnectCore ConnectEvent.swift
/host/spi-builder-workspace/Sources/TonConnectCore/Storage/KeychainStorage.swift:2:8: error: no such module 'Security'
 1 | import Foundation
 2 | import Security
   |        `- error: no such module 'Security'
 3 |
 4 | /// The default session store: `TonConnectStorage` on top of the Security
[26/42] Compiling TonConnectCore ConnectRequest.swift
/host/spi-builder-workspace/Sources/TonConnectCore/Storage/KeychainStorage.swift:2:8: error: no such module 'Security'
 1 | import Foundation
 2 | import Security
   |        `- error: no such module 'Security'
 3 |
 4 | /// The default session store: `TonConnectStorage` on top of the Security
[27/42] Compiling TonConnectCore TonConnectError.swift
/host/spi-builder-workspace/Sources/TonConnectCore/Storage/KeychainStorage.swift:2:8: error: no such module 'Security'
 1 | import Foundation
 2 | import Security
   |        `- error: no such module 'Security'
 3 |
 4 | /// The default session store: `TonConnectStorage` on top of the Security
[28/42] Compiling TonConnectCore Account+UserFriendly.swift
/host/spi-builder-workspace/Sources/TonConnectCore/Storage/KeychainStorage.swift:2:8: error: no such module 'Security'
 1 | import Foundation
 2 | import Security
   |        `- error: no such module 'Security'
 3 |
 4 | /// The default session store: `TonConnectStorage` on top of the Security
[29/42] Compiling TonConnectCore Account.swift
/host/spi-builder-workspace/Sources/TonConnectCore/Storage/KeychainStorage.swift:2:8: error: no such module 'Security'
 1 | import Foundation
 2 | import Security
   |        `- error: no such module 'Security'
 3 |
 4 | /// The default session store: `TonConnectStorage` on top of the Security
error: emit-module command failed with exit code 1 (use -v to see invocation)
[30/42] Emitting module TonConnectTransport
/host/spi-builder-workspace/Sources/TonConnectTransport/NativeEventSource.swift:24:26: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 22 |     private let lastEventId: String?
 23 |     private var parser = SSEEventParser()
 24 |     private var session: URLSession!
    |                          `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 25 |     private var task: URLSessionDataTask?
 26 |     private let stateLock = NSLock()
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/TonConnectTransport/NativeEventSource.swift:25:23: error: 'URLSessionDataTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 23 |     private var parser = SSEEventParser()
 24 |     private var session: URLSession!
 25 |     private var task: URLSessionDataTask?
    |                       `- error: 'URLSessionDataTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 26 |     private let stateLock = NSLock()
 27 |     private var _readyState: ReadyState = .connecting
Foundation.URLSessionDataTask:2:18: note: 'URLSessionDataTask' 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 URLSessionDataTask = AnyObject
  |                  `- note: 'URLSessionDataTask' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/TonConnectTransport/NativeEventSource.swift:31:31: error: 'URLSessionConfiguration' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 29 |     /// protocolClasses. URLProtocol.registerClass has no effect on sessions with
 30 |     /// a custom configuration (verified empirically).
 31 |     var sessionConfiguration: URLSessionConfiguration = .ephemeral
    |                               `- error: 'URLSessionConfiguration' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 32 |
 33 |     /// The stream is open — set these before calling ``connect()``.
Foundation.URLSessionConfiguration:2:18: note: 'URLSessionConfiguration' 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 URLSessionConfiguration = AnyObject
  |                  `- note: 'URLSessionConfiguration' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/TonConnectTransport/NativeEventSource.swift:31:58: error: type 'URLSessionConfiguration' (aka 'AnyObject') has no member 'ephemeral'
 29 |     /// protocolClasses. URLProtocol.registerClass has no effect on sessions with
 30 |     /// a custom configuration (verified empirically).
 31 |     var sessionConfiguration: URLSessionConfiguration = .ephemeral
    |                                                          `- error: type 'URLSessionConfiguration' (aka 'AnyObject') has no member 'ephemeral'
 32 |
 33 |     /// The stream is open — set these before calling ``connect()``.
/host/spi-builder-workspace/Sources/TonConnectTransport/NativeEventSource.swift:31:58: error: value of type '_' expected to be instance of class or class-constrained type
 29 |     /// protocolClasses. URLProtocol.registerClass has no effect on sessions with
 30 |     /// a custom configuration (verified empirically).
 31 |     var sessionConfiguration: URLSessionConfiguration = .ephemeral
    |                                                          `- error: value of type '_' expected to be instance of class or class-constrained type
 32 |
 33 |     /// The stream is open — set these before calling ``connect()``.
/host/spi-builder-workspace/Sources/TonConnectTransport/NativeEventSource.swift:55:39: error: 'URLSessionConfiguration' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 53 |     /// sessionConfiguration — a seam for tests/debugging (the fake's protocolClasses).
 54 |     public init(url: String, lastEventId: String?,
 55 |                 sessionConfiguration: URLSessionConfiguration = .ephemeral) {
    |                                       `- error: 'URLSessionConfiguration' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 56 |         self.url = url
 57 |         self.lastEventId = lastEventId
Foundation.URLSessionConfiguration:2:18: note: 'URLSessionConfiguration' 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 URLSessionConfiguration = AnyObject
  |                  `- note: 'URLSessionConfiguration' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/TonConnectTransport/NativeEventSource.swift:55:66: error: type 'URLSessionConfiguration' (aka 'AnyObject') has no member 'ephemeral'
 53 |     /// sessionConfiguration — a seam for tests/debugging (the fake's protocolClasses).
 54 |     public init(url: String, lastEventId: String?,
 55 |                 sessionConfiguration: URLSessionConfiguration = .ephemeral) {
    |                                                                  `- error: type 'URLSessionConfiguration' (aka 'AnyObject') has no member 'ephemeral'
 56 |         self.url = url
 57 |         self.lastEventId = lastEventId
/host/spi-builder-workspace/Sources/TonConnectTransport/NativeEventSource.swift:55:66: error: value of type '_' expected to be instance of class or class-constrained type
 53 |     /// sessionConfiguration — a seam for tests/debugging (the fake's protocolClasses).
 54 |     public init(url: String, lastEventId: String?,
 55 |                 sessionConfiguration: URLSessionConfiguration = .ephemeral) {
    |                                                                  `- error: value of type '_' expected to be instance of class or class-constrained type
 56 |         self.url = url
 57 |         self.lastEventId = lastEventId
/host/spi-builder-workspace/Sources/TonConnectTransport/NativeEventSource.swift:92:30: error: cannot find type 'URLSessionDataDelegate' in scope
 90 | }
 91 |
 92 | extension NativeEventSource: URLSessionDataDelegate {
    |                              `- error: cannot find type 'URLSessionDataDelegate' in scope
 93 |     public func urlSession(_ s: URLSession, dataTask: URLSessionDataTask,
 94 |                            didReceive response: URLResponse,
/host/spi-builder-workspace/Sources/TonConnectTransport/NativeEventSource.swift:95:69: error: 'ResponseDisposition' is not a member type of type 'Foundation.URLSession' (aka 'AnyObject')
 93 |     public func urlSession(_ s: URLSession, dataTask: URLSessionDataTask,
 94 |                            didReceive response: URLResponse,
 95 |                            completionHandler: @escaping (URLSession.ResponseDisposition) -> Void) {
    |                                                                     `- error: 'ResponseDisposition' is not a member type of type 'Foundation.URLSession' (aka 'AnyObject')
 96 |         let code = (response as? HTTPURLResponse)?.statusCode ?? 0
 97 |         guard (200..<300).contains(code) else {
/host/spi-builder-workspace/Sources/TonConnectTransport/NativeEventSource.swift:93:33: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 91 |
 92 | extension NativeEventSource: URLSessionDataDelegate {
 93 |     public func urlSession(_ s: URLSession, dataTask: URLSessionDataTask,
    |                                 `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 94 |                            didReceive response: URLResponse,
 95 |                            completionHandler: @escaping (URLSession.ResponseDisposition) -> Void) {
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/TonConnectTransport/NativeEventSource.swift:93:55: error: 'URLSessionDataTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 91 |
 92 | extension NativeEventSource: URLSessionDataDelegate {
 93 |     public func urlSession(_ s: URLSession, dataTask: URLSessionDataTask,
    |                                                       `- error: 'URLSessionDataTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 94 |                            didReceive response: URLResponse,
 95 |                            completionHandler: @escaping (URLSession.ResponseDisposition) -> Void) {
Foundation.URLSessionDataTask:2:18: note: 'URLSessionDataTask' 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 URLSessionDataTask = AnyObject
  |                  `- note: 'URLSessionDataTask' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/TonConnectTransport/NativeEventSource.swift:94:49: error: 'URLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 92 | extension NativeEventSource: URLSessionDataDelegate {
 93 |     public func urlSession(_ s: URLSession, dataTask: URLSessionDataTask,
 94 |                            didReceive response: URLResponse,
    |                                                 `- error: 'URLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 95 |                            completionHandler: @escaping (URLSession.ResponseDisposition) -> Void) {
 96 |         let code = (response as? HTTPURLResponse)?.statusCode ?? 0
Foundation.URLResponse:2:18: note: 'URLResponse' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLResponse = AnyObject
  |                  `- note: 'URLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/TonConnectTransport/NativeEventSource.swift:110:33: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
108 |         completionHandler(.allow)
109 |     }
110 |     public func urlSession(_ s: URLSession, dataTask: URLSessionDataTask, didReceive data: Data) {
    |                                 `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
111 |         guard readyState == .open else { return } // a body after a refusal or a close
112 |         onRawData?(data) // "the stream sent something" — record BEFORE parsing
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/TonConnectTransport/NativeEventSource.swift:110:55: error: 'URLSessionDataTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
108 |         completionHandler(.allow)
109 |     }
110 |     public func urlSession(_ s: URLSession, dataTask: URLSessionDataTask, didReceive data: Data) {
    |                                                       `- error: 'URLSessionDataTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
111 |         guard readyState == .open else { return } // a body after a refusal or a close
112 |         onRawData?(data) // "the stream sent something" — record BEFORE parsing
Foundation.URLSessionDataTask:2:18: note: 'URLSessionDataTask' 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 URLSessionDataTask = AnyObject
  |                  `- note: 'URLSessionDataTask' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/TonConnectTransport/NativeEventSource.swift:122:33: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
120 |         }
121 |     }
122 |     public func urlSession(_ s: URLSession, task: URLSessionTask, didCompleteWithError error: Error?) {
    |                                 `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
123 |         // The stream finished/dropped. NO reconnect — signal only.
124 |         if readyState != .closed { fail(error) }
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/TonConnectTransport/NativeEventSource.swift:122:51: error: 'URLSessionTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
120 |         }
121 |     }
122 |     public func urlSession(_ s: URLSession, task: URLSessionTask, didCompleteWithError error: Error?) {
    |                                                   `- error: 'URLSessionTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
123 |         // The stream finished/dropped. NO reconnect — signal only.
124 |         if readyState != .closed { fail(error) }
Foundation.URLSessionTask:2:18: note: 'URLSessionTask' 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 URLSessionTask = AnyObject
  |                  `- note: 'URLSessionTask' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/TonConnectTransport/NativeFetch.swift:11:23: error: 'URLSessionDataTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 9 | /// The cancellation handle — the polyfill wires it to a JS AbortSignal. Pure Swift.
10 | public final class NativeFetchTask: @unchecked Sendable {
11 |     private let task: URLSessionDataTask
   |                       `- error: 'URLSessionDataTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
12 |     init(_ task: URLSessionDataTask) { self.task = task }
13 |     public func cancel() { task.cancel() }
Foundation.URLSessionDataTask:2:18: note: 'URLSessionDataTask' 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 URLSessionDataTask = AnyObject
  |                  `- note: 'URLSessionDataTask' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/TonConnectTransport/NativeFetch.swift:12:18: error: 'URLSessionDataTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
10 | public final class NativeFetchTask: @unchecked Sendable {
11 |     private let task: URLSessionDataTask
12 |     init(_ task: URLSessionDataTask) { self.task = task }
   |                  `- error: 'URLSessionDataTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
13 |     public func cancel() { task.cancel() }
14 | }
Foundation.URLSessionDataTask:2:18: note: 'URLSessionDataTask' 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 URLSessionDataTask = AnyObject
  |                  `- note: 'URLSessionDataTask' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/TonConnectTransport/NativeFetch.swift:20:26: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
18 | /// carried into the completion as .failure → the polyfill maps it to TonConnectError.network.
19 | public final class NativeFetch: @unchecked Sendable {
20 |     private let session: URLSession
   |                          `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
21 |     public init(session: URLSession = URLSession(configuration: .ephemeral)) {
22 |         self.session = session
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/TonConnectTransport/NativeFetch.swift:21:26: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
19 | public final class NativeFetch: @unchecked Sendable {
20 |     private let session: URLSession
21 |     public init(session: URLSession = URLSession(configuration: .ephemeral)) {
   |                          `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
22 |         self.session = session
23 |     }
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/TonConnectTransport/NativeFetch.swift:21:39: error: 'URLSession' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
19 | public final class NativeFetch: @unchecked Sendable {
20 |     private let session: URLSession
21 |     public init(session: URLSession = URLSession(configuration: .ephemeral)) {
   |                                       `- error: 'URLSession' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
22 |         self.session = session
23 |     }
/host/spi-builder-workspace/Sources/TonConnectTransport/NativeFetch.swift:21:66: error: cannot infer contextual base in reference to member 'ephemeral'
19 | public final class NativeFetch: @unchecked Sendable {
20 |     private let session: URLSession
21 |     public init(session: URLSession = URLSession(configuration: .ephemeral)) {
   |                                                                  `- error: cannot infer contextual base in reference to member 'ephemeral'
22 |         self.session = session
23 |     }
[31/42] Compiling TonConnectTransport NativeFetch.swift
/host/spi-builder-workspace/Sources/TonConnectTransport/NativeFetch.swift:11:23: error: 'URLSessionDataTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 9 | /// The cancellation handle — the polyfill wires it to a JS AbortSignal. Pure Swift.
10 | public final class NativeFetchTask: @unchecked Sendable {
11 |     private let task: URLSessionDataTask
   |                       `- error: 'URLSessionDataTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
12 |     init(_ task: URLSessionDataTask) { self.task = task }
13 |     public func cancel() { task.cancel() }
Foundation.URLSessionDataTask:2:18: note: 'URLSessionDataTask' 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 URLSessionDataTask = AnyObject
  |                  `- note: 'URLSessionDataTask' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/TonConnectTransport/NativeFetch.swift:12:18: error: 'URLSessionDataTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
10 | public final class NativeFetchTask: @unchecked Sendable {
11 |     private let task: URLSessionDataTask
12 |     init(_ task: URLSessionDataTask) { self.task = task }
   |                  `- error: 'URLSessionDataTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
13 |     public func cancel() { task.cancel() }
14 | }
Foundation.URLSessionDataTask:2:18: note: 'URLSessionDataTask' 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 URLSessionDataTask = AnyObject
  |                  `- note: 'URLSessionDataTask' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/TonConnectTransport/NativeFetch.swift:20:26: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
18 | /// carried into the completion as .failure → the polyfill maps it to TonConnectError.network.
19 | public final class NativeFetch: @unchecked Sendable {
20 |     private let session: URLSession
   |                          `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
21 |     public init(session: URLSession = URLSession(configuration: .ephemeral)) {
22 |         self.session = session
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/TonConnectTransport/NativeFetch.swift:21:26: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
19 | public final class NativeFetch: @unchecked Sendable {
20 |     private let session: URLSession
21 |     public init(session: URLSession = URLSession(configuration: .ephemeral)) {
   |                          `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
22 |         self.session = session
23 |     }
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/TonConnectTransport/NativeFetch.swift:21:39: error: 'URLSession' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
19 | public final class NativeFetch: @unchecked Sendable {
20 |     private let session: URLSession
21 |     public init(session: URLSession = URLSession(configuration: .ephemeral)) {
   |                                       `- error: 'URLSession' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
22 |         self.session = session
23 |     }
/host/spi-builder-workspace/Sources/TonConnectTransport/NativeFetch.swift:21:66: error: cannot infer contextual base in reference to member 'ephemeral'
19 | public final class NativeFetch: @unchecked Sendable {
20 |     private let session: URLSession
21 |     public init(session: URLSession = URLSession(configuration: .ephemeral)) {
   |                                                                  `- error: cannot infer contextual base in reference to member 'ephemeral'
22 |         self.session = session
23 |     }
/host/spi-builder-workspace/Sources/TonConnectTransport/NativeFetch.swift:13:33: error: value of type 'URLSessionDataTask' (aka 'AnyObject') has no member 'cancel'
11 |     private let task: URLSessionDataTask
12 |     init(_ task: URLSessionDataTask) { self.task = task }
13 |     public func cancel() { task.cancel() }
   |                                 `- error: value of type 'URLSessionDataTask' (aka 'AnyObject') has no member 'cancel'
14 | }
15 |
/host/spi-builder-workspace/Sources/TonConnectTransport/NativeFetch.swift:35:59: error: cannot find 'URLRequest' in scope
33 |         guard let parsed = URL(string: url) else {
34 |             completion(.failure(URLError(.badURL)))
35 |             return NativeFetchTask(session.dataTask(with: URLRequest(url: URL(string: "about:blank")!)))
   |                                                           `- error: cannot find 'URLRequest' in scope
36 |         }
37 |         var request = URLRequest(url: parsed)
/host/spi-builder-workspace/Sources/TonConnectTransport/NativeFetch.swift:35:44: error: value of type 'URLSession' (aka 'AnyObject') has no member 'dataTask'
33 |         guard let parsed = URL(string: url) else {
34 |             completion(.failure(URLError(.badURL)))
35 |             return NativeFetchTask(session.dataTask(with: URLRequest(url: URL(string: "about:blank")!)))
   |                                            `- error: value of type 'URLSession' (aka 'AnyObject') has no member 'dataTask'
36 |         }
37 |         var request = URLRequest(url: parsed)
/host/spi-builder-workspace/Sources/TonConnectTransport/NativeFetch.swift:37:23: error: cannot find 'URLRequest' in scope
35 |             return NativeFetchTask(session.dataTask(with: URLRequest(url: URL(string: "about:blank")!)))
36 |         }
37 |         var request = URLRequest(url: parsed)
   |                       `- error: cannot find 'URLRequest' in scope
38 |         request.httpMethod = "POST"
39 |         // Browser-fetch parity: fetch with a string body defaults to
/host/spi-builder-workspace/Sources/TonConnectTransport/NativeFetch.swift:45:28: error: value of type 'URLSession' (aka 'AnyObject') has no member 'dataTask'
43 |         request.setValue("text/plain;charset=UTF-8", forHTTPHeaderField: "Content-Type")
44 |         request.httpBody = body
45 |         let task = session.dataTask(with: request) { _, response, error in
   |                            `- error: value of type 'URLSession' (aka 'AnyObject') has no member 'dataTask'
46 |             if let error = error {
47 |                 completion(.failure(error)); return
[32/42] Compiling TonConnectTransport NativeEventSource.swift
/host/spi-builder-workspace/Sources/TonConnectTransport/NativeEventSource.swift:24:26: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 22 |     private let lastEventId: String?
 23 |     private var parser = SSEEventParser()
 24 |     private var session: URLSession!
    |                          `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 25 |     private var task: URLSessionDataTask?
 26 |     private let stateLock = NSLock()
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/TonConnectTransport/NativeEventSource.swift:25:23: error: 'URLSessionDataTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 23 |     private var parser = SSEEventParser()
 24 |     private var session: URLSession!
 25 |     private var task: URLSessionDataTask?
    |                       `- error: 'URLSessionDataTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 26 |     private let stateLock = NSLock()
 27 |     private var _readyState: ReadyState = .connecting
Foundation.URLSessionDataTask:2:18: note: 'URLSessionDataTask' 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 URLSessionDataTask = AnyObject
  |                  `- note: 'URLSessionDataTask' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/TonConnectTransport/NativeEventSource.swift:31:31: error: 'URLSessionConfiguration' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 29 |     /// protocolClasses. URLProtocol.registerClass has no effect on sessions with
 30 |     /// a custom configuration (verified empirically).
 31 |     var sessionConfiguration: URLSessionConfiguration = .ephemeral
    |                               `- error: 'URLSessionConfiguration' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 32 |
 33 |     /// The stream is open — set these before calling ``connect()``.
Foundation.URLSessionConfiguration:2:18: note: 'URLSessionConfiguration' 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 URLSessionConfiguration = AnyObject
  |                  `- note: 'URLSessionConfiguration' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/TonConnectTransport/NativeEventSource.swift:31:58: error: value of type '_' expected to be instance of class or class-constrained type
 29 |     /// protocolClasses. URLProtocol.registerClass has no effect on sessions with
 30 |     /// a custom configuration (verified empirically).
 31 |     var sessionConfiguration: URLSessionConfiguration = .ephemeral
    |                                                          `- error: value of type '_' expected to be instance of class or class-constrained type
 32 |
 33 |     /// The stream is open — set these before calling ``connect()``.
/host/spi-builder-workspace/Sources/TonConnectTransport/NativeEventSource.swift:31:58: error: type 'URLSessionConfiguration' (aka 'AnyObject') has no member 'ephemeral'
 29 |     /// protocolClasses. URLProtocol.registerClass has no effect on sessions with
 30 |     /// a custom configuration (verified empirically).
 31 |     var sessionConfiguration: URLSessionConfiguration = .ephemeral
    |                                                          `- error: type 'URLSessionConfiguration' (aka 'AnyObject') has no member 'ephemeral'
 32 |
 33 |     /// The stream is open — set these before calling ``connect()``.
/host/spi-builder-workspace/Sources/TonConnectTransport/NativeEventSource.swift:55:39: error: 'URLSessionConfiguration' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 53 |     /// sessionConfiguration — a seam for tests/debugging (the fake's protocolClasses).
 54 |     public init(url: String, lastEventId: String?,
 55 |                 sessionConfiguration: URLSessionConfiguration = .ephemeral) {
    |                                       `- error: 'URLSessionConfiguration' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 56 |         self.url = url
 57 |         self.lastEventId = lastEventId
Foundation.URLSessionConfiguration:2:18: note: 'URLSessionConfiguration' 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 URLSessionConfiguration = AnyObject
  |                  `- note: 'URLSessionConfiguration' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/TonConnectTransport/NativeEventSource.swift:55:66: error: type 'URLSessionConfiguration' (aka 'AnyObject') has no member 'ephemeral'
 53 |     /// sessionConfiguration — a seam for tests/debugging (the fake's protocolClasses).
 54 |     public init(url: String, lastEventId: String?,
 55 |                 sessionConfiguration: URLSessionConfiguration = .ephemeral) {
    |                                                                  `- error: type 'URLSessionConfiguration' (aka 'AnyObject') has no member 'ephemeral'
 56 |         self.url = url
 57 |         self.lastEventId = lastEventId
/host/spi-builder-workspace/Sources/TonConnectTransport/NativeEventSource.swift:55:66: error: value of type '_' expected to be instance of class or class-constrained type
 53 |     /// sessionConfiguration — a seam for tests/debugging (the fake's protocolClasses).
 54 |     public init(url: String, lastEventId: String?,
 55 |                 sessionConfiguration: URLSessionConfiguration = .ephemeral) {
    |                                                                  `- error: value of type '_' expected to be instance of class or class-constrained type
 56 |         self.url = url
 57 |         self.lastEventId = lastEventId
/host/spi-builder-workspace/Sources/TonConnectTransport/NativeEventSource.swift:92:30: error: cannot find type 'URLSessionDataDelegate' in scope
 90 | }
 91 |
 92 | extension NativeEventSource: URLSessionDataDelegate {
    |                              `- error: cannot find type 'URLSessionDataDelegate' in scope
 93 |     public func urlSession(_ s: URLSession, dataTask: URLSessionDataTask,
 94 |                            didReceive response: URLResponse,
/host/spi-builder-workspace/Sources/TonConnectTransport/NativeEventSource.swift:95:69: error: 'ResponseDisposition' is not a member type of type 'Foundation.URLSession' (aka 'AnyObject')
 93 |     public func urlSession(_ s: URLSession, dataTask: URLSessionDataTask,
 94 |                            didReceive response: URLResponse,
 95 |                            completionHandler: @escaping (URLSession.ResponseDisposition) -> Void) {
    |                                                                     `- error: 'ResponseDisposition' is not a member type of type 'Foundation.URLSession' (aka 'AnyObject')
 96 |         let code = (response as? HTTPURLResponse)?.statusCode ?? 0
 97 |         guard (200..<300).contains(code) else {
/host/spi-builder-workspace/Sources/TonConnectTransport/NativeEventSource.swift:93:33: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 91 |
 92 | extension NativeEventSource: URLSessionDataDelegate {
 93 |     public func urlSession(_ s: URLSession, dataTask: URLSessionDataTask,
    |                                 `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 94 |                            didReceive response: URLResponse,
 95 |                            completionHandler: @escaping (URLSession.ResponseDisposition) -> Void) {
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/TonConnectTransport/NativeEventSource.swift:93:55: error: 'URLSessionDataTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 91 |
 92 | extension NativeEventSource: URLSessionDataDelegate {
 93 |     public func urlSession(_ s: URLSession, dataTask: URLSessionDataTask,
    |                                                       `- error: 'URLSessionDataTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 94 |                            didReceive response: URLResponse,
 95 |                            completionHandler: @escaping (URLSession.ResponseDisposition) -> Void) {
Foundation.URLSessionDataTask:2:18: note: 'URLSessionDataTask' 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 URLSessionDataTask = AnyObject
  |                  `- note: 'URLSessionDataTask' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/TonConnectTransport/NativeEventSource.swift:94:49: error: 'URLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 92 | extension NativeEventSource: URLSessionDataDelegate {
 93 |     public func urlSession(_ s: URLSession, dataTask: URLSessionDataTask,
 94 |                            didReceive response: URLResponse,
    |                                                 `- error: 'URLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
 95 |                            completionHandler: @escaping (URLSession.ResponseDisposition) -> Void) {
 96 |         let code = (response as? HTTPURLResponse)?.statusCode ?? 0
Foundation.URLResponse:2:18: note: 'URLResponse' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLResponse = AnyObject
  |                  `- note: 'URLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/TonConnectTransport/NativeEventSource.swift:110:33: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
108 |         completionHandler(.allow)
109 |     }
110 |     public func urlSession(_ s: URLSession, dataTask: URLSessionDataTask, didReceive data: Data) {
    |                                 `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
111 |         guard readyState == .open else { return } // a body after a refusal or a close
112 |         onRawData?(data) // "the stream sent something" — record BEFORE parsing
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/TonConnectTransport/NativeEventSource.swift:110:55: error: 'URLSessionDataTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
108 |         completionHandler(.allow)
109 |     }
110 |     public func urlSession(_ s: URLSession, dataTask: URLSessionDataTask, didReceive data: Data) {
    |                                                       `- error: 'URLSessionDataTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
111 |         guard readyState == .open else { return } // a body after a refusal or a close
112 |         onRawData?(data) // "the stream sent something" — record BEFORE parsing
Foundation.URLSessionDataTask:2:18: note: 'URLSessionDataTask' 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 URLSessionDataTask = AnyObject
  |                  `- note: 'URLSessionDataTask' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/TonConnectTransport/NativeEventSource.swift:122:33: error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
120 |         }
121 |     }
122 |     public func urlSession(_ s: URLSession, task: URLSessionTask, didCompleteWithError error: Error?) {
    |                                 `- error: 'URLSession' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
123 |         // The stream finished/dropped. NO reconnect — signal only.
124 |         if readyState != .closed { fail(error) }
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/TonConnectTransport/NativeEventSource.swift:122:51: error: 'URLSessionTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
120 |         }
121 |     }
122 |     public func urlSession(_ s: URLSession, task: URLSessionTask, didCompleteWithError error: Error?) {
    |                                                   `- error: 'URLSessionTask' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
123 |         // The stream finished/dropped. NO reconnect — signal only.
124 |         if readyState != .closed { fail(error) }
Foundation.URLSessionTask:2:18: note: 'URLSessionTask' 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 URLSessionTask = AnyObject
  |                  `- note: 'URLSessionTask' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/TonConnectTransport/NativeEventSource.swift:71:23: error: cannot find 'URLRequest' in scope
 69 |         }
 70 |         guard let resolved = components?.url else { fail(URLError(.badURL)); return }
 71 |         var request = URLRequest(url: resolved)
    |                       `- error: cannot find 'URLRequest' in scope
 72 |         request.setValue("text/event-stream", forHTTPHeaderField: "Accept")
 73 |         request.timeoutInterval = TimeInterval.infinity // the SSE stream is long-lived — no waiting timeout
/host/spi-builder-workspace/Sources/TonConnectTransport/NativeEventSource.swift:74:19: error: 'URLSession' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
 72 |         request.setValue("text/event-stream", forHTTPHeaderField: "Accept")
 73 |         request.timeoutInterval = TimeInterval.infinity // the SSE stream is long-lived — no waiting timeout
 74 |         session = URLSession(configuration: sessionConfiguration, delegate: self, delegateQueue: nil)
    |                   `- error: 'URLSession' (aka 'AnyObject') cannot be constructed because it has no accessible initializers
 75 |         let task = session.dataTask(with: request)
 76 |         self.task = task
/host/spi-builder-workspace/Sources/TonConnectTransport/NativeEventSource.swift:74:98: error: 'nil' requires a contextual type
 72 |         request.setValue("text/event-stream", forHTTPHeaderField: "Accept")
 73 |         request.timeoutInterval = TimeInterval.infinity // the SSE stream is long-lived — no waiting timeout
 74 |         session = URLSession(configuration: sessionConfiguration, delegate: self, delegateQueue: nil)
    |                                                                                                  `- error: 'nil' requires a contextual type
 75 |         let task = session.dataTask(with: request)
 76 |         self.task = task
/host/spi-builder-workspace/Sources/TonConnectTransport/NativeEventSource.swift:75:28: error: value of type 'URLSession' (aka 'AnyObject') has no member 'dataTask'
 73 |         request.timeoutInterval = TimeInterval.infinity // the SSE stream is long-lived — no waiting timeout
 74 |         session = URLSession(configuration: sessionConfiguration, delegate: self, delegateQueue: nil)
 75 |         let task = session.dataTask(with: request)
    |                            `- error: value of type 'URLSession' (aka 'AnyObject') has no member 'dataTask'
 76 |         self.task = task
 77 |         setState(.connecting)
/host/spi-builder-workspace/Sources/TonConnectTransport/NativeEventSource.swift:84:15: error: value of type 'URLSessionDataTask' (aka 'AnyObject') has no member 'cancel'
 82 |     public func close() {
 83 |         setState(.closed)
 84 |         task?.cancel()
    |               `- error: value of type 'URLSessionDataTask' (aka 'AnyObject') has no member 'cancel'
 85 |         session?.invalidateAndCancel()
 86 |     }
/host/spi-builder-workspace/Sources/TonConnectTransport/NativeEventSource.swift:85:18: error: value of type 'URLSession' (aka 'AnyObject') has no member 'invalidateAndCancel'
 83 |         setState(.closed)
 84 |         task?.cancel()
 85 |         session?.invalidateAndCancel()
    |                  `- error: value of type 'URLSession' (aka 'AnyObject') has no member 'invalidateAndCancel'
 86 |     }
 87 |
/host/spi-builder-workspace/Sources/TonConnectTransport/NativeEventSource.swift:96:30: warning: conditional cast from 'URLResponse' (aka 'AnyObject') to 'HTTPURLResponse' (aka 'AnyObject') always succeeds
 94 |                            didReceive response: URLResponse,
 95 |                            completionHandler: @escaping (URLSession.ResponseDisposition) -> Void) {
 96 |         let code = (response as? HTTPURLResponse)?.statusCode ?? 0
    |                              `- warning: conditional cast from 'URLResponse' (aka 'AnyObject') to 'HTTPURLResponse' (aka 'AnyObject') always succeeds
 97 |         guard (200..<300).contains(code) else {
 98 |             // A refusal is a refusal. The body used to be fed to the parser like a
/host/spi-builder-workspace/Sources/TonConnectTransport/NativeEventSource.swift:96:52: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
 94 |                            didReceive response: URLResponse,
 95 |                            completionHandler: @escaping (URLSession.ResponseDisposition) -> Void) {
 96 |         let code = (response as? HTTPURLResponse)?.statusCode ?? 0
    |                                                    `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
 97 |         guard (200..<300).contains(code) else {
 98 |             // A refusal is a refusal. The body used to be fed to the parser like a
/host/spi-builder-workspace/Sources/TonConnectTransport/NativeEventSource.swift:102:32: error: cannot infer contextual base in reference to member 'cancel'
100 |             // last_event_id and went into the session record, and its bytes
101 |             // re-armed the heartbeat watchdog.
102 |             completionHandler(.cancel)
    |                                `- error: cannot infer contextual base in reference to member 'cancel'
103 |             fail(NativeEventSourceError.httpStatus(code))
104 |             return
/host/spi-builder-workspace/Sources/TonConnectTransport/NativeEventSource.swift:108:28: error: cannot infer contextual base in reference to member 'allow'
106 |         setState(.open)
107 |         onOpen?()
108 |         completionHandler(.allow)
    |                            `- error: cannot infer contextual base in reference to member 'allow'
109 |     }
110 |     public func urlSession(_ s: URLSession, dataTask: URLSessionDataTask, didReceive data: Data) {
/host/spi-builder-workspace/Sources/TonConnectTransport/NativeEventSource.swift:118:22: error: value of type 'URLSessionDataTask' (aka 'AnyObject') has no member 'cancel'
116 |             // that follows the cancel must not be reported as a second error.
117 |             setState(.closed)
118 |             dataTask.cancel()
    |                      `- error: value of type 'URLSessionDataTask' (aka 'AnyObject') has no member 'cancel'
119 |             onError?(NativeEventSourceError.limitExceeded(violation))
120 |         }
[33/42] Compiling TonConnectCore WalletConnectionSource.swift
/host/spi-builder-workspace/Sources/TonConnectCore/Storage/KeychainStorage.swift:2:8: error: no such module 'Security'
 1 | import Foundation
 2 | import Security
   |        `- error: no such module 'Security'
 3 |
 4 | /// The default session store: `TonConnectStorage` on top of the Security
[34/42] Compiling TonConnectCore WalletManifest.swift
/host/spi-builder-workspace/Sources/TonConnectCore/Storage/KeychainStorage.swift:2:8: error: no such module 'Security'
 1 | import Foundation
 2 | import Security
   |        `- error: no such module 'Security'
 3 |
 4 | /// The default session store: `TonConnectStorage` on top of the Security
[35/42] Compiling TonConnectCore WalletResponse.swift
/host/spi-builder-workspace/Sources/TonConnectCore/Storage/KeychainStorage.swift:2:8: error: no such module 'Security'
 1 | import Foundation
 2 | import Security
   |        `- error: no such module 'Security'
 3 |
 4 | /// The default session store: `TonConnectStorage` on top of the Security
[36/42] Compiling TonConnectCore TonConnectStorage.swift
/host/spi-builder-workspace/Sources/TonConnectCore/Storage/KeychainStorage.swift:2:8: error: no such module 'Security'
 1 | import Foundation
 2 | import Security
   |        `- error: no such module 'Security'
 3 |
 4 | /// The default session store: `TonConnectStorage` on top of the Security
[37/42] Compiling TonConnectCore TonConnect.swift
/host/spi-builder-workspace/Sources/TonConnectCore/Storage/KeychainStorage.swift:2:8: error: no such module 'Security'
 1 | import Foundation
 2 | import Security
   |        `- error: no such module 'Security'
 3 |
 4 | /// The default session store: `TonConnectStorage` on top of the Security
[38/42] Compiling TonConnectCore TonConnectEngine.swift
/host/spi-builder-workspace/Sources/TonConnectCore/Storage/KeychainStorage.swift:2:8: error: no such module 'Security'
 1 | import Foundation
 2 | import Security
   |        `- error: no such module 'Security'
 3 |
 4 | /// The default session store: `TonConnectStorage` on top of the Security
[39/42] Compiling TonConnectCore TonConnectEvent.swift
/host/spi-builder-workspace/Sources/TonConnectCore/Storage/KeychainStorage.swift:2:8: error: no such module 'Security'
 1 | import Foundation
 2 | import Security
   |        `- error: no such module 'Security'
 3 |
 4 | /// The default session store: `TonConnectStorage` on top of the Security
/host/spi-builder-workspace/Sources/TonConnectCore/Storage/KeychainStorage.swift:2:8: error: no such module 'Security'
 1 | import Foundation
 2 | import Security
   |        `- error: no such module 'Security'
 3 |
 4 | /// The default session store: `TonConnectStorage` on top of the Security
BUILD FAILURE 6.3 linux