Build Information
Successful build of SnapAuth, reference main (ca73a1
), with Swift 6.0 for macOS (SPM) on 16 Sep 2024 16:34:41 UTC.
Swift 6 data race errors: 2
Build Command
env DEVELOPER_DIR=/Applications/Xcode-16.0.0-Release.Candidate.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete
Build Log
========================================
RunAll
========================================
Builder version: 4.53.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/snapauthapp/sdk-swift.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/snapauthapp/sdk-swift
* branch main -> FETCH_HEAD
* [new branch] main -> origin/main
HEAD is now at ca73a14 Add availability APIs (#41)
Cloned https://github.com/snapauthapp/sdk-swift.git
Revision (git rev-parse @):
ca73a14b32049d5669c6a89d79d472d90939f0b2
SPI manifest file found: $PWD/.spi.yml
SUCCESS checkout https://github.com/snapauthapp/sdk-swift.git at main
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.0
Building package at path: $PWD
https://github.com/snapauthapp/sdk-swift.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.0.0-Release.Candidate.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version-117DEE11B69C53C9.txt
[3/14] Compiling SnapAuth SnapAuth.swift
/Users/admin/builder/spi-builder-workspace/Sources/SnapAuth/SnapAuth.swift:45:27: warning: static property 'all' is not concurrency-safe because non-'Sendable' type 'Set<SnapAuth.Authenticator>' may have shared mutable state; this is an error in the Swift 6 language mode
41 |
42 | /// Permitted authenticator types
43 | public enum Authenticator: CaseIterable {
| `- note: consider making enum 'Authenticator' conform to the 'Sendable' protocol
44 | /// Allow all available authenticator types to be used
45 | public static let all = Set(Authenticator.allCases)
| |- warning: static property 'all' is not concurrency-safe because non-'Sendable' type 'Set<SnapAuth.Authenticator>' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'all' 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
46 |
47 | /// Prompt for passkeys.
[4/15] Compiling SnapAuth SnapAuth+AutoFill.swift
[5/15] Compiling SnapAuth SnapAuth+BuildRequests.swift
[6/15] Compiling SnapAuth SnapAuth+ASACPCP.swift
[7/15] Compiling SnapAuth Availability.swift
[8/15] Compiling SnapAuth Base64URL.swift
[9/15] Compiling SnapAuth Errors.swift
/Users/admin/builder/spi-builder-workspace/Sources/SnapAuth/Errors.swift:80:9: warning: switch must be exhaustive; this is an error in the Swift 6 language mode
78 | extension ASAuthorizationError.Code {
79 | var snapAuthError: SnapAuthError {
80 | switch self {
| |- warning: switch must be exhaustive; this is an error in the Swift 6 language mode
| `- note: add missing case: '.matchedExcludedCredential'
81 | case .canceled: return .canceled
82 | case .failed: return .failed
[10/15] Compiling SnapAuth PresentationAnchor.swift
/Users/admin/builder/spi-builder-workspace/Sources/SnapAuth/PresentationAnchor.swift:6:17: warning: main actor-isolated default value in a nonisolated context; this is an error in the Swift 6 language mode
4 | // FIXME: Figure out better fallback mechanisms here.
5 | // This will cause a new window to open _and remain open_
6 | fileprivate let defaultPresentationAnchor: ASPresentationAnchor = NSApplication.shared.mainWindow ?? ASPresentationAnchor()
| `- warning: main actor-isolated default value in a nonisolated context; this is an error in the Swift 6 language mode
7 | #else
8 | fileprivate let defaultPresentationAnchor: ASPresentationAnchor = (UIApplication.shared.connectedScenes.first as? UIWindowScene)?.windows.first?.rootViewController?.view.window ?? ASPresentationAnchor()
[11/15] Emitting module SnapAuth
/Users/admin/builder/spi-builder-workspace/Sources/SnapAuth/PresentationAnchor.swift:6:17: warning: main actor-isolated default value in a nonisolated context; this is an error in the Swift 6 language mode
4 | // FIXME: Figure out better fallback mechanisms here.
5 | // This will cause a new window to open _and remain open_
6 | fileprivate let defaultPresentationAnchor: ASPresentationAnchor = NSApplication.shared.mainWindow ?? ASPresentationAnchor()
| `- warning: main actor-isolated default value in a nonisolated context; this is an error in the Swift 6 language mode
7 | #else
8 | fileprivate let defaultPresentationAnchor: ASPresentationAnchor = (UIApplication.shared.connectedScenes.first as? UIWindowScene)?.windows.first?.rootViewController?.view.window ?? ASPresentationAnchor()
/Users/admin/builder/spi-builder-workspace/Sources/SnapAuth/SnapAuth.swift:45:27: warning: static property 'all' is not concurrency-safe because non-'Sendable' type 'Set<SnapAuth.Authenticator>' may have shared mutable state; this is an error in the Swift 6 language mode
41 |
42 | /// Permitted authenticator types
43 | public enum Authenticator: CaseIterable {
| `- note: consider making enum 'Authenticator' conform to the 'Sendable' protocol
44 | /// Allow all available authenticator types to be used
45 | public static let all = Set(Authenticator.allCases)
| |- warning: static property 'all' is not concurrency-safe because non-'Sendable' type 'Set<SnapAuth.Authenticator>' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'all' 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
46 |
47 | /// Prompt for passkeys.
[12/15] Compiling SnapAuth SnapAuth+ASACD.swift
/Users/admin/builder/spi-builder-workspace/Sources/SnapAuth/SnapAuth+ASACD.swift:132:9: warning: task-isolated value of type '() async -> ()' passed as a strongly transferred parameter; later accesses could race; this is an error in the Swift 6 language mode
130 | logger.debug("made a body")
131 | // logger.debug("user id \(assertion.userID.base64EncodedString())")
132 | Task {
| `- warning: task-isolated value of type '() async -> ()' passed as a strongly transferred parameter; later accesses could race; this is an error in the Swift 6 language mode
133 | let response = await api.makeRequest(
134 | path: "/assertion/process",
/Users/admin/builder/spi-builder-workspace/Sources/SnapAuth/SnapAuth+ASACD.swift:84:9: warning: task-isolated value of type '() async -> ()' passed as a strongly transferred parameter; later accesses could race; this is an error in the Swift 6 language mode
82 | let body = SAProcessRegisterRequest(credential: credential)
83 |
84 | Task {
| `- warning: task-isolated value of type '() async -> ()' passed as a strongly transferred parameter; later accesses could race; this is an error in the Swift 6 language mode
85 | let response = await api.makeRequest(
86 | path: "/attestation/process",
[13/15] Compiling SnapAuth API.swift
/Users/admin/builder/spi-builder-workspace/Sources/SnapAuth/API.swift:117:13: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
115 | let user: AuthenticatingUser?
116 | struct SACredential: Codable {
117 | let type: String = "public-key"
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
| `- note: make the property mutable instead
118 | let rawId: Base64URL
119 | let response: SACredential.Response
/Users/admin/builder/spi-builder-workspace/Sources/SnapAuth/ApiClient.swift:41:13: warning: immutable value 'response' was never used; consider removing it
39 |
40 | let data: Data
41 | let response: URLResponse
| `- warning: immutable value 'response' was never used; consider removing it
42 | do {
43 | (data, response) = try await URLSession.shared.data(for: request)
[14/15] Compiling SnapAuth ApiClient.swift
/Users/admin/builder/spi-builder-workspace/Sources/SnapAuth/API.swift:117:13: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
115 | let user: AuthenticatingUser?
116 | struct SACredential: Codable {
117 | let type: String = "public-key"
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum including a 'type' case to silence this warning
| `- note: make the property mutable instead
118 | let rawId: Base64URL
119 | let response: SACredential.Response
/Users/admin/builder/spi-builder-workspace/Sources/SnapAuth/ApiClient.swift:41:13: warning: immutable value 'response' was never used; consider removing it
39 |
40 | let data: Data
41 | let response: URLResponse
| `- warning: immutable value 'response' was never used; consider removing it
42 | do {
43 | (data, response) = try await URLSession.shared.data(for: request)
[15/15] Compiling SnapAuth SnapAuthDelegate.swift
Build complete! (13.22s)
Build complete.
{
"dependencies" : [
],
"manifest_display_name" : "SnapAuth",
"name" : "SnapAuth",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "macos",
"version" : "12.0"
},
{
"name" : "ios",
"version" : "15.0"
},
{
"name" : "tvos",
"version" : "16.0"
},
{
"name" : "visionos",
"version" : "1.0"
}
],
"products" : [
{
"name" : "SnapAuth",
"targets" : [
"SnapAuth"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "SnapAuthTests",
"module_type" : "SwiftTarget",
"name" : "SnapAuthTests",
"path" : "Tests/SnapAuthTests",
"sources" : [
"Base64URLTests.swift"
],
"target_dependencies" : [
"SnapAuth"
],
"type" : "test"
},
{
"c99name" : "SnapAuth",
"module_type" : "SwiftTarget",
"name" : "SnapAuth",
"path" : "Sources/SnapAuth",
"product_memberships" : [
"SnapAuth"
],
"sources" : [
"API.swift",
"ApiClient.swift",
"Availability.swift",
"Base64URL.swift",
"Errors.swift",
"PresentationAnchor.swift",
"SnapAuth+ASACD.swift",
"SnapAuth+ASACPCP.swift",
"SnapAuth+AutoFill.swift",
"SnapAuth+BuildRequests.swift",
"SnapAuth.swift",
"SnapAuthDelegate.swift"
],
"type" : "library"
}
],
"tools_version" : "5.10"
}
Done.