Build Information
Successful build of SshConfig with Swift 6.0 for Linux.
Swift 6 data race errors: 3
Build Command
bash -c docker run --rm -v "checkouts-4609320-0":/host -w "$workDir" registry.gitlab.com/finestructure/spi-images:basic-6.0-latest swift build --triple x86_64-unknown-linux-gnu -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete 2>&1
Build Log
========================================
RunAll
========================================
Builder version: 4.40.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/xxlabaza/SshConfig.git
Reference: main
Initialized empty Git repository in /host/spi-builder-workspace/.git/
hint: Using 'master' as the name for the initial branch. This default branch name
hint: is subject to change. To configure the initial branch name to use in all
hint: of your new repositories, which will suppress this warning, call:
hint:
hint: git config --global init.defaultBranch <name>
hint:
hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
hint: 'development'. The just-created branch can be renamed via this command:
hint:
hint: git branch -m <name>
From https://github.com/xxlabaza/SshConfig
* branch main -> FETCH_HEAD
* [new branch] main -> origin/main
HEAD is now at d16cea0 update readme
Cloned https://github.com/xxlabaza/SshConfig.git
Revision (git rev-parse @):
d16cea0b256d8e76c2116a3ca8d691ddc78c44d2
SUCCESS checkout https://github.com/xxlabaza/SshConfig.git at main
========================================
Build
========================================
Selected platform: linux
Swift version: 6.0
Building package at path: $workDir
https://github.com/xxlabaza/SshConfig.git
Running build ...
bash -c docker run --rm -v "checkouts-4609320-0":/host -w "$workDir" registry.gitlab.com/finestructure/spi-images:basic-6.0-latest swift build --triple x86_64-unknown-linux-gnu -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete 2>&1
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version-24593BA9C3E375BF.txt
[3/23] Emitting module SshConfig
/host/spi-builder-workspace/Sources/SshConfig/Properties.swift:41:23: warning: static property 'defaults' is not concurrency-safe because non-'Sendable' type 'ssh.Properties' may have shared mutable state; this is an error in the Swift 6 language mode
23 | and their types, but you can find it in any SSH manual.
24 | */
25 | struct Properties: Equatable, Codable {
| `- note: consider making struct 'Properties' conform to the 'Sendable' protocol
26 |
27 | /**
:
39 | ```
40 | */
41 | public static let defaults = Properties(
| |- warning: static property 'defaults' is not concurrency-safe because non-'Sendable' type 'ssh.Properties' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'defaults' 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
42 | addKeysToAgent: .no,
43 | addressFamily: .any,
/host/spi-builder-workspace/Sources/SshConfig/parser/Tokenizer.swift:35:22: warning: static property 'SKIP_CHARS' is not concurrency-safe because non-'Sendable' type 'CharacterSet' may have shared mutable state; this is an error in the Swift 6 language mode
33 | struct TokensIterator: IteratorProtocol {
34 |
35 | private static let SKIP_CHARS: CharacterSet = {
| `- warning: static property 'SKIP_CHARS' is not concurrency-safe because non-'Sendable' type 'CharacterSet' may have shared mutable state; this is an error in the Swift 6 language mode
36 | var result = CharacterSet()
37 | result.formUnion(.whitespacesAndNewlines)
Foundation.CharacterSet:1:15: note: struct 'CharacterSet' does not conform to the 'Sendable' protocol
1 | public struct CharacterSet : ReferenceConvertible, Equatable, Hashable, SetAlgebra {
| `- note: struct 'CharacterSet' does not conform to the 'Sendable' protocol
2 | public typealias ReferenceType = NSCharacterSet
3 | public init()
/host/spi-builder-workspace/Sources/SshConfig/parser/Tokenizer.swift:15:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Foundation'
13 | //===----------------------------------------------------------------------===//
14 |
15 | import Foundation
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Foundation'
16 |
17 | struct Tokens: Sequence {
:
33 | struct TokensIterator: IteratorProtocol {
34 |
35 | private static let SKIP_CHARS: CharacterSet = {
| |- note: annotate 'SKIP_CHARS' 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
36 | var result = CharacterSet()
37 | result.formUnion(.whitespacesAndNewlines)
/host/spi-builder-workspace/Sources/SshConfig/parser/Tokenizer.swift:42:22: warning: static property 'KEY_VALUE_DELIMITER_CHARS' is not concurrency-safe because non-'Sendable' type 'CharacterSet' may have shared mutable state; this is an error in the Swift 6 language mode
40 | }()
41 |
42 | private static let KEY_VALUE_DELIMITER_CHARS: CharacterSet = {
| |- warning: static property 'KEY_VALUE_DELIMITER_CHARS' is not concurrency-safe because non-'Sendable' type 'CharacterSet' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'KEY_VALUE_DELIMITER_CHARS' 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
43 | var result = CharacterSet()
44 | result.formUnion(.whitespaces)
Foundation.CharacterSet:1:15: note: struct 'CharacterSet' does not conform to the 'Sendable' protocol
1 | public struct CharacterSet : ReferenceConvertible, Equatable, Hashable, SetAlgebra {
| `- note: struct 'CharacterSet' does not conform to the 'Sendable' protocol
2 | public typealias ReferenceType = NSCharacterSet
3 | public init()
[4/25] Compiling SshConfig StringProtocol+toTokens.swift
[5/25] Compiling SshConfig StringProtocol+unquoted.swift
[6/25] Compiling SshConfig Config.swift
/host/spi-builder-workspace/Sources/SshConfig/Properties.swift:41:23: warning: static property 'defaults' is not concurrency-safe because non-'Sendable' type 'ssh.Properties' may have shared mutable state; this is an error in the Swift 6 language mode
23 | and their types, but you can find it in any SSH manual.
24 | */
25 | struct Properties: Equatable, Codable {
| `- note: consider making struct 'Properties' conform to the 'Sendable' protocol
26 |
27 | /**
:
39 | ```
40 | */
41 | public static let defaults = Properties(
| |- warning: static property 'defaults' is not concurrency-safe because non-'Sendable' type 'ssh.Properties' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'defaults' 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
42 | addKeysToAgent: .no,
43 | addressFamily: .any,
[7/25] Compiling SshConfig Errors.swift
/host/spi-builder-workspace/Sources/SshConfig/Properties.swift:41:23: warning: static property 'defaults' is not concurrency-safe because non-'Sendable' type 'ssh.Properties' may have shared mutable state; this is an error in the Swift 6 language mode
23 | and their types, but you can find it in any SSH manual.
24 | */
25 | struct Properties: Equatable, Codable {
| `- note: consider making struct 'Properties' conform to the 'Sendable' protocol
26 |
27 | /**
:
39 | ```
40 | */
41 | public static let defaults = Properties(
| |- warning: static property 'defaults' is not concurrency-safe because non-'Sendable' type 'ssh.Properties' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'defaults' 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
42 | addKeysToAgent: .no,
43 | addressFamily: .any,
[8/25] Compiling SshConfig Host.swift
/host/spi-builder-workspace/Sources/SshConfig/Properties.swift:41:23: warning: static property 'defaults' is not concurrency-safe because non-'Sendable' type 'ssh.Properties' may have shared mutable state; this is an error in the Swift 6 language mode
23 | and their types, but you can find it in any SSH manual.
24 | */
25 | struct Properties: Equatable, Codable {
| `- note: consider making struct 'Properties' conform to the 'Sendable' protocol
26 |
27 | /**
:
39 | ```
40 | */
41 | public static let defaults = Properties(
| |- warning: static property 'defaults' is not concurrency-safe because non-'Sendable' type 'ssh.Properties' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'defaults' 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
42 | addKeysToAgent: .no,
43 | addressFamily: .any,
[9/25] Compiling SshConfig ssh.swift
[10/25] Compiling SshConfig CharacterSet+contains.swift
[11/25] Compiling SshConfig Equatable+Error.swift
[12/25] Compiling SshConfig Properties.swift
/host/spi-builder-workspace/Sources/SshConfig/Properties.swift:41:23: warning: static property 'defaults' is not concurrency-safe because non-'Sendable' type 'ssh.Properties' may have shared mutable state; this is an error in the Swift 6 language mode
23 | and their types, but you can find it in any SSH manual.
24 | */
25 | struct Properties: Equatable, Codable {
| `- note: consider making struct 'Properties' conform to the 'Sendable' protocol
26 |
27 | /**
:
39 | ```
40 | */
41 | public static let defaults = Properties(
| |- warning: static property 'defaults' is not concurrency-safe because non-'Sendable' type 'ssh.Properties' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'defaults' 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
42 | addKeysToAgent: .no,
43 | addressFamily: .any,
[13/25] Compiling SshConfig ConfigDecoder.swift
/host/spi-builder-workspace/Sources/SshConfig/Properties.swift:41:23: warning: static property 'defaults' is not concurrency-safe because non-'Sendable' type 'ssh.Properties' may have shared mutable state; this is an error in the Swift 6 language mode
23 | and their types, but you can find it in any SSH manual.
24 | */
25 | struct Properties: Equatable, Codable {
| `- note: consider making struct 'Properties' conform to the 'Sendable' protocol
26 |
27 | /**
:
39 | ```
40 | */
41 | public static let defaults = Properties(
| |- warning: static property 'defaults' is not concurrency-safe because non-'Sendable' type 'ssh.Properties' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'defaults' 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
42 | addKeysToAgent: .no,
43 | addressFamily: .any,
[14/25] Compiling SshConfig ConfigDecodingContainer.swift
/host/spi-builder-workspace/Sources/SshConfig/Properties.swift:41:23: warning: static property 'defaults' is not concurrency-safe because non-'Sendable' type 'ssh.Properties' may have shared mutable state; this is an error in the Swift 6 language mode
23 | and their types, but you can find it in any SSH manual.
24 | */
25 | struct Properties: Equatable, Codable {
| `- note: consider making struct 'Properties' conform to the 'Sendable' protocol
26 |
27 | /**
:
39 | ```
40 | */
41 | public static let defaults = Properties(
| |- warning: static property 'defaults' is not concurrency-safe because non-'Sendable' type 'ssh.Properties' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'defaults' 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
42 | addKeysToAgent: .no,
43 | addressFamily: .any,
[15/25] Compiling SshConfig StringProtocol+firstCapitalized.swift
[16/25] Compiling SshConfig StringProtocol+isBlank.swift
[17/25] Compiling SshConfig ConfigEncoder.swift
/host/spi-builder-workspace/Sources/SshConfig/parser/Tokenizer.swift:35:22: warning: static property 'SKIP_CHARS' is not concurrency-safe because non-'Sendable' type 'CharacterSet' may have shared mutable state; this is an error in the Swift 6 language mode
33 | struct TokensIterator: IteratorProtocol {
34 |
35 | private static let SKIP_CHARS: CharacterSet = {
| `- warning: static property 'SKIP_CHARS' is not concurrency-safe because non-'Sendable' type 'CharacterSet' may have shared mutable state; this is an error in the Swift 6 language mode
36 | var result = CharacterSet()
37 | result.formUnion(.whitespacesAndNewlines)
Foundation.CharacterSet:1:15: note: struct 'CharacterSet' does not conform to the 'Sendable' protocol
1 | public struct CharacterSet : ReferenceConvertible, Equatable, Hashable, SetAlgebra {
| `- note: struct 'CharacterSet' does not conform to the 'Sendable' protocol
2 | public typealias ReferenceType = NSCharacterSet
3 | public init()
/host/spi-builder-workspace/Sources/SshConfig/parser/Tokenizer.swift:15:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Foundation'
13 | //===----------------------------------------------------------------------===//
14 |
15 | import Foundation
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Foundation'
16 |
17 | struct Tokens: Sequence {
:
33 | struct TokensIterator: IteratorProtocol {
34 |
35 | private static let SKIP_CHARS: CharacterSet = {
| |- note: annotate 'SKIP_CHARS' 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
36 | var result = CharacterSet()
37 | result.formUnion(.whitespacesAndNewlines)
/host/spi-builder-workspace/Sources/SshConfig/parser/Tokenizer.swift:42:22: warning: static property 'KEY_VALUE_DELIMITER_CHARS' is not concurrency-safe because non-'Sendable' type 'CharacterSet' may have shared mutable state; this is an error in the Swift 6 language mode
40 | }()
41 |
42 | private static let KEY_VALUE_DELIMITER_CHARS: CharacterSet = {
| |- warning: static property 'KEY_VALUE_DELIMITER_CHARS' is not concurrency-safe because non-'Sendable' type 'CharacterSet' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'KEY_VALUE_DELIMITER_CHARS' 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
43 | var result = CharacterSet()
44 | result.formUnion(.whitespaces)
Foundation.CharacterSet:1:15: note: struct 'CharacterSet' does not conform to the 'Sendable' protocol
1 | public struct CharacterSet : ReferenceConvertible, Equatable, Hashable, SetAlgebra {
| `- note: struct 'CharacterSet' does not conform to the 'Sendable' protocol
2 | public typealias ReferenceType = NSCharacterSet
3 | public init()
[18/25] Compiling SshConfig ConfigParser.swift
/host/spi-builder-workspace/Sources/SshConfig/parser/Tokenizer.swift:35:22: warning: static property 'SKIP_CHARS' is not concurrency-safe because non-'Sendable' type 'CharacterSet' may have shared mutable state; this is an error in the Swift 6 language mode
33 | struct TokensIterator: IteratorProtocol {
34 |
35 | private static let SKIP_CHARS: CharacterSet = {
| `- warning: static property 'SKIP_CHARS' is not concurrency-safe because non-'Sendable' type 'CharacterSet' may have shared mutable state; this is an error in the Swift 6 language mode
36 | var result = CharacterSet()
37 | result.formUnion(.whitespacesAndNewlines)
Foundation.CharacterSet:1:15: note: struct 'CharacterSet' does not conform to the 'Sendable' protocol
1 | public struct CharacterSet : ReferenceConvertible, Equatable, Hashable, SetAlgebra {
| `- note: struct 'CharacterSet' does not conform to the 'Sendable' protocol
2 | public typealias ReferenceType = NSCharacterSet
3 | public init()
/host/spi-builder-workspace/Sources/SshConfig/parser/Tokenizer.swift:15:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Foundation'
13 | //===----------------------------------------------------------------------===//
14 |
15 | import Foundation
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Foundation'
16 |
17 | struct Tokens: Sequence {
:
33 | struct TokensIterator: IteratorProtocol {
34 |
35 | private static let SKIP_CHARS: CharacterSet = {
| |- note: annotate 'SKIP_CHARS' 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
36 | var result = CharacterSet()
37 | result.formUnion(.whitespacesAndNewlines)
/host/spi-builder-workspace/Sources/SshConfig/parser/Tokenizer.swift:42:22: warning: static property 'KEY_VALUE_DELIMITER_CHARS' is not concurrency-safe because non-'Sendable' type 'CharacterSet' may have shared mutable state; this is an error in the Swift 6 language mode
40 | }()
41 |
42 | private static let KEY_VALUE_DELIMITER_CHARS: CharacterSet = {
| |- warning: static property 'KEY_VALUE_DELIMITER_CHARS' is not concurrency-safe because non-'Sendable' type 'CharacterSet' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'KEY_VALUE_DELIMITER_CHARS' 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
43 | var result = CharacterSet()
44 | result.formUnion(.whitespaces)
Foundation.CharacterSet:1:15: note: struct 'CharacterSet' does not conform to the 'Sendable' protocol
1 | public struct CharacterSet : ReferenceConvertible, Equatable, Hashable, SetAlgebra {
| `- note: struct 'CharacterSet' does not conform to the 'Sendable' protocol
2 | public typealias ReferenceType = NSCharacterSet
3 | public init()
[19/25] Compiling SshConfig Tokenizer.swift
/host/spi-builder-workspace/Sources/SshConfig/parser/Tokenizer.swift:35:22: warning: static property 'SKIP_CHARS' is not concurrency-safe because non-'Sendable' type 'CharacterSet' may have shared mutable state; this is an error in the Swift 6 language mode
33 | struct TokensIterator: IteratorProtocol {
34 |
35 | private static let SKIP_CHARS: CharacterSet = {
| `- warning: static property 'SKIP_CHARS' is not concurrency-safe because non-'Sendable' type 'CharacterSet' may have shared mutable state; this is an error in the Swift 6 language mode
36 | var result = CharacterSet()
37 | result.formUnion(.whitespacesAndNewlines)
Foundation.CharacterSet:1:15: note: struct 'CharacterSet' does not conform to the 'Sendable' protocol
1 | public struct CharacterSet : ReferenceConvertible, Equatable, Hashable, SetAlgebra {
| `- note: struct 'CharacterSet' does not conform to the 'Sendable' protocol
2 | public typealias ReferenceType = NSCharacterSet
3 | public init()
/host/spi-builder-workspace/Sources/SshConfig/parser/Tokenizer.swift:15:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Foundation'
13 | //===----------------------------------------------------------------------===//
14 |
15 | import Foundation
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Foundation'
16 |
17 | struct Tokens: Sequence {
:
33 | struct TokensIterator: IteratorProtocol {
34 |
35 | private static let SKIP_CHARS: CharacterSet = {
| |- note: annotate 'SKIP_CHARS' 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
36 | var result = CharacterSet()
37 | result.formUnion(.whitespacesAndNewlines)
/host/spi-builder-workspace/Sources/SshConfig/parser/Tokenizer.swift:42:22: warning: static property 'KEY_VALUE_DELIMITER_CHARS' is not concurrency-safe because non-'Sendable' type 'CharacterSet' may have shared mutable state; this is an error in the Swift 6 language mode
40 | }()
41 |
42 | private static let KEY_VALUE_DELIMITER_CHARS: CharacterSet = {
| |- warning: static property 'KEY_VALUE_DELIMITER_CHARS' is not concurrency-safe because non-'Sendable' type 'CharacterSet' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'KEY_VALUE_DELIMITER_CHARS' 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
43 | var result = CharacterSet()
44 | result.formUnion(.whitespaces)
Foundation.CharacterSet:1:15: note: struct 'CharacterSet' does not conform to the 'Sendable' protocol
1 | public struct CharacterSet : ReferenceConvertible, Equatable, Hashable, SetAlgebra {
| `- note: struct 'CharacterSet' does not conform to the 'Sendable' protocol
2 | public typealias ReferenceType = NSCharacterSet
3 | public init()
[20/25] Compiling SshConfig NoneAsNil.swift
[21/25] Compiling SshConfig Pattern.swift
[22/25] Compiling SshConfig StringProtocol+Hex.swift
[23/25] Compiling SshConfig ConfigSingleValueDecodingContainer.swift
[24/25] Compiling SshConfig ConfigUnkeyedDecodingContainer.swift
[25/25] Compiling SshConfig DecodingContext.swift
Build complete! (13.40s)
Build complete.
{
"dependencies" : [
],
"manifest_display_name" : "SshConfig",
"name" : "SshConfig",
"path" : "/host/spi-builder-workspace",
"platforms" : [
{
"name" : "ios",
"version" : "13.0"
},
{
"name" : "watchos",
"version" : "6.0"
},
{
"name" : "tvos",
"version" : "13.0"
},
{
"name" : "macos",
"version" : "10.15"
}
],
"products" : [
{
"name" : "SshConfig",
"targets" : [
"SshConfig"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "SshConfigTests",
"module_type" : "SwiftTarget",
"name" : "SshConfigTests",
"path" : "Tests/SshConfigTests",
"sources" : [
"ConfigDecoderTests.swift",
"ConfigEncoderTests.swift",
"ConfigParserTests.swift",
"ConfigResolveTests.swift",
"ConfigTests.swift",
"HostTests.swift",
"PatternTests.swift",
"TokenizerTests.swift",
"UsageExample.swift",
"XCTestManifests.swift"
],
"target_dependencies" : [
"SshConfig"
],
"type" : "test"
},
{
"c99name" : "SshConfig",
"module_type" : "SwiftTarget",
"name" : "SshConfig",
"path" : "Sources/SshConfig",
"product_memberships" : [
"SshConfig"
],
"sources" : [
"Config.swift",
"Errors.swift",
"Host.swift",
"Properties.swift",
"decoder/ConfigDecoder.swift",
"decoder/ConfigDecodingContainer.swift",
"decoder/ConfigSingleValueDecodingContainer.swift",
"decoder/ConfigUnkeyedDecodingContainer.swift",
"decoder/DecodingContext.swift",
"encoder/ConfigEncoder.swift",
"parser/ConfigParser.swift",
"parser/Tokenizer.swift",
"ssh.swift",
"utils/CharacterSet+contains.swift",
"utils/Equatable+Error.swift",
"utils/NoneAsNil.swift",
"utils/Pattern.swift",
"utils/StringProtocol+Hex.swift",
"utils/StringProtocol+firstCapitalized.swift",
"utils/StringProtocol+isBlank.swift",
"utils/StringProtocol+toTokens.swift",
"utils/StringProtocol+unquoted.swift"
],
"type" : "library"
}
],
"tools_version" : "5.1"
}
Done.