The Swift Package Index logo.Swift Package Index

Track the adoption of Swift 6 strict concurrency checks for data race safety. How many packages are Ready for Swift 6?

Build Information

Failed to build SwiftRegexDSL, reference 1.0.3 (9a88e1), with Swift 6.1 for Linux on 26 Apr 2025 11:31:14 UTC.

Build Command

bash -c docker run --pull=always --rm -v "checkouts-4606859-0":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.1-latest swift build --triple x86_64-unknown-linux-gnu 2>&1

Build Log

========================================
RunAll
========================================
Builder version: 4.61.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/kodlian/SwiftRegexDSL.git
Reference: 1.0.3
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/kodlian/SwiftRegexDSL
 * tag               1.0.3      -> FETCH_HEAD
HEAD is now at 9a88e14 fix unknown static regex
Cloned https://github.com/kodlian/SwiftRegexDSL.git
Revision (git rev-parse @):
9a88e1433ca2c37d2f951cb524f42239c2488743
SUCCESS checkout https://github.com/kodlian/SwiftRegexDSL.git at 1.0.3
========================================
Build
========================================
Selected platform:         linux
Swift version:             6.1
Building package at path:  $PWD
https://github.com/kodlian/SwiftRegexDSL.git
https://github.com/kodlian/SwiftRegexDSL.git
WARNING: environment variable SUPPRESS_SWIFT_6_FLAGS is not set
{
  "dependencies" : [
  ],
  "manifest_display_name" : "SwiftRegexDSL",
  "name" : "SwiftRegexDSL",
  "path" : "/host/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "10.15"
    },
    {
      "name" : "ios",
      "version" : "13.0"
    }
  ],
  "products" : [
    {
      "name" : "SwiftRegexDSL",
      "targets" : [
        "SwiftRegexDSL"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "SwiftRegexDSLTests",
      "module_type" : "SwiftTarget",
      "name" : "SwiftRegexDSLTests",
      "path" : "Tests/SwiftRegexDSLTests",
      "sources" : [
        "CharacterClassTests.swift",
        "ControlFlowAndLoopTests.swift",
        "GroupTests.swift",
        "QuantifierTests.swift",
        "SpecialCharactersTests.swift",
        "UnicodeTests.swift",
        "XCTestManifests.swift"
      ],
      "target_dependencies" : [
        "SwiftRegexDSL"
      ],
      "type" : "test"
    },
    {
      "c99name" : "SwiftRegexDSL",
      "module_type" : "SwiftTarget",
      "name" : "SwiftRegexDSL",
      "path" : "Sources/SwiftRegexDSL",
      "product_memberships" : [
        "SwiftRegexDSL"
      ],
      "sources" : [
        "Anchor.swift",
        "Character Class.swift",
        "Engine/AlternativeRegexBuilder.swift",
        "Engine/Regex+extensions.swift",
        "Engine/Regex.swift",
        "Engine/RegexBuilder.swift",
        "Engine/RegexModifier.swift",
        "Group/Alternarive.swift",
        "Group/Assertion.swift",
        "Group/Capture.swift",
        "Group/Comment.swift",
        "Group/Group.swift",
        "Group/PatternOptions.swift",
        "Quantifier.swift",
        "RegexSet.swift",
        "Special Characters.swift",
        "Text.swift",
        "UnsafeText.swift",
        "UnsafeUnicode.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.4"
}
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4606859-0":/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/20] Emitting module SwiftRegexDSL
/host/spi-builder-workspace/Sources/SwiftRegexDSL/Group/PatternOptions.swift:14:23: warning: static property 'caseInsensitive' is not concurrency-safe because non-'Sendable' type 'PatternOptions' may have shared mutable state; this is an error in the Swift 6 language mode
  9 |
 10 | /// The following flags control various aspects of regular expression matching.
 11 | public struct PatternOptions: OptionSet, Hashable {
    |               `- note: consider making struct 'PatternOptions' conform to the 'Sendable' protocol
 12 |
 13 |     /// If set, matching will take place in a case-insensitive manner.
 14 |     public static let caseInsensitive = PatternOptions(rawValue: 1 << 0)
    |                       |- warning: static property 'caseInsensitive' 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 'caseInsensitive' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 15 |
 16 |     /// If set, allow use of white space and #comments within patterns
/host/spi-builder-workspace/Sources/SwiftRegexDSL/Group/PatternOptions.swift:17:23: warning: static property 'allowCommentsAndWhitespace' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 15 |
 16 |     /// If set, allow use of white space and #comments within patterns
 17 |     public static var allowCommentsAndWhitespace = PatternOptions(rawValue: 1 << 1)
    |                       |- warning: static property 'allowCommentsAndWhitespace' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'allowCommentsAndWhitespace' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: add '@MainActor' to make static property 'allowCommentsAndWhitespace' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 18 |
 19 |     /// If set, a AnyCharacter in a pattern will match a line terminator in the input text. By default, it will not. Note that a carriage-return / line-feed pair in text behave as a single line terminator, and will match a single "." in a regular expression pattern
/host/spi-builder-workspace/Sources/SwiftRegexDSL/Group/PatternOptions.swift:20:23: warning: static property 'dotMatchesLineSeparators' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 18 |
 19 |     /// If set, a AnyCharacter in a pattern will match a line terminator in the input text. By default, it will not. Note that a carriage-return / line-feed pair in text behave as a single line terminator, and will match a single "." in a regular expression pattern
 20 |     public static var dotMatchesLineSeparators = PatternOptions(rawValue: 1 << 2)
    |                       |- warning: static property 'dotMatchesLineSeparators' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'dotMatchesLineSeparators' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: add '@MainActor' to make static property 'dotMatchesLineSeparators' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 21 |
 22 |     /// Control the behavior of "^" and "$" in a pattern. By default these will only match at the start and end, respectively, of the input text. If this flag is set, "^" and "$" will also match at the start and end of each line within the input text.
/host/spi-builder-workspace/Sources/SwiftRegexDSL/Group/PatternOptions.swift:23:23: warning: static property 'anchorsMatchLines' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 21 |
 22 |     /// Control the behavior of "^" and "$" in a pattern. By default these will only match at the start and end, respectively, of the input text. If this flag is set, "^" and "$" will also match at the start and end of each line within the input text.
 23 |     public static var anchorsMatchLines = PatternOptions(rawValue: 1 << 3)
    |                       |- warning: static property 'anchorsMatchLines' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'anchorsMatchLines' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: add '@MainActor' to make static property 'anchorsMatchLines' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 24 |
 25 |     /// Controls the behavior of \b in a pattern. If set, word boundaries are found according to the definitions of word found in Unicode UAX 29, Text Boundaries. By default, word boundaries are identified by means of a simple classification of characters as either “word” or “non-word”, which approximates traditional regular expression behavior. The results obtained with the two options can be quite different in runs of spaces and other non-word characters.
/host/spi-builder-workspace/Sources/SwiftRegexDSL/Group/PatternOptions.swift:26:23: warning: static property 'useUnicodeWordBoundaries' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 24 |
 25 |     /// Controls the behavior of \b in a pattern. If set, word boundaries are found according to the definitions of word found in Unicode UAX 29, Text Boundaries. By default, word boundaries are identified by means of a simple classification of characters as either “word” or “non-word”, which approximates traditional regular expression behavior. The results obtained with the two options can be quite different in runs of spaces and other non-word characters.
 26 |     public static var useUnicodeWordBoundaries = PatternOptions(rawValue: 1 << 4)
    |                       |- warning: static property 'useUnicodeWordBoundaries' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'useUnicodeWordBoundaries' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: add '@MainActor' to make static property 'useUnicodeWordBoundaries' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 27 |
 28 |     static let all: [PatternOptions: Character] = [
/host/spi-builder-workspace/Sources/SwiftRegexDSL/Group/PatternOptions.swift:28:16: warning: static property 'all' is not concurrency-safe because non-'Sendable' type '[PatternOptions : Character]' may have shared mutable state; this is an error in the Swift 6 language mode
  9 |
 10 | /// The following flags control various aspects of regular expression matching.
 11 | public struct PatternOptions: OptionSet, Hashable {
    |               `- note: consider making struct 'PatternOptions' conform to the 'Sendable' protocol
 12 |
 13 |     /// If set, matching will take place in a case-insensitive manner.
    :
 26 |     public static var useUnicodeWordBoundaries = PatternOptions(rawValue: 1 << 4)
 27 |
 28 |     static let all: [PatternOptions: Character] = [
    |                |- warning: static property 'all' is not concurrency-safe because non-'Sendable' type '[PatternOptions : Character]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: add '@MainActor' to make static property 'all' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 29 |         .caseInsensitive : "i",
 30 |         .allowCommentsAndWhitespace : "x",
[4/22] Compiling SwiftRegexDSL Capture.swift
[5/22] Compiling SwiftRegexDSL Comment.swift
[6/22] Compiling SwiftRegexDSL RegexModifier.swift
[7/22] Compiling SwiftRegexDSL Alternarive.swift
[8/22] Compiling SwiftRegexDSL Assertion.swift
[9/22] Compiling SwiftRegexDSL Quantifier.swift
[10/22] Compiling SwiftRegexDSL RegexSet.swift
[11/22] Compiling SwiftRegexDSL UnsafeText.swift
[12/22] Compiling SwiftRegexDSL UnsafeUnicode.swift
[13/22] Compiling SwiftRegexDSL Special Characters.swift
[14/22] Compiling SwiftRegexDSL Text.swift
[15/22] Compiling SwiftRegexDSL Regex+extensions.swift
/host/spi-builder-workspace/Sources/SwiftRegexDSL/Engine/Regex+extensions.swift:31:27: error: initializer 'init(_:in:)' requires that 'NSRange' (aka '_NSRange') conform to 'RangeExpression'
29 |         let ranges = expression
30 |             .matches(in: String(self), options: [], range: nsRange)
31 |             .compactMap { Swift.Range($0.range, in: self) }
   |                           `- error: initializer 'init(_:in:)' requires that 'NSRange' (aka '_NSRange') conform to 'RangeExpression'
32 |
33 |         return ranges
FoundationEssentials.Range.init:2:8: note: where 'R' = 'NSRange' (aka '_NSRange')
1 | generic struct Range {
2 | public init?<R, S>(_ region: R, in string: S) where R : RangeExpression, S : StringProtocol, R.Bound == AttributedString.Index}
  |        `- note: where 'R' = 'NSRange' (aka '_NSRange')
3 |
/host/spi-builder-workspace/Sources/SwiftRegexDSL/Engine/Regex+extensions.swift:53:39: error: initializer 'init(_:in:)' requires that 'NSRange' (aka '_NSRange') conform to 'RangeExpression'
51 |                 var ranges = [Swift.Range<String.Index>]()
52 |                 for i in 0..<result.numberOfRanges {
53 |                     guard let range = Swift.Range(result.range(at: i), in: self) else {
   |                                       `- error: initializer 'init(_:in:)' requires that 'NSRange' (aka '_NSRange') conform to 'RangeExpression'
54 |                         continue
55 |                     }
FoundationEssentials.Range.init:2:8: note: where 'R' = 'NSRange' (aka '_NSRange')
1 | generic struct Range {
2 | public init?<R, S>(_ region: R, in string: S) where R : RangeExpression, S : StringProtocol, R.Bound == AttributedString.Index}
  |        `- note: where 'R' = 'NSRange' (aka '_NSRange')
3 |
[16/22] Compiling SwiftRegexDSL Regex.swift
/host/spi-builder-workspace/Sources/SwiftRegexDSL/Engine/Regex+extensions.swift:31:27: error: initializer 'init(_:in:)' requires that 'NSRange' (aka '_NSRange') conform to 'RangeExpression'
29 |         let ranges = expression
30 |             .matches(in: String(self), options: [], range: nsRange)
31 |             .compactMap { Swift.Range($0.range, in: self) }
   |                           `- error: initializer 'init(_:in:)' requires that 'NSRange' (aka '_NSRange') conform to 'RangeExpression'
32 |
33 |         return ranges
FoundationEssentials.Range.init:2:8: note: where 'R' = 'NSRange' (aka '_NSRange')
1 | generic struct Range {
2 | public init?<R, S>(_ region: R, in string: S) where R : RangeExpression, S : StringProtocol, R.Bound == AttributedString.Index}
  |        `- note: where 'R' = 'NSRange' (aka '_NSRange')
3 |
/host/spi-builder-workspace/Sources/SwiftRegexDSL/Engine/Regex+extensions.swift:53:39: error: initializer 'init(_:in:)' requires that 'NSRange' (aka '_NSRange') conform to 'RangeExpression'
51 |                 var ranges = [Swift.Range<String.Index>]()
52 |                 for i in 0..<result.numberOfRanges {
53 |                     guard let range = Swift.Range(result.range(at: i), in: self) else {
   |                                       `- error: initializer 'init(_:in:)' requires that 'NSRange' (aka '_NSRange') conform to 'RangeExpression'
54 |                         continue
55 |                     }
FoundationEssentials.Range.init:2:8: note: where 'R' = 'NSRange' (aka '_NSRange')
1 | generic struct Range {
2 | public init?<R, S>(_ region: R, in string: S) where R : RangeExpression, S : StringProtocol, R.Bound == AttributedString.Index}
  |        `- note: where 'R' = 'NSRange' (aka '_NSRange')
3 |
[17/22] Compiling SwiftRegexDSL RegexBuilder.swift
/host/spi-builder-workspace/Sources/SwiftRegexDSL/Engine/Regex+extensions.swift:31:27: error: initializer 'init(_:in:)' requires that 'NSRange' (aka '_NSRange') conform to 'RangeExpression'
29 |         let ranges = expression
30 |             .matches(in: String(self), options: [], range: nsRange)
31 |             .compactMap { Swift.Range($0.range, in: self) }
   |                           `- error: initializer 'init(_:in:)' requires that 'NSRange' (aka '_NSRange') conform to 'RangeExpression'
32 |
33 |         return ranges
FoundationEssentials.Range.init:2:8: note: where 'R' = 'NSRange' (aka '_NSRange')
1 | generic struct Range {
2 | public init?<R, S>(_ region: R, in string: S) where R : RangeExpression, S : StringProtocol, R.Bound == AttributedString.Index}
  |        `- note: where 'R' = 'NSRange' (aka '_NSRange')
3 |
/host/spi-builder-workspace/Sources/SwiftRegexDSL/Engine/Regex+extensions.swift:53:39: error: initializer 'init(_:in:)' requires that 'NSRange' (aka '_NSRange') conform to 'RangeExpression'
51 |                 var ranges = [Swift.Range<String.Index>]()
52 |                 for i in 0..<result.numberOfRanges {
53 |                     guard let range = Swift.Range(result.range(at: i), in: self) else {
   |                                       `- error: initializer 'init(_:in:)' requires that 'NSRange' (aka '_NSRange') conform to 'RangeExpression'
54 |                         continue
55 |                     }
FoundationEssentials.Range.init:2:8: note: where 'R' = 'NSRange' (aka '_NSRange')
1 | generic struct Range {
2 | public init?<R, S>(_ region: R, in string: S) where R : RangeExpression, S : StringProtocol, R.Bound == AttributedString.Index}
  |        `- note: where 'R' = 'NSRange' (aka '_NSRange')
3 |
[18/22] Compiling SwiftRegexDSL Group.swift
/host/spi-builder-workspace/Sources/SwiftRegexDSL/Group/PatternOptions.swift:14:23: warning: static property 'caseInsensitive' is not concurrency-safe because non-'Sendable' type 'PatternOptions' may have shared mutable state; this is an error in the Swift 6 language mode
  9 |
 10 | /// The following flags control various aspects of regular expression matching.
 11 | public struct PatternOptions: OptionSet, Hashable {
    |               `- note: consider making struct 'PatternOptions' conform to the 'Sendable' protocol
 12 |
 13 |     /// If set, matching will take place in a case-insensitive manner.
 14 |     public static let caseInsensitive = PatternOptions(rawValue: 1 << 0)
    |                       |- warning: static property 'caseInsensitive' 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 'caseInsensitive' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 15 |
 16 |     /// If set, allow use of white space and #comments within patterns
/host/spi-builder-workspace/Sources/SwiftRegexDSL/Group/PatternOptions.swift:17:23: warning: static property 'allowCommentsAndWhitespace' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 15 |
 16 |     /// If set, allow use of white space and #comments within patterns
 17 |     public static var allowCommentsAndWhitespace = PatternOptions(rawValue: 1 << 1)
    |                       |- warning: static property 'allowCommentsAndWhitespace' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'allowCommentsAndWhitespace' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: add '@MainActor' to make static property 'allowCommentsAndWhitespace' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 18 |
 19 |     /// If set, a AnyCharacter in a pattern will match a line terminator in the input text. By default, it will not. Note that a carriage-return / line-feed pair in text behave as a single line terminator, and will match a single "." in a regular expression pattern
/host/spi-builder-workspace/Sources/SwiftRegexDSL/Group/PatternOptions.swift:20:23: warning: static property 'dotMatchesLineSeparators' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 18 |
 19 |     /// If set, a AnyCharacter in a pattern will match a line terminator in the input text. By default, it will not. Note that a carriage-return / line-feed pair in text behave as a single line terminator, and will match a single "." in a regular expression pattern
 20 |     public static var dotMatchesLineSeparators = PatternOptions(rawValue: 1 << 2)
    |                       |- warning: static property 'dotMatchesLineSeparators' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'dotMatchesLineSeparators' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: add '@MainActor' to make static property 'dotMatchesLineSeparators' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 21 |
 22 |     /// Control the behavior of "^" and "$" in a pattern. By default these will only match at the start and end, respectively, of the input text. If this flag is set, "^" and "$" will also match at the start and end of each line within the input text.
/host/spi-builder-workspace/Sources/SwiftRegexDSL/Group/PatternOptions.swift:23:23: warning: static property 'anchorsMatchLines' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 21 |
 22 |     /// Control the behavior of "^" and "$" in a pattern. By default these will only match at the start and end, respectively, of the input text. If this flag is set, "^" and "$" will also match at the start and end of each line within the input text.
 23 |     public static var anchorsMatchLines = PatternOptions(rawValue: 1 << 3)
    |                       |- warning: static property 'anchorsMatchLines' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'anchorsMatchLines' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: add '@MainActor' to make static property 'anchorsMatchLines' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 24 |
 25 |     /// Controls the behavior of \b in a pattern. If set, word boundaries are found according to the definitions of word found in Unicode UAX 29, Text Boundaries. By default, word boundaries are identified by means of a simple classification of characters as either “word” or “non-word”, which approximates traditional regular expression behavior. The results obtained with the two options can be quite different in runs of spaces and other non-word characters.
/host/spi-builder-workspace/Sources/SwiftRegexDSL/Group/PatternOptions.swift:26:23: warning: static property 'useUnicodeWordBoundaries' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 24 |
 25 |     /// Controls the behavior of \b in a pattern. If set, word boundaries are found according to the definitions of word found in Unicode UAX 29, Text Boundaries. By default, word boundaries are identified by means of a simple classification of characters as either “word” or “non-word”, which approximates traditional regular expression behavior. The results obtained with the two options can be quite different in runs of spaces and other non-word characters.
 26 |     public static var useUnicodeWordBoundaries = PatternOptions(rawValue: 1 << 4)
    |                       |- warning: static property 'useUnicodeWordBoundaries' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'useUnicodeWordBoundaries' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: add '@MainActor' to make static property 'useUnicodeWordBoundaries' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 27 |
 28 |     static let all: [PatternOptions: Character] = [
/host/spi-builder-workspace/Sources/SwiftRegexDSL/Group/PatternOptions.swift:28:16: warning: static property 'all' is not concurrency-safe because non-'Sendable' type '[PatternOptions : Character]' may have shared mutable state; this is an error in the Swift 6 language mode
  9 |
 10 | /// The following flags control various aspects of regular expression matching.
 11 | public struct PatternOptions: OptionSet, Hashable {
    |               `- note: consider making struct 'PatternOptions' conform to the 'Sendable' protocol
 12 |
 13 |     /// If set, matching will take place in a case-insensitive manner.
    :
 26 |     public static var useUnicodeWordBoundaries = PatternOptions(rawValue: 1 << 4)
 27 |
 28 |     static let all: [PatternOptions: Character] = [
    |                |- warning: static property 'all' is not concurrency-safe because non-'Sendable' type '[PatternOptions : Character]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: add '@MainActor' to make static property 'all' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 29 |         .caseInsensitive : "i",
 30 |         .allowCommentsAndWhitespace : "x",
[19/22] Compiling SwiftRegexDSL PatternOptions.swift
/host/spi-builder-workspace/Sources/SwiftRegexDSL/Group/PatternOptions.swift:14:23: warning: static property 'caseInsensitive' is not concurrency-safe because non-'Sendable' type 'PatternOptions' may have shared mutable state; this is an error in the Swift 6 language mode
  9 |
 10 | /// The following flags control various aspects of regular expression matching.
 11 | public struct PatternOptions: OptionSet, Hashable {
    |               `- note: consider making struct 'PatternOptions' conform to the 'Sendable' protocol
 12 |
 13 |     /// If set, matching will take place in a case-insensitive manner.
 14 |     public static let caseInsensitive = PatternOptions(rawValue: 1 << 0)
    |                       |- warning: static property 'caseInsensitive' 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 'caseInsensitive' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 15 |
 16 |     /// If set, allow use of white space and #comments within patterns
/host/spi-builder-workspace/Sources/SwiftRegexDSL/Group/PatternOptions.swift:17:23: warning: static property 'allowCommentsAndWhitespace' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 15 |
 16 |     /// If set, allow use of white space and #comments within patterns
 17 |     public static var allowCommentsAndWhitespace = PatternOptions(rawValue: 1 << 1)
    |                       |- warning: static property 'allowCommentsAndWhitespace' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'allowCommentsAndWhitespace' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: add '@MainActor' to make static property 'allowCommentsAndWhitespace' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 18 |
 19 |     /// If set, a AnyCharacter in a pattern will match a line terminator in the input text. By default, it will not. Note that a carriage-return / line-feed pair in text behave as a single line terminator, and will match a single "." in a regular expression pattern
/host/spi-builder-workspace/Sources/SwiftRegexDSL/Group/PatternOptions.swift:20:23: warning: static property 'dotMatchesLineSeparators' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 18 |
 19 |     /// If set, a AnyCharacter in a pattern will match a line terminator in the input text. By default, it will not. Note that a carriage-return / line-feed pair in text behave as a single line terminator, and will match a single "." in a regular expression pattern
 20 |     public static var dotMatchesLineSeparators = PatternOptions(rawValue: 1 << 2)
    |                       |- warning: static property 'dotMatchesLineSeparators' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'dotMatchesLineSeparators' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: add '@MainActor' to make static property 'dotMatchesLineSeparators' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 21 |
 22 |     /// Control the behavior of "^" and "$" in a pattern. By default these will only match at the start and end, respectively, of the input text. If this flag is set, "^" and "$" will also match at the start and end of each line within the input text.
/host/spi-builder-workspace/Sources/SwiftRegexDSL/Group/PatternOptions.swift:23:23: warning: static property 'anchorsMatchLines' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 21 |
 22 |     /// Control the behavior of "^" and "$" in a pattern. By default these will only match at the start and end, respectively, of the input text. If this flag is set, "^" and "$" will also match at the start and end of each line within the input text.
 23 |     public static var anchorsMatchLines = PatternOptions(rawValue: 1 << 3)
    |                       |- warning: static property 'anchorsMatchLines' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'anchorsMatchLines' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: add '@MainActor' to make static property 'anchorsMatchLines' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 24 |
 25 |     /// Controls the behavior of \b in a pattern. If set, word boundaries are found according to the definitions of word found in Unicode UAX 29, Text Boundaries. By default, word boundaries are identified by means of a simple classification of characters as either “word” or “non-word”, which approximates traditional regular expression behavior. The results obtained with the two options can be quite different in runs of spaces and other non-word characters.
/host/spi-builder-workspace/Sources/SwiftRegexDSL/Group/PatternOptions.swift:26:23: warning: static property 'useUnicodeWordBoundaries' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 24 |
 25 |     /// Controls the behavior of \b in a pattern. If set, word boundaries are found according to the definitions of word found in Unicode UAX 29, Text Boundaries. By default, word boundaries are identified by means of a simple classification of characters as either “word” or “non-word”, which approximates traditional regular expression behavior. The results obtained with the two options can be quite different in runs of spaces and other non-word characters.
 26 |     public static var useUnicodeWordBoundaries = PatternOptions(rawValue: 1 << 4)
    |                       |- warning: static property 'useUnicodeWordBoundaries' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'useUnicodeWordBoundaries' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: add '@MainActor' to make static property 'useUnicodeWordBoundaries' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 27 |
 28 |     static let all: [PatternOptions: Character] = [
/host/spi-builder-workspace/Sources/SwiftRegexDSL/Group/PatternOptions.swift:28:16: warning: static property 'all' is not concurrency-safe because non-'Sendable' type '[PatternOptions : Character]' may have shared mutable state; this is an error in the Swift 6 language mode
  9 |
 10 | /// The following flags control various aspects of regular expression matching.
 11 | public struct PatternOptions: OptionSet, Hashable {
    |               `- note: consider making struct 'PatternOptions' conform to the 'Sendable' protocol
 12 |
 13 |     /// If set, matching will take place in a case-insensitive manner.
    :
 26 |     public static var useUnicodeWordBoundaries = PatternOptions(rawValue: 1 << 4)
 27 |
 28 |     static let all: [PatternOptions: Character] = [
    |                |- warning: static property 'all' is not concurrency-safe because non-'Sendable' type '[PatternOptions : Character]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: add '@MainActor' to make static property 'all' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 29 |         .caseInsensitive : "i",
 30 |         .allowCommentsAndWhitespace : "x",
[20/22] Compiling SwiftRegexDSL Anchor.swift
[21/22] Compiling SwiftRegexDSL Character Class.swift
[22/22] Compiling SwiftRegexDSL AlternativeRegexBuilder.swift
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4606859-0":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.1-latest swift build --triple x86_64-unknown-linux-gnu 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
[0/1] Planning build
Building for debugging...
[0/1] Write swift-version-24593BA9C3E375BF.txt
[2/19] Compiling SwiftRegexDSL Special Characters.swift
[3/19] Compiling SwiftRegexDSL Text.swift
[4/21] Compiling SwiftRegexDSL Regex+extensions.swift
/host/spi-builder-workspace/Sources/SwiftRegexDSL/Engine/Regex+extensions.swift:31:27: error: initializer 'init(_:in:)' requires that 'NSRange' (aka '_NSRange') conform to 'RangeExpression'
29 |         let ranges = expression
30 |             .matches(in: String(self), options: [], range: nsRange)
31 |             .compactMap { Swift.Range($0.range, in: self) }
   |                           `- error: initializer 'init(_:in:)' requires that 'NSRange' (aka '_NSRange') conform to 'RangeExpression'
32 |
33 |         return ranges
FoundationEssentials.Range.init:2:8: note: where 'R' = 'NSRange' (aka '_NSRange')
1 | generic struct Range {
2 | public init?<R, S>(_ region: R, in string: S) where R : RangeExpression, S : StringProtocol, R.Bound == AttributedString.Index}
  |        `- note: where 'R' = 'NSRange' (aka '_NSRange')
3 |
/host/spi-builder-workspace/Sources/SwiftRegexDSL/Engine/Regex+extensions.swift:53:39: error: initializer 'init(_:in:)' requires that 'NSRange' (aka '_NSRange') conform to 'RangeExpression'
51 |                 var ranges = [Swift.Range<String.Index>]()
52 |                 for i in 0..<result.numberOfRanges {
53 |                     guard let range = Swift.Range(result.range(at: i), in: self) else {
   |                                       `- error: initializer 'init(_:in:)' requires that 'NSRange' (aka '_NSRange') conform to 'RangeExpression'
54 |                         continue
55 |                     }
FoundationEssentials.Range.init:2:8: note: where 'R' = 'NSRange' (aka '_NSRange')
1 | generic struct Range {
2 | public init?<R, S>(_ region: R, in string: S) where R : RangeExpression, S : StringProtocol, R.Bound == AttributedString.Index}
  |        `- note: where 'R' = 'NSRange' (aka '_NSRange')
3 |
[5/21] Compiling SwiftRegexDSL Regex.swift
/host/spi-builder-workspace/Sources/SwiftRegexDSL/Engine/Regex+extensions.swift:31:27: error: initializer 'init(_:in:)' requires that 'NSRange' (aka '_NSRange') conform to 'RangeExpression'
29 |         let ranges = expression
30 |             .matches(in: String(self), options: [], range: nsRange)
31 |             .compactMap { Swift.Range($0.range, in: self) }
   |                           `- error: initializer 'init(_:in:)' requires that 'NSRange' (aka '_NSRange') conform to 'RangeExpression'
32 |
33 |         return ranges
FoundationEssentials.Range.init:2:8: note: where 'R' = 'NSRange' (aka '_NSRange')
1 | generic struct Range {
2 | public init?<R, S>(_ region: R, in string: S) where R : RangeExpression, S : StringProtocol, R.Bound == AttributedString.Index}
  |        `- note: where 'R' = 'NSRange' (aka '_NSRange')
3 |
/host/spi-builder-workspace/Sources/SwiftRegexDSL/Engine/Regex+extensions.swift:53:39: error: initializer 'init(_:in:)' requires that 'NSRange' (aka '_NSRange') conform to 'RangeExpression'
51 |                 var ranges = [Swift.Range<String.Index>]()
52 |                 for i in 0..<result.numberOfRanges {
53 |                     guard let range = Swift.Range(result.range(at: i), in: self) else {
   |                                       `- error: initializer 'init(_:in:)' requires that 'NSRange' (aka '_NSRange') conform to 'RangeExpression'
54 |                         continue
55 |                     }
FoundationEssentials.Range.init:2:8: note: where 'R' = 'NSRange' (aka '_NSRange')
1 | generic struct Range {
2 | public init?<R, S>(_ region: R, in string: S) where R : RangeExpression, S : StringProtocol, R.Bound == AttributedString.Index}
  |        `- note: where 'R' = 'NSRange' (aka '_NSRange')
3 |
[6/21] Compiling SwiftRegexDSL RegexBuilder.swift
/host/spi-builder-workspace/Sources/SwiftRegexDSL/Engine/Regex+extensions.swift:31:27: error: initializer 'init(_:in:)' requires that 'NSRange' (aka '_NSRange') conform to 'RangeExpression'
29 |         let ranges = expression
30 |             .matches(in: String(self), options: [], range: nsRange)
31 |             .compactMap { Swift.Range($0.range, in: self) }
   |                           `- error: initializer 'init(_:in:)' requires that 'NSRange' (aka '_NSRange') conform to 'RangeExpression'
32 |
33 |         return ranges
FoundationEssentials.Range.init:2:8: note: where 'R' = 'NSRange' (aka '_NSRange')
1 | generic struct Range {
2 | public init?<R, S>(_ region: R, in string: S) where R : RangeExpression, S : StringProtocol, R.Bound == AttributedString.Index}
  |        `- note: where 'R' = 'NSRange' (aka '_NSRange')
3 |
/host/spi-builder-workspace/Sources/SwiftRegexDSL/Engine/Regex+extensions.swift:53:39: error: initializer 'init(_:in:)' requires that 'NSRange' (aka '_NSRange') conform to 'RangeExpression'
51 |                 var ranges = [Swift.Range<String.Index>]()
52 |                 for i in 0..<result.numberOfRanges {
53 |                     guard let range = Swift.Range(result.range(at: i), in: self) else {
   |                                       `- error: initializer 'init(_:in:)' requires that 'NSRange' (aka '_NSRange') conform to 'RangeExpression'
54 |                         continue
55 |                     }
FoundationEssentials.Range.init:2:8: note: where 'R' = 'NSRange' (aka '_NSRange')
1 | generic struct Range {
2 | public init?<R, S>(_ region: R, in string: S) where R : RangeExpression, S : StringProtocol, R.Bound == AttributedString.Index}
  |        `- note: where 'R' = 'NSRange' (aka '_NSRange')
3 |
[7/21] Emitting module SwiftRegexDSL
[8/21] Compiling SwiftRegexDSL Anchor.swift
[9/21] Compiling SwiftRegexDSL Character Class.swift
[10/21] Compiling SwiftRegexDSL AlternativeRegexBuilder.swift
[11/21] Compiling SwiftRegexDSL Capture.swift
[12/21] Compiling SwiftRegexDSL Comment.swift
[13/21] Compiling SwiftRegexDSL RegexModifier.swift
[14/21] Compiling SwiftRegexDSL Alternarive.swift
[15/21] Compiling SwiftRegexDSL Assertion.swift
[16/21] Compiling SwiftRegexDSL Group.swift
[17/21] Compiling SwiftRegexDSL PatternOptions.swift
[18/21] Compiling SwiftRegexDSL Quantifier.swift
[19/21] Compiling SwiftRegexDSL RegexSet.swift
[20/21] Compiling SwiftRegexDSL UnsafeText.swift
[21/21] Compiling SwiftRegexDSL UnsafeUnicode.swift
BUILD FAILURE 6.1 linux