Build Information
Successful build of CommandLineToolkit, reference 2.0.0 (1a91fd
), with Swift 6.0 for macOS (SPM) on 2 Dec 2024 06:40:45 UTC.
Swift 6 data race errors: 75
Build Command
env DEVELOPER_DIR=/Applications/Xcode-16.1.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures
Build Log
1 | import Foundation
2 | import PathLib
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'PathLib'
3 |
4 | public enum ProcessControllerError: CustomStringConvertible, Error {
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/ProcessControllerProvider+Shell.swift:141:23: warning: static property 'silent' is not concurrency-safe because non-'Sendable' type 'OutputStreaming' may have shared mutable state; this is an error in the Swift 6 language mode
117 | }
118 |
119 | public struct OutputStreaming: ExpressibleByArrayLiteral {
| `- note: consider making struct 'OutputStreaming' conform to the 'Sendable' protocol
120 | public let stdout: (Data) -> ()
121 | public let stderr: (Data) -> ()
:
139 | public static var restream: Self { .restream(name: "process") }
140 |
141 | public static let silent = OutputStreaming { _ in } stderr: { _ in }
| |- warning: static property 'silent' is not concurrency-safe because non-'Sendable' type 'OutputStreaming' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'silent' 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
142 |
143 | public static func multiple(_ streams: [OutputStreaming]) -> OutputStreaming {
[495/547] Compiling CommandSupport CompoundCommandLogic.swift
[496/547] Compiling CommandSupport CommandLogicProvider.swift
[497/547] Compiling CommandSupport CommandDiValidator.swift
[498/547] Compiling CommandSupport ParsableCommand+pathFromRootCommand.swift
[499/547] Compiling CommandSupport CompoundAsyncCommandLogic.swift
[500/547] Compiling CommandSupport AbsolutePath+ExpressibleByArgument.swift
/Users/admin/builder/spi-builder-workspace/Sources/CommandSupport/AbsolutePath+ExpressibleByArgument.swift:11:23: warning: static property 'defaultCompletionKind' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
9 | }
10 |
11 | public static var defaultCompletionKind: CompletionKind = .file()
| |- warning: static property 'defaultCompletionKind' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'defaultCompletionKind' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'defaultCompletionKind' 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
12 |
13 | public var defaultValueDescription: String { "Абсолютный путь" }
[501/547] Compiling CommandSupport AsyncCommandLogic.swift
/Users/admin/builder/spi-builder-workspace/Sources/CommandSupport/AbsolutePath+ExpressibleByArgument.swift:11:23: warning: static property 'defaultCompletionKind' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
9 | }
10 |
11 | public static var defaultCompletionKind: CompletionKind = .file()
| |- warning: static property 'defaultCompletionKind' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'defaultCompletionKind' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'defaultCompletionKind' 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
12 |
13 | public var defaultValueDescription: String { "Абсолютный путь" }
[502/547] Compiling CommandSupport CommandLogic.swift
[503/547] Compiling CommandSupport AsyncCommandLogicProvider.swift
[504/547] Compiling CommandSupport BaseCommand.swift
[505/547] Emitting module CommandSupport
/Users/admin/builder/spi-builder-workspace/Sources/CommandSupport/AbsolutePath+ExpressibleByArgument.swift:11:23: warning: static property 'defaultCompletionKind' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
9 | }
10 |
11 | public static var defaultCompletionKind: CompletionKind = .file()
| |- warning: static property 'defaultCompletionKind' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'defaultCompletionKind' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'defaultCompletionKind' 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
12 |
13 | public var defaultValueDescription: String { "Абсолютный путь" }
/Users/admin/builder/spi-builder-workspace/Sources/CommandSupport/LogOptionsCommand.swift:53:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'ParsableCommandLogConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
42 | }
43 |
44 | public struct ParsableCommandLogConfiguration {
| `- note: consider making struct 'ParsableCommandLogConfiguration' conform to the 'Sendable' protocol
45 | public init(consoleBacking: LogHandler?, additionalSystem: [LogHandler]) {
46 | self.consoleBacking = consoleBacking
:
51 | let additionalSystem: [LogHandler]
52 |
53 | public static let `default` = ParsableCommandLogConfiguration(consoleBacking: nil, additionalSystem: [])
| |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'ParsableCommandLogConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'default' 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
54 | }
55 |
/Users/admin/builder/spi-builder-workspace/Sources/CommandSupport/LogOptionsCommand.swift:122:1: warning: extension declares a conformance of imported type 'Level' to imported protocol 'ExpressibleByArgument'; this will not behave correctly if the owners of 'Logging' introduce this conformance in the future
120 | }
121 |
122 | extension Logger.Level: ExpressibleByArgument {}
| |- warning: extension declares a conformance of imported type 'Level' to imported protocol 'ExpressibleByArgument'; this will not behave correctly if the owners of 'Logging' introduce this conformance in the future
| `- note: add '@retroactive' to silence this warning
123 |
[506/547] Compiling CommandSupport LogOptionsCommand.swift
/Users/admin/builder/spi-builder-workspace/Sources/CommandSupport/LogOptionsCommand.swift:53:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'ParsableCommandLogConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
42 | }
43 |
44 | public struct ParsableCommandLogConfiguration {
| `- note: consider making struct 'ParsableCommandLogConfiguration' conform to the 'Sendable' protocol
45 | public init(consoleBacking: LogHandler?, additionalSystem: [LogHandler]) {
46 | self.consoleBacking = consoleBacking
:
51 | let additionalSystem: [LogHandler]
52 |
53 | public static let `default` = ParsableCommandLogConfiguration(consoleBacking: nil, additionalSystem: [])
| |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'ParsableCommandLogConfiguration' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'default' 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
54 | }
55 |
/Users/admin/builder/spi-builder-workspace/Sources/CommandSupport/LogOptionsCommand.swift:122:1: warning: extension declares a conformance of imported type 'Level' to imported protocol 'ExpressibleByArgument'; this will not behave correctly if the owners of 'Logging' introduce this conformance in the future
120 | }
121 |
122 | extension Logger.Level: ExpressibleByArgument {}
| |- warning: extension declares a conformance of imported type 'Level' to imported protocol 'ExpressibleByArgument'; this will not behave correctly if the owners of 'Logging' introduce this conformance in the future
| `- note: add '@retroactive' to silence this warning
123 |
[507/548] Emitting module Downloader
[508/548] Compiling Downloader Downloader.swift
[509/548] Compiling Downloader DownloaderModuleDependencies.swift
[510/548] Compiling Downloader DownloaderImpl.swift
/Users/admin/builder/spi-builder-workspace/Sources/Downloader/DownloaderImpl.swift:44:21: warning: capture of 'completion' with non-sendable type '(Result<AbsolutePath, any Error>) -> ()' in a `@Sendable` closure; this is an error in the Swift 6 language mode
42 | }
43 | callbackQueue.async {
44 | completion(response.result)
| |- warning: capture of 'completion' with non-sendable type '(Result<AbsolutePath, any Error>) -> ()' in a `@Sendable` closure; this is an error in the Swift 6 language mode
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
45 | }
46 | }
/Users/admin/builder/spi-builder-workspace/Sources/Downloader/DownloaderImpl.swift:44:32: warning: capture of 'response' with non-sendable type 'DownloadResponse<AbsolutePath, any Error>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
42 | }
43 | callbackQueue.async {
44 | completion(response.result)
| `- warning: capture of 'response' with non-sendable type 'DownloadResponse<AbsolutePath, any Error>' in a `@Sendable` closure; this is an error in the Swift 6 language mode
45 | }
46 | }
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Alamofire/Source/Response.swift:215:15: note: generic struct 'DownloadResponse' does not conform to the 'Sendable' protocol
213 |
214 | /// Used to store all data associated with a serialized response of a download request.
215 | public struct DownloadResponse<Success, Failure: Error> {
| `- note: generic struct 'DownloadResponse' does not conform to the 'Sendable' protocol
216 | /// The URL request sent to the server.
217 | public let request: URLRequest?
/Users/admin/builder/spi-builder-workspace/Sources/Downloader/DownloaderImpl.swift:1:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Alamofire'
1 | import Alamofire
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Alamofire'
2 | import DateProvider
3 | import Foundation
/Users/admin/builder/spi-builder-workspace/Sources/Downloader/DownloaderImpl.swift:58:14: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
56 | request.validate()
57 |
58 | Task {
| `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
59 | for await progress in request.downloadProgress() {
60 | let downloadProgress = calculateProgressFrom(startedAt: downloadStartedAt, progress: progress)
| `- note: closure captures 'self' which is accessible to code in the current task
61 | progressHandler(downloadProgress)
62 | }
[511/548] Compiling CommandSupport TestableCommand.swift
[512/548] Compiling ProcessController SubprocessArgument.swift
[513/548] Compiling ProcessController SubprocessInfo.swift
[514/548] Compiling ProcessController ProcessControllerProvider+Shell.swift
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/AutomaticManagement.swift:53:23: warning: static property 'noManagement' is not concurrency-safe because non-'Sendable' type 'AutomaticManagement' may have shared mutable state; this is an error in the Swift 6 language mode
34 | }
35 |
36 | public struct AutomaticManagement: CustomStringConvertible, Equatable {
| `- note: consider making struct 'AutomaticManagement' conform to the 'Sendable' protocol
37 | public let items: [AutomaticManagementItem]
38 |
:
51 | }
52 |
53 | public static let noManagement = AutomaticManagement(items: [])
| |- warning: static property 'noManagement' is not concurrency-safe because non-'Sendable' type 'AutomaticManagement' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'noManagement' 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
54 |
55 | public static func multiple(_ items: [AutomaticManagementItem]) -> AutomaticManagement {
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/ProcessControllerProvider+Shell.swift:141:23: warning: static property 'silent' is not concurrency-safe because non-'Sendable' type 'OutputStreaming' may have shared mutable state; this is an error in the Swift 6 language mode
117 | }
118 |
119 | public struct OutputStreaming: ExpressibleByArrayLiteral {
| `- note: consider making struct 'OutputStreaming' conform to the 'Sendable' protocol
120 | public let stdout: (Data) -> ()
121 | public let stderr: (Data) -> ()
:
139 | public static var restream: Self { .restream(name: "process") }
140 |
141 | public static let silent = OutputStreaming { _ in } stderr: { _ in }
| |- warning: static property 'silent' is not concurrency-safe because non-'Sendable' type 'OutputStreaming' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'silent' 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
142 |
143 | public static func multiple(_ streams: [OutputStreaming]) -> OutputStreaming {
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/ProcessControllerProvider+Shell.swift:109:13: warning: 'subprocess(arguments:environment:currentWorkingDirectory:outputStreaming:automaticManagement:file:line:)' is deprecated: Use async version
107 | arguments.append(contentsOf: ["-c", command])
108 |
109 | try subprocess(
| `- warning: 'subprocess(arguments:environment:currentWorkingDirectory:outputStreaming:automaticManagement:file:line:)' is deprecated: Use async version
110 | arguments: arguments,
111 | environment: environment,
[515/548] Compiling ProcessController ProcessControllerProvider+Subprocess.swift
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/AutomaticManagement.swift:53:23: warning: static property 'noManagement' is not concurrency-safe because non-'Sendable' type 'AutomaticManagement' may have shared mutable state; this is an error in the Swift 6 language mode
34 | }
35 |
36 | public struct AutomaticManagement: CustomStringConvertible, Equatable {
| `- note: consider making struct 'AutomaticManagement' conform to the 'Sendable' protocol
37 | public let items: [AutomaticManagementItem]
38 |
:
51 | }
52 |
53 | public static let noManagement = AutomaticManagement(items: [])
| |- warning: static property 'noManagement' is not concurrency-safe because non-'Sendable' type 'AutomaticManagement' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'noManagement' 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
54 |
55 | public static func multiple(_ items: [AutomaticManagementItem]) -> AutomaticManagement {
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/ProcessControllerProvider+Shell.swift:141:23: warning: static property 'silent' is not concurrency-safe because non-'Sendable' type 'OutputStreaming' may have shared mutable state; this is an error in the Swift 6 language mode
117 | }
118 |
119 | public struct OutputStreaming: ExpressibleByArrayLiteral {
| `- note: consider making struct 'OutputStreaming' conform to the 'Sendable' protocol
120 | public let stdout: (Data) -> ()
121 | public let stderr: (Data) -> ()
:
139 | public static var restream: Self { .restream(name: "process") }
140 |
141 | public static let silent = OutputStreaming { _ in } stderr: { _ in }
| |- warning: static property 'silent' is not concurrency-safe because non-'Sendable' type 'OutputStreaming' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'silent' 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
142 |
143 | public static func multiple(_ streams: [OutputStreaming]) -> OutputStreaming {
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/ProcessControllerProvider+Shell.swift:109:13: warning: 'subprocess(arguments:environment:currentWorkingDirectory:outputStreaming:automaticManagement:file:line:)' is deprecated: Use async version
107 | arguments.append(contentsOf: ["-c", command])
108 |
109 | try subprocess(
| `- warning: 'subprocess(arguments:environment:currentWorkingDirectory:outputStreaming:automaticManagement:file:line:)' is deprecated: Use async version
110 | arguments: arguments,
111 | environment: environment,
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/AutomaticManagement.swift:53:23: warning: static property 'noManagement' is not concurrency-safe because non-'Sendable' type 'AutomaticManagement' may have shared mutable state; this is an error in the Swift 6 language mode
34 | }
35 |
36 | public struct AutomaticManagement: CustomStringConvertible, Equatable {
| `- note: consider making struct 'AutomaticManagement' conform to the 'Sendable' protocol
37 | public let items: [AutomaticManagementItem]
38 |
:
51 | }
52 |
53 | public static let noManagement = AutomaticManagement(items: [])
| |- warning: static property 'noManagement' is not concurrency-safe because non-'Sendable' type 'AutomaticManagement' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'noManagement' 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
54 |
55 | public static func multiple(_ items: [AutomaticManagementItem]) -> AutomaticManagement {
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/AutomaticManagement.swift:53:23: warning: static property 'noManagement' is not concurrency-safe because non-'Sendable' type 'AutomaticManagement' may have shared mutable state; this is an error in the Swift 6 language mode
34 | }
35 |
36 | public struct AutomaticManagement: CustomStringConvertible, Equatable {
| `- note: consider making struct 'AutomaticManagement' conform to the 'Sendable' protocol
37 | public let items: [AutomaticManagementItem]
38 |
:
51 | }
52 |
53 | public static let noManagement = AutomaticManagement(items: [])
| |- warning: static property 'noManagement' is not concurrency-safe because non-'Sendable' type 'AutomaticManagement' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'noManagement' 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
54 |
55 | public static func multiple(_ items: [AutomaticManagementItem]) -> AutomaticManagement {
[519/548] Compiling ProcessController ProcessListener.swift
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/ProcessController.swift:28:10: warning: associated value 'unexpectedProcessStatus(name:arguments:pid:processStatus:)' of 'Sendable'-conforming enum 'ProcessTerminationError' has non-sendable type 'any SubprocessArgument'; this is an error in the Swift 6 language mode
26 |
27 | public enum ProcessTerminationError: Error, CustomStringConvertible {
28 | case unexpectedProcessStatus(
| `- warning: associated value 'unexpectedProcessStatus(name:arguments:pid:processStatus:)' of 'Sendable'-conforming enum 'ProcessTerminationError' has non-sendable type 'any SubprocessArgument'; this is an error in the Swift 6 language mode
29 | name: String,
30 | arguments: [SubprocessArgument],
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/SubprocessArgument.swift:4:17: note: protocol 'SubprocessArgument' does not conform to the 'Sendable' protocol
2 | import PathLib
3 |
4 | public protocol SubprocessArgument {
| `- note: protocol 'SubprocessArgument' does not conform to the 'Sendable' protocol
5 | func stringValue() throws -> String
6 | }
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/ProcessController.swift:28:10: warning: associated value 'unexpectedProcessStatus(name:arguments:pid:processStatus:)' of 'Sendable'-conforming enum 'ProcessTerminationError' has non-sendable type 'ProcessStatus'; this is an error in the Swift 6 language mode
26 |
27 | public enum ProcessTerminationError: Error, CustomStringConvertible {
28 | case unexpectedProcessStatus(
| `- warning: associated value 'unexpectedProcessStatus(name:arguments:pid:processStatus:)' of 'Sendable'-conforming enum 'ProcessTerminationError' has non-sendable type 'ProcessStatus'; this is an error in the Swift 6 language mode
29 | name: String,
30 | arguments: [SubprocessArgument],
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/ProcessStatus.swift:3:13: note: consider making enum 'ProcessStatus' conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | public enum ProcessStatus: Equatable, CustomStringConvertible {
| `- note: consider making enum 'ProcessStatus' conform to the 'Sendable' protocol
4 | case notStarted
5 | case stillRunning
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/ProcessController.swift:55:13: warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
53 | await waitForProcessToDieAsync()
54 | } onCancel: {
55 | send(signal: SIGINT)
| `- warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
56 | }
57 | }
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/ProcessController.swift:52:9: warning: no calls to throwing functions occur within 'try' expression
50 | try Task.checkCancellation()
51 | try start()
52 | try await withTaskCancellationHandler {
| `- warning: no calls to throwing functions occur within 'try' expression
53 | await waitForProcessToDieAsync()
54 | } onCancel: {
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/ProcessControllerError.swift:5:10: warning: associated value 'fileIsNotExecutable(path:)' of 'Sendable'-conforming enum 'ProcessControllerError' has non-sendable type 'AbsolutePath'; this is an error in the Swift 6 language mode
3 |
4 | public enum ProcessControllerError: CustomStringConvertible, Error {
5 | case fileIsNotExecutable(path: AbsolutePath)
| `- warning: associated value 'fileIsNotExecutable(path:)' of 'Sendable'-conforming enum 'ProcessControllerError' has non-sendable type 'AbsolutePath'; this is an error in the Swift 6 language mode
6 |
7 | public var description: String {
/Users/admin/builder/spi-builder-workspace/Sources/PathLib/AbsolutePath.swift:3:20: note: class 'AbsolutePath' does not conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | public final class AbsolutePath:
| `- note: class 'AbsolutePath' does not conform to the 'Sendable' protocol
4 | Path,
5 | Codable,
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/ProcessControllerError.swift:2:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'PathLib'
1 | import Foundation
2 | import PathLib
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'PathLib'
3 |
4 | public enum ProcessControllerError: CustomStringConvertible, Error {
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/ProcessController.swift:28:10: warning: associated value 'unexpectedProcessStatus(name:arguments:pid:processStatus:)' of 'Sendable'-conforming enum 'ProcessTerminationError' has non-sendable type 'any SubprocessArgument'; this is an error in the Swift 6 language mode
26 |
27 | public enum ProcessTerminationError: Error, CustomStringConvertible {
28 | case unexpectedProcessStatus(
| `- warning: associated value 'unexpectedProcessStatus(name:arguments:pid:processStatus:)' of 'Sendable'-conforming enum 'ProcessTerminationError' has non-sendable type 'any SubprocessArgument'; this is an error in the Swift 6 language mode
29 | name: String,
30 | arguments: [SubprocessArgument],
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/SubprocessArgument.swift:4:17: note: protocol 'SubprocessArgument' does not conform to the 'Sendable' protocol
2 | import PathLib
3 |
4 | public protocol SubprocessArgument {
| `- note: protocol 'SubprocessArgument' does not conform to the 'Sendable' protocol
5 | func stringValue() throws -> String
6 | }
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/ProcessController.swift:28:10: warning: associated value 'unexpectedProcessStatus(name:arguments:pid:processStatus:)' of 'Sendable'-conforming enum 'ProcessTerminationError' has non-sendable type 'ProcessStatus'; this is an error in the Swift 6 language mode
26 |
27 | public enum ProcessTerminationError: Error, CustomStringConvertible {
28 | case unexpectedProcessStatus(
| `- warning: associated value 'unexpectedProcessStatus(name:arguments:pid:processStatus:)' of 'Sendable'-conforming enum 'ProcessTerminationError' has non-sendable type 'ProcessStatus'; this is an error in the Swift 6 language mode
29 | name: String,
30 | arguments: [SubprocessArgument],
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/ProcessStatus.swift:3:13: note: consider making enum 'ProcessStatus' conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | public enum ProcessStatus: Equatable, CustomStringConvertible {
| `- note: consider making enum 'ProcessStatus' conform to the 'Sendable' protocol
4 | case notStarted
5 | case stillRunning
<unknown>:0: note: consider making generic parameter 'Self' conform to the 'Sendable' protocol
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/ProcessController.swift:55:13: warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
53 | await waitForProcessToDieAsync()
54 | } onCancel: {
55 | send(signal: SIGINT)
| `- warning: capture of 'self' with non-sendable type 'Self' in a `@Sendable` closure; this is an error in the Swift 6 language mode
56 | }
57 | }
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/ProcessController.swift:52:9: warning: no calls to throwing functions occur within 'try' expression
50 | try Task.checkCancellation()
51 | try start()
52 | try await withTaskCancellationHandler {
| `- warning: no calls to throwing functions occur within 'try' expression
53 | await waitForProcessToDieAsync()
54 | } onCancel: {
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/ProcessControllerError.swift:5:10: warning: associated value 'fileIsNotExecutable(path:)' of 'Sendable'-conforming enum 'ProcessControllerError' has non-sendable type 'AbsolutePath'; this is an error in the Swift 6 language mode
3 |
4 | public enum ProcessControllerError: CustomStringConvertible, Error {
5 | case fileIsNotExecutable(path: AbsolutePath)
| `- warning: associated value 'fileIsNotExecutable(path:)' of 'Sendable'-conforming enum 'ProcessControllerError' has non-sendable type 'AbsolutePath'; this is an error in the Swift 6 language mode
6 |
7 | public var description: String {
/Users/admin/builder/spi-builder-workspace/Sources/PathLib/AbsolutePath.swift:3:20: note: class 'AbsolutePath' does not conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | public final class AbsolutePath:
| `- note: class 'AbsolutePath' does not conform to the 'Sendable' protocol
4 | Path,
5 | Codable,
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/ProcessControllerError.swift:2:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'PathLib'
1 | import Foundation
2 | import PathLib
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'PathLib'
3 |
4 | public enum ProcessControllerError: CustomStringConvertible, Error {
[522/548] Compiling ProcessController BashEscapedCommandMakerImpl.swift
[523/548] Compiling ProcessController ProcessControllerDependencies.swift
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/AutomaticManagement.swift:53:23: warning: static property 'noManagement' is not concurrency-safe because non-'Sendable' type 'AutomaticManagement' may have shared mutable state; this is an error in the Swift 6 language mode
34 | }
35 |
36 | public struct AutomaticManagement: CustomStringConvertible, Equatable {
| `- note: consider making struct 'AutomaticManagement' conform to the 'Sendable' protocol
37 | public let items: [AutomaticManagementItem]
38 |
:
51 | }
52 |
53 | public static let noManagement = AutomaticManagement(items: [])
| |- warning: static property 'noManagement' is not concurrency-safe because non-'Sendable' type 'AutomaticManagement' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'noManagement' 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
54 |
55 | public static func multiple(_ items: [AutomaticManagementItem]) -> AutomaticManagement {
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/AutomaticManagement.swift:53:23: warning: static property 'noManagement' is not concurrency-safe because non-'Sendable' type 'AutomaticManagement' may have shared mutable state; this is an error in the Swift 6 language mode
34 | }
35 |
36 | public struct AutomaticManagement: CustomStringConvertible, Equatable {
| `- note: consider making struct 'AutomaticManagement' conform to the 'Sendable' protocol
37 | public let items: [AutomaticManagementItem]
38 |
:
51 | }
52 |
53 | public static let noManagement = AutomaticManagement(items: [])
| |- warning: static property 'noManagement' is not concurrency-safe because non-'Sendable' type 'AutomaticManagement' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'noManagement' 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
54 |
55 | public static func multiple(_ items: [AutomaticManagementItem]) -> AutomaticManagement {
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/AutomaticManagement.swift:53:23: warning: static property 'noManagement' is not concurrency-safe because non-'Sendable' type 'AutomaticManagement' may have shared mutable state; this is an error in the Swift 6 language mode
34 | }
35 |
36 | public struct AutomaticManagement: CustomStringConvertible, Equatable {
| `- note: consider making struct 'AutomaticManagement' conform to the 'Sendable' protocol
37 | public let items: [AutomaticManagementItem]
38 |
:
51 | }
52 |
53 | public static let noManagement = AutomaticManagement(items: [])
| |- warning: static property 'noManagement' is not concurrency-safe because non-'Sendable' type 'AutomaticManagement' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'noManagement' 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
54 |
55 | public static func multiple(_ items: [AutomaticManagementItem]) -> AutomaticManagement {
[531/548] Compiling ProcessController DefaultProcessController.swift
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/DefaultProcessController.swift:110:36: warning: capture of 'self' with non-sendable type 'DefaultProcessController?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
8 | // swiftlint:disable async
9 | // swiftlint:disable sync
10 | public final class DefaultProcessController: ProcessController, CustomStringConvertible {
| `- note: class 'DefaultProcessController' does not conform to the 'Sendable' protocol
11 | public let subprocess: Subprocess
12 | public let processName: String
:
108 | processTerminationHandlerGroup.enter()
109 | process.terminationHandler = { [weak self] _ in
110 | guard let strongSelf = self else { return }
| `- warning: capture of 'self' with non-sendable type 'DefaultProcessController?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
111 |
112 | strongSelf.processTerminated()
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/DefaultProcessController.swift:118:36: warning: capture of 'self' with non-sendable type 'DefaultProcessController?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
8 | // swiftlint:disable async
9 | // swiftlint:disable sync
10 | public final class DefaultProcessController: ProcessController, CustomStringConvertible {
| `- note: class 'DefaultProcessController' does not conform to the 'Sendable' protocol
11 | public let subprocess: Subprocess
12 | public let processName: String
:
116 |
117 | listenerQueue.async { [weak self] in
118 | guard let strongSelf = self else { return }
| `- warning: capture of 'self' with non-sendable type 'DefaultProcessController?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
119 |
120 | for listenerWrapper in strongSelf.startListeners {
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/DefaultProcessController.swift:124:25: warning: capture of 'strongSelf' with non-sendable type 'DefaultProcessController' in a `@Sendable` closure; this is an error in the Swift 6 language mode
8 | // swiftlint:disable async
9 | // swiftlint:disable sync
10 | public final class DefaultProcessController: ProcessController, CustomStringConvertible {
| `- note: class 'DefaultProcessController' does not conform to the 'Sendable' protocol
11 | public let subprocess: Subprocess
12 | public let processName: String
:
122 | guard let strongSelf = self else { return }
123 | strongSelf.listenerQueue.async {
124 | strongSelf.startListeners.removeAll { $0.uuid == listenerWrapper.uuid }
| `- warning: capture of 'strongSelf' with non-sendable type 'DefaultProcessController' in a `@Sendable` closure; this is an error in the Swift 6 language mode
125 | }
126 | }
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/DefaultProcessController.swift:124:74: warning: capture of 'listenerWrapper' with non-sendable type 'DefaultProcessController.ListenerWrapper<StartListener>' (aka 'DefaultProcessController.ListenerWrapper<(any ProcessController, @escaping () -> ()) -> ()>') in a `@Sendable` closure; this is an error in the Swift 6 language mode
29 | private var terminationListeners = [ListenerWrapper<TerminationListener>]()
30 |
31 | private final class ListenerWrapper<T>: CustomStringConvertible {
| `- note: generic class 'ListenerWrapper' does not conform to the 'Sendable' protocol
32 | let uuid: UUID
33 | let purpose: String
:
122 | guard let strongSelf = self else { return }
123 | strongSelf.listenerQueue.async {
124 | strongSelf.startListeners.removeAll { $0.uuid == listenerWrapper.uuid }
| `- warning: capture of 'listenerWrapper' with non-sendable type 'DefaultProcessController.ListenerWrapper<StartListener>' (aka 'DefaultProcessController.ListenerWrapper<(any ProcessController, @escaping () -> ()) -> ()>') in a `@Sendable` closure; this is an error in the Swift 6 language mode
125 | }
126 | }
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/DefaultProcessController.swift:124:74: warning: capture of 'listenerWrapper' with non-sendable type 'DefaultProcessController.ListenerWrapper<StartListener>' (aka 'DefaultProcessController.ListenerWrapper<(any ProcessController, @escaping () -> ()) -> ()>') in an isolated closure; this is an error in the Swift 6 language mode
29 | private var terminationListeners = [ListenerWrapper<TerminationListener>]()
30 |
31 | private final class ListenerWrapper<T>: CustomStringConvertible {
| `- note: generic class 'ListenerWrapper' does not conform to the 'Sendable' protocol
32 | let uuid: UUID
33 | let purpose: String
:
122 | guard let strongSelf = self else { return }
123 | strongSelf.listenerQueue.async {
124 | strongSelf.startListeners.removeAll { $0.uuid == listenerWrapper.uuid }
| `- warning: capture of 'listenerWrapper' with non-sendable type 'DefaultProcessController.ListenerWrapper<StartListener>' (aka 'DefaultProcessController.ListenerWrapper<(any ProcessController, @escaping () -> ()) -> ()>') in an isolated closure; this is an error in the Swift 6 language mode
125 | }
126 | }
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/DefaultProcessController.swift:170:36: warning: capture of 'self' with non-sendable type 'DefaultProcessController?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
8 | // swiftlint:disable async
9 | // swiftlint:disable sync
10 | public final class DefaultProcessController: ProcessController, CustomStringConvertible {
| `- note: class 'DefaultProcessController' does not conform to the 'Sendable' protocol
11 | public let subprocess: Subprocess
12 | public let processName: String
:
168 | public func send(signal: Int32) {
169 | listenerQueue.async { [weak self] in
170 | guard let strongSelf = self else { return }
| `- warning: capture of 'self' with non-sendable type 'DefaultProcessController?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
171 |
172 | for listenerWrapper in strongSelf.signalListeners {
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/DefaultProcessController.swift:177:25: warning: capture of 'strongSelf' with non-sendable type 'DefaultProcessController' in a `@Sendable` closure; this is an error in the Swift 6 language mode
8 | // swiftlint:disable async
9 | // swiftlint:disable sync
10 | public final class DefaultProcessController: ProcessController, CustomStringConvertible {
| `- note: class 'DefaultProcessController' does not conform to the 'Sendable' protocol
11 | public let subprocess: Subprocess
12 | public let processName: String
:
175 |
176 | strongSelf.listenerQueue.async {
177 | strongSelf.signalListeners.removeAll { $0.uuid == listenerWrapper.uuid }
| `- warning: capture of 'strongSelf' with non-sendable type 'DefaultProcessController' in a `@Sendable` closure; this is an error in the Swift 6 language mode
178 | }
179 | }
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/DefaultProcessController.swift:177:75: warning: capture of 'listenerWrapper' with non-sendable type 'DefaultProcessController.ListenerWrapper<SignalListener>' (aka 'DefaultProcessController.ListenerWrapper<(any ProcessController, Int32, @escaping () -> ()) -> ()>') in a `@Sendable` closure; this is an error in the Swift 6 language mode
29 | private var terminationListeners = [ListenerWrapper<TerminationListener>]()
30 |
31 | private final class ListenerWrapper<T>: CustomStringConvertible {
| `- note: generic class 'ListenerWrapper' does not conform to the 'Sendable' protocol
32 | let uuid: UUID
33 | let purpose: String
:
175 |
176 | strongSelf.listenerQueue.async {
177 | strongSelf.signalListeners.removeAll { $0.uuid == listenerWrapper.uuid }
| `- warning: capture of 'listenerWrapper' with non-sendable type 'DefaultProcessController.ListenerWrapper<SignalListener>' (aka 'DefaultProcessController.ListenerWrapper<(any ProcessController, Int32, @escaping () -> ()) -> ()>') in a `@Sendable` closure; this is an error in the Swift 6 language mode
178 | }
179 | }
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/DefaultProcessController.swift:177:75: warning: capture of 'listenerWrapper' with non-sendable type 'DefaultProcessController.ListenerWrapper<SignalListener>' (aka 'DefaultProcessController.ListenerWrapper<(any ProcessController, Int32, @escaping () -> ()) -> ()>') in an isolated closure; this is an error in the Swift 6 language mode
29 | private var terminationListeners = [ListenerWrapper<TerminationListener>]()
30 |
31 | private final class ListenerWrapper<T>: CustomStringConvertible {
| `- note: generic class 'ListenerWrapper' does not conform to the 'Sendable' protocol
32 | let uuid: UUID
33 | let purpose: String
:
175 |
176 | strongSelf.listenerQueue.async {
177 | strongSelf.signalListeners.removeAll { $0.uuid == listenerWrapper.uuid }
| `- warning: capture of 'listenerWrapper' with non-sendable type 'DefaultProcessController.ListenerWrapper<SignalListener>' (aka 'DefaultProcessController.ListenerWrapper<(any ProcessController, Int32, @escaping () -> ()) -> ()>') in an isolated closure; this is an error in the Swift 6 language mode
178 | }
179 | }
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/DefaultProcessController.swift:228:40: warning: capture of 'self' with non-sendable type 'DefaultProcessController?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
8 | // swiftlint:disable async
9 | // swiftlint:disable sync
10 | public final class DefaultProcessController: ProcessController, CustomStringConvertible {
| `- note: class 'DefaultProcessController' does not conform to the 'Sendable' protocol
11 | public let subprocess: Subprocess
12 | public let processName: String
:
226 | signalTermination(process)
227 | processTerminationQueue.asyncAfter(deadline: .now() + terminationSignalTimeout) { [weak self] in
228 | guard let strongSelf = self else { return }
| `- warning: capture of 'self' with non-sendable type 'DefaultProcessController?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
229 | strongSelf.forceKillProcess(onKill: onKill)
230 | }
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/DefaultProcessController.swift:229:53: warning: capture of 'onKill' with non-sendable type '() -> ()' in a `@Sendable` closure; this is an error in the Swift 6 language mode
227 | processTerminationQueue.asyncAfter(deadline: .now() + terminationSignalTimeout) { [weak self] in
228 | guard let strongSelf = self else { return }
229 | strongSelf.forceKillProcess(onKill: onKill)
| |- warning: capture of 'onKill' with non-sendable type '() -> ()' in a `@Sendable` closure; this is an error in the Swift 6 language mode
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
230 | }
231 | }
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/DefaultProcessController.swift:244:36: warning: capture of 'self' with non-sendable type 'DefaultProcessController?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
8 | // swiftlint:disable async
9 | // swiftlint:disable sync
10 | public final class DefaultProcessController: ProcessController, CustomStringConvertible {
| `- note: class 'DefaultProcessController' does not conform to the 'Sendable' protocol
11 | public let subprocess: Subprocess
12 | public let processName: String
:
242 | private func processTerminated() {
243 | listenerQueue.async { [weak self] in
244 | guard let strongSelf = self else { return }
| `- warning: capture of 'self' with non-sendable type 'DefaultProcessController?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
245 |
246 | for listenerWrapper in strongSelf.terminationListeners {
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/DefaultProcessController.swift:251:25: warning: capture of 'strongSelf' with non-sendable type 'DefaultProcessController' in a `@Sendable` closure; this is an error in the Swift 6 language mode
8 | // swiftlint:disable async
9 | // swiftlint:disable sync
10 | public final class DefaultProcessController: ProcessController, CustomStringConvertible {
| `- note: class 'DefaultProcessController' does not conform to the 'Sendable' protocol
11 | public let subprocess: Subprocess
12 | public let processName: String
:
249 |
250 | strongSelf.listenerQueue.async {
251 | strongSelf.signalListeners.removeAll { $0.uuid == listenerWrapper.uuid }
| `- warning: capture of 'strongSelf' with non-sendable type 'DefaultProcessController' in a `@Sendable` closure; this is an error in the Swift 6 language mode
252 | }
253 | }
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/DefaultProcessController.swift:251:75: warning: capture of 'listenerWrapper' with non-sendable type 'DefaultProcessController.ListenerWrapper<TerminationListener>' (aka 'DefaultProcessController.ListenerWrapper<(any ProcessController, @escaping () -> ()) -> ()>') in a `@Sendable` closure; this is an error in the Swift 6 language mode
29 | private var terminationListeners = [ListenerWrapper<TerminationListener>]()
30 |
31 | private final class ListenerWrapper<T>: CustomStringConvertible {
| `- note: generic class 'ListenerWrapper' does not conform to the 'Sendable' protocol
32 | let uuid: UUID
33 | let purpose: String
:
249 |
250 | strongSelf.listenerQueue.async {
251 | strongSelf.signalListeners.removeAll { $0.uuid == listenerWrapper.uuid }
| `- warning: capture of 'listenerWrapper' with non-sendable type 'DefaultProcessController.ListenerWrapper<TerminationListener>' (aka 'DefaultProcessController.ListenerWrapper<(any ProcessController, @escaping () -> ()) -> ()>') in a `@Sendable` closure; this is an error in the Swift 6 language mode
252 | }
253 | }
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/DefaultProcessController.swift:251:75: warning: capture of 'listenerWrapper' with non-sendable type 'DefaultProcessController.ListenerWrapper<TerminationListener>' (aka 'DefaultProcessController.ListenerWrapper<(any ProcessController, @escaping () -> ()) -> ()>') in an isolated closure; this is an error in the Swift 6 language mode
29 | private var terminationListeners = [ListenerWrapper<TerminationListener>]()
30 |
31 | private final class ListenerWrapper<T>: CustomStringConvertible {
| `- note: generic class 'ListenerWrapper' does not conform to the 'Sendable' protocol
32 | let uuid: UUID
33 | let purpose: String
:
249 |
250 | strongSelf.listenerQueue.async {
251 | strongSelf.signalListeners.removeAll { $0.uuid == listenerWrapper.uuid }
| `- warning: capture of 'listenerWrapper' with non-sendable type 'DefaultProcessController.ListenerWrapper<TerminationListener>' (aka 'DefaultProcessController.ListenerWrapper<(any ProcessController, @escaping () -> ()) -> ()>') in an isolated closure; this is an error in the Swift 6 language mode
252 | }
253 | }
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/DefaultProcessController.swift:259:36: warning: capture of 'self' with non-sendable type 'DefaultProcessController?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
8 | // swiftlint:disable async
9 | // swiftlint:disable sync
10 | public final class DefaultProcessController: ProcessController, CustomStringConvertible {
| `- note: class 'DefaultProcessController' does not conform to the 'Sendable' protocol
11 | public let subprocess: Subprocess
12 | public let processName: String
:
257 |
258 | listenerQueue.async(flags: .barrier) { [weak self] in
259 | guard let strongSelf = self else { return }
| `- warning: capture of 'self' with non-sendable type 'DefaultProcessController?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
260 | strongSelf.processTerminationHandlerGroup.leave()
261 | }
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/DefaultProcessController.swift:298:17: warning: capture of 'onEndOfData' with non-sendable type '() -> ()' in a `@Sendable` closure; this is an error in the Swift 6 language mode
296 | pipe.fileHandleForReading.closeFile()
297 | #endif
298 | onEndOfData()
| |- warning: capture of 'onEndOfData' with non-sendable type '() -> ()' in a `@Sendable` closure; this is an error in the Swift 6 language mode
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
299 | } else {
300 | onNewData(data)
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/DefaultProcessController.swift:300:17: warning: capture of 'onNewData' with non-sendable type '(Data) -> ()' in a `@Sendable` closure; this is an error in the Swift 6 language mode
298 | onEndOfData()
299 | } else {
300 | onNewData(data)
| |- warning: capture of 'onNewData' with non-sendable type '(Data) -> ()' in a `@Sendable` closure; this is an error in the Swift 6 language mode
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
301 | }
302 | }
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/DefaultProcessController.swift:318:21: warning: capture of 'strongSelf' with non-sendable type 'DefaultProcessController' in a `@Sendable` closure; this is an error in the Swift 6 language mode
8 | // swiftlint:disable async
9 | // swiftlint:disable sync
10 | public final class DefaultProcessController: ProcessController, CustomStringConvertible {
| `- note: class 'DefaultProcessController' does not conform to the 'Sendable' protocol
11 | public let subprocess: Subprocess
12 | public let processName: String
:
316 | guard let strongSelf = self else { return }
317 | strongSelf.listenerQueue.async {
318 | strongSelf.openPipeFileHandleGroup.leave()
| `- warning: capture of 'strongSelf' with non-sendable type 'DefaultProcessController' in a `@Sendable` closure; this is an error in the Swift 6 language mode
319 | }
320 | }
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/DefaultProcessController.swift:335:21: warning: capture of 'strongSelf' with non-sendable type 'DefaultProcessController' in a `@Sendable` closure; this is an error in the Swift 6 language mode
8 | // swiftlint:disable async
9 | // swiftlint:disable sync
10 | public final class DefaultProcessController: ProcessController, CustomStringConvertible {
| `- note: class 'DefaultProcessController' does not conform to the 'Sendable' protocol
11 | public let subprocess: Subprocess
12 | public let processName: String
:
333 | guard let strongSelf = self else { return }
334 | strongSelf.listenerQueue.async {
335 | strongSelf.openPipeFileHandleGroup.leave()
| `- warning: capture of 'strongSelf' with non-sendable type 'DefaultProcessController' in a `@Sendable` closure; this is an error in the Swift 6 language mode
336 | }
337 | }
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/DefaultProcessController.swift:361:36: warning: capture of 'self' with non-sendable type 'DefaultProcessController?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
8 | // swiftlint:disable async
9 | // swiftlint:disable sync
10 | public final class DefaultProcessController: ProcessController, CustomStringConvertible {
| `- note: class 'DefaultProcessController' does not conform to the 'Sendable' protocol
11 | public let subprocess: Subprocess
12 | public let processName: String
:
359 | private func didReceiveStdout(data: Data) {
360 | listenerQueue.async { [weak self] in
361 | guard let strongSelf = self else { return }
| `- warning: capture of 'self' with non-sendable type 'DefaultProcessController?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
362 |
363 | for listenerWrapper in strongSelf.stdoutListeners {
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/DefaultProcessController.swift:368:25: warning: capture of 'strongSelf' with non-sendable type 'DefaultProcessController' in a `@Sendable` closure; this is an error in the Swift 6 language mode
8 | // swiftlint:disable async
9 | // swiftlint:disable sync
10 | public final class DefaultProcessController: ProcessController, CustomStringConvertible {
| `- note: class 'DefaultProcessController' does not conform to the 'Sendable' protocol
11 | public let subprocess: Subprocess
12 | public let processName: String
:
366 |
367 | strongSelf.listenerQueue.async {
368 | strongSelf.stdoutListeners.removeAll { $0.uuid == listenerWrapper.uuid }
| `- warning: capture of 'strongSelf' with non-sendable type 'DefaultProcessController' in a `@Sendable` closure; this is an error in the Swift 6 language mode
369 | }
370 | }
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/DefaultProcessController.swift:368:75: warning: capture of 'listenerWrapper' with non-sendable type 'DefaultProcessController.ListenerWrapper<StdoutListener>' (aka 'DefaultProcessController.ListenerWrapper<(any ProcessController, Data, @escaping () -> ()) -> ()>') in a `@Sendable` closure; this is an error in the Swift 6 language mode
29 | private var terminationListeners = [ListenerWrapper<TerminationListener>]()
30 |
31 | private final class ListenerWrapper<T>: CustomStringConvertible {
| `- note: generic class 'ListenerWrapper' does not conform to the 'Sendable' protocol
32 | let uuid: UUID
33 | let purpose: String
:
366 |
367 | strongSelf.listenerQueue.async {
368 | strongSelf.stdoutListeners.removeAll { $0.uuid == listenerWrapper.uuid }
| `- warning: capture of 'listenerWrapper' with non-sendable type 'DefaultProcessController.ListenerWrapper<StdoutListener>' (aka 'DefaultProcessController.ListenerWrapper<(any ProcessController, Data, @escaping () -> ()) -> ()>') in a `@Sendable` closure; this is an error in the Swift 6 language mode
369 | }
370 | }
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/DefaultProcessController.swift:368:75: warning: capture of 'listenerWrapper' with non-sendable type 'DefaultProcessController.ListenerWrapper<StdoutListener>' (aka 'DefaultProcessController.ListenerWrapper<(any ProcessController, Data, @escaping () -> ()) -> ()>') in an isolated closure; this is an error in the Swift 6 language mode
29 | private var terminationListeners = [ListenerWrapper<TerminationListener>]()
30 |
31 | private final class ListenerWrapper<T>: CustomStringConvertible {
| `- note: generic class 'ListenerWrapper' does not conform to the 'Sendable' protocol
32 | let uuid: UUID
33 | let purpose: String
:
366 |
367 | strongSelf.listenerQueue.async {
368 | strongSelf.stdoutListeners.removeAll { $0.uuid == listenerWrapper.uuid }
| `- warning: capture of 'listenerWrapper' with non-sendable type 'DefaultProcessController.ListenerWrapper<StdoutListener>' (aka 'DefaultProcessController.ListenerWrapper<(any ProcessController, Data, @escaping () -> ()) -> ()>') in an isolated closure; this is an error in the Swift 6 language mode
369 | }
370 | }
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/DefaultProcessController.swift:378:36: warning: capture of 'self' with non-sendable type 'DefaultProcessController?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
8 | // swiftlint:disable async
9 | // swiftlint:disable sync
10 | public final class DefaultProcessController: ProcessController, CustomStringConvertible {
| `- note: class 'DefaultProcessController' does not conform to the 'Sendable' protocol
11 | public let subprocess: Subprocess
12 | public let processName: String
:
376 | private func didReceiveStderr(data: Data) {
377 | listenerQueue.async { [weak self] in
378 | guard let strongSelf = self else { return }
| `- warning: capture of 'self' with non-sendable type 'DefaultProcessController?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
379 |
380 | for listenerWrapper in strongSelf.stderrListeners {
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/DefaultProcessController.swift:385:25: warning: capture of 'strongSelf' with non-sendable type 'DefaultProcessController' in a `@Sendable` closure; this is an error in the Swift 6 language mode
8 | // swiftlint:disable async
9 | // swiftlint:disable sync
10 | public final class DefaultProcessController: ProcessController, CustomStringConvertible {
| `- note: class 'DefaultProcessController' does not conform to the 'Sendable' protocol
11 | public let subprocess: Subprocess
12 | public let processName: String
:
383 |
384 | strongSelf.listenerQueue.async {
385 | strongSelf.stderrListeners.removeAll { $0.uuid == listenerWrapper.uuid }
| `- warning: capture of 'strongSelf' with non-sendable type 'DefaultProcessController' in a `@Sendable` closure; this is an error in the Swift 6 language mode
386 | }
387 | }
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/DefaultProcessController.swift:385:75: warning: capture of 'listenerWrapper' with non-sendable type 'DefaultProcessController.ListenerWrapper<StderrListener>' (aka 'DefaultProcessController.ListenerWrapper<(any ProcessController, Data, @escaping () -> ()) -> ()>') in a `@Sendable` closure; this is an error in the Swift 6 language mode
29 | private var terminationListeners = [ListenerWrapper<TerminationListener>]()
30 |
31 | private final class ListenerWrapper<T>: CustomStringConvertible {
| `- note: generic class 'ListenerWrapper' does not conform to the 'Sendable' protocol
32 | let uuid: UUID
33 | let purpose: String
:
383 |
384 | strongSelf.listenerQueue.async {
385 | strongSelf.stderrListeners.removeAll { $0.uuid == listenerWrapper.uuid }
| `- warning: capture of 'listenerWrapper' with non-sendable type 'DefaultProcessController.ListenerWrapper<StderrListener>' (aka 'DefaultProcessController.ListenerWrapper<(any ProcessController, Data, @escaping () -> ()) -> ()>') in a `@Sendable` closure; this is an error in the Swift 6 language mode
386 | }
387 | }
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/DefaultProcessController.swift:385:75: warning: capture of 'listenerWrapper' with non-sendable type 'DefaultProcessController.ListenerWrapper<StderrListener>' (aka 'DefaultProcessController.ListenerWrapper<(any ProcessController, Data, @escaping () -> ()) -> ()>') in an isolated closure; this is an error in the Swift 6 language mode
29 | private var terminationListeners = [ListenerWrapper<TerminationListener>]()
30 |
31 | private final class ListenerWrapper<T>: CustomStringConvertible {
| `- note: generic class 'ListenerWrapper' does not conform to the 'Sendable' protocol
32 | let uuid: UUID
33 | let purpose: String
:
383 |
384 | strongSelf.listenerQueue.async {
385 | strongSelf.stderrListeners.removeAll { $0.uuid == listenerWrapper.uuid }
| `- warning: capture of 'listenerWrapper' with non-sendable type 'DefaultProcessController.ListenerWrapper<StderrListener>' (aka 'DefaultProcessController.ListenerWrapper<(any ProcessController, Data, @escaping () -> ()) -> ()>') in an isolated closure; this is an error in the Swift 6 language mode
386 | }
387 | }
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/DefaultProcessController.swift:147:31: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
145 | } else {
146 | await withTaskGroup(of: Void.self) { group in
147 | group.addTask {
| `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
148 | await self.openPipeFileHandleGroup.waitAsync()
| `- note: closure captures 'self' which is accessible to code in the current task
149 | }
150 | group.addTask {
[532/548] Compiling ProcessController DefaultProcessControllerProvider.swift
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/DefaultProcessController.swift:110:36: warning: capture of 'self' with non-sendable type 'DefaultProcessController?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
8 | // swiftlint:disable async
9 | // swiftlint:disable sync
10 | public final class DefaultProcessController: ProcessController, CustomStringConvertible {
| `- note: class 'DefaultProcessController' does not conform to the 'Sendable' protocol
11 | public let subprocess: Subprocess
12 | public let processName: String
:
108 | processTerminationHandlerGroup.enter()
109 | process.terminationHandler = { [weak self] _ in
110 | guard let strongSelf = self else { return }
| `- warning: capture of 'self' with non-sendable type 'DefaultProcessController?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
111 |
112 | strongSelf.processTerminated()
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/DefaultProcessController.swift:118:36: warning: capture of 'self' with non-sendable type 'DefaultProcessController?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
8 | // swiftlint:disable async
9 | // swiftlint:disable sync
10 | public final class DefaultProcessController: ProcessController, CustomStringConvertible {
| `- note: class 'DefaultProcessController' does not conform to the 'Sendable' protocol
11 | public let subprocess: Subprocess
12 | public let processName: String
:
116 |
117 | listenerQueue.async { [weak self] in
118 | guard let strongSelf = self else { return }
| `- warning: capture of 'self' with non-sendable type 'DefaultProcessController?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
119 |
120 | for listenerWrapper in strongSelf.startListeners {
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/DefaultProcessController.swift:124:25: warning: capture of 'strongSelf' with non-sendable type 'DefaultProcessController' in a `@Sendable` closure; this is an error in the Swift 6 language mode
8 | // swiftlint:disable async
9 | // swiftlint:disable sync
10 | public final class DefaultProcessController: ProcessController, CustomStringConvertible {
| `- note: class 'DefaultProcessController' does not conform to the 'Sendable' protocol
11 | public let subprocess: Subprocess
12 | public let processName: String
:
122 | guard let strongSelf = self else { return }
123 | strongSelf.listenerQueue.async {
124 | strongSelf.startListeners.removeAll { $0.uuid == listenerWrapper.uuid }
| `- warning: capture of 'strongSelf' with non-sendable type 'DefaultProcessController' in a `@Sendable` closure; this is an error in the Swift 6 language mode
125 | }
126 | }
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/DefaultProcessController.swift:124:74: warning: capture of 'listenerWrapper' with non-sendable type 'DefaultProcessController.ListenerWrapper<StartListener>' (aka 'DefaultProcessController.ListenerWrapper<(any ProcessController, @escaping () -> ()) -> ()>') in a `@Sendable` closure; this is an error in the Swift 6 language mode
29 | private var terminationListeners = [ListenerWrapper<TerminationListener>]()
30 |
31 | private final class ListenerWrapper<T>: CustomStringConvertible {
| `- note: generic class 'ListenerWrapper' does not conform to the 'Sendable' protocol
32 | let uuid: UUID
33 | let purpose: String
:
122 | guard let strongSelf = self else { return }
123 | strongSelf.listenerQueue.async {
124 | strongSelf.startListeners.removeAll { $0.uuid == listenerWrapper.uuid }
| `- warning: capture of 'listenerWrapper' with non-sendable type 'DefaultProcessController.ListenerWrapper<StartListener>' (aka 'DefaultProcessController.ListenerWrapper<(any ProcessController, @escaping () -> ()) -> ()>') in a `@Sendable` closure; this is an error in the Swift 6 language mode
125 | }
126 | }
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/DefaultProcessController.swift:124:74: warning: capture of 'listenerWrapper' with non-sendable type 'DefaultProcessController.ListenerWrapper<StartListener>' (aka 'DefaultProcessController.ListenerWrapper<(any ProcessController, @escaping () -> ()) -> ()>') in an isolated closure; this is an error in the Swift 6 language mode
29 | private var terminationListeners = [ListenerWrapper<TerminationListener>]()
30 |
31 | private final class ListenerWrapper<T>: CustomStringConvertible {
| `- note: generic class 'ListenerWrapper' does not conform to the 'Sendable' protocol
32 | let uuid: UUID
33 | let purpose: String
:
122 | guard let strongSelf = self else { return }
123 | strongSelf.listenerQueue.async {
124 | strongSelf.startListeners.removeAll { $0.uuid == listenerWrapper.uuid }
| `- warning: capture of 'listenerWrapper' with non-sendable type 'DefaultProcessController.ListenerWrapper<StartListener>' (aka 'DefaultProcessController.ListenerWrapper<(any ProcessController, @escaping () -> ()) -> ()>') in an isolated closure; this is an error in the Swift 6 language mode
125 | }
126 | }
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/DefaultProcessController.swift:170:36: warning: capture of 'self' with non-sendable type 'DefaultProcessController?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
8 | // swiftlint:disable async
9 | // swiftlint:disable sync
10 | public final class DefaultProcessController: ProcessController, CustomStringConvertible {
| `- note: class 'DefaultProcessController' does not conform to the 'Sendable' protocol
11 | public let subprocess: Subprocess
12 | public let processName: String
:
168 | public func send(signal: Int32) {
169 | listenerQueue.async { [weak self] in
170 | guard let strongSelf = self else { return }
| `- warning: capture of 'self' with non-sendable type 'DefaultProcessController?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
171 |
172 | for listenerWrapper in strongSelf.signalListeners {
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/DefaultProcessController.swift:177:25: warning: capture of 'strongSelf' with non-sendable type 'DefaultProcessController' in a `@Sendable` closure; this is an error in the Swift 6 language mode
8 | // swiftlint:disable async
9 | // swiftlint:disable sync
10 | public final class DefaultProcessController: ProcessController, CustomStringConvertible {
| `- note: class 'DefaultProcessController' does not conform to the 'Sendable' protocol
11 | public let subprocess: Subprocess
12 | public let processName: String
:
175 |
176 | strongSelf.listenerQueue.async {
177 | strongSelf.signalListeners.removeAll { $0.uuid == listenerWrapper.uuid }
| `- warning: capture of 'strongSelf' with non-sendable type 'DefaultProcessController' in a `@Sendable` closure; this is an error in the Swift 6 language mode
178 | }
179 | }
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/DefaultProcessController.swift:177:75: warning: capture of 'listenerWrapper' with non-sendable type 'DefaultProcessController.ListenerWrapper<SignalListener>' (aka 'DefaultProcessController.ListenerWrapper<(any ProcessController, Int32, @escaping () -> ()) -> ()>') in a `@Sendable` closure; this is an error in the Swift 6 language mode
29 | private var terminationListeners = [ListenerWrapper<TerminationListener>]()
30 |
31 | private final class ListenerWrapper<T>: CustomStringConvertible {
| `- note: generic class 'ListenerWrapper' does not conform to the 'Sendable' protocol
32 | let uuid: UUID
33 | let purpose: String
:
175 |
176 | strongSelf.listenerQueue.async {
177 | strongSelf.signalListeners.removeAll { $0.uuid == listenerWrapper.uuid }
| `- warning: capture of 'listenerWrapper' with non-sendable type 'DefaultProcessController.ListenerWrapper<SignalListener>' (aka 'DefaultProcessController.ListenerWrapper<(any ProcessController, Int32, @escaping () -> ()) -> ()>') in a `@Sendable` closure; this is an error in the Swift 6 language mode
178 | }
179 | }
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/DefaultProcessController.swift:177:75: warning: capture of 'listenerWrapper' with non-sendable type 'DefaultProcessController.ListenerWrapper<SignalListener>' (aka 'DefaultProcessController.ListenerWrapper<(any ProcessController, Int32, @escaping () -> ()) -> ()>') in an isolated closure; this is an error in the Swift 6 language mode
29 | private var terminationListeners = [ListenerWrapper<TerminationListener>]()
30 |
31 | private final class ListenerWrapper<T>: CustomStringConvertible {
| `- note: generic class 'ListenerWrapper' does not conform to the 'Sendable' protocol
32 | let uuid: UUID
33 | let purpose: String
:
175 |
176 | strongSelf.listenerQueue.async {
177 | strongSelf.signalListeners.removeAll { $0.uuid == listenerWrapper.uuid }
| `- warning: capture of 'listenerWrapper' with non-sendable type 'DefaultProcessController.ListenerWrapper<SignalListener>' (aka 'DefaultProcessController.ListenerWrapper<(any ProcessController, Int32, @escaping () -> ()) -> ()>') in an isolated closure; this is an error in the Swift 6 language mode
178 | }
179 | }
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/DefaultProcessController.swift:228:40: warning: capture of 'self' with non-sendable type 'DefaultProcessController?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
8 | // swiftlint:disable async
9 | // swiftlint:disable sync
10 | public final class DefaultProcessController: ProcessController, CustomStringConvertible {
| `- note: class 'DefaultProcessController' does not conform to the 'Sendable' protocol
11 | public let subprocess: Subprocess
12 | public let processName: String
:
226 | signalTermination(process)
227 | processTerminationQueue.asyncAfter(deadline: .now() + terminationSignalTimeout) { [weak self] in
228 | guard let strongSelf = self else { return }
| `- warning: capture of 'self' with non-sendable type 'DefaultProcessController?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
229 | strongSelf.forceKillProcess(onKill: onKill)
230 | }
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/DefaultProcessController.swift:229:53: warning: capture of 'onKill' with non-sendable type '() -> ()' in a `@Sendable` closure; this is an error in the Swift 6 language mode
227 | processTerminationQueue.asyncAfter(deadline: .now() + terminationSignalTimeout) { [weak self] in
228 | guard let strongSelf = self else { return }
229 | strongSelf.forceKillProcess(onKill: onKill)
| |- warning: capture of 'onKill' with non-sendable type '() -> ()' in a `@Sendable` closure; this is an error in the Swift 6 language mode
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
230 | }
231 | }
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/DefaultProcessController.swift:244:36: warning: capture of 'self' with non-sendable type 'DefaultProcessController?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
8 | // swiftlint:disable async
9 | // swiftlint:disable sync
10 | public final class DefaultProcessController: ProcessController, CustomStringConvertible {
| `- note: class 'DefaultProcessController' does not conform to the 'Sendable' protocol
11 | public let subprocess: Subprocess
12 | public let processName: String
:
242 | private func processTerminated() {
243 | listenerQueue.async { [weak self] in
244 | guard let strongSelf = self else { return }
| `- warning: capture of 'self' with non-sendable type 'DefaultProcessController?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
245 |
246 | for listenerWrapper in strongSelf.terminationListeners {
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/DefaultProcessController.swift:251:25: warning: capture of 'strongSelf' with non-sendable type 'DefaultProcessController' in a `@Sendable` closure; this is an error in the Swift 6 language mode
8 | // swiftlint:disable async
9 | // swiftlint:disable sync
10 | public final class DefaultProcessController: ProcessController, CustomStringConvertible {
| `- note: class 'DefaultProcessController' does not conform to the 'Sendable' protocol
11 | public let subprocess: Subprocess
12 | public let processName: String
:
249 |
250 | strongSelf.listenerQueue.async {
251 | strongSelf.signalListeners.removeAll { $0.uuid == listenerWrapper.uuid }
| `- warning: capture of 'strongSelf' with non-sendable type 'DefaultProcessController' in a `@Sendable` closure; this is an error in the Swift 6 language mode
252 | }
253 | }
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/DefaultProcessController.swift:251:75: warning: capture of 'listenerWrapper' with non-sendable type 'DefaultProcessController.ListenerWrapper<TerminationListener>' (aka 'DefaultProcessController.ListenerWrapper<(any ProcessController, @escaping () -> ()) -> ()>') in a `@Sendable` closure; this is an error in the Swift 6 language mode
29 | private var terminationListeners = [ListenerWrapper<TerminationListener>]()
30 |
31 | private final class ListenerWrapper<T>: CustomStringConvertible {
| `- note: generic class 'ListenerWrapper' does not conform to the 'Sendable' protocol
32 | let uuid: UUID
33 | let purpose: String
:
249 |
250 | strongSelf.listenerQueue.async {
251 | strongSelf.signalListeners.removeAll { $0.uuid == listenerWrapper.uuid }
| `- warning: capture of 'listenerWrapper' with non-sendable type 'DefaultProcessController.ListenerWrapper<TerminationListener>' (aka 'DefaultProcessController.ListenerWrapper<(any ProcessController, @escaping () -> ()) -> ()>') in a `@Sendable` closure; this is an error in the Swift 6 language mode
252 | }
253 | }
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/DefaultProcessController.swift:251:75: warning: capture of 'listenerWrapper' with non-sendable type 'DefaultProcessController.ListenerWrapper<TerminationListener>' (aka 'DefaultProcessController.ListenerWrapper<(any ProcessController, @escaping () -> ()) -> ()>') in an isolated closure; this is an error in the Swift 6 language mode
29 | private var terminationListeners = [ListenerWrapper<TerminationListener>]()
30 |
31 | private final class ListenerWrapper<T>: CustomStringConvertible {
| `- note: generic class 'ListenerWrapper' does not conform to the 'Sendable' protocol
32 | let uuid: UUID
33 | let purpose: String
:
249 |
250 | strongSelf.listenerQueue.async {
251 | strongSelf.signalListeners.removeAll { $0.uuid == listenerWrapper.uuid }
| `- warning: capture of 'listenerWrapper' with non-sendable type 'DefaultProcessController.ListenerWrapper<TerminationListener>' (aka 'DefaultProcessController.ListenerWrapper<(any ProcessController, @escaping () -> ()) -> ()>') in an isolated closure; this is an error in the Swift 6 language mode
252 | }
253 | }
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/DefaultProcessController.swift:259:36: warning: capture of 'self' with non-sendable type 'DefaultProcessController?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
8 | // swiftlint:disable async
9 | // swiftlint:disable sync
10 | public final class DefaultProcessController: ProcessController, CustomStringConvertible {
| `- note: class 'DefaultProcessController' does not conform to the 'Sendable' protocol
11 | public let subprocess: Subprocess
12 | public let processName: String
:
257 |
258 | listenerQueue.async(flags: .barrier) { [weak self] in
259 | guard let strongSelf = self else { return }
| `- warning: capture of 'self' with non-sendable type 'DefaultProcessController?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
260 | strongSelf.processTerminationHandlerGroup.leave()
261 | }
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/DefaultProcessController.swift:298:17: warning: capture of 'onEndOfData' with non-sendable type '() -> ()' in a `@Sendable` closure; this is an error in the Swift 6 language mode
296 | pipe.fileHandleForReading.closeFile()
297 | #endif
298 | onEndOfData()
| |- warning: capture of 'onEndOfData' with non-sendable type '() -> ()' in a `@Sendable` closure; this is an error in the Swift 6 language mode
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
299 | } else {
300 | onNewData(data)
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/DefaultProcessController.swift:300:17: warning: capture of 'onNewData' with non-sendable type '(Data) -> ()' in a `@Sendable` closure; this is an error in the Swift 6 language mode
298 | onEndOfData()
299 | } else {
300 | onNewData(data)
| |- warning: capture of 'onNewData' with non-sendable type '(Data) -> ()' in a `@Sendable` closure; this is an error in the Swift 6 language mode
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
301 | }
302 | }
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/DefaultProcessController.swift:318:21: warning: capture of 'strongSelf' with non-sendable type 'DefaultProcessController' in a `@Sendable` closure; this is an error in the Swift 6 language mode
8 | // swiftlint:disable async
9 | // swiftlint:disable sync
10 | public final class DefaultProcessController: ProcessController, CustomStringConvertible {
| `- note: class 'DefaultProcessController' does not conform to the 'Sendable' protocol
11 | public let subprocess: Subprocess
12 | public let processName: String
:
316 | guard let strongSelf = self else { return }
317 | strongSelf.listenerQueue.async {
318 | strongSelf.openPipeFileHandleGroup.leave()
| `- warning: capture of 'strongSelf' with non-sendable type 'DefaultProcessController' in a `@Sendable` closure; this is an error in the Swift 6 language mode
319 | }
320 | }
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/DefaultProcessController.swift:335:21: warning: capture of 'strongSelf' with non-sendable type 'DefaultProcessController' in a `@Sendable` closure; this is an error in the Swift 6 language mode
8 | // swiftlint:disable async
9 | // swiftlint:disable sync
10 | public final class DefaultProcessController: ProcessController, CustomStringConvertible {
| `- note: class 'DefaultProcessController' does not conform to the 'Sendable' protocol
11 | public let subprocess: Subprocess
12 | public let processName: String
:
333 | guard let strongSelf = self else { return }
334 | strongSelf.listenerQueue.async {
335 | strongSelf.openPipeFileHandleGroup.leave()
| `- warning: capture of 'strongSelf' with non-sendable type 'DefaultProcessController' in a `@Sendable` closure; this is an error in the Swift 6 language mode
336 | }
337 | }
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/DefaultProcessController.swift:361:36: warning: capture of 'self' with non-sendable type 'DefaultProcessController?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
8 | // swiftlint:disable async
9 | // swiftlint:disable sync
10 | public final class DefaultProcessController: ProcessController, CustomStringConvertible {
| `- note: class 'DefaultProcessController' does not conform to the 'Sendable' protocol
11 | public let subprocess: Subprocess
12 | public let processName: String
:
359 | private func didReceiveStdout(data: Data) {
360 | listenerQueue.async { [weak self] in
361 | guard let strongSelf = self else { return }
| `- warning: capture of 'self' with non-sendable type 'DefaultProcessController?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
362 |
363 | for listenerWrapper in strongSelf.stdoutListeners {
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/DefaultProcessController.swift:368:25: warning: capture of 'strongSelf' with non-sendable type 'DefaultProcessController' in a `@Sendable` closure; this is an error in the Swift 6 language mode
8 | // swiftlint:disable async
9 | // swiftlint:disable sync
10 | public final class DefaultProcessController: ProcessController, CustomStringConvertible {
| `- note: class 'DefaultProcessController' does not conform to the 'Sendable' protocol
11 | public let subprocess: Subprocess
12 | public let processName: String
:
366 |
367 | strongSelf.listenerQueue.async {
368 | strongSelf.stdoutListeners.removeAll { $0.uuid == listenerWrapper.uuid }
| `- warning: capture of 'strongSelf' with non-sendable type 'DefaultProcessController' in a `@Sendable` closure; this is an error in the Swift 6 language mode
369 | }
370 | }
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/DefaultProcessController.swift:368:75: warning: capture of 'listenerWrapper' with non-sendable type 'DefaultProcessController.ListenerWrapper<StdoutListener>' (aka 'DefaultProcessController.ListenerWrapper<(any ProcessController, Data, @escaping () -> ()) -> ()>') in a `@Sendable` closure; this is an error in the Swift 6 language mode
29 | private var terminationListeners = [ListenerWrapper<TerminationListener>]()
30 |
31 | private final class ListenerWrapper<T>: CustomStringConvertible {
| `- note: generic class 'ListenerWrapper' does not conform to the 'Sendable' protocol
32 | let uuid: UUID
33 | let purpose: String
:
366 |
367 | strongSelf.listenerQueue.async {
368 | strongSelf.stdoutListeners.removeAll { $0.uuid == listenerWrapper.uuid }
| `- warning: capture of 'listenerWrapper' with non-sendable type 'DefaultProcessController.ListenerWrapper<StdoutListener>' (aka 'DefaultProcessController.ListenerWrapper<(any ProcessController, Data, @escaping () -> ()) -> ()>') in a `@Sendable` closure; this is an error in the Swift 6 language mode
369 | }
370 | }
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/DefaultProcessController.swift:368:75: warning: capture of 'listenerWrapper' with non-sendable type 'DefaultProcessController.ListenerWrapper<StdoutListener>' (aka 'DefaultProcessController.ListenerWrapper<(any ProcessController, Data, @escaping () -> ()) -> ()>') in an isolated closure; this is an error in the Swift 6 language mode
29 | private var terminationListeners = [ListenerWrapper<TerminationListener>]()
30 |
31 | private final class ListenerWrapper<T>: CustomStringConvertible {
| `- note: generic class 'ListenerWrapper' does not conform to the 'Sendable' protocol
32 | let uuid: UUID
33 | let purpose: String
:
366 |
367 | strongSelf.listenerQueue.async {
368 | strongSelf.stdoutListeners.removeAll { $0.uuid == listenerWrapper.uuid }
| `- warning: capture of 'listenerWrapper' with non-sendable type 'DefaultProcessController.ListenerWrapper<StdoutListener>' (aka 'DefaultProcessController.ListenerWrapper<(any ProcessController, Data, @escaping () -> ()) -> ()>') in an isolated closure; this is an error in the Swift 6 language mode
369 | }
370 | }
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/DefaultProcessController.swift:378:36: warning: capture of 'self' with non-sendable type 'DefaultProcessController?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
8 | // swiftlint:disable async
9 | // swiftlint:disable sync
10 | public final class DefaultProcessController: ProcessController, CustomStringConvertible {
| `- note: class 'DefaultProcessController' does not conform to the 'Sendable' protocol
11 | public let subprocess: Subprocess
12 | public let processName: String
:
376 | private func didReceiveStderr(data: Data) {
377 | listenerQueue.async { [weak self] in
378 | guard let strongSelf = self else { return }
| `- warning: capture of 'self' with non-sendable type 'DefaultProcessController?' in a `@Sendable` closure; this is an error in the Swift 6 language mode
379 |
380 | for listenerWrapper in strongSelf.stderrListeners {
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/DefaultProcessController.swift:385:25: warning: capture of 'strongSelf' with non-sendable type 'DefaultProcessController' in a `@Sendable` closure; this is an error in the Swift 6 language mode
8 | // swiftlint:disable async
9 | // swiftlint:disable sync
10 | public final class DefaultProcessController: ProcessController, CustomStringConvertible {
| `- note: class 'DefaultProcessController' does not conform to the 'Sendable' protocol
11 | public let subprocess: Subprocess
12 | public let processName: String
:
383 |
384 | strongSelf.listenerQueue.async {
385 | strongSelf.stderrListeners.removeAll { $0.uuid == listenerWrapper.uuid }
| `- warning: capture of 'strongSelf' with non-sendable type 'DefaultProcessController' in a `@Sendable` closure; this is an error in the Swift 6 language mode
386 | }
387 | }
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/DefaultProcessController.swift:385:75: warning: capture of 'listenerWrapper' with non-sendable type 'DefaultProcessController.ListenerWrapper<StderrListener>' (aka 'DefaultProcessController.ListenerWrapper<(any ProcessController, Data, @escaping () -> ()) -> ()>') in a `@Sendable` closure; this is an error in the Swift 6 language mode
29 | private var terminationListeners = [ListenerWrapper<TerminationListener>]()
30 |
31 | private final class ListenerWrapper<T>: CustomStringConvertible {
| `- note: generic class 'ListenerWrapper' does not conform to the 'Sendable' protocol
32 | let uuid: UUID
33 | let purpose: String
:
383 |
384 | strongSelf.listenerQueue.async {
385 | strongSelf.stderrListeners.removeAll { $0.uuid == listenerWrapper.uuid }
| `- warning: capture of 'listenerWrapper' with non-sendable type 'DefaultProcessController.ListenerWrapper<StderrListener>' (aka 'DefaultProcessController.ListenerWrapper<(any ProcessController, Data, @escaping () -> ()) -> ()>') in a `@Sendable` closure; this is an error in the Swift 6 language mode
386 | }
387 | }
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/DefaultProcessController.swift:385:75: warning: capture of 'listenerWrapper' with non-sendable type 'DefaultProcessController.ListenerWrapper<StderrListener>' (aka 'DefaultProcessController.ListenerWrapper<(any ProcessController, Data, @escaping () -> ()) -> ()>') in an isolated closure; this is an error in the Swift 6 language mode
29 | private var terminationListeners = [ListenerWrapper<TerminationListener>]()
30 |
31 | private final class ListenerWrapper<T>: CustomStringConvertible {
| `- note: generic class 'ListenerWrapper' does not conform to the 'Sendable' protocol
32 | let uuid: UUID
33 | let purpose: String
:
383 |
384 | strongSelf.listenerQueue.async {
385 | strongSelf.stderrListeners.removeAll { $0.uuid == listenerWrapper.uuid }
| `- warning: capture of 'listenerWrapper' with non-sendable type 'DefaultProcessController.ListenerWrapper<StderrListener>' (aka 'DefaultProcessController.ListenerWrapper<(any ProcessController, Data, @escaping () -> ()) -> ()>') in an isolated closure; this is an error in the Swift 6 language mode
386 | }
387 | }
/Users/admin/builder/spi-builder-workspace/Sources/ProcessController/DefaultProcessController.swift:147:31: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
145 | } else {
146 | await withTaskGroup(of: Void.self) { group in
147 | group.addTask {
| `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
148 | await self.openPipeFileHandleGroup.waitAsync()
| `- note: closure captures 'self' which is accessible to code in the current task
149 | }
150 | group.addTask {
[533/587] Compiling ProcessControllerTestHelpers FakeProcessControllerProvider.swift
[534/587] Compiling RepoRoot RepoRootProviderFactory.swift
[535/587] Compiling RepoRoot CachingRepoRootProviderFactory.swift
[536/587] Compiling RepoRoot GitRepoRootProviderFactory.swift
[537/588] Compiling RepoRoot RepoRootModuleDependencies.swift
[538/588] Compiling RepoRoot RepoRootProvider.swift
[539/588] Compiling RepoRoot MarkerFileRepoRootProviderFactory.swift
[540/588] Compiling RepoRoot CachingRepoRootProvider.swift
[541/588] Compiling CLTLogging RedirectingLoggerHandler.swift
[542/588] Compiling CLTLogging NoOpLoggerHandler.swift
[543/589] Compiling RepoRoot ClosureRepoRootProvider.swift
[544/589] Compiling RepoRoot MarkerFileRepoRootProvider.swift
/Users/admin/builder/spi-builder-workspace/Sources/RepoRoot/RepoRootProvider/RepoRootProviderImplementations/MarkerFileRepoRootProvider.swift:39:9: warning: stored property 'path' of 'Sendable'-conforming struct 'RepoRootNotFoundError' has non-sendable type 'AbsolutePath'; this is an error in the Swift 6 language mode
37 |
38 | private struct RepoRootNotFoundError: Error, CustomStringConvertible {
39 | let path: AbsolutePath
| `- warning: stored property 'path' of 'Sendable'-conforming struct 'RepoRootNotFoundError' has non-sendable type 'AbsolutePath'; this is an error in the Swift 6 language mode
40 | var description: String {
41 | return "Did not find repo root while starting searching in path \(path)"
/Users/admin/builder/spi-builder-workspace/Sources/PathLib/AbsolutePath.swift:3:20: note: class 'AbsolutePath' does not conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | public final class AbsolutePath:
| `- note: class 'AbsolutePath' does not conform to the 'Sendable' protocol
4 | Path,
5 | Codable,
/Users/admin/builder/spi-builder-workspace/Sources/RepoRoot/RepoRootProvider/RepoRootProviderImplementations/MarkerFileRepoRootProvider.swift:1:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'PathLib'
1 | import PathLib
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'PathLib'
2 | import FileSystem
3 |
[545/589] Emitting module RepoRoot
/Users/admin/builder/spi-builder-workspace/Sources/RepoRoot/RepoRootProvider/RepoRootProviderImplementations/MarkerFileRepoRootProvider.swift:39:9: warning: stored property 'path' of 'Sendable'-conforming struct 'RepoRootNotFoundError' has non-sendable type 'AbsolutePath'; this is an error in the Swift 6 language mode
37 |
38 | private struct RepoRootNotFoundError: Error, CustomStringConvertible {
39 | let path: AbsolutePath
| `- warning: stored property 'path' of 'Sendable'-conforming struct 'RepoRootNotFoundError' has non-sendable type 'AbsolutePath'; this is an error in the Swift 6 language mode
40 | var description: String {
41 | return "Did not find repo root while starting searching in path \(path)"
/Users/admin/builder/spi-builder-workspace/Sources/PathLib/AbsolutePath.swift:3:20: note: class 'AbsolutePath' does not conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | public final class AbsolutePath:
| `- note: class 'AbsolutePath' does not conform to the 'Sendable' protocol
4 | Path,
5 | Codable,
/Users/admin/builder/spi-builder-workspace/Sources/RepoRoot/RepoRootProvider/RepoRootProviderImplementations/MarkerFileRepoRootProvider.swift:1:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'PathLib'
1 | import PathLib
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'PathLib'
2 | import FileSystem
3 |
[546/589] Compiling MutualTLS PEM.swift
[547/589] Emitting module ProcessControllerTestHelpers
[548/589] Compiling ProcessControllerTestHelpers FakeProcessController.swift
[549/589] Compiling RepoRoot WorkdirRepoRootProvider.swift
[550/589] Compiling CLTLogging SubprocessInfo+PidInfo.swift
[551/589] Compiling RepoRoot CurrentExecutableRepoRootProvider.swift
[552/589] Compiling RepoRoot GitRepoRootProvider.swift
[553/589] Emitting module MutualTLS
/Users/admin/builder/spi-builder-workspace/Sources/MutualTLS/MutualTLSCredentialProvider.swift:25:9: warning: non-sendable type 'AbsolutePath' in conformance of actor-isolated property 'privateKeyPath' to protocol requirement cannot cross actor boundary; this is an error in the Swift 6 language mode
23 | }
24 |
25 | var privateKeyPath: AbsolutePath {
| `- warning: non-sendable type 'AbsolutePath' in conformance of actor-isolated property 'privateKeyPath' to protocol requirement cannot cross actor boundary; this is an error in the Swift 6 language mode
26 | get throws {
27 | return try environmentProvider.get(.personalPrivateKeyPath) ?? .personalPrivateKeyPath
/Users/admin/builder/spi-builder-workspace/Sources/PathLib/AbsolutePath.swift:3:20: note: class 'AbsolutePath' does not conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | public final class AbsolutePath:
| `- note: class 'AbsolutePath' does not conform to the 'Sendable' protocol
4 | Path,
5 | Codable,
/Users/admin/builder/spi-builder-workspace/Sources/MutualTLS/MutualTLSCredentialProvider.swift:3:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'PathLib'
1 | import ProcessController
2 | import Foundation
3 | import PathLib
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'PathLib'
4 | import Environment
5 |
/Users/admin/builder/spi-builder-workspace/Sources/MutualTLS/MutualTLSCredentialProvider.swift:31:9: warning: non-sendable type 'AbsolutePath' in conformance of actor-isolated property 'certificatePath' to protocol requirement cannot cross actor boundary; this is an error in the Swift 6 language mode
29 | }
30 |
31 | var certificatePath: AbsolutePath {
| `- warning: non-sendable type 'AbsolutePath' in conformance of actor-isolated property 'certificatePath' to protocol requirement cannot cross actor boundary; this is an error in the Swift 6 language mode
32 | get throws {
33 | return try environmentProvider.get(.personalCertificatePath) ?? .personalCertificatePath
/Users/admin/builder/spi-builder-workspace/Sources/PathLib/AbsolutePath.swift:3:20: note: class 'AbsolutePath' does not conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | public final class AbsolutePath:
| `- note: class 'AbsolutePath' does not conform to the 'Sendable' protocol
4 | Path,
5 | Codable,
[554/589] Compiling MutualTLS MutualTLSCredentialProvider.swift
/Users/admin/builder/spi-builder-workspace/Sources/MutualTLS/MutualTLSCredentialProvider.swift:25:9: warning: non-sendable type 'AbsolutePath' in conformance of actor-isolated property 'privateKeyPath' to protocol requirement cannot cross actor boundary; this is an error in the Swift 6 language mode
23 | }
24 |
25 | var privateKeyPath: AbsolutePath {
| `- warning: non-sendable type 'AbsolutePath' in conformance of actor-isolated property 'privateKeyPath' to protocol requirement cannot cross actor boundary; this is an error in the Swift 6 language mode
26 | get throws {
27 | return try environmentProvider.get(.personalPrivateKeyPath) ?? .personalPrivateKeyPath
/Users/admin/builder/spi-builder-workspace/Sources/PathLib/AbsolutePath.swift:3:20: note: class 'AbsolutePath' does not conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | public final class AbsolutePath:
| `- note: class 'AbsolutePath' does not conform to the 'Sendable' protocol
4 | Path,
5 | Codable,
/Users/admin/builder/spi-builder-workspace/Sources/MutualTLS/MutualTLSCredentialProvider.swift:3:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'PathLib'
1 | import ProcessController
2 | import Foundation
3 | import PathLib
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'PathLib'
4 | import Environment
5 |
/Users/admin/builder/spi-builder-workspace/Sources/MutualTLS/MutualTLSCredentialProvider.swift:31:9: warning: non-sendable type 'AbsolutePath' in conformance of actor-isolated property 'certificatePath' to protocol requirement cannot cross actor boundary; this is an error in the Swift 6 language mode
29 | }
30 |
31 | var certificatePath: AbsolutePath {
| `- warning: non-sendable type 'AbsolutePath' in conformance of actor-isolated property 'certificatePath' to protocol requirement cannot cross actor boundary; this is an error in the Swift 6 language mode
32 | get throws {
33 | return try environmentProvider.get(.personalCertificatePath) ?? .personalCertificatePath
/Users/admin/builder/spi-builder-workspace/Sources/PathLib/AbsolutePath.swift:3:20: note: class 'AbsolutePath' does not conform to the 'Sendable' protocol
1 | import Foundation
2 |
3 | public final class AbsolutePath:
| `- note: class 'AbsolutePath' does not conform to the 'Sendable' protocol
4 | Path,
5 | Codable,
[555/589] Compiling MutualTLS MutualTLSModuleDependencies.swift
/Users/admin/builder/spi-builder-workspace/Sources/MutualTLS/DI/MutualTLSModuleDependencies.swift:18:17: warning: sending task-isolated value of type 'any ProcessControllerProvider' with later accesses to actor-isolated context risks causing data races; this is an error in the Swift 6 language mode
16 | public func registerDependenciesOfCurrentModule(di: DependencyRegisterer) {
17 | di.register(type: MutualTLSCredentialProvider.self) { di in
18 | try MutualTLSCredentialProviderImpl(
| `- warning: sending task-isolated value of type 'any ProcessControllerProvider' with later accesses to actor-isolated context risks causing data races; this is an error in the Swift 6 language mode
19 | processControllerProvider: di.resolve(),
20 | environmentProvider: di.resolve()
/Users/admin/builder/spi-builder-workspace/Sources/MutualTLS/DI/MutualTLSModuleDependencies.swift:18:17: warning: sending task-isolated value of type 'any EnvironmentProvider' with later accesses to actor-isolated context risks causing data races; this is an error in the Swift 6 language mode
16 | public func registerDependenciesOfCurrentModule(di: DependencyRegisterer) {
17 | di.register(type: MutualTLSCredentialProvider.self) { di in
18 | try MutualTLSCredentialProviderImpl(
| `- warning: sending task-isolated value of type 'any EnvironmentProvider' with later accesses to actor-isolated context risks causing data races; this is an error in the Swift 6 language mode
19 | processControllerProvider: di.resolve(),
20 | environmentProvider: di.resolve()
[556/589] Compiling Cloc Cloc.swift
[557/589] Compiling Cloc ClocTool.swift
[558/589] Emitting module Cloc
[559/589] Compiling CLTLogging FileSystem+Logging.swift
[560/589] Compiling CLTLogging KibanaHandler.swift
[561/589] Compiling CLTLogging ContextualLogger.swift
/Users/admin/builder/spi-builder-workspace/Sources/CLTLogging/ContextualLogger.swift:52:23: warning: static property 'noOp' is not concurrency-safe because non-'Sendable' type 'ContextualLogger' may have shared mutable state; this is an error in the Swift 6 language mode
21 | /// `process executor` will again append its own metadata and use new instance to log its stuff.
22 | /// This way metadata can be derived between layers of software, extending it where needed, and still allowing layers to log data with its set of metadata without being affected by other layers.
23 | public final class ContextualLogger {
| `- note: class 'ContextualLogger' does not conform to the 'Sendable' protocol
24 | private let dateProvider: DateProvider
25 | private let loggerHandler: LoggerHandler
:
50 | }
51 |
52 | public static let noOp: ContextualLogger = ContextualLogger(
| |- warning: static property 'noOp' is not concurrency-safe because non-'Sendable' type 'ContextualLogger' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'noOp' 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
53 | dateProvider: SystemDateProvider(),
54 | loggerHandler: AggregatedLoggerHandler(handlers: []),
/Users/admin/builder/spi-builder-workspace/Sources/CLTLogging/FileHandle+TextOutputStream.swift:7:1: warning: extension declares a conformance of imported type 'FileHandle' to imported protocol 'TextOutputStream'; this will not behave correctly if the owners of 'Foundation' introduce this conformance in the future
5 | import Foundation
6 |
7 | extension FileHandle: TextOutputStream {
| |- warning: extension declares a conformance of imported type 'FileHandle' to imported protocol 'TextOutputStream'; this will not behave correctly if the owners of 'Foundation' introduce this conformance in the future
| `- note: add '@retroactive' to silence this warning
8 | public func write(_ string: String) {
9 | self.write(Data(string.utf8))
[562/589] Compiling CLTLogging FileHandle+TextOutputStream.swift
/Users/admin/builder/spi-builder-workspace/Sources/CLTLogging/ContextualLogger.swift:52:23: warning: static property 'noOp' is not concurrency-safe because non-'Sendable' type 'ContextualLogger' may have shared mutable state; this is an error in the Swift 6 language mode
21 | /// `process executor` will again append its own metadata and use new instance to log its stuff.
22 | /// This way metadata can be derived between layers of software, extending it where needed, and still allowing layers to log data with its set of metadata without being affected by other layers.
23 | public final class ContextualLogger {
| `- note: class 'ContextualLogger' does not conform to the 'Sendable' protocol
24 | private let dateProvider: DateProvider
25 | private let loggerHandler: LoggerHandler
:
50 | }
51 |
52 | public static let noOp: ContextualLogger = ContextualLogger(
| |- warning: static property 'noOp' is not concurrency-safe because non-'Sendable' type 'ContextualLogger' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'noOp' 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
53 | dateProvider: SystemDateProvider(),
54 | loggerHandler: AggregatedLoggerHandler(handlers: []),
/Users/admin/builder/spi-builder-workspace/Sources/CLTLogging/FileHandle+TextOutputStream.swift:7:1: warning: extension declares a conformance of imported type 'FileHandle' to imported protocol 'TextOutputStream'; this will not behave correctly if the owners of 'Foundation' introduce this conformance in the future
5 | import Foundation
6 |
7 | extension FileHandle: TextOutputStream {
| |- warning: extension declares a conformance of imported type 'FileHandle' to imported protocol 'TextOutputStream'; this will not behave correctly if the owners of 'Foundation' introduce this conformance in the future
| `- note: add '@retroactive' to silence this warning
8 | public func write(_ string: String) {
9 | self.write(Data(string.utf8))
/Users/admin/builder/spi-builder-workspace/Sources/CLTLogging/AggregatedLoggerHandler.swift:36:17: warning: capture of 'handler' with non-sendable type 'any LoggerHandler' in a `@Sendable` closure; this is an error in the Swift 6 language mode
34 | for handler in allHandlers_safe {
35 | syncQueue.async {
36 | handler.tearDownLogging(timeout: timeout)
| `- warning: capture of 'handler' with non-sendable type 'any LoggerHandler' in a `@Sendable` closure; this is an error in the Swift 6 language mode
37 | }
38 | }
/Users/admin/builder/spi-builder-workspace/Sources/CLTLogging/LoggerHandler.swift:8:17: note: protocol 'LoggerHandler' does not conform to the 'Sendable' protocol
6 | import Foundation
7 |
8 | public protocol LoggerHandler {
| `- note: protocol 'LoggerHandler' does not conform to the 'Sendable' protocol
9 | func handle(logEntry: LogEntry)
10 | func tearDownLogging(timeout: TimeInterval)
/Users/admin/builder/spi-builder-workspace/Sources/CLTLogging/AggregatedLoggerHandler.swift:36:17: warning: capture of 'handler' with non-sendable type 'any LoggerHandler' in a `@Sendable` closure; this is an error in the Swift 6 language mode
34 | for handler in allHandlers_safe {
35 | syncQueue.async {
36 | handler.tearDownLogging(timeout: timeout)
| `- warning: capture of 'handler' with non-sendable type 'any LoggerHandler' in a `@Sendable` closure; this is an error in the Swift 6 language mode
37 | }
38 | }
/Users/admin/builder/spi-builder-workspace/Sources/CLTLogging/LoggerHandler.swift:8:17: note: protocol 'LoggerHandler' does not conform to the 'Sendable' protocol
6 | import Foundation
7 |
8 | public protocol LoggerHandler {
| `- note: protocol 'LoggerHandler' does not conform to the 'Sendable' protocol
9 | func handle(logEntry: LogEntry)
10 | func tearDownLogging(timeout: TimeInterval)
[567/589] Compiling CLTLogging FileHandleLoggerHandler.swift
[568/589] Compiling CLTLogging FileState.swift
[569/589] Emitting module CLTLogging
/Users/admin/builder/spi-builder-workspace/Sources/CLTLogging/ContextualLogger.swift:52:23: warning: static property 'noOp' is not concurrency-safe because non-'Sendable' type 'ContextualLogger' may have shared mutable state; this is an error in the Swift 6 language mode
21 | /// `process executor` will again append its own metadata and use new instance to log its stuff.
22 | /// This way metadata can be derived between layers of software, extending it where needed, and still allowing layers to log data with its set of metadata without being affected by other layers.
23 | public final class ContextualLogger {
| `- note: class 'ContextualLogger' does not conform to the 'Sendable' protocol
24 | private let dateProvider: DateProvider
25 | private let loggerHandler: LoggerHandler
:
50 | }
51 |
52 | public static let noOp: ContextualLogger = ContextualLogger(
| |- warning: static property 'noOp' is not concurrency-safe because non-'Sendable' type 'ContextualLogger' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'noOp' 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
53 | dateProvider: SystemDateProvider(),
54 | loggerHandler: AggregatedLoggerHandler(handlers: []),
/Users/admin/builder/spi-builder-workspace/Sources/CLTLogging/FileHandle+TextOutputStream.swift:7:1: warning: extension declares a conformance of imported type 'FileHandle' to imported protocol 'TextOutputStream'; this will not behave correctly if the owners of 'Foundation' introduce this conformance in the future
5 | import Foundation
6 |
7 | extension FileHandle: TextOutputStream {
| |- warning: extension declares a conformance of imported type 'FileHandle' to imported protocol 'TextOutputStream'; this will not behave correctly if the owners of 'Foundation' introduce this conformance in the future
| `- note: add '@retroactive' to silence this warning
8 | public func write(_ string: String) {
9 | self.write(Data(string.utf8))
[570/589] Compiling CLTLogging LoggerHandler.swift
/Users/admin/builder/spi-builder-workspace/Sources/CLTLogging/LoggingSetup.swift:140:21: warning: capture of 'logsEnumerator' with non-sendable type 'any FileSystemEnumerator' in a `@Sendable` closure; this is an error in the Swift 6 language mode
138 | queue.addOperation {
139 | do {
140 | try logsEnumerator.each { (path: AbsolutePath) in
| `- warning: capture of 'logsEnumerator' with non-sendable type 'any FileSystemEnumerator' in a `@Sendable` closure; this is an error in the Swift 6 language mode
141 | guard path.extension == self.logFileExtension else { return }
142 | let modificationDate = try self.fileSystem.properties(path: path).modificationDate.get()
/Users/admin/builder/spi-builder-workspace/Sources/FileSystem/Files/Enumeration/FileSystemEnumerator.swift:4:17: note: protocol 'FileSystemEnumerator' does not conform to the 'Sendable' protocol
2 | import PathLib
3 |
4 | public protocol FileSystemEnumerator {
| `- note: protocol 'FileSystemEnumerator' does not conform to the 'Sendable' protocol
5 | func each(iterator: (AbsolutePath) throws -> ()) throws
6 | }
/Users/admin/builder/spi-builder-workspace/Sources/CLTLogging/LoggingSetup.swift:7:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'FileSystem'
5 | import DateProvider
6 | import Dispatch
7 | import FileSystem
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'FileSystem'
8 | import CLTLoggingModels
9 | import Foundation
/Users/admin/builder/spi-builder-workspace/Sources/CLTLogging/LoggingSetup.swift:141:45: warning: capture of 'self' with non-sendable type 'LoggingSetup' in a `@Sendable` closure; this is an error in the Swift 6 language mode
13 | import Tmp
14 |
15 | public final class LoggingSetup {
| `- note: class 'LoggingSetup' does not conform to the 'Sendable' protocol
16 | private let dateProvider: DateProvider
17 | private let fileSystem: FileSystem
:
139 | do {
140 | try logsEnumerator.each { (path: AbsolutePath) in
141 | guard path.extension == self.logFileExtension else { return }
| `- warning: capture of 'self' with non-sendable type 'LoggingSetup' in a `@Sendable` closure; this is an error in the Swift 6 language mode
142 | let modificationDate = try self.fileSystem.properties(path: path).modificationDate.get()
143 | if modificationDate < date {
/Users/admin/builder/spi-builder-workspace/Sources/CLTLogging/LoggingSetup.swift:147:29: warning: capture of 'logger' with non-sendable type 'ContextualLogger' in a `@Sendable` closure; this is an error in the Swift 6 language mode
145 | try self.fileSystem.delete(path: path)
146 | } catch {
147 | logger.error("Failed to remove old log file at \(path): \(error)")
| `- warning: capture of 'logger' with non-sendable type 'ContextualLogger' in a `@Sendable` closure; this is an error in the Swift 6 language mode
148 | }
149 | }
/Users/admin/builder/spi-builder-workspace/Sources/CLTLogging/ContextualLogger.swift:23:20: note: class 'ContextualLogger' does not conform to the 'Sendable' protocol
21 | /// `process executor` will again append its own metadata and use new instance to log its stuff.
22 | /// This way metadata can be derived between layers of software, extending it where needed, and still allowing layers to log data with its set of metadata without being affected by other layers.
23 | public final class ContextualLogger {
| `- note: class 'ContextualLogger' does not conform to the 'Sendable' protocol
24 | private let dateProvider: DateProvider
25 | private let loggerHandler: LoggerHandler
/Users/admin/builder/spi-builder-workspace/Sources/CLTLogging/LoggingSetup.swift:151:17: warning: capture of 'completion' with non-sendable type '((any Error)?) -> ()' in a `@Sendable` closure; this is an error in the Swift 6 language mode
149 | }
150 | }
151 | completion(nil)
| |- warning: capture of 'completion' with non-sendable type '((any Error)?) -> ()' in a `@Sendable` closure; this is an error in the Swift 6 language mode
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
152 | } catch {
153 | completion(error)
/Users/admin/builder/spi-builder-workspace/Sources/CLTLogging/LoggingSetup.swift:141:45: warning: capture of 'self' with non-sendable type 'LoggingSetup' in an isolated closure; this is an error in the Swift 6 language mode
13 | import Tmp
14 |
15 | public final class LoggingSetup {
| `- note: class 'LoggingSetup' does not conform to the 'Sendable' protocol
16 | private let dateProvider: DateProvider
17 | private let fileSystem: FileSystem
:
139 | do {
140 | try logsEnumerator.each { (path: AbsolutePath) in
141 | guard path.extension == self.logFileExtension else { return }
| `- warning: capture of 'self' with non-sendable type 'LoggingSetup' in an isolated closure; this is an error in the Swift 6 language mode
142 | let modificationDate = try self.fileSystem.properties(path: path).modificationDate.get()
143 | if modificationDate < date {
/Users/admin/builder/spi-builder-workspace/Sources/CLTLogging/LoggingSetup.swift:147:29: warning: capture of 'logger' with non-sendable type 'ContextualLogger' in an isolated closure; this is an error in the Swift 6 language mode
145 | try self.fileSystem.delete(path: path)
146 | } catch {
147 | logger.error("Failed to remove old log file at \(path): \(error)")
| `- warning: capture of 'logger' with non-sendable type 'ContextualLogger' in an isolated closure; this is an error in the Swift 6 language mode
148 | }
149 | }
/Users/admin/builder/spi-builder-workspace/Sources/CLTLogging/ContextualLogger.swift:23:20: note: class 'ContextualLogger' does not conform to the 'Sendable' protocol
21 | /// `process executor` will again append its own metadata and use new instance to log its stuff.
22 | /// This way metadata can be derived between layers of software, extending it where needed, and still allowing layers to log data with its set of metadata without being affected by other layers.
23 | public final class ContextualLogger {
| `- note: class 'ContextualLogger' does not conform to the 'Sendable' protocol
24 | private let dateProvider: DateProvider
25 | private let loggerHandler: LoggerHandler
[571/589] Compiling CLTLogging LoggingSetup.swift
/Users/admin/builder/spi-builder-workspace/Sources/CLTLogging/LoggingSetup.swift:140:21: warning: capture of 'logsEnumerator' with non-sendable type 'any FileSystemEnumerator' in a `@Sendable` closure; this is an error in the Swift 6 language mode
138 | queue.addOperation {
139 | do {
140 | try logsEnumerator.each { (path: AbsolutePath) in
| `- warning: capture of 'logsEnumerator' with non-sendable type 'any FileSystemEnumerator' in a `@Sendable` closure; this is an error in the Swift 6 language mode
141 | guard path.extension == self.logFileExtension else { return }
142 | let modificationDate = try self.fileSystem.properties(path: path).modificationDate.get()
/Users/admin/builder/spi-builder-workspace/Sources/FileSystem/Files/Enumeration/FileSystemEnumerator.swift:4:17: note: protocol 'FileSystemEnumerator' does not conform to the 'Sendable' protocol
2 | import PathLib
3 |
4 | public protocol FileSystemEnumerator {
| `- note: protocol 'FileSystemEnumerator' does not conform to the 'Sendable' protocol
5 | func each(iterator: (AbsolutePath) throws -> ()) throws
6 | }
/Users/admin/builder/spi-builder-workspace/Sources/CLTLogging/LoggingSetup.swift:7:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'FileSystem'
5 | import DateProvider
6 | import Dispatch
7 | import FileSystem
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'FileSystem'
8 | import CLTLoggingModels
9 | import Foundation
/Users/admin/builder/spi-builder-workspace/Sources/CLTLogging/LoggingSetup.swift:141:45: warning: capture of 'self' with non-sendable type 'LoggingSetup' in a `@Sendable` closure; this is an error in the Swift 6 language mode
13 | import Tmp
14 |
15 | public final class LoggingSetup {
| `- note: class 'LoggingSetup' does not conform to the 'Sendable' protocol
16 | private let dateProvider: DateProvider
17 | private let fileSystem: FileSystem
:
139 | do {
140 | try logsEnumerator.each { (path: AbsolutePath) in
141 | guard path.extension == self.logFileExtension else { return }
| `- warning: capture of 'self' with non-sendable type 'LoggingSetup' in a `@Sendable` closure; this is an error in the Swift 6 language mode
142 | let modificationDate = try self.fileSystem.properties(path: path).modificationDate.get()
143 | if modificationDate < date {
/Users/admin/builder/spi-builder-workspace/Sources/CLTLogging/LoggingSetup.swift:147:29: warning: capture of 'logger' with non-sendable type 'ContextualLogger' in a `@Sendable` closure; this is an error in the Swift 6 language mode
145 | try self.fileSystem.delete(path: path)
146 | } catch {
147 | logger.error("Failed to remove old log file at \(path): \(error)")
| `- warning: capture of 'logger' with non-sendable type 'ContextualLogger' in a `@Sendable` closure; this is an error in the Swift 6 language mode
148 | }
149 | }
/Users/admin/builder/spi-builder-workspace/Sources/CLTLogging/ContextualLogger.swift:23:20: note: class 'ContextualLogger' does not conform to the 'Sendable' protocol
21 | /// `process executor` will again append its own metadata and use new instance to log its stuff.
22 | /// This way metadata can be derived between layers of software, extending it where needed, and still allowing layers to log data with its set of metadata without being affected by other layers.
23 | public final class ContextualLogger {
| `- note: class 'ContextualLogger' does not conform to the 'Sendable' protocol
24 | private let dateProvider: DateProvider
25 | private let loggerHandler: LoggerHandler
/Users/admin/builder/spi-builder-workspace/Sources/CLTLogging/LoggingSetup.swift:151:17: warning: capture of 'completion' with non-sendable type '((any Error)?) -> ()' in a `@Sendable` closure; this is an error in the Swift 6 language mode
149 | }
150 | }
151 | completion(nil)
| |- warning: capture of 'completion' with non-sendable type '((any Error)?) -> ()' in a `@Sendable` closure; this is an error in the Swift 6 language mode
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
152 | } catch {
153 | completion(error)
/Users/admin/builder/spi-builder-workspace/Sources/CLTLogging/LoggingSetup.swift:141:45: warning: capture of 'self' with non-sendable type 'LoggingSetup' in an isolated closure; this is an error in the Swift 6 language mode
13 | import Tmp
14 |
15 | public final class LoggingSetup {
| `- note: class 'LoggingSetup' does not conform to the 'Sendable' protocol
16 | private let dateProvider: DateProvider
17 | private let fileSystem: FileSystem
:
139 | do {
140 | try logsEnumerator.each { (path: AbsolutePath) in
141 | guard path.extension == self.logFileExtension else { return }
| `- warning: capture of 'self' with non-sendable type 'LoggingSetup' in an isolated closure; this is an error in the Swift 6 language mode
142 | let modificationDate = try self.fileSystem.properties(path: path).modificationDate.get()
143 | if modificationDate < date {
/Users/admin/builder/spi-builder-workspace/Sources/CLTLogging/LoggingSetup.swift:147:29: warning: capture of 'logger' with non-sendable type 'ContextualLogger' in an isolated closure; this is an error in the Swift 6 language mode
145 | try self.fileSystem.delete(path: path)
146 | } catch {
147 | logger.error("Failed to remove old log file at \(path): \(error)")
| `- warning: capture of 'logger' with non-sendable type 'ContextualLogger' in an isolated closure; this is an error in the Swift 6 language mode
148 | }
149 | }
/Users/admin/builder/spi-builder-workspace/Sources/CLTLogging/ContextualLogger.swift:23:20: note: class 'ContextualLogger' does not conform to the 'Sendable' protocol
21 | /// `process executor` will again append its own metadata and use new instance to log its stuff.
22 | /// This way metadata can be derived between layers of software, extending it where needed, and still allowing layers to log data with its set of metadata without being affected by other layers.
23 | public final class ContextualLogger {
| `- note: class 'ContextualLogger' does not conform to the 'Sendable' protocol
24 | private let dateProvider: DateProvider
25 | private let loggerHandler: LoggerHandler
[572/589] Compiling CLTLogging LimitingLoggerHandler.swift
[573/589] Compiling CLTLogging Logger+TypedInit.swift
[574/592] Compiling CLTLoggingTestHelpers FakeLoggerHandler.swift
[575/592] Emitting module CLTLoggingTestHelpers
[576/592] Compiling CLTLoggingTestHelpers LogEntryFixture.swift
[581/592] Compiling TestHelpers XCTestCase+XCTAssertEqualSorted.swift
[582/592] Compiling TestHelpers XCTestCase+Syncronious.swift
[583/592] Compiling TestHelpers XCTestCase+WaitForExpectation.swift
[588/593] Emitting module TestHelpers
[593/593] Compiling TestHelpers XCTestCase+testDirectory.swift
[594/595] Compiling TmpTestHelpers TmpFixtures.swift
[595/595] Emitting module TmpTestHelpers
Build complete! (57.39s)
Build complete.
{
"dependencies" : [
{
"identity" : "alamofire",
"requirement" : {
"exact" : [
"5.5.0"
]
},
"type" : "sourceControl",
"url" : "https://github.com/Alamofire/Alamofire"
},
{
"identity" : "bluesignals",
"requirement" : {
"exact" : [
"1.0.21"
]
},
"type" : "sourceControl",
"url" : "https://github.com/IBM-Swift/BlueSignals.git"
},
{
"identity" : "bluesocket",
"requirement" : {
"exact" : [
"1.0.52"
]
},
"type" : "sourceControl",
"url" : "https://github.com/Kitura/BlueSocket.git"
},
{
"identity" : "glob",
"requirement" : {
"exact" : [
"1.0.5"
]
},
"type" : "sourceControl",
"url" : "https://github.com/Bouke/Glob"
},
{
"identity" : "yams",
"requirement" : {
"range" : [
{
"lower_bound" : "4.0.6",
"upper_bound" : "5.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/jpsim/Yams.git"
},
{
"identity" : "swift-argument-parser",
"requirement" : {
"range" : [
{
"lower_bound" : "1.1.3",
"upper_bound" : "2.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/apple/swift-argument-parser"
},
{
"identity" : "swift-log",
"requirement" : {
"range" : [
{
"lower_bound" : "1.0.0",
"upper_bound" : "2.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/apple/swift-log.git"
},
{
"identity" : "swift-snapshot-testing",
"requirement" : {
"range" : [
{
"lower_bound" : "1.17.4",
"upper_bound" : "2.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/pointfreeco/swift-snapshot-testing.git"
}
],
"manifest_display_name" : "CommandLineToolkit",
"name" : "CommandLineToolkit",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "macos",
"version" : "13.0"
}
],
"products" : [
{
"name" : "AtomicModels",
"targets" : [
"AtomicModels"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "CLTCollections",
"targets" : [
"CLTCollections"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "CLTExtensions",
"targets" : [
"CLTExtensions"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "CLTLogging",
"targets" : [
"CLTLogging"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "CLTLoggingModels",
"targets" : [
"CLTLoggingModels"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "CLTLoggingTestHelpers",
"targets" : [
"CLTLoggingTestHelpers"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "CLTTypes",
"targets" : [
"CLTTypes"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "Cloc",
"targets" : [
"Cloc"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "CommandSupport",
"targets" : [
"CommandSupport"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "Concurrency",
"targets" : [
"Concurrency"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "Console",
"targets" : [
"Console"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "ConsoleTestHelpers",
"targets" : [
"ConsoleTestHelpers"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "DI",
"targets" : [
"DI"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "DateProvider",
"targets" : [
"DateProvider"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "DateProviderTestHelpers",
"targets" : [
"DateProviderTestHelpers"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "Downloader",
"targets" : [
"Downloader"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "Environment",
"targets" : [
"Environment"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "FileSystem",
"targets" : [
"FileSystem"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "FileSystemTestHelpers",
"targets" : [
"FileSystemTestHelpers"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "Graphite",
"targets" : [
"Graphite"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "GraphiteTestHelpers",
"targets" : [
"GraphiteTestHelpers"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "JSONStream",
"targets" : [
"JSONStream"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "Kibana",
"targets" : [
"Kibana"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "KibanaModels",
"targets" : [
"KibanaModels"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "KibanaTestHelpers",
"targets" : [
"KibanaTestHelpers"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "LaunchdUtils",
"targets" : [
"LaunchdUtils"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "MetricsRecording",
"targets" : [
"MetricsRecording"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "MetricsTestHelpers",
"targets" : [
"MetricsTestHelpers"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "MetricsUtils",
"targets" : [
"MetricsUtils"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "MutualTLS",
"targets" : [
"MutualTLS"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "PathLib",
"targets" : [
"PathLib"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "PlistLib",
"targets" : [
"PlistLib"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "ProcessController",
"targets" : [
"ProcessController"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "ProcessControllerTestHelpers",
"targets" : [
"ProcessControllerTestHelpers"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "RepoRoot",
"targets" : [
"RepoRoot"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "SignalHandling",
"targets" : [
"SignalHandling"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "SocketModels",
"targets" : [
"SocketModels"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "Statsd",
"targets" : [
"Statsd"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "SynchronousWaiter",
"targets" : [
"SynchronousWaiter"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "TeamcityMessaging",
"targets" : [
"TeamcityMessaging"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "TestHelpers",
"targets" : [
"TestHelpers"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "Timer",
"targets" : [
"Timer"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "Tmp",
"targets" : [
"Tmp"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "TmpTestHelpers",
"targets" : [
"TmpTestHelpers"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "Types",
"targets" : [
"Types"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "URLSessionTestHelpers",
"targets" : [
"URLSessionTestHelpers"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "UserDefaultsLib",
"targets" : [
"UserDefaultsLib"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "UserDefaultsLibTestHelpers",
"targets" : [
"UserDefaultsLibTestHelpers"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "Waitable",
"targets" : [
"Waitable"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "XcodeLocator",
"targets" : [
"XcodeLocator"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "XcodeLocatorModels",
"targets" : [
"XcodeLocatorModels"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "XcodeLocatorTests",
"module_type" : "SwiftTarget",
"name" : "XcodeLocatorTests",
"path" : "Tests/XcodeLocatorTests",
"sources" : [
"XcodeLocatorTests.swift"
],
"target_dependencies" : [
"FileSystem",
"FileSystemTestHelpers",
"PlistLib",
"TestHelpers",
"TmpTestHelpers",
"XcodeLocator",
"XcodeLocatorModels"
],
"type" : "test"
},
{
"c99name" : "XcodeLocatorModels",
"module_type" : "SwiftTarget",
"name" : "XcodeLocatorModels",
"path" : "Sources/XcodeLocatorModels",
"product_memberships" : [
"XcodeLocator",
"XcodeLocatorModels"
],
"sources" : [
"DiscoveredXcode.swift"
],
"target_dependencies" : [
"PathLib"
],
"type" : "library"
},
{
"c99name" : "XcodeLocator",
"module_type" : "SwiftTarget",
"name" : "XcodeLocator",
"path" : "Sources/XcodeLocator",
"product_memberships" : [
"XcodeLocator"
],
"sources" : [
"ApplicationPathsProvider/ApplicationPathsProvider.swift",
"ApplicationPathsProvider/ApplicationPathsProviderImpl.swift",
"ApplicationPlistReader/ApplicationPlistReader.swift",
"ApplicationPlistReader/ApplicationPlistReaderImpl.swift",
"DI/XcodeLocatorModuleDependencies.swift",
"XcodeApplicationVerifier/XcodeApplicationVerifier.swift",
"XcodeApplicationVerifier/XcodeApplicationVerifierImpl.swift",
"XcodeLocator/XcodeLocator.swift",
"XcodeLocator/XcodeLocatorImpl.swift"
],
"target_dependencies" : [
"CLTExtensions",
"DI",
"FileSystem",
"PathLib",
"PlistLib",
"XcodeLocatorModels"
],
"type" : "library"
},
{
"c99name" : "WaitableTests",
"module_type" : "SwiftTarget",
"name" : "WaitableTests",
"path" : "Tests/WaitableTests",
"sources" : [
"WaitableTests.swift"
],
"target_dependencies" : [
"Waitable"
],
"type" : "test"
},
{
"c99name" : "Waitable",
"module_type" : "SwiftTarget",
"name" : "Waitable",
"path" : "Sources/Waitable",
"product_memberships" : [
"Waitable"
],
"sources" : [
"Waitable.swift"
],
"type" : "library"
},
{
"c99name" : "UserDefaultsLibTestHelpers",
"module_type" : "SwiftTarget",
"name" : "UserDefaultsLibTestHelpers",
"path" : "Tests/UserDefaultsLibTestHelpers",
"product_memberships" : [
"UserDefaultsLibTestHelpers"
],
"sources" : [
"FakeDefaults.swift"
],
"target_dependencies" : [
"PlistLib",
"UserDefaultsLib"
],
"type" : "library"
},
{
"c99name" : "UserDefaultsLib",
"module_type" : "SwiftTarget",
"name" : "UserDefaultsLib",
"path" : "Sources/UserDefaultsLib",
"product_memberships" : [
"UserDefaultsLib",
"UserDefaultsLibTestHelpers"
],
"sources" : [
"Defaults.swift",
"SystemDefaults.swift"
],
"target_dependencies" : [
"PlistLib"
],
"type" : "library"
},
{
"c99name" : "URLSessionTestHelpers",
"module_type" : "SwiftTarget",
"name" : "URLSessionTestHelpers",
"path" : "Tests/URLSessionTestHelpers",
"product_memberships" : [
"URLSessionTestHelpers"
],
"sources" : [
"FakeURLSession.swift"
],
"type" : "library"
},
{
"c99name" : "TypesTests",
"module_type" : "SwiftTarget",
"name" : "TypesTests",
"path" : "Tests/TypesTests",
"sources" : [
"EitherTests.swift"
],
"target_dependencies" : [
"Types"
],
"type" : "test"
},
{
"c99name" : "Types",
"module_type" : "SwiftTarget",
"name" : "Types",
"path" : "Sources/Types",
"product_memberships" : [
"CLTCollections",
"CLTLogging",
"CLTLoggingTestHelpers",
"Cloc",
"CommandSupport",
"Console",
"ConsoleTestHelpers",
"FileSystem",
"FileSystemTestHelpers",
"Graphite",
"GraphiteTestHelpers",
"Kibana",
"KibanaTestHelpers",
"MetricsRecording",
"MetricsTestHelpers",
"MutualTLS",
"PlistLib",
"ProcessController",
"ProcessControllerTestHelpers",
"RepoRoot",
"SignalHandling",
"SocketModels",
"Statsd",
"Types",
"UserDefaultsLib",
"UserDefaultsLibTestHelpers",
"XcodeLocator"
],
"sources" : [
"CompoundError.swift",
"CustomOrDefault.swift",
"Either.swift",
"MapWithCollection.swift",
"MutableBox.swift",
"NewIntType.swift",
"NewStringType.swift",
"ThrowingProperty/GettableThrowingProperty.swift",
"ThrowingProperty/GettableThrowingPropertyOf.swift",
"ThrowingProperty/SettableThrowingProperty.swift",
"ThrowingProperty/SettableThrowingPropertyOf.swift",
"ThrowingProperty/ThrowingProperty.swift",
"ThrowingProperty/ThrowingPropertyOf.swift"
],
"type" : "library"
},
{
"c99name" : "TmpTestHelpers",
"module_type" : "SwiftTarget",
"name" : "TmpTestHelpers",
"path" : "Tests/TmpTestHelpers",
"product_memberships" : [
"TmpTestHelpers"
],
"sources" : [
"TmpFixtures.swift"
],
"target_dependencies" : [
"TestHelpers",
"Tmp"
],
"type" : "library"
},
{
"c99name" : "Tmp",
"module_type" : "SwiftTarget",
"name" : "Tmp",
"path" : "Sources/Tmp",
"product_memberships" : [
"CLTLogging",
"CLTLoggingTestHelpers",
"ProcessControllerTestHelpers",
"Tmp",
"TmpTestHelpers"
],
"sources" : [
"TempErrors.swift",
"TemporaryFile.swift",
"TemporaryFolder.swift"
],
"target_dependencies" : [
"CLTExtensions",
"PathLib"
],
"type" : "library"
},
{
"c99name" : "Timer",
"module_type" : "SwiftTarget",
"name" : "Timer",
"path" : "Sources/Timer",
"product_memberships" : [
"CLTLogging",
"CLTLoggingTestHelpers",
"Cloc",
"MutualTLS",
"ProcessController",
"ProcessControllerTestHelpers",
"RepoRoot",
"Timer"
],
"sources" : [
"DispatchBasedTimer.swift"
],
"type" : "library"
},
{
"c99name" : "TestHelpers",
"module_type" : "SwiftTarget",
"name" : "TestHelpers",
"path" : "Tests/TestHelpers",
"product_memberships" : [
"TestHelpers",
"TmpTestHelpers"
],
"sources" : [
"AssertFalse.swift",
"AssertTrue.swift",
"Casting.swift",
"Equals.swift",
"ErrorForTestingPurposes.swift",
"ExpectationAwaitingError.swift",
"ExpectationCreation.swift",
"NilHelpers.swift",
"PreventingExecutionAfterFailure.swift",
"TestFailing.swift",
"ThrowingHelpers.swift",
"ValueOf.swift",
"XCTestCase+Syncronious.swift",
"XCTestCase+WaitForExpectation.swift",
"XCTestCase+XCTAssertEqualSorted.swift",
"XCTestCase+testDirectory.swift"
],
"target_dependencies" : [
"AtomicModels",
"CLTExtensions",
"PathLib"
],
"type" : "library"
},
{
"c99name" : "TemporaryStuffTests",
"module_type" : "SwiftTarget",
"name" : "TemporaryStuffTests",
"path" : "Tests/TemporaryStuffTests",
"sources" : [
"TemporaryStuffTests.swift"
],
"target_dependencies" : [
"PathLib",
"TestHelpers",
"Tmp"
],
"type" : "test"
},
{
"c99name" : "TeamcityMessaging",
"module_type" : "SwiftTarget",
"name" : "TeamcityMessaging",
"path" : "Sources/TeamcityMessaging",
"product_memberships" : [
"CLTLogging",
"CLTLoggingTestHelpers",
"Cloc",
"CommandSupport",
"Console",
"ConsoleTestHelpers",
"MutualTLS",
"ProcessController",
"ProcessControllerTestHelpers",
"RepoRoot",
"TeamcityMessaging"
],
"sources" : [
"ControlMessage/ControlMessage.swift",
"ControlMessage/ControlMessageBuilder.swift",
"ControlMessage/ControlMessageParameter.swift",
"ControlMessage/ControlMessageWithMultipleParameters.swift",
"ControlMessage/ControlMessageWithSingleParameter.swift",
"DI/TeamcityMessagingModuleDependencies.swift",
"TeamcityMessageGenerator/TeamcityMessageGenerator.swift",
"TeamcityMessageRenderer/TeamcityMessageRenderer.swift",
"TeamcityMessageRenderer/TeamcityMessageRendererImpl.swift"
],
"target_dependencies" : [
"CLTExtensions",
"DI"
],
"type" : "library"
},
{
"c99name" : "SynchronousWaiterTests",
"module_type" : "SwiftTarget",
"name" : "SynchronousWaiterTests",
"path" : "Tests/SynchronousWaiterTests",
"sources" : [
"SynchronousWaiterTests.swift",
"WaiterTests.swift"
],
"target_dependencies" : [
"SynchronousWaiter",
"TestHelpers"
],
"type" : "test"
},
{
"c99name" : "SynchronousWaiter",
"module_type" : "SwiftTarget",
"name" : "SynchronousWaiter",
"path" : "Sources/SynchronousWaiter",
"product_memberships" : [
"ProcessControllerTestHelpers",
"SynchronousWaiter"
],
"sources" : [
"NoOpWaiter.swift",
"SynchronousWaiter.swift",
"Timeout.swift",
"Waiter+Callbacks.swift",
"Waiter+ErrorMapping.swift",
"Waiter.swift"
],
"target_dependencies" : [
"AtomicModels"
],
"type" : "library"
},
{
"c99name" : "StatsdTests",
"module_type" : "SwiftTarget",
"name" : "StatsdTests",
"path" : "Tests/StatsdTests",
"product_dependencies" : [
"Socket"
],
"sources" : [
"FakeStatsdClient.swift",
"StatsdClientTests.swift",
"StatsdMetricTests.swift"
],
"target_dependencies" : [
"MetricsRecording",
"SocketModels",
"Statsd",
"TestHelpers"
],
"type" : "test"
},
{
"c99name" : "Statsd",
"module_type" : "SwiftTarget",
"name" : "Statsd",
"path" : "Sources/Statsd",
"product_dependencies" : [
"Socket"
],
"product_memberships" : [
"MetricsRecording",
"MetricsTestHelpers",
"Statsd"
],
"sources" : [
"StatsdClient.swift",
"StatsdClientImpl.swift",
"StatsdMetric.swift",
"StatsdMetricHandler.swift",
"StatsdMetricHandlerImpl.swift"
],
"target_dependencies" : [
"AtomicModels",
"MetricsUtils",
"SocketModels"
],
"type" : "library"
},
{
"c99name" : "SocketModels",
"module_type" : "SwiftTarget",
"name" : "SocketModels",
"path" : "Sources/SocketModels",
"product_memberships" : [
"CLTLogging",
"CLTLoggingTestHelpers",
"Graphite",
"GraphiteTestHelpers",
"Kibana",
"KibanaTestHelpers",
"MetricsRecording",
"MetricsTestHelpers",
"SocketModels",
"Statsd"
],
"sources" : [
"Port.swift",
"SocketAddress.swift"
],
"target_dependencies" : [
"Types"
],
"type" : "library"
},
{
"c99name" : "SignalHandlingTests",
"module_type" : "SwiftTarget",
"name" : "SignalHandlingTests",
"path" : "Tests/SignalHandlingTests",
"product_dependencies" : [
"Signals"
],
"sources" : [
"SignalHandlingTests.swift"
],
"target_dependencies" : [
"SignalHandling"
],
"type" : "test"
},
{
"c99name" : "SignalHandling",
"module_type" : "SwiftTarget",
"name" : "SignalHandling",
"path" : "Sources/SignalHandling",
"product_dependencies" : [
"Signals"
],
"product_memberships" : [
"CLTLogging",
"CLTLoggingTestHelpers",
"Cloc",
"CommandSupport",
"Console",
"ConsoleTestHelpers",
"MutualTLS",
"ProcessController",
"ProcessControllerTestHelpers",
"RepoRoot",
"SignalHandling"
],
"sources" : [
"Signal.swift",
"SignalHandling.swift"
],
"target_dependencies" : [
"Types"
],
"type" : "library"
},
{
"c99name" : "RepoRootTests",
"module_type" : "SwiftTarget",
"name" : "RepoRootTests",
"path" : "Tests/RepoRootTests",
"sources" : [
"MarkerFileRepoRootProviderTests.swift"
],
"target_dependencies" : [
"FileSystem",
"FileSystemTestHelpers",
"PathLib",
"RepoRoot",
"TestHelpers"
],
"type" : "test"
},
{
"c99name" : "RepoRoot",
"module_type" : "SwiftTarget",
"name" : "RepoRoot",
"path" : "Sources/RepoRoot",
"product_memberships" : [
"RepoRoot"
],
"sources" : [
"DI/RepoRootModuleDependencies.swift",
"RepoRootProvider/RepoRootProvider.swift",
"RepoRootProvider/RepoRootProviderFactory.swift",
"RepoRootProvider/RepoRootProviderFactoryImplementations/CachingRepoRootProviderFactory.swift",
"RepoRootProvider/RepoRootProviderFactoryImplementations/GitRepoRootProviderFactory.swift",
"RepoRootProvider/RepoRootProviderFactoryImplementations/MarkerFileRepoRootProviderFactory.swift",
"RepoRootProvider/RepoRootProviderImplementations/CachingRepoRootProvider.swift",
"RepoRootProvider/RepoRootProviderImplementations/ClosureRepoRootProvider.swift",
"RepoRootProvider/RepoRootProviderImplementations/CurrentExecutableRepoRootProvider.swift",
"RepoRootProvider/RepoRootProviderImplementations/GitRepoRootProvider.swift",
"RepoRootProvider/RepoRootProviderImplementations/MarkerFileRepoRootProvider.swift",
"RepoRootProvider/RepoRootProviderImplementations/WorkdirRepoRootProvider.swift"
],
"target_dependencies" : [
"CLTExtensions",
"DI",
"Environment",
"FileSystem",
"PathLib",
"ProcessController"
],
"type" : "library"
},
{
"c99name" : "ProcessControllerTests",
"module_type" : "SwiftTarget",
"name" : "ProcessControllerTests",
"path" : "Tests/ProcessControllerTests",
"sources" : [
"AutomaticManagementTests.swift",
"DefaultProcessControllerTests.swift",
"EnvironmentSecureValueTests.swift",
"LoggableProcessControllerProviderTests.swift",
"ProcessControllerProvider+BashTests.swift"
],
"target_dependencies" : [
"DateProvider",
"FileSystem",
"PathLib",
"ProcessController",
"ProcessControllerTestHelpers",
"SignalHandling",
"TestHelpers",
"Tmp"
],
"type" : "test"
},
{
"c99name" : "ProcessControllerTestHelpers",
"module_type" : "SwiftTarget",
"name" : "ProcessControllerTestHelpers",
"path" : "Tests/ProcessControllerTestHelpers",
"product_memberships" : [
"ProcessControllerTestHelpers"
],
"sources" : [
"FakeProcessController.swift",
"FakeProcessControllerProvider.swift"
],
"target_dependencies" : [
"ProcessController",
"SynchronousWaiter",
"Tmp"
],
"type" : "library"
},
{
"c99name" : "ProcessController",
"module_type" : "SwiftTarget",
"name" : "ProcessController",
"path" : "Sources/ProcessController",
"product_dependencies" : [
"Logging"
],
"product_memberships" : [
"CLTLogging",
"CLTLoggingTestHelpers",
"Cloc",
"MutualTLS",
"ProcessController",
"ProcessControllerTestHelpers",
"RepoRoot"
],
"sources" : [
"AutomaticManagement.swift",
"AutomaticManagementItemController.swift",
"BashEscapedCommandMaker/BashEscapedCommandMaker.swift",
"BashEscapedCommandMaker/BashEscapedCommandMakerImpl.swift",
"DI/ProcessControllerDependencies.swift",
"DefaultProcessController.swift",
"DefaultProcessControllerProvider.swift",
"Environment.swift",
"EnvironmentValue.swift",
"LoggableProcessControllerProvider.swift",
"Process+ProcessGroup.swift",
"ProcessController.swift",
"ProcessControllerError.swift",
"ProcessControllerProvider+Shell.swift",
"ProcessControllerProvider+Subprocess.swift",
"ProcessControllerProvider.swift",
"ProcessListener.swift",
"ProcessStatus.swift",
"Subprocess.swift",
"SubprocessArgument.swift",
"SubprocessInfo.swift"
],
"target_dependencies" : [
"AtomicModels",
"Console",
"DI",
"DateProvider",
"Environment",
"FileSystem",
"PathLib",
"SignalHandling",
"Timer"
],
"type" : "library"
},
{
"c99name" : "PlistLibTests",
"module_type" : "SwiftTarget",
"name" : "PlistLibTests",
"path" : "Tests/PlistLibTests",
"sources" : [
"PlistEntryTests.swift",
"PlistTests.swift"
],
"target_dependencies" : [
"PlistLib",
"TestHelpers"
],
"type" : "test"
},
{
"c99name" : "PlistLib",
"module_type" : "SwiftTarget",
"name" : "PlistLib",
"path" : "Sources/PlistLib",
"product_memberships" : [
"PlistLib",
"UserDefaultsLib",
"UserDefaultsLibTestHelpers",
"XcodeLocator"
],
"sources" : [
"DI/PlistLibModuleDependencies.swift",
"Plist.swift",
"PlistEntry+Access.swift",
"PlistEntry.swift",
"PlistReader/PlistReader.swift",
"PlistReader/PlistReaderImpl.swift",
"RootPlistEntry.swift"
],
"target_dependencies" : [
"DI",
"FileSystem",
"PathLib"
],
"type" : "library"
},
{
"c99name" : "PathLibTests",
"module_type" : "SwiftTarget",
"name" : "PathLibTests",
"path" : "Tests/PathLibTests",
"sources" : [
"AbsolutePathTests.swift",
"PathTests.swift",
"RelativePathTests.swift"
],
"target_dependencies" : [
"PathLib",
"TestHelpers"
],
"type" : "test"
},
{
"c99name" : "PathLib",
"module_type" : "SwiftTarget",
"name" : "PathLib",
"path" : "Sources/PathLib",
"product_memberships" : [
"CLTLogging",
"CLTLoggingTestHelpers",
"Cloc",
"CommandSupport",
"Concurrency",
"Downloader",
"Environment",
"FileSystem",
"FileSystemTestHelpers",
"MutualTLS",
"PathLib",
"PlistLib",
"ProcessController",
"ProcessControllerTestHelpers",
"RepoRoot",
"TestHelpers",
"Tmp",
"TmpTestHelpers",
"UserDefaultsLib",
"UserDefaultsLibTestHelpers",
"XcodeLocator",
"XcodeLocatorModels"
],
"sources" : [
"AbsolutePath.swift",
"FileManager+Extensions.swift",
"Path+CommonOperations.swift",
"Path.swift",
"RelativePath.swift",
"String+ShellEscaping.swift",
"StringPathParsing.swift"
],
"type" : "library"
},
{
"c99name" : "MutualTLS",
"module_type" : "SwiftTarget",
"name" : "MutualTLS",
"path" : "Sources/MutualTLS",
"product_memberships" : [
"MutualTLS"
],
"sources" : [
"DI/MutualTLSModuleDependencies.swift",
"MutualTLSCredentialProvider.swift",
"PEM.swift"
],
"target_dependencies" : [
"DI",
"Environment",
"PathLib",
"ProcessController"
],
"type" : "library"
},
{
"c99name" : "MetricsUtils",
"module_type" : "SwiftTarget",
"name" : "MetricsUtils",
"path" : "Sources/MetricsUtils",
"product_memberships" : [
"Graphite",
"GraphiteTestHelpers",
"MetricsRecording",
"MetricsTestHelpers",
"MetricsUtils",
"Statsd"
],
"sources" : [
"String+MetricComponent.swift"
],
"type" : "library"
},
{
"c99name" : "MetricsTests",
"module_type" : "SwiftTarget",
"name" : "MetricsTests",
"path" : "Tests/MetricsTests",
"sources" : [
"MetricHandlerTests.swift",
"TimeMeasurerTests.swift"
],
"target_dependencies" : [
"DateProviderTestHelpers",
"Graphite",
"MetricsRecording",
"MetricsTestHelpers",
"Statsd",
"TestHelpers"
],
"type" : "test"
},
{
"c99name" : "MetricsTestHelpers",
"module_type" : "SwiftTarget",
"name" : "MetricsTestHelpers",
"path" : "Tests/MetricsTestHelpers",
"product_memberships" : [
"MetricsTestHelpers"
],
"sources" : [
"FakeMetricHandler.swift",
"Metric+TestCompare.swift",
"NoOpMetricRecorder.swift"
],
"target_dependencies" : [
"Graphite",
"MetricsRecording",
"Statsd"
],
"type" : "library"
},
{
"c99name" : "MetricsRecording",
"module_type" : "SwiftTarget",
"name" : "MetricsRecording",
"path" : "Sources/MetricsRecording",
"product_memberships" : [
"MetricsRecording",
"MetricsTestHelpers"
],
"sources" : [
"MetricRecorder.swift",
"MetricRecorderImpl.swift",
"MutableMetricRecorder.swift",
"NoOpMetricHandler.swift",
"TimeMeasurer.swift"
],
"target_dependencies" : [
"DateProvider",
"Graphite",
"Statsd"
],
"type" : "library"
},
{
"c99name" : "LaunchdUtilsTests",
"module_type" : "SwiftTarget",
"name" : "LaunchdUtilsTests",
"path" : "Tests/LaunchdUtilsTests",
"sources" : [
"LaunchdUtilsTests.swift"
],
"target_dependencies" : [
"LaunchdUtils"
],
"type" : "test"
},
{
"c99name" : "LaunchdUtils",
"module_type" : "SwiftTarget",
"name" : "LaunchdUtils",
"path" : "Sources/LaunchdUtils",
"product_memberships" : [
"LaunchdUtils"
],
"sources" : [
"LaunchdJob.swift",
"LaunchdPlist.swift",
"LaunchdSocket.swift",
"LaunchdSocketActivation.swift",
"LaunchdSocketActivationError.swift"
],
"type" : "library"
},
{
"c99name" : "KibanaTests",
"module_type" : "SwiftTarget",
"name" : "KibanaTests",
"path" : "Tests/KibanaTests",
"sources" : [
"HttpKibanaClientTests.swift"
],
"target_dependencies" : [
"DateProviderTestHelpers",
"Kibana",
"SocketModels",
"TestHelpers",
"URLSessionTestHelpers"
],
"type" : "test"
},
{
"c99name" : "KibanaTestHelpers",
"module_type" : "SwiftTarget",
"name" : "KibanaTestHelpers",
"path" : "Tests/KibanaTestHelpers",
"product_memberships" : [
"KibanaTestHelpers"
],
"sources" : [
"FakeKibanaClient.swift"
],
"target_dependencies" : [
"Kibana"
],
"type" : "library"
},
{
"c99name" : "KibanaModels",
"module_type" : "SwiftTarget",
"name" : "KibanaModels",
"path" : "Sources/KibanaModels",
"product_memberships" : [
"CLTLogging",
"CLTLoggingTestHelpers",
"KibanaModels"
],
"sources" : [
"KibanaConfiguration.swift"
],
"target_dependencies" : [
"CLTTypes"
],
"type" : "library"
},
{
"c99name" : "Kibana",
"module_type" : "SwiftTarget",
"name" : "Kibana",
"path" : "Sources/Kibana",
"product_memberships" : [
"CLTLogging",
"CLTLoggingTestHelpers",
"Kibana",
"KibanaTestHelpers"
],
"sources" : [
"HttpKibanaClient.swift",
"KibanaClient.swift",
"KibanaHttpEndpoint.swift"
],
"target_dependencies" : [
"CLTExtensions",
"CLTTypes",
"DateProvider",
"SocketModels"
],
"type" : "library"
},
{
"c99name" : "JSONStreamTests",
"module_type" : "SwiftTarget",
"name" : "JSONStreamTests",
"path" : "Tests/JSONStreamTests",
"sources" : [
"BlockingArrayBasedJSONStreamTests.swift",
"Helpers.swift",
"JSONReaderNumberEdgeCaseTests.swift",
"JSONReaderStringEdgeCaseTests.swift",
"JSONStreamReaderTests.swift"
],
"target_dependencies" : [
"JSONStream",
"TestHelpers"
],
"type" : "test"
},
{
"c99name" : "JSONStream",
"module_type" : "SwiftTarget",
"name" : "JSONStream",
"path" : "Sources/JSONStream",
"product_memberships" : [
"JSONStream"
],
"sources" : [
"AppendableJSONStream.swift",
"BlockingArrayBasedJSONStream.swift",
"JSONReader.swift",
"JSONReaderContext.swift",
"JSONReaderError.swift",
"JSONReaderEventStream.swift",
"JSONReaderFatalError.swift",
"JSONStream.swift",
"JSONStreamFactory.swift",
"NumberValidator.swift"
],
"target_dependencies" : [
"AtomicModels"
],
"type" : "library"
},
{
"c99name" : "GraphiteTests",
"module_type" : "SwiftTarget",
"name" : "GraphiteTests",
"path" : "Tests/GraphiteTests",
"product_dependencies" : [
"Socket"
],
"sources" : [
"LazySocketConnectionIntegrationTests.swift"
],
"target_dependencies" : [
"AtomicModels",
"Graphite",
"SocketModels",
"TestHelpers"
],
"type" : "test"
},
{
"c99name" : "GraphiteTestHelpers",
"module_type" : "SwiftTarget",
"name" : "GraphiteTestHelpers",
"path" : "Tests/GraphiteTestHelpers",
"product_memberships" : [
"GraphiteTestHelpers"
],
"sources" : [
"GraphiteClient.swift"
],
"target_dependencies" : [
"Graphite"
],
"type" : "library"
},
{
"c99name" : "Graphite",
"module_type" : "SwiftTarget",
"name" : "Graphite",
"path" : "Sources/Graphite",
"product_dependencies" : [
"Socket"
],
"product_memberships" : [
"Graphite",
"GraphiteTestHelpers",
"MetricsRecording",
"MetricsTestHelpers"
],
"sources" : [
"GraphiteMetric.swift",
"GraphiteMetricHandler.swift",
"LazySocketConnection.swift",
"NoOpGraphiteMetricHandler.swift",
"SocketGraphiteMetricHandler.swift"
],
"target_dependencies" : [
"MetricsUtils",
"SocketModels"
],
"type" : "library"
},
{
"c99name" : "FileSystemTests",
"module_type" : "SwiftTarget",
"name" : "FileSystemTests",
"path" : "Tests/FileSystemTests",
"sources" : [
"AppleCommonlyUsedPathsProviderTests.swift",
"DeepFileSystemEnumeratorTests.swift",
"DefaultFilePropertiesContainerTests.swift",
"DirectoryCreatorImplTests.swift",
"GlobFileSystemEnumeratorTests.swift",
"LocalFileSystemTests.swift",
"PathDeleterImplTests.swift",
"PatternComponentTests.swift",
"ShallowFileSystemEnumeratorTests.swift",
"TestDataForEnumeration.swift"
],
"target_dependencies" : [
"FileSystem",
"PathLib",
"TestHelpers",
"Tmp",
"TmpTestHelpers"
],
"type" : "test"
},
{
"c99name" : "FileSystemTestHelpers",
"module_type" : "SwiftTarget",
"name" : "FileSystemTestHelpers",
"path" : "Tests/FileSystemTestHelpers",
"product_memberships" : [
"FileSystemTestHelpers"
],
"sources" : [
"FakeFilePropertiesContainer.swift",
"FakeFileReader.swift",
"FakeFileSystem.swift",
"FakeFileSystemEnumerator.swift",
"FakeFileSystemPropertiesContainer.swift",
"FakeThrowingProperty.swift",
"FileSystemTestHelpers.swift"
],
"target_dependencies" : [
"FileSystem",
"PathLib",
"Types"
],
"type" : "library"
},
{
"c99name" : "FileSystem",
"module_type" : "SwiftTarget",
"name" : "FileSystem",
"path" : "Sources/FileSystem",
"product_dependencies" : [
"Glob"
],
"product_memberships" : [
"CLTLogging",
"CLTLoggingTestHelpers",
"Cloc",
"FileSystem",
"FileSystemTestHelpers",
"MutualTLS",
"PlistLib",
"ProcessController",
"ProcessControllerTestHelpers",
"RepoRoot",
"UserDefaultsLib",
"UserDefaultsLibTestHelpers",
"XcodeLocator"
],
"sources" : [
"DI/FileSystemModuleDependencies.swift",
"File/WorkingWithContents/DataWriter/DataWriter.swift",
"File/WorkingWithContents/DataWriter/DataWriterImpl.swift",
"File/WorkingWithContents/FileReader/FileReader.swift",
"File/WorkingWithContents/FileReader/FileReaderImpl.swift",
"File/WorkingWithProperties/DefaultFilePropertiesContainer.swift",
"File/WorkingWithProperties/FileExistence.swift",
"File/WorkingWithProperties/FileExistenceCheckType.swift",
"File/WorkingWithProperties/FilePropertiesContainer.swift",
"File/WorkingWithProperties/FilePropertiesContainerError.swift",
"Files/CommonlyUsedPathsProvider/AppleCommonlyUsedPathsProvider.swift",
"Files/CommonlyUsedPathsProvider/CommonlyUsedPathsProvider.swift",
"Files/CommonlyUsedPathsProvider/LinuxCommonlyUsedPathsProvider.swift",
"Files/Enumeration/Deep/DeepFileSystemEnumerator.swift",
"Files/Enumeration/Deep/DeepFollowSymlinksFileSystemEnumerator.swift",
"Files/Enumeration/FileSystemEnumerator.swift",
"Files/Enumeration/Glob/GlobFileSystemEnumerator.swift",
"Files/Enumeration/Glob/GlobPattern.swift",
"Files/Enumeration/Shallow/ShallowFileSystemEnumerator.swift",
"Files/FileSystem/CommonlyUsedPathsProviderFactory/CommonlyUsedPathsProviderFactory.swift",
"Files/FileSystem/CommonlyUsedPathsProviderFactory/CommonlyUsedPathsProviderFactoryImpl.swift",
"Files/FileSystem/DirectoryCreator/DirectoryCreator.swift",
"Files/FileSystem/DirectoryCreator/DirectoryCreatorImpl.swift",
"Files/FileSystem/FileAppender/FileAppender.swift",
"Files/FileSystem/FileAppender/FileAppenderImpl.swift",
"Files/FileSystem/FileCreator/FileCreator.swift",
"Files/FileSystem/FileCreator/FileCreatorImpl.swift",
"Files/FileSystem/FilePropertiesProvider/FileExistenceChecker.swift",
"Files/FileSystem/FilePropertiesProvider/FilePropertiesProvider.swift",
"Files/FileSystem/FilePropertiesProvider/FilePropertiesProviderImpl.swift",
"Files/FileSystem/FileSystem.swift",
"Files/FileSystem/FileSystemEnumeratorFactory/ContentEnumerationStyle.swift",
"Files/FileSystem/FileSystemEnumeratorFactory/FileSystemEnumeratorFactory.swift",
"Files/FileSystem/FileSystemEnumeratorFactory/FileSystemEnumeratorFactoryImpl.swift",
"Files/FileSystem/FileSystemPropertiesProvider/FileSystemPropertiesProvider.swift",
"Files/FileSystem/FileSystemPropertiesProvider/FileSystemPropertiesProviderImpl.swift",
"Files/FileSystem/FileToucher/FileToucher.swift",
"Files/FileSystem/FileToucher/FileToucherImpl.swift",
"Files/FileSystem/LocalFileSystem.swift",
"Files/FileSystem/PathCopier/PathCopier.swift",
"Files/FileSystem/PathCopier/PathCopierImpl.swift",
"Files/FileSystem/PathDeleter/PathDeleter.swift",
"Files/FileSystem/PathDeleter/PathDeleterImpl.swift",
"Files/FileSystem/PathLinker/PathLinker.swift",
"Files/FileSystem/PathLinker/PathLinkerImpl.swift",
"Files/FileSystem/PathMover/PathMover.swift",
"Files/FileSystem/PathMover/PathMoverImpl.swift",
"Files/FileSystem/Support/DestinationPreparer.swift",
"Files/Properties/DefaultFileSystemPropertiesContainer.swift",
"Files/Properties/FileSystemPropertiesContainer.swift",
"Files/RealPathProvider/RealpathProvider.swift",
"Files/RealPathProvider/RealpathProviderImpl.swift"
],
"target_dependencies" : [
"CLTExtensions",
"DI",
"PathLib",
"Types"
],
"type" : "library"
},
{
"c99name" : "Environment",
"module_type" : "SwiftTarget",
"name" : "Environment",
"path" : "Sources/Environment",
"product_memberships" : [
"CLTLogging",
"CLTLoggingTestHelpers",
"Cloc",
"Environment",
"MutualTLS",
"ProcessController",
"ProcessControllerTestHelpers",
"RepoRoot"
],
"sources" : [
"CurrentExecutableProvider/CurrentExecutableProvider.swift",
"CurrentExecutableProvider/ProcessInfoCurrentExecutableProvider.swift",
"DI/EnvironmentModuleDependencies.swift",
"EnvironmentProvider/Conversion.swift",
"EnvironmentProvider/EnvironmentKey.swift",
"EnvironmentProvider/EnvironmentProvider.swift",
"EnvironmentProvider/ProcessInfoEnvironmentProvider.swift"
],
"target_dependencies" : [
"CLTExtensions",
"DI",
"PathLib"
],
"type" : "library"
},
{
"c99name" : "Downloader",
"module_type" : "SwiftTarget",
"name" : "Downloader",
"path" : "Sources/Downloader",
"product_dependencies" : [
"Alamofire"
],
"product_memberships" : [
"Downloader"
],
"sources" : [
"DI/DownloaderModuleDependencies.swift",
"Downloader.swift",
"DownloaderImpl.swift"
],
"target_dependencies" : [
"DI",
"DateProvider",
"PathLib"
],
"type" : "library"
},
{
"c99name" : "DateProviderTestHelpers",
"module_type" : "SwiftTarget",
"name" : "DateProviderTestHelpers",
"path" : "Tests/DateProviderTestHelpers",
"product_memberships" : [
"DateProviderTestHelpers"
],
"sources" : [
"DateProviderFixture.swift"
],
"target_dependencies" : [
"DateProvider"
],
"type" : "library"
},
{
"c99name" : "DateProvider",
"module_type" : "SwiftTarget",
"name" : "DateProvider",
"path" : "Sources/DateProvider",
"product_memberships" : [
"CLTLogging",
"CLTLoggingTestHelpers",
"Cloc",
"DateProvider",
"DateProviderTestHelpers",
"Downloader",
"Kibana",
"KibanaTestHelpers",
"MetricsRecording",
"MetricsTestHelpers",
"MutualTLS",
"ProcessController",
"ProcessControllerTestHelpers",
"RepoRoot"
],
"sources" : [
"DI/DateProviderModuleDependencies.swift",
"DateProvider.swift",
"SystemDateProvider.swift"
],
"target_dependencies" : [
"DI"
],
"type" : "library"
},
{
"c99name" : "DI",
"module_type" : "SwiftTarget",
"name" : "DI",
"path" : "Sources/DI",
"product_memberships" : [
"CLTLogging",
"CLTLoggingTestHelpers",
"Cloc",
"CommandSupport",
"Console",
"ConsoleTestHelpers",
"DI",
"DateProvider",
"DateProviderTestHelpers",
"Downloader",
"Environment",
"FileSystem",
"FileSystemTestHelpers",
"Kibana",
"KibanaTestHelpers",
"MetricsRecording",
"MetricsTestHelpers",
"MutualTLS",
"PlistLib",
"ProcessController",
"ProcessControllerTestHelpers",
"RepoRoot",
"TeamcityMessaging",
"UserDefaultsLib",
"UserDefaultsLibTestHelpers",
"XcodeLocator"
],
"sources" : [
"DependencyCollectionRegisterer/CompoundDependencyCollectionRegisterer.swift",
"DependencyCollectionRegisterer/DependencyCollectionRegisterer.swift",
"DependencyInjection/DelegatingDependencyInjection.swift",
"DependencyInjection/DependencyInjection.swift",
"DependencyInjectionFactory/DependencyInjectionFactory.swift",
"DependencyRegisterer/DependencyRegisterer+RegisterMultiple.swift",
"DependencyRegisterer/DependencyRegisterer.swift",
"DependencyRegisterer/MultipleDependenciesRegistrationContinuation.swift",
"DependencyResolver/CompoundDependencyResolver.swift",
"DependencyResolver/DependencyResolver.swift",
"DependencyResolver/WeakDependencyResolver.swift",
"Facade/DIContext.swift",
"Facade/InitializableWithNoArguments.swift",
"HashableType/HashableType.swift",
"Implementation/DependencyInjection/DependencyInjectionFactoryImpl.swift",
"Implementation/DependencyInjection/DependencyInjectionImpl.swift",
"Implementation/DependencyInjection/RegisteredDependency.swift",
"Models/DiError.swift",
"Models/Scope.swift",
"Modular/AllModularDependenciesDependencyCollectionRegisterer.swift",
"Modular/ModuleDependencies.swift"
],
"type" : "library"
},
{
"c99name" : "ConsoleTests",
"module_type" : "SwiftTarget",
"name" : "ConsoleTests",
"path" : "Tests/ConsoleTests",
"product_dependencies" : [
"InlineSnapshotTesting",
"Logging",
"SnapshotTesting"
],
"sources" : [
"Helpers/ConsoleComponent+TestHelpers.swift",
"Helpers/Snapshotting+ConsoleComponent.swift",
"LogRendererTests.swift",
"TraceHierarchyTests.swift"
],
"target_dependencies" : [
"Console"
],
"type" : "test"
},
{
"c99name" : "ConsoleTestHelpers",
"module_type" : "SwiftTarget",
"name" : "ConsoleTestHelpers",
"path" : "Tests/ConsoleTestHelpers",
"product_dependencies" : [
"Logging"
],
"product_memberships" : [
"ConsoleTestHelpers"
],
"sources" : [
"TestCLI.swift"
],
"target_dependencies" : [
"Console"
],
"type" : "library"
},
{
"c99name" : "Console",
"module_type" : "SwiftTarget",
"name" : "Console",
"path" : "Sources/Console",
"product_dependencies" : [
"Logging",
"Yams"
],
"product_memberships" : [
"CLTLogging",
"CLTLoggingTestHelpers",
"Cloc",
"CommandSupport",
"Console",
"ConsoleTestHelpers",
"MutualTLS",
"ProcessController",
"ProcessControllerTestHelpers",
"RepoRoot"
],
"sources" : [
"ANSI/ANSI.swift",
"ANSI/ANSIKeyboard.swift",
"ANSI/ANSIScreen.swift",
"ANSI/ANSITerminal.swift",
"ANSIConsoleHandler/ANSIConsoleHandler.swift",
"ANSIConsoleHandler/Input/ANSIConsoleHandler+Input.swift",
"ANSIConsoleHandler/Input/InputComponent.swift",
"ANSIConsoleHandler/Input/InputComponentRenderer.swift",
"ANSIConsoleHandler/Input/InputComponentState.swift",
"ANSIConsoleHandler/Log/ANSIConsoleHandler+Log.swift",
"ANSIConsoleHandler/Log/ConsoleLogHandler.swift",
"ANSIConsoleHandler/Log/LogComponent.swift",
"ANSIConsoleHandler/Log/LogComponentRenderer.swift",
"ANSIConsoleHandler/Log/LogComponentState.swift",
"ANSIConsoleHandler/LogStream/ANSIConsoleHandler+LogStream.swift",
"ANSIConsoleHandler/LogStream/LogStreamComponent.swift",
"ANSIConsoleHandler/LogStream/LogStreamComponentRenderer.swift",
"ANSIConsoleHandler/LogStream/LogStreamComponentState.swift",
"ANSIConsoleHandler/Question/ANSIConsoleHandler+Question.swift",
"ANSIConsoleHandler/Question/QuestionComponent.swift",
"ANSIConsoleHandler/Question/QuestionComponentRenderer.swift",
"ANSIConsoleHandler/Question/QuestionComponentState.swift",
"ANSIConsoleHandler/Select/ANSIConsoleHandler+Select.swift",
"ANSIConsoleHandler/Select/SelectComponent.swift",
"ANSIConsoleHandler/Select/SelectComponentRenderer.swift",
"ANSIConsoleHandler/Select/SelectComponentState.swift",
"ANSIConsoleHandler/Trace/ANSIConsoleHandler+Trace.swift",
"ANSIConsoleHandler/Trace/TraceComponent.swift",
"ANSIConsoleHandler/Trace/TraceComponentRenderer.swift",
"ANSIConsoleHandler/Trace/TraceComponentState.swift",
"Console.swift",
"ConsoleColor.swift",
"ConsoleContext.swift",
"ConsoleHandler.swift",
"ConsoleStyle.swift",
"ConsoleSystem.swift",
"ConsoleText.swift",
"ConsoleTextFragment.swift",
"DI/ConsoleModuleDependencies.swift",
"TeamcityConsoleHandler/TeamcityConsoleHandler.swift",
"Utils/ReadWriteLock.swift",
"Utils/StdioOutputStream.swift",
"Utils/String+Symbols.swift"
],
"target_dependencies" : [
"AtomicModels",
"DI",
"SignalHandling",
"TeamcityMessaging"
],
"type" : "library"
},
{
"c99name" : "Concurrency",
"module_type" : "SwiftTarget",
"name" : "Concurrency",
"path" : "Sources/Concurrency",
"product_memberships" : [
"Concurrency"
],
"sources" : [
"ThreadSafeLazy.swift",
"ThrowingThreadSafeLazy.swift"
],
"target_dependencies" : [
"PathLib"
],
"type" : "library"
},
{
"c99name" : "CommandSupportTests",
"module_type" : "SwiftTarget",
"name" : "CommandSupportTests",
"path" : "Tests/CommandSupportTests",
"product_dependencies" : [
"ArgumentParser"
],
"sources" : [
"ParsableCommandPathTests.swift"
],
"target_dependencies" : [
"CommandSupport"
],
"type" : "test"
},
{
"c99name" : "CommandSupport",
"module_type" : "SwiftTarget",
"name" : "CommandSupport",
"path" : "Sources/CommandSupport",
"product_dependencies" : [
"ArgumentParser",
"Logging"
],
"product_memberships" : [
"CommandSupport"
],
"sources" : [
"AbsolutePath+ExpressibleByArgument.swift",
"AsyncCommandLogic.swift",
"AsyncCommandLogicProvider.swift",
"BaseCommand.swift",
"CommandDiValidator.swift",
"CommandLogic.swift",
"CommandLogicProvider.swift",
"CompoundAsyncCommandLogic.swift",
"CompoundCommandLogic.swift",
"LogOptionsCommand.swift",
"ParsableCommand+pathFromRootCommand.swift",
"TestableCommand.swift"
],
"target_dependencies" : [
"CLTExtensions",
"Console",
"DI",
"PathLib",
"TeamcityMessaging"
],
"type" : "library"
},
{
"c99name" : "Cloc",
"module_type" : "SwiftTarget",
"name" : "Cloc",
"path" : "Sources/Cloc",
"product_memberships" : [
"Cloc"
],
"sources" : [
"Cloc.swift",
"ClocTool.swift"
],
"target_dependencies" : [
"FileSystem",
"PathLib",
"ProcessController"
],
"type" : "library"
},
{
"c99name" : "CLTTypes",
"module_type" : "SwiftTarget",
"name" : "CLTTypes",
"path" : "Sources/CLTTypes",
"product_memberships" : [
"CLTLogging",
"CLTLoggingTestHelpers",
"CLTTypes",
"Kibana",
"KibanaModels",
"KibanaTestHelpers"
],
"sources" : [
"Credentials.swift",
"Http/HttpAuthorizationScheme.swift"
],
"target_dependencies" : [
"CLTExtensions"
],
"type" : "library"
},
{
"c99name" : "CLTLoggingTests",
"module_type" : "SwiftTarget",
"name" : "CLTLoggingTests",
"path" : "Tests/CLTLoggingTests",
"sources" : [
"AggregatedLoggerHandlerTests.swift",
"ContextualLoggerTests.swift",
"FakeFileHandle.swift",
"FileHandleLoggerHandlerTests.swift",
"KibanaLoggerHandlerTests.swift",
"LimitingLoggerHandlerTests.swift",
"NSLogLikeLogEntryTextFormatterTests.swift",
"SimpleLogEntryTextFormatter.swift",
"VerbosityTests.swift"
],
"target_dependencies" : [
"CLTLogging",
"CLTLoggingModels",
"CLTLoggingTestHelpers",
"DateProviderTestHelpers",
"Kibana",
"KibanaTestHelpers",
"TestHelpers",
"Tmp"
],
"type" : "test"
},
{
"c99name" : "CLTLoggingTestHelpers",
"module_type" : "SwiftTarget",
"name" : "CLTLoggingTestHelpers",
"path" : "Tests/CLTLoggingTestHelpers",
"product_memberships" : [
"CLTLoggingTestHelpers"
],
"sources" : [
"FakeLoggerHandler.swift",
"LogEntryFixture.swift"
],
"target_dependencies" : [
"CLTLogging",
"CLTLoggingModels"
],
"type" : "library"
},
{
"c99name" : "CLTLoggingModels",
"module_type" : "SwiftTarget",
"name" : "CLTLoggingModels",
"path" : "Sources/CLTLoggingModels",
"product_memberships" : [
"CLTLogging",
"CLTLoggingModels",
"CLTLoggingTestHelpers"
],
"sources" : [
"LogEntry.swift",
"LogEntryCoordinate.swift",
"LogEntryTextFormatter.swift",
"LoggableDate.swift",
"LoggableDouble.swift",
"LoggableOptional.swift",
"NSLogLikeLogEntryTextFormatter.swift",
"PidInfo.swift",
"Verbosity.swift"
],
"type" : "library"
},
{
"c99name" : "CLTLogging",
"module_type" : "SwiftTarget",
"name" : "CLTLogging",
"path" : "Sources/CLTLogging",
"product_dependencies" : [
"Logging"
],
"product_memberships" : [
"CLTLogging",
"CLTLoggingTestHelpers"
],
"sources" : [
"AggregatedLoggerHandler.swift",
"ChildProcessLogsContainerProvider.swift",
"ContextualLogger+Levels.swift",
"ContextualLogger+ProcessController.swift",
"ContextualLogger.swift",
"FileHandle+TextOutputStream.swift",
"FileHandleLoggerHandler.swift",
"FileState.swift",
"FileSystem+Logging.swift",
"KibanaHandler.swift",
"LimitingLoggerHandler.swift",
"Logger+TypedInit.swift",
"LoggerHandler.swift",
"LoggingSetup.swift",
"NoOpLoggerHandler.swift",
"RedirectingLoggerHandler.swift",
"SubprocessInfo+PidInfo.swift"
],
"target_dependencies" : [
"AtomicModels",
"CLTLoggingModels",
"DateProvider",
"FileSystem",
"Kibana",
"KibanaModels",
"PathLib",
"ProcessController",
"Tmp"
],
"type" : "library"
},
{
"c99name" : "CLTExtensionsTests",
"module_type" : "SwiftTarget",
"name" : "CLTExtensionsTests",
"path" : "Tests/CLTExtensionsTests",
"sources" : [
"Array+Comparable_Tests.swift",
"Array+UniquifyTests.swift",
"NSLocking+WhileLockedTests.swift",
"String+UTF8Tests.swift"
],
"target_dependencies" : [
"CLTCollections",
"CLTExtensions",
"TestHelpers"
],
"type" : "test"
},
{
"c99name" : "CLTExtensions",
"module_type" : "SwiftTarget",
"name" : "CLTExtensions",
"path" : "Sources/CLTExtensions",
"product_memberships" : [
"CLTExtensions",
"CLTLogging",
"CLTLoggingTestHelpers",
"CLTTypes",
"Cloc",
"CommandSupport",
"Console",
"ConsoleTestHelpers",
"Environment",
"FileSystem",
"FileSystemTestHelpers",
"Kibana",
"KibanaModels",
"KibanaTestHelpers",
"MutualTLS",
"PlistLib",
"ProcessController",
"ProcessControllerTestHelpers",
"RepoRoot",
"TeamcityMessaging",
"TestHelpers",
"Tmp",
"TmpTestHelpers",
"UserDefaultsLib",
"UserDefaultsLibTestHelpers",
"XcodeLocator"
],
"sources" : [
"Casting.swift",
"Collections/Array+Comparable.swift",
"Collections/Array+Uniquify.swift",
"Collections/Bool+Order.swift",
"Collections/Collection+OnlyOrTrow.swift",
"Collections/Collection+Single.swift",
"Collections/Dictionary+Inverse.swift",
"Collections/Dictionary+Map.swift",
"Collections/Sequence+FilterSplit.swift",
"Collections/Sequence+Grouping.swift",
"Collections/Sequence+SortingByKey.swift",
"Collections/Set+PlusOperator.swift",
"Collections/SetAlgebra+Intersects.swift",
"DispatchGroup+wait.swift",
"Models/KeyValuePair.swift",
"NSLocking+WhileLocked.swift",
"Optional+UnwrapOrThrow.swift",
"String+LocalizedError.swift",
"String+UTF8.swift",
"UrlComponents+Throws.swift"
],
"type" : "library"
},
{
"c99name" : "CLTCollections",
"module_type" : "SwiftTarget",
"name" : "CLTCollections",
"path" : "Sources/CLTCollections",
"product_memberships" : [
"CLTCollections"
],
"sources" : [
"Array+Set.swift",
"Collection+Concurrency.swift"
],
"target_dependencies" : [
"Types"
],
"type" : "library"
},
{
"c99name" : "AtomicModels",
"module_type" : "SwiftTarget",
"name" : "AtomicModels",
"path" : "Sources/AtomicModels",
"product_memberships" : [
"AtomicModels",
"CLTLogging",
"CLTLoggingTestHelpers",
"Cloc",
"CommandSupport",
"Console",
"ConsoleTestHelpers",
"JSONStream",
"MetricsRecording",
"MetricsTestHelpers",
"MutualTLS",
"ProcessController",
"ProcessControllerTestHelpers",
"RepoRoot",
"Statsd",
"SynchronousWaiter",
"TestHelpers",
"TmpTestHelpers"
],
"sources" : [
"AtomicValue.swift"
],
"type" : "library"
}
],
"tools_version" : "5.9"
}
Done.