Build Information
Failed to build PopupBridge with Swift 6.0 for macOS (SPM).
Build Command
env DEVELOPER_DIR=/Applications/Xcode-15.3.0.app xcrun --toolchain org.swift.600202405261a swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete
Build Log
========================================
RunAll
========================================
Builder version: 4.40.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/braintree/popup-bridge-ios.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/braintree/popup-bridge-ios
* branch main -> FETCH_HEAD
* [new branch] main -> origin/main
HEAD is now at acd459c Bumped Xcode version in README.md (#63)
Cloned https://github.com/braintree/popup-bridge-ios.git
Revision (git rev-parse @):
acd459c8c7ec86a9222e61e5ce2ace91cc0e58ac
SUCCESS checkout https://github.com/braintree/popup-bridge-ios.git at main
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.0
Building package at path: $workDir
https://github.com/braintree/popup-bridge-ios.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-15.3.0.app xcrun --toolchain org.swift.600202405261a swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete
Building for debugging...
[0/3] Write sources
[1/3] Copying PrivacyInfo.xcprivacy
[2/3] Write swift-version-6F35C1178C84523A.txt
[4/11] Compiling PopupBridge PopupBridgeUserScript.swift
[5/11] Compiling PopupBridge resource_bundle_accessor.swift
[6/11] Compiling PopupBridge WebViewMessage.swift
[7/11] Compiling PopupBridge URLDetailsPayload.swift
[8/11] Compiling PopupBridge WebAuthenticationSession.swift
/Users/admin/builder/spi-builder-workspace/Sources/PopupBridge/WebAuthenticationSession.swift:6:32: error: 'ASWebAuthenticationSession' is only available in macOS 10.15 or newer
2 | import AuthenticationServices
3 |
4 | class WebAuthenticationSession: NSObject {
| `- note: add @available attribute to enclosing class
5 |
6 | var authenticationSession: ASWebAuthenticationSession?
| `- error: 'ASWebAuthenticationSession' is only available in macOS 10.15 or newer
7 |
8 | func start(
/Users/admin/builder/spi-builder-workspace/Sources/PopupBridge/WebAuthenticationSession.swift:10:18: error: 'ASWebAuthenticationPresentationContextProviding' is only available in macOS 10.15 or newer
2 | import AuthenticationServices
3 |
4 | class WebAuthenticationSession: NSObject {
| `- note: add @available attribute to enclosing class
5 |
6 | var authenticationSession: ASWebAuthenticationSession?
7 |
8 | func start(
| `- note: add @available attribute to enclosing instance method
9 | url: URL,
10 | context: ASWebAuthenticationPresentationContextProviding,
| `- error: 'ASWebAuthenticationPresentationContextProviding' is only available in macOS 10.15 or newer
11 | sessionDidComplete: @escaping (URL?, Error?) -> Void,
12 | sessionDidCancel: @escaping () -> Void
/Users/admin/builder/spi-builder-workspace/Sources/PopupBridge/WebAuthenticationSession.swift:14:38: error: 'ASWebAuthenticationSession' is only available in macOS 10.15 or newer
2 | import AuthenticationServices
3 |
4 | class WebAuthenticationSession: NSObject {
| `- note: add @available attribute to enclosing class
5 |
6 | var authenticationSession: ASWebAuthenticationSession?
7 |
8 | func start(
| `- note: add @available attribute to enclosing instance method
9 | url: URL,
10 | context: ASWebAuthenticationPresentationContextProviding,
:
12 | sessionDidCancel: @escaping () -> Void
13 | ) {
14 | self.authenticationSession = ASWebAuthenticationSession(
| |- error: 'ASWebAuthenticationSession' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
15 | url: url,
16 | callbackURLScheme: PopupBridgeConstants.callbackURLScheme
/Users/admin/builder/spi-builder-workspace/Sources/PopupBridge/WebAuthenticationSession.swift:14:38: error: 'init(url:callbackURLScheme:completionHandler:)' is only available in macOS 10.15 or newer
2 | import AuthenticationServices
3 |
4 | class WebAuthenticationSession: NSObject {
| `- note: add @available attribute to enclosing class
5 |
6 | var authenticationSession: ASWebAuthenticationSession?
7 |
8 | func start(
| `- note: add @available attribute to enclosing instance method
9 | url: URL,
10 | context: ASWebAuthenticationPresentationContextProviding,
:
12 | sessionDidCancel: @escaping () -> Void
13 | ) {
14 | self.authenticationSession = ASWebAuthenticationSession(
| |- error: 'init(url:callbackURLScheme:completionHandler:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
15 | url: url,
16 | callbackURLScheme: PopupBridgeConstants.callbackURLScheme
/Users/admin/builder/spi-builder-workspace/Sources/PopupBridge/WebAuthenticationSession.swift:18:61: error: 'ASWebAuthenticationSessionError' is only available in macOS 10.15 or newer
2 | import AuthenticationServices
3 |
4 | class WebAuthenticationSession: NSObject {
| `- note: add @available attribute to enclosing class
5 |
6 | var authenticationSession: ASWebAuthenticationSession?
7 |
8 | func start(
| `- note: add @available attribute to enclosing instance method
9 | url: URL,
10 | context: ASWebAuthenticationPresentationContextProviding,
:
16 | callbackURLScheme: PopupBridgeConstants.callbackURLScheme
17 | ) { url, error in
18 | if let error = error as? NSError, error.code == ASWebAuthenticationSessionError.canceledLogin.rawValue {
| |- error: 'ASWebAuthenticationSessionError' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
19 | sessionDidCancel()
20 | } else {
/Users/admin/builder/spi-builder-workspace/Sources/PopupBridge/WebAuthenticationSession.swift:25:32: error: 'prefersEphemeralWebBrowserSession' is only available in macOS 10.15 or newer
2 | import AuthenticationServices
3 |
4 | class WebAuthenticationSession: NSObject {
| `- note: add @available attribute to enclosing class
5 |
6 | var authenticationSession: ASWebAuthenticationSession?
7 |
8 | func start(
| `- note: add @available attribute to enclosing instance method
9 | url: URL,
10 | context: ASWebAuthenticationPresentationContextProviding,
:
23 | }
24 |
25 | authenticationSession?.prefersEphemeralWebBrowserSession = true
| |- error: 'prefersEphemeralWebBrowserSession' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
26 | authenticationSession?.presentationContextProvider = context
27 |
/Users/admin/builder/spi-builder-workspace/Sources/PopupBridge/WebAuthenticationSession.swift:26:32: error: 'presentationContextProvider' is only available in macOS 10.15 or newer
2 | import AuthenticationServices
3 |
4 | class WebAuthenticationSession: NSObject {
| `- note: add @available attribute to enclosing class
5 |
6 | var authenticationSession: ASWebAuthenticationSession?
7 |
8 | func start(
| `- note: add @available attribute to enclosing instance method
9 | url: URL,
10 | context: ASWebAuthenticationPresentationContextProviding,
:
24 |
25 | authenticationSession?.prefersEphemeralWebBrowserSession = true
26 | authenticationSession?.presentationContextProvider = context
| |- error: 'presentationContextProvider' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
27 |
28 | authenticationSession?.start()
[9/11] Compiling PopupBridge PopupBridgeConstants.swift
error: emit-module command failed with exit code 1 (use -v to see invocation)
[10/11] Emitting module PopupBridge
/Users/admin/builder/spi-builder-workspace/Sources/PopupBridge/POPPopupBridge.swift:151:49: error: 'ASWebAuthenticationSession' is only available in macOS 10.15 or newer
147 | // MARK: - ASWebAuthenticationPresentationContextProviding conformance
148 |
149 | extension POPPopupBridge: ASWebAuthenticationPresentationContextProviding {
| `- note: add @available attribute to enclosing extension
150 |
151 | public func presentationAnchor(for session: ASWebAuthenticationSession) -> ASPresentationAnchor {
| | `- error: 'ASWebAuthenticationSession' is only available in macOS 10.15 or newer
| `- note: add @available attribute to enclosing instance method
152 | if #available(iOS 15, *) {
153 | let firstScene = UIApplication.shared.connectedScenes.first as? UIWindowScene
/Users/admin/builder/spi-builder-workspace/Sources/PopupBridge/WebAuthenticationSession.swift:6:32: error: 'ASWebAuthenticationSession' is only available in macOS 10.15 or newer
2 | import AuthenticationServices
3 |
4 | class WebAuthenticationSession: NSObject {
| `- note: add @available attribute to enclosing class
5 |
6 | var authenticationSession: ASWebAuthenticationSession?
| `- error: 'ASWebAuthenticationSession' is only available in macOS 10.15 or newer
7 |
8 | func start(
/Users/admin/builder/spi-builder-workspace/Sources/PopupBridge/WebAuthenticationSession.swift:10:18: error: 'ASWebAuthenticationPresentationContextProviding' is only available in macOS 10.15 or newer
2 | import AuthenticationServices
3 |
4 | class WebAuthenticationSession: NSObject {
| `- note: add @available attribute to enclosing class
5 |
6 | var authenticationSession: ASWebAuthenticationSession?
7 |
8 | func start(
| `- note: add @available attribute to enclosing instance method
9 | url: URL,
10 | context: ASWebAuthenticationPresentationContextProviding,
| `- error: 'ASWebAuthenticationPresentationContextProviding' is only available in macOS 10.15 or newer
11 | sessionDidComplete: @escaping (URL?, Error?) -> Void,
12 | sessionDidCancel: @escaping () -> Void
[11/11] Compiling PopupBridge POPPopupBridge.swift
/Users/admin/builder/spi-builder-workspace/Sources/PopupBridge/POPPopupBridge.swift:151:49: error: 'ASWebAuthenticationSession' is only available in macOS 10.15 or newer
147 | // MARK: - ASWebAuthenticationPresentationContextProviding conformance
148 |
149 | extension POPPopupBridge: ASWebAuthenticationPresentationContextProviding {
| `- note: add @available attribute to enclosing extension
150 |
151 | public func presentationAnchor(for session: ASWebAuthenticationSession) -> ASPresentationAnchor {
| | `- error: 'ASWebAuthenticationSession' is only available in macOS 10.15 or newer
| `- note: add @available attribute to enclosing instance method
152 | if #available(iOS 15, *) {
153 | let firstScene = UIApplication.shared.connectedScenes.first as? UIWindowScene
/Users/admin/builder/spi-builder-workspace/Sources/PopupBridge/POPPopupBridge.swift:86:17: warning: main actor-isolated property 'configuration' can not be referenced from a non-isolated context; this is an error in the Swift 6 language mode
83 | /// Injects custom JavaScript into the merchant's webpage.
84 | /// - Parameter scheme: the url scheme provided by the merchant
85 | private func configureWebView() {
| `- note: add '@MainActor' to make instance method 'configureWebView()' part of global actor 'MainActor'
86 | webView.configuration.userContentController.add(self, name: messageHandlerName)
| `- warning: main actor-isolated property 'configuration' can not be referenced from a non-isolated context; this is an error in the Swift 6 language mode
87 |
88 | let javascript = PopupBridgeUserScript(
WebKit.WKWebView:3:36: note: property declared here
1 | @available(macOS 10.10, *)
2 | @MainActor open class WKWebView : NSView {
3 | @NSCopying @MainActor open var configuration: WKWebViewConfiguration { get }
| `- note: property declared here
4 | weak open var navigationDelegate: (any WKNavigationDelegate)? { get set }
5 | weak open var uiDelegate: (any WKUIDelegate)? { get set }
/Users/admin/builder/spi-builder-workspace/Sources/PopupBridge/POPPopupBridge.swift:100:17: warning: main actor-isolated property 'configuration' can not be referenced from a non-isolated context; this is an error in the Swift 6 language mode
83 | /// Injects custom JavaScript into the merchant's webpage.
84 | /// - Parameter scheme: the url scheme provided by the merchant
85 | private func configureWebView() {
| `- note: add '@MainActor' to make instance method 'configureWebView()' part of global actor 'MainActor'
86 | webView.configuration.userContentController.add(self, name: messageHandlerName)
87 |
:
98 | )
99 |
100 | webView.configuration.userContentController.addUserScript(script)
| `- warning: main actor-isolated property 'configuration' can not be referenced from a non-isolated context; this is an error in the Swift 6 language mode
101 | }
102 |
WebKit.WKWebView:3:36: note: property declared here
1 | @available(macOS 10.10, *)
2 | @MainActor open class WKWebView : NSView {
3 | @NSCopying @MainActor open var configuration: WKWebViewConfiguration { get }
| `- note: property declared here
4 | weak open var navigationDelegate: (any WKNavigationDelegate)? { get set }
5 | weak open var uiDelegate: (any WKUIDelegate)? { get set }
/Users/admin/builder/spi-builder-workspace/Sources/PopupBridge/POPPopupBridge.swift:104:17: warning: call to main actor-isolated instance method 'evaluateJavaScript(_:completionHandler:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
101 | }
102 |
103 | private func injectWebView(webView: WKWebView, withJavaScript script: String) {
| `- note: add '@MainActor' to make instance method 'injectWebView(webView:withJavaScript:)' part of global actor 'MainActor'
104 | webView.evaluateJavaScript(script) { _, error in
| `- warning: call to main actor-isolated instance method 'evaluateJavaScript(_:completionHandler:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
105 | if let error {
106 | NSLog("Error: PopupBridge requires onComplete callback. Details: %@", error.localizedDescription)
WebKit.WKWebView:46:15: note: calls to instance method 'evaluateJavaScript(_:completionHandler:)' from outside of its actor context are implicitly asynchronous
44 | open func reloadFromOrigin() -> WKNavigation?
45 | open func stopLoading()
46 | open func evaluateJavaScript(_ javaScriptString: String, completionHandler: ((Any?, (any Error)?) -> Void)? = nil)
| `- note: calls to instance method 'evaluateJavaScript(_:completionHandler:)' from outside of its actor context are implicitly asynchronous
47 | open func evaluateJavaScript(_ javaScriptString: String) async throws -> Any
48 | @available(macOS 11.0, *)
/Users/admin/builder/spi-builder-workspace/Sources/PopupBridge/POPPopupBridge.swift:153:30: error: cannot find 'UIApplication' in scope
151 | public func presentationAnchor(for session: ASWebAuthenticationSession) -> ASPresentationAnchor {
152 | if #available(iOS 15, *) {
153 | let firstScene = UIApplication.shared.connectedScenes.first as? UIWindowScene
| `- error: cannot find 'UIApplication' in scope
154 | let window = firstScene?.windows.first { $0.isKeyWindow }
155 | return window ?? ASPresentationAnchor()
/Users/admin/builder/spi-builder-workspace/Sources/PopupBridge/POPPopupBridge.swift:153:77: error: cannot find type 'UIWindowScene' in scope
151 | public func presentationAnchor(for session: ASWebAuthenticationSession) -> ASPresentationAnchor {
152 | if #available(iOS 15, *) {
153 | let firstScene = UIApplication.shared.connectedScenes.first as? UIWindowScene
| `- error: cannot find type 'UIWindowScene' in scope
154 | let window = firstScene?.windows.first { $0.isKeyWindow }
155 | return window ?? ASPresentationAnchor()
/Users/admin/builder/spi-builder-workspace/Sources/PopupBridge/POPPopupBridge.swift:157:26: error: cannot find 'UIApplication' in scope
155 | return window ?? ASPresentationAnchor()
156 | } else {
157 | let window = UIApplication.shared.windows.first { $0.isKeyWindow }
| `- error: cannot find 'UIApplication' in scope
158 | return window ?? ASPresentationAnchor()
159 | }
BUILD FAILURE 6.0 macosSpm