Build Information
Successful build of Eval, reference 1.5.0 (2070df
), with Swift 6.1 for Linux on 25 Apr 2025 07:58:13 UTC.
Swift 6 data race errors: 8
Build Command
bash -c docker run --pull=always --rm -v "checkouts-4606859-2":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.1-latest swift build --triple x86_64-unknown-linux-gnu -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 2>&1
Build Log
========================================
RunAll
========================================
Builder version: 4.61.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/tevelee/Eval.git
Reference: 1.5.0
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/tevelee/Eval
* tag 1.5.0 -> FETCH_HEAD
HEAD is now at 2070dfb Version 1.5.0
Cloned https://github.com/tevelee/Eval.git
Revision (git rev-parse @):
2070dfb6f739a9665c81601162ac16ee8291fb30
SUCCESS checkout https://github.com/tevelee/Eval.git at 1.5.0
========================================
Build
========================================
Selected platform: linux
Swift version: 6.1
Building package at path: $PWD
https://github.com/tevelee/Eval.git
https://github.com/tevelee/Eval.git
WARNING: environment variable SUPPRESS_SWIFT_6_FLAGS is not set
{
"dependencies" : [
],
"manifest_display_name" : "Eval",
"name" : "Eval",
"path" : "/host/spi-builder-workspace",
"platforms" : [
],
"products" : [
{
"name" : "Eval",
"targets" : [
"Eval"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "EvalTests",
"module_type" : "SwiftTarget",
"name" : "EvalTests",
"path" : "Tests/EvalTests",
"sources" : [
"IntegrationTests/InterpreterTests.swift",
"IntegrationTests/TemplateTests.swift",
"UnitTests/DataTypeTests.swift",
"UnitTests/FunctionTests.swift",
"UnitTests/InterpreterContextTests.swift",
"UnitTests/KeywordTests.swift",
"UnitTests/LiteralTests.swift",
"UnitTests/MatchResultTests.swift",
"UnitTests/MatchStatementTests.swift",
"UnitTests/MatcherTests.swift",
"UnitTests/PatternTests.swift",
"UnitTests/TemplateInterpreterTests.swift",
"UnitTests/TypedInterpreterTests.swift",
"UnitTests/UtilTests.swift",
"UnitTests/VariableProcessor.swift",
"UnitTests/VariableTests.swift",
"Utils.swift"
],
"target_dependencies" : [
"Eval"
],
"type" : "test"
},
{
"c99name" : "Eval",
"module_type" : "SwiftTarget",
"name" : "Eval",
"path" : "Sources/Eval",
"product_memberships" : [
"Eval"
],
"sources" : [
"Common.swift",
"Elements.swift",
"TemplateInterpreter.swift",
"TypedInterpreter.swift",
"Utilities/MatchResult.swift",
"Utilities/Matcher.swift",
"Utilities/Pattern.swift",
"Utilities/Utils.swift"
],
"type" : "library"
}
],
"tools_version" : "5.0"
}
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4606859-2":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.1-latest swift build --triple x86_64-unknown-linux-gnu -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 2>&1
basic-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:3bdcac04179f4ed3e5b8e9dbd6e74bbf5ebc0f4fde48bbaad7d1e5c757e65bcb
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.1-latest
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version-24593BA9C3E375BF.txt
[3/10] Emitting module Eval
/host/spi-builder-workspace/Sources/Eval/Elements.swift:116:23: warning: static property 'notInterpreted' is not concurrency-safe because non-'Sendable' type 'VariableOptions' may have shared mutable state; this is an error in the Swift 6 language mode
105 |
106 | /// Options that modify the behaviour of the variable matching, and the output that the framework provides
107 | public struct VariableOptions: OptionSet {
| `- note: consider making struct 'VariableOptions' conform to the 'Sendable' protocol
108 | /// Integer representation of the option
109 | public let rawValue: Int
:
114 |
115 | /// If set, the value of the recognised placeholder will not be processed. Otherwise, it will be evaluated, using the `interpreterForEvaluatingVariables` property of the interpreter instance
116 | public static let notInterpreted: VariableOptions = VariableOptions(rawValue: 1 << 0)
| |- warning: static property 'notInterpreted' is not concurrency-safe because non-'Sendable' type 'VariableOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'notInterpreted' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
117 | /// Whether the processed variable should be or not to be trimmed (removing whitespaces from both sides)
118 | public static let notTrimmed: VariableOptions = VariableOptions(rawValue: 1 << 1)
/host/spi-builder-workspace/Sources/Eval/Elements.swift:118:23: warning: static property 'notTrimmed' is not concurrency-safe because non-'Sendable' type 'VariableOptions' may have shared mutable state; this is an error in the Swift 6 language mode
105 |
106 | /// Options that modify the behaviour of the variable matching, and the output that the framework provides
107 | public struct VariableOptions: OptionSet {
| `- note: consider making struct 'VariableOptions' conform to the 'Sendable' protocol
108 | /// Integer representation of the option
109 | public let rawValue: Int
:
116 | public static let notInterpreted: VariableOptions = VariableOptions(rawValue: 1 << 0)
117 | /// Whether the processed variable should be or not to be trimmed (removing whitespaces from both sides)
118 | public static let notTrimmed: VariableOptions = VariableOptions(rawValue: 1 << 1)
| |- warning: static property 'notTrimmed' is not concurrency-safe because non-'Sendable' type 'VariableOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'notTrimmed' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
119 | /// Provides information whether the match should be exhaustive or just use the shortest possible matching string (even zero characters in some edge cases). This depends on the surrounding `Keyword` instances in the containing collection.
120 | public static let exhaustiveMatch: VariableOptions = VariableOptions(rawValue: 1 << 2)
/host/spi-builder-workspace/Sources/Eval/Elements.swift:120:23: warning: static property 'exhaustiveMatch' is not concurrency-safe because non-'Sendable' type 'VariableOptions' may have shared mutable state; this is an error in the Swift 6 language mode
105 |
106 | /// Options that modify the behaviour of the variable matching, and the output that the framework provides
107 | public struct VariableOptions: OptionSet {
| `- note: consider making struct 'VariableOptions' conform to the 'Sendable' protocol
108 | /// Integer representation of the option
109 | public let rawValue: Int
:
118 | public static let notTrimmed: VariableOptions = VariableOptions(rawValue: 1 << 1)
119 | /// Provides information whether the match should be exhaustive or just use the shortest possible matching string (even zero characters in some edge cases). This depends on the surrounding `Keyword` instances in the containing collection.
120 | public static let exhaustiveMatch: VariableOptions = VariableOptions(rawValue: 1 << 2)
| |- warning: static property 'exhaustiveMatch' is not concurrency-safe because non-'Sendable' type 'VariableOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'exhaustiveMatch' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
121 | /// If interpreted and the result of the evaluation is `nil`, then `acceptsNilValue` determines if the current match result should be instant noMatch, or `nil` is an accepted value, so the matching should be continued
122 | public static let acceptsNilValue: VariableOptions = VariableOptions(rawValue: 1 << 3)
/host/spi-builder-workspace/Sources/Eval/Elements.swift:122:23: warning: static property 'acceptsNilValue' is not concurrency-safe because non-'Sendable' type 'VariableOptions' may have shared mutable state; this is an error in the Swift 6 language mode
105 |
106 | /// Options that modify the behaviour of the variable matching, and the output that the framework provides
107 | public struct VariableOptions: OptionSet {
| `- note: consider making struct 'VariableOptions' conform to the 'Sendable' protocol
108 | /// Integer representation of the option
109 | public let rawValue: Int
:
120 | public static let exhaustiveMatch: VariableOptions = VariableOptions(rawValue: 1 << 2)
121 | /// If interpreted and the result of the evaluation is `nil`, then `acceptsNilValue` determines if the current match result should be instant noMatch, or `nil` is an accepted value, so the matching should be continued
122 | public static let acceptsNilValue: VariableOptions = VariableOptions(rawValue: 1 << 3)
| |- warning: static property 'acceptsNilValue' is not concurrency-safe because non-'Sendable' type 'VariableOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'acceptsNilValue' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
123 |
124 | /// In order to avoid double negatives in the source code (e.g. !notInterpreted), this helper checks the lack of .notInterpreted value in the optionset
/host/spi-builder-workspace/Sources/Eval/Elements.swift:157:37: warning: generic parameter 'T' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
151 | /// Generic superclass of `Variable`s which are aware of their `Interpreter` classes,
152 | /// as they use it when mapping their values
153 | public class GenericVariable<T, I: Interpreter>: VariableProtocol, PatternElement, Equatable {
| `- note: 'T' previously declared here
154 | /// Maps and validates the variable value to another
155 | /// - parameter body: Struct containing the raw matched value and an interpreter object
156 | /// - returns: The transformed value or nil, if the value was validated with a negative result
157 | public typealias VariableMapper<T, I: Interpreter> = (_ body: VariableBody<I>) -> T?
| `- warning: generic parameter 'T' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
158 |
159 | /// Unique identifier of the variable that is used when matching and returning them in the matcher.
/host/spi-builder-workspace/Sources/Eval/Elements.swift:157:40: warning: generic parameter 'I' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
151 | /// Generic superclass of `Variable`s which are aware of their `Interpreter` classes,
152 | /// as they use it when mapping their values
153 | public class GenericVariable<T, I: Interpreter>: VariableProtocol, PatternElement, Equatable {
| `- note: 'I' previously declared here
154 | /// Maps and validates the variable value to another
155 | /// - parameter body: Struct containing the raw matched value and an interpreter object
156 | /// - returns: The transformed value or nil, if the value was validated with a negative result
157 | public typealias VariableMapper<T, I: Interpreter> = (_ body: VariableBody<I>) -> T?
| `- warning: generic parameter 'I' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
158 |
159 | /// Unique identifier of the variable that is used when matching and returning them in the matcher.
/host/spi-builder-workspace/Sources/Eval/TemplateInterpreter.swift:78:30: warning: generic parameter 'T' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
24 | /// This interpreter is used to evaluate string expressions and return a transformed string, replacing the content where it matches certain patterns.
25 | /// Typically used in web applications, where the rendering of an HTML page is provided as a template, and the application replaces certain statements, based on input parameters.
26 | open class TemplateInterpreter<T>: Interpreter {
| `- note: 'T' previously declared here
27 | /// The statements (patterns) registered to the interpreter. If found, these are going to be processed and replaced with the evaluated value
28 | public let statements: [Pattern<T, TemplateInterpreter<T>>]
:
76 | /// - parameter next: The value of the current element in the iteration
77 | /// - returns: The a combined value based on the previous and the new value
78 | public typealias Reducer<T, K> = (_ existing: T, _ next: K) -> T
| `- warning: generic parameter 'T' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
79 |
80 | /// In order to support generic types, not just plain String objects, a reducer helps to convert the output to the dedicated output type
/host/spi-builder-workspace/Sources/Eval/Utilities/Pattern.swift:52:23: warning: static property 'backwardMatch' is not concurrency-safe because non-'Sendable' type 'PatternOptions' may have shared mutable state; this is an error in the Swift 6 language mode
41 |
42 | /// Options that modify the pattern matching algorithm
43 | public struct PatternOptions: OptionSet {
| `- note: consider making struct 'PatternOptions' conform to the 'Sendable' protocol
44 | /// Integer representation of the option
45 | public let rawValue: Int
:
50 |
51 | /// Searches of the elements of the pattern backward from the end of the output. Othwerise, if not present, it matches from the beginning.
52 | public static let backwardMatch: PatternOptions = PatternOptions(rawValue: 1 << 0)
| |- warning: static property 'backwardMatch' is not concurrency-safe because non-'Sendable' type 'PatternOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'backwardMatch' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
53 | }
54 |
[4/11] Compiling Eval Common.swift
[5/11] Compiling Eval TemplateInterpreter.swift
/host/spi-builder-workspace/Sources/Eval/TemplateInterpreter.swift:78:30: warning: generic parameter 'T' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
24 | /// This interpreter is used to evaluate string expressions and return a transformed string, replacing the content where it matches certain patterns.
25 | /// Typically used in web applications, where the rendering of an HTML page is provided as a template, and the application replaces certain statements, based on input parameters.
26 | open class TemplateInterpreter<T>: Interpreter {
| `- note: 'T' previously declared here
27 | /// The statements (patterns) registered to the interpreter. If found, these are going to be processed and replaced with the evaluated value
28 | public let statements: [Pattern<T, TemplateInterpreter<T>>]
:
76 | /// - parameter next: The value of the current element in the iteration
77 | /// - returns: The a combined value based on the previous and the new value
78 | public typealias Reducer<T, K> = (_ existing: T, _ next: K) -> T
| `- warning: generic parameter 'T' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
79 |
80 | /// In order to support generic types, not just plain String objects, a reducer helps to convert the output to the dedicated output type
[6/11] Compiling Eval Elements.swift
/host/spi-builder-workspace/Sources/Eval/Elements.swift:116:23: warning: static property 'notInterpreted' is not concurrency-safe because non-'Sendable' type 'VariableOptions' may have shared mutable state; this is an error in the Swift 6 language mode
105 |
106 | /// Options that modify the behaviour of the variable matching, and the output that the framework provides
107 | public struct VariableOptions: OptionSet {
| `- note: consider making struct 'VariableOptions' conform to the 'Sendable' protocol
108 | /// Integer representation of the option
109 | public let rawValue: Int
:
114 |
115 | /// If set, the value of the recognised placeholder will not be processed. Otherwise, it will be evaluated, using the `interpreterForEvaluatingVariables` property of the interpreter instance
116 | public static let notInterpreted: VariableOptions = VariableOptions(rawValue: 1 << 0)
| |- warning: static property 'notInterpreted' is not concurrency-safe because non-'Sendable' type 'VariableOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'notInterpreted' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
117 | /// Whether the processed variable should be or not to be trimmed (removing whitespaces from both sides)
118 | public static let notTrimmed: VariableOptions = VariableOptions(rawValue: 1 << 1)
/host/spi-builder-workspace/Sources/Eval/Elements.swift:118:23: warning: static property 'notTrimmed' is not concurrency-safe because non-'Sendable' type 'VariableOptions' may have shared mutable state; this is an error in the Swift 6 language mode
105 |
106 | /// Options that modify the behaviour of the variable matching, and the output that the framework provides
107 | public struct VariableOptions: OptionSet {
| `- note: consider making struct 'VariableOptions' conform to the 'Sendable' protocol
108 | /// Integer representation of the option
109 | public let rawValue: Int
:
116 | public static let notInterpreted: VariableOptions = VariableOptions(rawValue: 1 << 0)
117 | /// Whether the processed variable should be or not to be trimmed (removing whitespaces from both sides)
118 | public static let notTrimmed: VariableOptions = VariableOptions(rawValue: 1 << 1)
| |- warning: static property 'notTrimmed' is not concurrency-safe because non-'Sendable' type 'VariableOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'notTrimmed' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
119 | /// Provides information whether the match should be exhaustive or just use the shortest possible matching string (even zero characters in some edge cases). This depends on the surrounding `Keyword` instances in the containing collection.
120 | public static let exhaustiveMatch: VariableOptions = VariableOptions(rawValue: 1 << 2)
/host/spi-builder-workspace/Sources/Eval/Elements.swift:120:23: warning: static property 'exhaustiveMatch' is not concurrency-safe because non-'Sendable' type 'VariableOptions' may have shared mutable state; this is an error in the Swift 6 language mode
105 |
106 | /// Options that modify the behaviour of the variable matching, and the output that the framework provides
107 | public struct VariableOptions: OptionSet {
| `- note: consider making struct 'VariableOptions' conform to the 'Sendable' protocol
108 | /// Integer representation of the option
109 | public let rawValue: Int
:
118 | public static let notTrimmed: VariableOptions = VariableOptions(rawValue: 1 << 1)
119 | /// Provides information whether the match should be exhaustive or just use the shortest possible matching string (even zero characters in some edge cases). This depends on the surrounding `Keyword` instances in the containing collection.
120 | public static let exhaustiveMatch: VariableOptions = VariableOptions(rawValue: 1 << 2)
| |- warning: static property 'exhaustiveMatch' is not concurrency-safe because non-'Sendable' type 'VariableOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'exhaustiveMatch' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
121 | /// If interpreted and the result of the evaluation is `nil`, then `acceptsNilValue` determines if the current match result should be instant noMatch, or `nil` is an accepted value, so the matching should be continued
122 | public static let acceptsNilValue: VariableOptions = VariableOptions(rawValue: 1 << 3)
/host/spi-builder-workspace/Sources/Eval/Elements.swift:122:23: warning: static property 'acceptsNilValue' is not concurrency-safe because non-'Sendable' type 'VariableOptions' may have shared mutable state; this is an error in the Swift 6 language mode
105 |
106 | /// Options that modify the behaviour of the variable matching, and the output that the framework provides
107 | public struct VariableOptions: OptionSet {
| `- note: consider making struct 'VariableOptions' conform to the 'Sendable' protocol
108 | /// Integer representation of the option
109 | public let rawValue: Int
:
120 | public static let exhaustiveMatch: VariableOptions = VariableOptions(rawValue: 1 << 2)
121 | /// If interpreted and the result of the evaluation is `nil`, then `acceptsNilValue` determines if the current match result should be instant noMatch, or `nil` is an accepted value, so the matching should be continued
122 | public static let acceptsNilValue: VariableOptions = VariableOptions(rawValue: 1 << 3)
| |- warning: static property 'acceptsNilValue' is not concurrency-safe because non-'Sendable' type 'VariableOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'acceptsNilValue' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
123 |
124 | /// In order to avoid double negatives in the source code (e.g. !notInterpreted), this helper checks the lack of .notInterpreted value in the optionset
/host/spi-builder-workspace/Sources/Eval/Elements.swift:157:37: warning: generic parameter 'T' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
151 | /// Generic superclass of `Variable`s which are aware of their `Interpreter` classes,
152 | /// as they use it when mapping their values
153 | public class GenericVariable<T, I: Interpreter>: VariableProtocol, PatternElement, Equatable {
| `- note: 'T' previously declared here
154 | /// Maps and validates the variable value to another
155 | /// - parameter body: Struct containing the raw matched value and an interpreter object
156 | /// - returns: The transformed value or nil, if the value was validated with a negative result
157 | public typealias VariableMapper<T, I: Interpreter> = (_ body: VariableBody<I>) -> T?
| `- warning: generic parameter 'T' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
158 |
159 | /// Unique identifier of the variable that is used when matching and returning them in the matcher.
/host/spi-builder-workspace/Sources/Eval/Elements.swift:157:40: warning: generic parameter 'I' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
151 | /// Generic superclass of `Variable`s which are aware of their `Interpreter` classes,
152 | /// as they use it when mapping their values
153 | public class GenericVariable<T, I: Interpreter>: VariableProtocol, PatternElement, Equatable {
| `- note: 'I' previously declared here
154 | /// Maps and validates the variable value to another
155 | /// - parameter body: Struct containing the raw matched value and an interpreter object
156 | /// - returns: The transformed value or nil, if the value was validated with a negative result
157 | public typealias VariableMapper<T, I: Interpreter> = (_ body: VariableBody<I>) -> T?
| `- warning: generic parameter 'I' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
158 |
159 | /// Unique identifier of the variable that is used when matching and returning them in the matcher.
[7/11] Compiling Eval TypedInterpreter.swift
[8/11] Compiling Eval Matcher.swift
[9/11] Compiling Eval MatchResult.swift
[10/11] Compiling Eval Pattern.swift
/host/spi-builder-workspace/Sources/Eval/Utilities/Pattern.swift:52:23: warning: static property 'backwardMatch' is not concurrency-safe because non-'Sendable' type 'PatternOptions' may have shared mutable state; this is an error in the Swift 6 language mode
41 |
42 | /// Options that modify the pattern matching algorithm
43 | public struct PatternOptions: OptionSet {
| `- note: consider making struct 'PatternOptions' conform to the 'Sendable' protocol
44 | /// Integer representation of the option
45 | public let rawValue: Int
:
50 |
51 | /// Searches of the elements of the pattern backward from the end of the output. Othwerise, if not present, it matches from the beginning.
52 | public static let backwardMatch: PatternOptions = PatternOptions(rawValue: 1 << 0)
| |- warning: static property 'backwardMatch' is not concurrency-safe because non-'Sendable' type 'PatternOptions' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'backwardMatch' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
53 | }
54 |
[11/11] Compiling Eval Utils.swift
Build complete! (11.03s)
Build complete.
{
"dependencies" : [
],
"manifest_display_name" : "Eval",
"name" : "Eval",
"path" : "/host/spi-builder-workspace",
"platforms" : [
],
"products" : [
{
"name" : "Eval",
"targets" : [
"Eval"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "EvalTests",
"module_type" : "SwiftTarget",
"name" : "EvalTests",
"path" : "Tests/EvalTests",
"sources" : [
"IntegrationTests/InterpreterTests.swift",
"IntegrationTests/TemplateTests.swift",
"UnitTests/DataTypeTests.swift",
"UnitTests/FunctionTests.swift",
"UnitTests/InterpreterContextTests.swift",
"UnitTests/KeywordTests.swift",
"UnitTests/LiteralTests.swift",
"UnitTests/MatchResultTests.swift",
"UnitTests/MatchStatementTests.swift",
"UnitTests/MatcherTests.swift",
"UnitTests/PatternTests.swift",
"UnitTests/TemplateInterpreterTests.swift",
"UnitTests/TypedInterpreterTests.swift",
"UnitTests/UtilTests.swift",
"UnitTests/VariableProcessor.swift",
"UnitTests/VariableTests.swift",
"Utils.swift"
],
"target_dependencies" : [
"Eval"
],
"type" : "test"
},
{
"c99name" : "Eval",
"module_type" : "SwiftTarget",
"name" : "Eval",
"path" : "Sources/Eval",
"product_memberships" : [
"Eval"
],
"sources" : [
"Common.swift",
"Elements.swift",
"TemplateInterpreter.swift",
"TypedInterpreter.swift",
"Utilities/MatchResult.swift",
"Utilities/Matcher.swift",
"Utilities/Pattern.swift",
"Utilities/Utils.swift"
],
"type" : "library"
}
],
"tools_version" : "5.0"
}
basic-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:3bdcac04179f4ed3e5b8e9dbd6e74bbf5ebc0f4fde48bbaad7d1e5c757e65bcb
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.1-latest
Done.