Build Information
Failed to build TerraformKit 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/fourplusone/TerraformKit.git
Reference: master
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/fourplusone/TerraformKit
* branch master -> FETCH_HEAD
* [new branch] master -> origin/master
HEAD is now at 18f6837 [FIX] wait until stdout/stderr of invoked processes are closed
Cloned https://github.com/fourplusone/TerraformKit.git
Revision (git rev-parse @):
18f68372fd28ffca8324f434e45a3a4b40c42026
SUCCESS checkout https://github.com/fourplusone/TerraformKit.git at master
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.0
Building package at path: $workDir
https://github.com/fourplusone/TerraformKit.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
[2/3] Write swift-version-6F35C1178C84523A.txt
[4/12] Compiling ZIPFoundation FileManager+ZIP.swift
[5/12] Compiling ZIPFoundation Entry.swift
[6/12] Compiling ZIPFoundation Data+Compression.swift
[7/12] Compiling ZIPFoundation Archive.swift
[8/12] Compiling ZIPFoundation Archive+Writing.swift
[9/12] Compiling ZIPFoundation Archive+Reading.swift
[10/12] Compiling ZIPFoundation Archive+MemoryFile.swift
[11/12] Compiling ZIPFoundation Data+Serialization.swift
[12/12] Emitting module ZIPFoundation
[13/23] Compiling TerraformKit Decoder.swift
/Users/admin/builder/spi-builder-workspace/Sources/TerraformKit/Utilities/Decoder.swift:10:7: warning: class 'TerraformDecoder' must restate inherited '@unchecked Sendable' conformance
8 | import Foundation
9 |
10 | class TerraformDecoder : JSONDecoder {
| `- warning: class 'TerraformDecoder' must restate inherited '@unchecked Sendable' conformance
11 | override init() {
12 | super.init()
[14/23] Compiling TerraformKit EmptyCollection.swift
[15/23] Compiling TerraformKit AnyDecodable.swift
[16/23] Compiling TerraformKit AnyEncodable.swift
[17/23] Compiling TerraformKit Values.swift
[18/23] Compiling TerraformKit Invoke.swift
/Users/admin/builder/spi-builder-workspace/Sources/TerraformKit/Utilities/Invoke.swift:118:13: warning: var 'managerThreadRunLoop' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
116 | }
117 |
118 | private var managerThreadRunLoop : RunLoop? = nil
| |- warning: var 'managerThreadRunLoop' 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 'managerThreadRunLoop' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'managerThreadRunLoop' 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
119 | private var managerThreadRunLoopIsRunning = false
120 | private var managerThreadRunLoopIsRunningCondition = NSCondition()
/Users/admin/builder/spi-builder-workspace/Sources/TerraformKit/Utilities/Invoke.swift:119:13: warning: var 'managerThreadRunLoopIsRunning' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
117 |
118 | private var managerThreadRunLoop : RunLoop? = nil
119 | private var managerThreadRunLoopIsRunning = false
| |- warning: var 'managerThreadRunLoopIsRunning' 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 'managerThreadRunLoopIsRunning' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'managerThreadRunLoopIsRunning' 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
120 | private var managerThreadRunLoopIsRunningCondition = NSCondition()
121 |
/Users/admin/builder/spi-builder-workspace/Sources/TerraformKit/Utilities/Invoke.swift:120:13: warning: var 'managerThreadRunLoopIsRunningCondition' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
118 | private var managerThreadRunLoop : RunLoop? = nil
119 | private var managerThreadRunLoopIsRunning = false
120 | private var managerThreadRunLoopIsRunningCondition = NSCondition()
| |- warning: var 'managerThreadRunLoopIsRunningCondition' 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 'managerThreadRunLoopIsRunningCondition' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'managerThreadRunLoopIsRunningCondition' 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
121 |
122 | class WrappedProcess {
/Users/admin/builder/spi-builder-workspace/Sources/TerraformKit/Utilities/Invoke.swift:144:25: warning: static property 'setup' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
142 |
143 |
144 | private static var setup : () = {
| |- warning: static property 'setup' 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 'setup' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'setup' 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
145 | let thread = Thread {
146 | managerThreadRunLoop = RunLoop.current
/Users/admin/builder/spi-builder-workspace/Sources/TerraformKit/Utilities/Invoke.swift:325:40: warning: capture of 'process' with non-sendable type 'WrappedProcess' in a `@Sendable` closure; this is an error in the Swift 6 language mode
120 | private var managerThreadRunLoopIsRunningCondition = NSCondition()
121 |
122 | class WrappedProcess {
| `- note: class 'WrappedProcess' does not conform to the 'Sendable' protocol
123 |
124 | let p: Process
:
323 | if let terminationHandler = process.p.terminationHandler {
324 | let thread = Thread {
325 | terminationHandler(process.p)
| `- warning: capture of 'process' with non-sendable type 'WrappedProcess' in a `@Sendable` closure; this is an error in the Swift 6 language mode
326 | }
327 | thread.start()
/Users/admin/builder/spi-builder-workspace/Sources/TerraformKit/Utilities/Invoke.swift:585:29: warning: capture of 'self' with non-sendable type 'OutputHandler' in a `@Sendable` closure; this is an error in the Swift 6 language mode
549 | p.standardInput = FileHandle.standardInput
550 |
551 | class OutputHandler {
| `- note: class 'OutputHandler' does not conform to the 'Sendable' protocol
552 |
553 | let fileHandle: Any?
:
583 | let availableData = handle.availableData
584 | if availableData.count == 0 {
585 | self.sema?.signal()
| `- warning: capture of 'self' with non-sendable type 'OutputHandler' in a `@Sendable` closure; this is an error in the Swift 6 language mode
586 | } else {
587 | self.buffer?.append(availableData)
[19/23] Compiling TerraformKit Terraform.swift
/Users/admin/builder/spi-builder-workspace/Sources/TerraformKit/Terraform.swift:25:22: warning: using '@_implementationOnly' without enabling library evolution for 'TerraformKit' may lead to instability during execution
23 |
24 |
25 | @_implementationOnly import ZIPFoundation
| `- warning: using '@_implementationOnly' without enabling library evolution for 'TerraformKit' may lead to instability during execution
26 |
27 | public enum ColorMode {
/Users/admin/builder/spi-builder-workspace/Sources/TerraformKit/Terraform.swift:65:16: warning: static property 'defaultInvocationSettings' is not concurrency-safe because non-'Sendable' type 'Terraform.InvocationSettings' may have shared mutable state; this is an error in the Swift 6 language mode
57 | let terraformExecutable: URL
58 |
59 | public struct InvocationSettings {
| `- note: consider making struct 'InvocationSettings' conform to the 'Sendable' protocol
60 | let stderr: Output
61 | let stdout: Output
:
63 | }
64 |
65 | static let defaultInvocationSettings = InvocationSettings(
| |- warning: static property 'defaultInvocationSettings' is not concurrency-safe because non-'Sendable' type 'Terraform.InvocationSettings' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'defaultInvocationSettings' 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
66 | stderr: .passthroughOnFailure,
67 | stdout: .passthroughOnFailure,
/Users/admin/builder/spi-builder-workspace/Sources/TerraformKit/Terraform.swift:70:16: warning: static property 'internalInvocationSettings' is not concurrency-safe because non-'Sendable' type 'Terraform.InvocationSettings' may have shared mutable state; this is an error in the Swift 6 language mode
57 | let terraformExecutable: URL
58 |
59 | public struct InvocationSettings {
| `- note: consider making struct 'InvocationSettings' conform to the 'Sendable' protocol
60 | let stderr: Output
61 | let stdout: Output
:
68 | colorMode: .none)
69 |
70 | static let internalInvocationSettings = InvocationSettings(
| |- warning: static property 'internalInvocationSettings' is not concurrency-safe because non-'Sendable' type 'Terraform.InvocationSettings' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'internalInvocationSettings' 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
71 | stderr: .discard,
72 | stdout: .discard,
/Users/admin/builder/spi-builder-workspace/Sources/TerraformKit/Terraform.swift:90:13: warning: mutation of captured var 'downloadedURL' in concurrently-executing code; this is an error in the Swift 6 language mode
88 |
89 | URLSession.shared.downloadTask(with: downloadURL) { (url, response, error) in
90 | downloadedURL = url
| `- warning: mutation of captured var 'downloadedURL' in concurrently-executing code; this is an error in the Swift 6 language mode
91 | semaphore.signal()
92 | }.resume()
/Users/admin/builder/spi-builder-workspace/Sources/TerraformKit/Terraform.swift:157:16: error: Architecture / OS is not supported
155 | #endif
156 | #else
157 | #error("Architecture / OS is not supported")
| `- error: Architecture / OS is not supported
158 | #endif
159 |
/Users/admin/builder/spi-builder-workspace/Sources/TerraformKit/Terraform.swift:162:90: error: cannot find 'arch' in scope
160 |
161 |
162 | let terraformBinary = terraformBinaryURL(version: defaultTerraformVersion, arch: arch)
| `- error: cannot find 'arch' in scope
163 |
164 | let fm = FileManager.default
/Users/admin/builder/spi-builder-workspace/Sources/TerraformKit/Terraform.swift:167:54: error: cannot find 'arch' in scope
165 | if !fm.fileExists(atPath: terraformBinary.path) {
166 | do {
167 | try download(version: version, arch: arch)
| `- error: cannot find 'arch' in scope
168 | } catch _ {
169 | return nil
[20/24] Compiling TerraformKit TemporaryFile.swift
[21/24] Compiling TerraformKit State.swift
[22/24] Compiling TerraformKit Plan.swift
[23/24] Compiling TerraformKit Schema.swift
[24/24] Emitting module TerraformKit
/Users/admin/builder/spi-builder-workspace/Sources/TerraformKit/Terraform.swift:25:22: warning: using '@_implementationOnly' without enabling library evolution for 'TerraformKit' may lead to instability during execution
23 |
24 |
25 | @_implementationOnly import ZIPFoundation
| `- warning: using '@_implementationOnly' without enabling library evolution for 'TerraformKit' may lead to instability during execution
26 |
27 | public enum ColorMode {
/Users/admin/builder/spi-builder-workspace/Sources/TerraformKit/Terraform.swift:65:16: warning: static property 'defaultInvocationSettings' is not concurrency-safe because non-'Sendable' type 'Terraform.InvocationSettings' may have shared mutable state; this is an error in the Swift 6 language mode
57 | let terraformExecutable: URL
58 |
59 | public struct InvocationSettings {
| `- note: consider making struct 'InvocationSettings' conform to the 'Sendable' protocol
60 | let stderr: Output
61 | let stdout: Output
:
63 | }
64 |
65 | static let defaultInvocationSettings = InvocationSettings(
| |- warning: static property 'defaultInvocationSettings' is not concurrency-safe because non-'Sendable' type 'Terraform.InvocationSettings' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'defaultInvocationSettings' 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
66 | stderr: .passthroughOnFailure,
67 | stdout: .passthroughOnFailure,
/Users/admin/builder/spi-builder-workspace/Sources/TerraformKit/Terraform.swift:70:16: warning: static property 'internalInvocationSettings' is not concurrency-safe because non-'Sendable' type 'Terraform.InvocationSettings' may have shared mutable state; this is an error in the Swift 6 language mode
57 | let terraformExecutable: URL
58 |
59 | public struct InvocationSettings {
| `- note: consider making struct 'InvocationSettings' conform to the 'Sendable' protocol
60 | let stderr: Output
61 | let stdout: Output
:
68 | colorMode: .none)
69 |
70 | static let internalInvocationSettings = InvocationSettings(
| |- warning: static property 'internalInvocationSettings' is not concurrency-safe because non-'Sendable' type 'Terraform.InvocationSettings' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'internalInvocationSettings' 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
71 | stderr: .discard,
72 | stdout: .discard,
/Users/admin/builder/spi-builder-workspace/Sources/TerraformKit/Utilities/Decoder.swift:10:7: warning: class 'TerraformDecoder' must restate inherited '@unchecked Sendable' conformance
8 | import Foundation
9 |
10 | class TerraformDecoder : JSONDecoder {
| `- warning: class 'TerraformDecoder' must restate inherited '@unchecked Sendable' conformance
11 | override init() {
12 | super.init()
/Users/admin/builder/spi-builder-workspace/Sources/TerraformKit/Utilities/Invoke.swift:118:13: warning: var 'managerThreadRunLoop' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
116 | }
117 |
118 | private var managerThreadRunLoop : RunLoop? = nil
| |- warning: var 'managerThreadRunLoop' 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 'managerThreadRunLoop' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'managerThreadRunLoop' 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
119 | private var managerThreadRunLoopIsRunning = false
120 | private var managerThreadRunLoopIsRunningCondition = NSCondition()
/Users/admin/builder/spi-builder-workspace/Sources/TerraformKit/Utilities/Invoke.swift:119:13: warning: var 'managerThreadRunLoopIsRunning' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
117 |
118 | private var managerThreadRunLoop : RunLoop? = nil
119 | private var managerThreadRunLoopIsRunning = false
| |- warning: var 'managerThreadRunLoopIsRunning' 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 'managerThreadRunLoopIsRunning' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'managerThreadRunLoopIsRunning' 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
120 | private var managerThreadRunLoopIsRunningCondition = NSCondition()
121 |
/Users/admin/builder/spi-builder-workspace/Sources/TerraformKit/Utilities/Invoke.swift:120:13: warning: var 'managerThreadRunLoopIsRunningCondition' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
118 | private var managerThreadRunLoop : RunLoop? = nil
119 | private var managerThreadRunLoopIsRunning = false
120 | private var managerThreadRunLoopIsRunningCondition = NSCondition()
| |- warning: var 'managerThreadRunLoopIsRunningCondition' 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 'managerThreadRunLoopIsRunningCondition' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'managerThreadRunLoopIsRunningCondition' 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
121 |
122 | class WrappedProcess {
/Users/admin/builder/spi-builder-workspace/Sources/TerraformKit/Utilities/Invoke.swift:144:25: warning: static property 'setup' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
142 |
143 |
144 | private static var setup : () = {
| |- warning: static property 'setup' 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 'setup' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'setup' 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
145 | let thread = Thread {
146 | managerThreadRunLoop = RunLoop.current
/Users/admin/builder/spi-builder-workspace/Sources/TerraformKit/Utilities/Invoke.swift:325:40: warning: capture of 'process' with non-sendable type 'WrappedProcess' in a `@Sendable` closure; this is an error in the Swift 6 language mode
120 | private var managerThreadRunLoopIsRunningCondition = NSCondition()
121 |
122 | class WrappedProcess {
| `- note: class 'WrappedProcess' does not conform to the 'Sendable' protocol
123 |
124 | let p: Process
:
323 | if let terminationHandler = process.p.terminationHandler {
324 | let thread = Thread {
325 | terminationHandler(process.p)
| `- warning: capture of 'process' with non-sendable type 'WrappedProcess' in a `@Sendable` closure; this is an error in the Swift 6 language mode
326 | }
327 | thread.start()
Fetching https://github.com/weichsel/ZIPFoundation/
[1/5122] Fetching zipfoundation
Fetched https://github.com/weichsel/ZIPFoundation/ from cache (1.35s)
Computing version for https://github.com/weichsel/ZIPFoundation/
Computed https://github.com/weichsel/ZIPFoundation/ at 0.9.11 (0.68s)
Creating working copy for https://github.com/weichsel/ZIPFoundation/
Working copy of https://github.com/weichsel/ZIPFoundation/ resolved at 0.9.11
BUILD FAILURE 6.0 macosSpm