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

Successful build of Stencil, reference 0.15.3 (03a1dc), with Swift 6.0 for macOS (SPM) on 15 Sep 2024 03:14:36 UTC.

Swift 6 data race errors: 13

Build Command

env DEVELOPER_DIR=/Applications/Xcode-16.0.0-Release.Candidate.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete

Build Log

========================================
RunAll
========================================
Builder version: 4.53.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/art-divin/Stencil.git
Reference: 0.15.3
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/art-divin/Stencil
 * tag               0.15.3     -> FETCH_HEAD
HEAD is now at 03a1dca Merge pull request #1 from pavel-trafimuk/master
Cloned https://github.com/art-divin/Stencil.git
Revision (git rev-parse @):
03a1dca8923bef5a34c08f5a560fb420326f7244
SUCCESS checkout https://github.com/art-divin/Stencil.git at 0.15.3
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.0
Building package at path:  $PWD
https://github.com/art-divin/Stencil.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.0.0-Release.Candidate.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete
Building for debugging...
[0/3] Write sources
[2/3] Write swift-version-117DEE11B69C53C9.txt
[4/5] Compiling PathKit PathKit.swift
[5/5] Emitting module PathKit
[6/27] Emitting module Stencil
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/TrimBehaviour.swift:33:21: warning: static property 'nothing' is not concurrency-safe because non-'Sendable' type 'TrimBehaviour' may have shared mutable state; this is an error in the Swift 6 language mode
 7 | import Foundation
 8 |
 9 | public struct TrimBehaviour: Equatable {
   |               `- note: consider making struct 'TrimBehaviour' conform to the 'Sendable' protocol
10 |   var leading: Trim
11 |   var trailing: Trim
   :
31 |
32 |   /// doesn't touch newlines
33 |   public static let nothing = TrimBehaviour(leading: .nothing, trailing: .nothing)
   |                     |- warning: static property 'nothing' is not concurrency-safe because non-'Sendable' type 'TrimBehaviour' may have shared mutable state; this is an error in the Swift 6 language mode
   |                     |- note: annotate 'nothing' 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
34 |
35 |   /// removes whitespace before a block and whitespace and a single newline after a block
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/Errors.swift:7:14: warning: non-final class 'TemplateDoesNotExist' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
 5 | //
 6 |
 7 | public class TemplateDoesNotExist: Error, CustomStringConvertible {
   |              `- warning: non-final class 'TemplateDoesNotExist' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
 8 |   let templateNames: [String]
 9 |   let loader: Loader?
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/Errors.swift:9:7: warning: stored property 'loader' of 'Sendable'-conforming class 'TemplateDoesNotExist' has non-sendable type '(any Loader)?'; this is an error in the Swift 6 language mode
 7 | public class TemplateDoesNotExist: Error, CustomStringConvertible {
 8 |   let templateNames: [String]
 9 |   let loader: Loader?
   |       `- warning: stored property 'loader' of 'Sendable'-conforming class 'TemplateDoesNotExist' has non-sendable type '(any Loader)?'; this is an error in the Swift 6 language mode
10 |
11 |   public init(templateNames: [String], loader: Loader? = nil) {
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/Loader.swift:11:17: note: protocol 'Loader' does not conform to the 'Sendable' protocol
  9 |
 10 | /// Type used for loading a template
 11 | public protocol Loader {
    |                 `- note: protocol 'Loader' does not conform to the 'Sendable' protocol
 12 |   /// Load a template with the given name
 13 |   func loadTemplate(name: String, environment: Environment) throws -> Template
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/Errors.swift:30:28: warning: stored property 'token' of 'Sendable'-conforming struct 'TemplateSyntaxError' has non-sendable type 'Token?'; this is an error in the Swift 6 language mode
28 |   public let reason: String
29 |   public var description: String { reason }
30 |   public internal(set) var token: Token?
   |                            `- warning: stored property 'token' of 'Sendable'-conforming struct 'TemplateSyntaxError' has non-sendable type 'Token?'; this is an error in the Swift 6 language mode
31 |   public internal(set) var stackTrace: [Token]
32 |   public var templateName: String? { token?.sourceMap.filename }
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/Tokenizer.swift:106:14: note: class 'Token' does not conform to the 'Sendable' protocol
104 | }
105 |
106 | public class Token: Equatable {
    |              `- note: class 'Token' does not conform to the 'Sendable' protocol
107 |   public enum Kind: Equatable {
108 |     /// A token representing a piece of text.
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/Errors.swift:31:28: warning: stored property 'stackTrace' of 'Sendable'-conforming struct 'TemplateSyntaxError' has non-sendable type '[Token]'; this is an error in the Swift 6 language mode
29 |   public var description: String { reason }
30 |   public internal(set) var token: Token?
31 |   public internal(set) var stackTrace: [Token]
   |                            `- warning: stored property 'stackTrace' of 'Sendable'-conforming struct 'TemplateSyntaxError' has non-sendable type '[Token]'; this is an error in the Swift 6 language mode
32 |   public var templateName: String? { token?.sourceMap.filename }
33 |   var allTokens: [Token] {
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/Tokenizer.swift:106:14: note: class 'Token' does not conform to the 'Sendable' protocol
104 | }
105 |
106 | public class Token: Equatable {
    |              `- note: class 'Token' does not conform to the 'Sendable' protocol
107 |   public enum Kind: Equatable {
108 |     /// A token representing a piece of text.
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/Lexer.swift:32:22: warning: static property 'behaviourMap' is not concurrency-safe because non-'Sendable' type '[Character : WhitespaceBehaviour.Behaviour]' may have shared mutable state; this is an error in the Swift 6 language mode
 30 |
 31 |   /// Characters controlling whitespace trimming behaviour
 32 |   private static let behaviourMap: [Character: WhitespaceBehaviour.Behaviour] = [
    |                      |- warning: static property 'behaviourMap' is not concurrency-safe because non-'Sendable' type '[Character : WhitespaceBehaviour.Behaviour]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                      |- note: annotate 'behaviourMap' 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
 33 |     "+": .keep,
 34 |     "-": .trim
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/Tokenizer.swift:94:15: note: consider making enum 'Behaviour' conform to the 'Sendable' protocol
 92 |
 93 | public struct WhitespaceBehaviour: Equatable {
 94 |   public enum Behaviour {
    |               `- note: consider making enum 'Behaviour' conform to the 'Sendable' protocol
 95 |     case unspecified
 96 |     case trim
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/Loader.swift:122:7: warning: non-final class 'SuspiciousFileOperation' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
120 | }
121 |
122 | class SuspiciousFileOperation: Error {
    |       `- warning: non-final class 'SuspiciousFileOperation' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
123 |   let basePath: Path
124 |   let path: Path
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/Loader.swift:123:7: warning: stored property 'basePath' of 'Sendable'-conforming class 'SuspiciousFileOperation' has non-sendable type 'Path'; this is an error in the Swift 6 language mode
121 |
122 | class SuspiciousFileOperation: Error {
123 |   let basePath: Path
    |       `- warning: stored property 'basePath' of 'Sendable'-conforming class 'SuspiciousFileOperation' has non-sendable type 'Path'; this is an error in the Swift 6 language mode
124 |   let path: Path
125 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/PathKit/Sources/PathKit.swift:17:15: note: struct 'Path' does not conform to the 'Sendable' protocol
 15 |
 16 | /// Represents a filesystem path.
 17 | public struct Path {
    |               `- note: struct 'Path' does not conform to the 'Sendable' protocol
 18 |   /// The character used by the OS to separate two path elements
 19 |   public static let separator = "/"
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/Loader.swift:8:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'PathKit'
  6 |
  7 | import Foundation
  8 | import PathKit
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'PathKit'
  9 |
 10 | /// Type used for loading a template
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/Loader.swift:124:7: warning: stored property 'path' of 'Sendable'-conforming class 'SuspiciousFileOperation' has non-sendable type 'Path'; this is an error in the Swift 6 language mode
122 | class SuspiciousFileOperation: Error {
123 |   let basePath: Path
124 |   let path: Path
    |       `- warning: stored property 'path' of 'Sendable'-conforming class 'SuspiciousFileOperation' has non-sendable type 'Path'; this is an error in the Swift 6 language mode
125 |
126 |   init(basePath: Path, path: Path) {
/Users/admin/builder/spi-builder-workspace/.build/checkouts/PathKit/Sources/PathKit.swift:17:15: note: struct 'Path' does not conform to the 'Sendable' protocol
 15 |
 16 | /// Represents a filesystem path.
 17 | public struct Path {
    |               `- note: struct 'Path' does not conform to the 'Sendable' protocol
 18 |   /// The character used by the OS to separate two path elements
 19 |   public static let separator = "/"
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/Tokenizer.swift:86:14: warning: static property 'unknown' is not concurrency-safe because non-'Sendable' type 'SourceMap' may have shared mutable state; this is an error in the Swift 6 language mode
 75 | }
 76 |
 77 | public struct SourceMap: Equatable {
    |               `- note: consider making struct 'SourceMap' conform to the 'Sendable' protocol
 78 |   public let filename: String?
 79 |   public let location: ContentLocation
    :
 84 |   }
 85 |
 86 |   static let unknown = SourceMap()
    |              |- warning: static property 'unknown' is not concurrency-safe because non-'Sendable' type 'SourceMap' may have shared mutable state; this is an error in the Swift 6 language mode
    |              |- note: annotate 'unknown' 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
 87 |
 88 |   public static func == (lhs: SourceMap, rhs: SourceMap) -> Bool {
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/Tokenizer.swift:103:21: warning: static property 'unspecified' is not concurrency-safe because non-'Sendable' type 'WhitespaceBehaviour' may have shared mutable state; this is an error in the Swift 6 language mode
 91 | }
 92 |
 93 | public struct WhitespaceBehaviour: Equatable {
    |               `- note: consider making struct 'WhitespaceBehaviour' conform to the 'Sendable' protocol
 94 |   public enum Behaviour {
 95 |     case unspecified
    :
101 |   let trailing: Behaviour
102 |
103 |   public static let unspecified = WhitespaceBehaviour(leading: .unspecified, trailing: .unspecified)
    |                     |- warning: static property 'unspecified' is not concurrency-safe because non-'Sendable' type 'WhitespaceBehaviour' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: annotate 'unspecified' 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
104 | }
105 |
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/TrimBehaviour.swift:36:21: warning: static property 'smart' is not concurrency-safe because non-'Sendable' type 'TrimBehaviour' may have shared mutable state; this is an error in the Swift 6 language mode
 7 | import Foundation
 8 |
 9 | public struct TrimBehaviour: Equatable {
   |               `- note: consider making struct 'TrimBehaviour' conform to the 'Sendable' protocol
10 |   var leading: Trim
11 |   var trailing: Trim
   :
34 |
35 |   /// removes whitespace before a block and whitespace and a single newline after a block
36 |   public static let smart = TrimBehaviour(leading: .whitespace, trailing: .whitespaceAndOneNewLine)
   |                     |- warning: static property 'smart' is not concurrency-safe because non-'Sendable' type 'TrimBehaviour' may have shared mutable state; this is an error in the Swift 6 language mode
   |                     |- note: annotate 'smart' 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
37 |
38 |   /// removes all whitespace and newlines before and after a block
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/TrimBehaviour.swift:39:21: warning: static property 'all' is not concurrency-safe because non-'Sendable' type 'TrimBehaviour' may have shared mutable state; this is an error in the Swift 6 language mode
 7 | import Foundation
 8 |
 9 | public struct TrimBehaviour: Equatable {
   |               `- note: consider making struct 'TrimBehaviour' conform to the 'Sendable' protocol
10 |   var leading: Trim
11 |   var trailing: Trim
   :
37 |
38 |   /// removes all whitespace and newlines before and after a block
39 |   public static let all = TrimBehaviour(leading: .whitespaceAndNewLines, trailing: .whitespaceAndNewLines)
   |                     |- warning: static property 'all' is not concurrency-safe because non-'Sendable' type 'TrimBehaviour' may have shared mutable state; this is an error in the Swift 6 language mode
   |                     |- note: annotate 'all' 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
40 |
41 |   static func leadingRegex(trim: Trim) -> NSRegularExpression {
[7/29] Compiling Stencil Inheritance.swift
[8/29] Compiling Stencil KeyPath.swift
[9/29] Compiling Stencil Loader.swift
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/Loader.swift:122:7: warning: non-final class 'SuspiciousFileOperation' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
120 | }
121 |
122 | class SuspiciousFileOperation: Error {
    |       `- warning: non-final class 'SuspiciousFileOperation' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
123 |   let basePath: Path
124 |   let path: Path
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/Loader.swift:123:7: warning: stored property 'basePath' of 'Sendable'-conforming class 'SuspiciousFileOperation' has non-sendable type 'Path'; this is an error in the Swift 6 language mode
121 |
122 | class SuspiciousFileOperation: Error {
123 |   let basePath: Path
    |       `- warning: stored property 'basePath' of 'Sendable'-conforming class 'SuspiciousFileOperation' has non-sendable type 'Path'; this is an error in the Swift 6 language mode
124 |   let path: Path
125 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/PathKit/Sources/PathKit.swift:17:15: note: struct 'Path' does not conform to the 'Sendable' protocol
 15 |
 16 | /// Represents a filesystem path.
 17 | public struct Path {
    |               `- note: struct 'Path' does not conform to the 'Sendable' protocol
 18 |   /// The character used by the OS to separate two path elements
 19 |   public static let separator = "/"
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/Loader.swift:8:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'PathKit'
  6 |
  7 | import Foundation
  8 | import PathKit
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'PathKit'
  9 |
 10 | /// Type used for loading a template
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/Loader.swift:124:7: warning: stored property 'path' of 'Sendable'-conforming class 'SuspiciousFileOperation' has non-sendable type 'Path'; this is an error in the Swift 6 language mode
122 | class SuspiciousFileOperation: Error {
123 |   let basePath: Path
124 |   let path: Path
    |       `- warning: stored property 'path' of 'Sendable'-conforming class 'SuspiciousFileOperation' has non-sendable type 'Path'; this is an error in the Swift 6 language mode
125 |
126 |   init(basePath: Path, path: Path) {
/Users/admin/builder/spi-builder-workspace/.build/checkouts/PathKit/Sources/PathKit.swift:17:15: note: struct 'Path' does not conform to the 'Sendable' protocol
 15 |
 16 | /// Represents a filesystem path.
 17 | public struct Path {
    |               `- note: struct 'Path' does not conform to the 'Sendable' protocol
 18 |   /// The character used by the OS to separate two path elements
 19 |   public static let separator = "/"
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/TrimBehaviour.swift:33:21: warning: static property 'nothing' is not concurrency-safe because non-'Sendable' type 'TrimBehaviour' may have shared mutable state; this is an error in the Swift 6 language mode
 7 | import Foundation
 8 |
 9 | public struct TrimBehaviour: Equatable {
   |               `- note: consider making struct 'TrimBehaviour' conform to the 'Sendable' protocol
10 |   var leading: Trim
11 |   var trailing: Trim
   :
31 |
32 |   /// doesn't touch newlines
33 |   public static let nothing = TrimBehaviour(leading: .nothing, trailing: .nothing)
   |                     |- warning: static property 'nothing' is not concurrency-safe because non-'Sendable' type 'TrimBehaviour' may have shared mutable state; this is an error in the Swift 6 language mode
   |                     |- note: annotate 'nothing' 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
34 |
35 |   /// removes whitespace before a block and whitespace and a single newline after a block
[10/29] Compiling Stencil Node.swift
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/Loader.swift:122:7: warning: non-final class 'SuspiciousFileOperation' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
120 | }
121 |
122 | class SuspiciousFileOperation: Error {
    |       `- warning: non-final class 'SuspiciousFileOperation' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
123 |   let basePath: Path
124 |   let path: Path
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/Loader.swift:123:7: warning: stored property 'basePath' of 'Sendable'-conforming class 'SuspiciousFileOperation' has non-sendable type 'Path'; this is an error in the Swift 6 language mode
121 |
122 | class SuspiciousFileOperation: Error {
123 |   let basePath: Path
    |       `- warning: stored property 'basePath' of 'Sendable'-conforming class 'SuspiciousFileOperation' has non-sendable type 'Path'; this is an error in the Swift 6 language mode
124 |   let path: Path
125 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/PathKit/Sources/PathKit.swift:17:15: note: struct 'Path' does not conform to the 'Sendable' protocol
 15 |
 16 | /// Represents a filesystem path.
 17 | public struct Path {
    |               `- note: struct 'Path' does not conform to the 'Sendable' protocol
 18 |   /// The character used by the OS to separate two path elements
 19 |   public static let separator = "/"
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/Loader.swift:8:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'PathKit'
  6 |
  7 | import Foundation
  8 | import PathKit
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'PathKit'
  9 |
 10 | /// Type used for loading a template
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/Loader.swift:124:7: warning: stored property 'path' of 'Sendable'-conforming class 'SuspiciousFileOperation' has non-sendable type 'Path'; this is an error in the Swift 6 language mode
122 | class SuspiciousFileOperation: Error {
123 |   let basePath: Path
124 |   let path: Path
    |       `- warning: stored property 'path' of 'Sendable'-conforming class 'SuspiciousFileOperation' has non-sendable type 'Path'; this is an error in the Swift 6 language mode
125 |
126 |   init(basePath: Path, path: Path) {
/Users/admin/builder/spi-builder-workspace/.build/checkouts/PathKit/Sources/PathKit.swift:17:15: note: struct 'Path' does not conform to the 'Sendable' protocol
 15 |
 16 | /// Represents a filesystem path.
 17 | public struct Path {
    |               `- note: struct 'Path' does not conform to the 'Sendable' protocol
 18 |   /// The character used by the OS to separate two path elements
 19 |   public static let separator = "/"
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/TrimBehaviour.swift:33:21: warning: static property 'nothing' is not concurrency-safe because non-'Sendable' type 'TrimBehaviour' may have shared mutable state; this is an error in the Swift 6 language mode
 7 | import Foundation
 8 |
 9 | public struct TrimBehaviour: Equatable {
   |               `- note: consider making struct 'TrimBehaviour' conform to the 'Sendable' protocol
10 |   var leading: Trim
11 |   var trailing: Trim
   :
31 |
32 |   /// doesn't touch newlines
33 |   public static let nothing = TrimBehaviour(leading: .nothing, trailing: .nothing)
   |                     |- warning: static property 'nothing' is not concurrency-safe because non-'Sendable' type 'TrimBehaviour' may have shared mutable state; this is an error in the Swift 6 language mode
   |                     |- note: annotate 'nothing' 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
34 |
35 |   /// removes whitespace before a block and whitespace and a single newline after a block
[11/29] Compiling Stencil LazyValueWrapper.swift
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/Lexer.swift:32:22: warning: static property 'behaviourMap' is not concurrency-safe because non-'Sendable' type '[Character : WhitespaceBehaviour.Behaviour]' may have shared mutable state; this is an error in the Swift 6 language mode
 30 |
 31 |   /// Characters controlling whitespace trimming behaviour
 32 |   private static let behaviourMap: [Character: WhitespaceBehaviour.Behaviour] = [
    |                      |- warning: static property 'behaviourMap' is not concurrency-safe because non-'Sendable' type '[Character : WhitespaceBehaviour.Behaviour]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                      |- note: annotate 'behaviourMap' 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
 33 |     "+": .keep,
 34 |     "-": .trim
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/Tokenizer.swift:94:15: note: consider making enum 'Behaviour' conform to the 'Sendable' protocol
 92 |
 93 | public struct WhitespaceBehaviour: Equatable {
 94 |   public enum Behaviour {
    |               `- note: consider making enum 'Behaviour' conform to the 'Sendable' protocol
 95 |     case unspecified
 96 |     case trim
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/Tokenizer.swift:103:21: warning: static property 'unspecified' is not concurrency-safe because non-'Sendable' type 'WhitespaceBehaviour' may have shared mutable state; this is an error in the Swift 6 language mode
 91 | }
 92 |
 93 | public struct WhitespaceBehaviour: Equatable {
    |               `- note: consider making struct 'WhitespaceBehaviour' conform to the 'Sendable' protocol
 94 |   public enum Behaviour {
 95 |     case unspecified
    :
101 |   let trailing: Behaviour
102 |
103 |   public static let unspecified = WhitespaceBehaviour(leading: .unspecified, trailing: .unspecified)
    |                     |- warning: static property 'unspecified' is not concurrency-safe because non-'Sendable' type 'WhitespaceBehaviour' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: annotate 'unspecified' 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
104 | }
105 |
[12/29] Compiling Stencil Lexer.swift
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/Lexer.swift:32:22: warning: static property 'behaviourMap' is not concurrency-safe because non-'Sendable' type '[Character : WhitespaceBehaviour.Behaviour]' may have shared mutable state; this is an error in the Swift 6 language mode
 30 |
 31 |   /// Characters controlling whitespace trimming behaviour
 32 |   private static let behaviourMap: [Character: WhitespaceBehaviour.Behaviour] = [
    |                      |- warning: static property 'behaviourMap' is not concurrency-safe because non-'Sendable' type '[Character : WhitespaceBehaviour.Behaviour]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                      |- note: annotate 'behaviourMap' 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
 33 |     "+": .keep,
 34 |     "-": .trim
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/Tokenizer.swift:94:15: note: consider making enum 'Behaviour' conform to the 'Sendable' protocol
 92 |
 93 | public struct WhitespaceBehaviour: Equatable {
 94 |   public enum Behaviour {
    |               `- note: consider making enum 'Behaviour' conform to the 'Sendable' protocol
 95 |     case unspecified
 96 |     case trim
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/Tokenizer.swift:103:21: warning: static property 'unspecified' is not concurrency-safe because non-'Sendable' type 'WhitespaceBehaviour' may have shared mutable state; this is an error in the Swift 6 language mode
 91 | }
 92 |
 93 | public struct WhitespaceBehaviour: Equatable {
    |               `- note: consider making struct 'WhitespaceBehaviour' conform to the 'Sendable' protocol
 94 |   public enum Behaviour {
 95 |     case unspecified
    :
101 |   let trailing: Behaviour
102 |
103 |   public static let unspecified = WhitespaceBehaviour(leading: .unspecified, trailing: .unspecified)
    |                     |- warning: static property 'unspecified' is not concurrency-safe because non-'Sendable' type 'WhitespaceBehaviour' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: annotate 'unspecified' 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
104 | }
105 |
[13/29] Compiling Stencil IfTag.swift
[14/29] Compiling Stencil Include.swift
[15/29] Compiling Stencil Template.swift
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/TrimBehaviour.swift:33:21: warning: static property 'nothing' is not concurrency-safe because non-'Sendable' type 'TrimBehaviour' may have shared mutable state; this is an error in the Swift 6 language mode
 7 | import Foundation
 8 |
 9 | public struct TrimBehaviour: Equatable {
   |               `- note: consider making struct 'TrimBehaviour' conform to the 'Sendable' protocol
10 |   var leading: Trim
11 |   var trailing: Trim
   :
31 |
32 |   /// doesn't touch newlines
33 |   public static let nothing = TrimBehaviour(leading: .nothing, trailing: .nothing)
   |                     |- warning: static property 'nothing' is not concurrency-safe because non-'Sendable' type 'TrimBehaviour' may have shared mutable state; this is an error in the Swift 6 language mode
   |                     |- note: annotate 'nothing' 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
34 |
35 |   /// removes whitespace before a block and whitespace and a single newline after a block
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/Tokenizer.swift:86:14: warning: static property 'unknown' is not concurrency-safe because non-'Sendable' type 'SourceMap' may have shared mutable state; this is an error in the Swift 6 language mode
 75 | }
 76 |
 77 | public struct SourceMap: Equatable {
    |               `- note: consider making struct 'SourceMap' conform to the 'Sendable' protocol
 78 |   public let filename: String?
 79 |   public let location: ContentLocation
    :
 84 |   }
 85 |
 86 |   static let unknown = SourceMap()
    |              |- warning: static property 'unknown' is not concurrency-safe because non-'Sendable' type 'SourceMap' may have shared mutable state; this is an error in the Swift 6 language mode
    |              |- note: annotate 'unknown' 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
 87 |
 88 |   public static func == (lhs: SourceMap, rhs: SourceMap) -> Bool {
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/Tokenizer.swift:103:21: warning: static property 'unspecified' is not concurrency-safe because non-'Sendable' type 'WhitespaceBehaviour' may have shared mutable state; this is an error in the Swift 6 language mode
 91 | }
 92 |
 93 | public struct WhitespaceBehaviour: Equatable {
    |               `- note: consider making struct 'WhitespaceBehaviour' conform to the 'Sendable' protocol
 94 |   public enum Behaviour {
 95 |     case unspecified
    :
101 |   let trailing: Behaviour
102 |
103 |   public static let unspecified = WhitespaceBehaviour(leading: .unspecified, trailing: .unspecified)
    |                     |- warning: static property 'unspecified' is not concurrency-safe because non-'Sendable' type 'WhitespaceBehaviour' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: annotate 'unspecified' 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
104 | }
105 |
[16/29] Compiling Stencil Tokenizer.swift
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/TrimBehaviour.swift:33:21: warning: static property 'nothing' is not concurrency-safe because non-'Sendable' type 'TrimBehaviour' may have shared mutable state; this is an error in the Swift 6 language mode
 7 | import Foundation
 8 |
 9 | public struct TrimBehaviour: Equatable {
   |               `- note: consider making struct 'TrimBehaviour' conform to the 'Sendable' protocol
10 |   var leading: Trim
11 |   var trailing: Trim
   :
31 |
32 |   /// doesn't touch newlines
33 |   public static let nothing = TrimBehaviour(leading: .nothing, trailing: .nothing)
   |                     |- warning: static property 'nothing' is not concurrency-safe because non-'Sendable' type 'TrimBehaviour' may have shared mutable state; this is an error in the Swift 6 language mode
   |                     |- note: annotate 'nothing' 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
34 |
35 |   /// removes whitespace before a block and whitespace and a single newline after a block
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/Tokenizer.swift:86:14: warning: static property 'unknown' is not concurrency-safe because non-'Sendable' type 'SourceMap' may have shared mutable state; this is an error in the Swift 6 language mode
 75 | }
 76 |
 77 | public struct SourceMap: Equatable {
    |               `- note: consider making struct 'SourceMap' conform to the 'Sendable' protocol
 78 |   public let filename: String?
 79 |   public let location: ContentLocation
    :
 84 |   }
 85 |
 86 |   static let unknown = SourceMap()
    |              |- warning: static property 'unknown' is not concurrency-safe because non-'Sendable' type 'SourceMap' may have shared mutable state; this is an error in the Swift 6 language mode
    |              |- note: annotate 'unknown' 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
 87 |
 88 |   public static func == (lhs: SourceMap, rhs: SourceMap) -> Bool {
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/Tokenizer.swift:103:21: warning: static property 'unspecified' is not concurrency-safe because non-'Sendable' type 'WhitespaceBehaviour' may have shared mutable state; this is an error in the Swift 6 language mode
 91 | }
 92 |
 93 | public struct WhitespaceBehaviour: Equatable {
    |               `- note: consider making struct 'WhitespaceBehaviour' conform to the 'Sendable' protocol
 94 |   public enum Behaviour {
 95 |     case unspecified
    :
101 |   let trailing: Behaviour
102 |
103 |   public static let unspecified = WhitespaceBehaviour(leading: .unspecified, trailing: .unspecified)
    |                     |- warning: static property 'unspecified' is not concurrency-safe because non-'Sendable' type 'WhitespaceBehaviour' may have shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: annotate 'unspecified' 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
104 | }
105 |
[17/29] Compiling Stencil Errors.swift
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/Errors.swift:7:14: warning: non-final class 'TemplateDoesNotExist' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
 5 | //
 6 |
 7 | public class TemplateDoesNotExist: Error, CustomStringConvertible {
   |              `- warning: non-final class 'TemplateDoesNotExist' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
 8 |   let templateNames: [String]
 9 |   let loader: Loader?
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/Errors.swift:9:7: warning: stored property 'loader' of 'Sendable'-conforming class 'TemplateDoesNotExist' has non-sendable type '(any Loader)?'; this is an error in the Swift 6 language mode
 7 | public class TemplateDoesNotExist: Error, CustomStringConvertible {
 8 |   let templateNames: [String]
 9 |   let loader: Loader?
   |       `- warning: stored property 'loader' of 'Sendable'-conforming class 'TemplateDoesNotExist' has non-sendable type '(any Loader)?'; this is an error in the Swift 6 language mode
10 |
11 |   public init(templateNames: [String], loader: Loader? = nil) {
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/Loader.swift:11:17: note: protocol 'Loader' does not conform to the 'Sendable' protocol
  9 |
 10 | /// Type used for loading a template
 11 | public protocol Loader {
    |                 `- note: protocol 'Loader' does not conform to the 'Sendable' protocol
 12 |   /// Load a template with the given name
 13 |   func loadTemplate(name: String, environment: Environment) throws -> Template
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/Errors.swift:30:28: warning: stored property 'token' of 'Sendable'-conforming struct 'TemplateSyntaxError' has non-sendable type 'Token?'; this is an error in the Swift 6 language mode
28 |   public let reason: String
29 |   public var description: String { reason }
30 |   public internal(set) var token: Token?
   |                            `- warning: stored property 'token' of 'Sendable'-conforming struct 'TemplateSyntaxError' has non-sendable type 'Token?'; this is an error in the Swift 6 language mode
31 |   public internal(set) var stackTrace: [Token]
32 |   public var templateName: String? { token?.sourceMap.filename }
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/Tokenizer.swift:106:14: note: class 'Token' does not conform to the 'Sendable' protocol
104 | }
105 |
106 | public class Token: Equatable {
    |              `- note: class 'Token' does not conform to the 'Sendable' protocol
107 |   public enum Kind: Equatable {
108 |     /// A token representing a piece of text.
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/Errors.swift:31:28: warning: stored property 'stackTrace' of 'Sendable'-conforming struct 'TemplateSyntaxError' has non-sendable type '[Token]'; this is an error in the Swift 6 language mode
29 |   public var description: String { reason }
30 |   public internal(set) var token: Token?
31 |   public internal(set) var stackTrace: [Token]
   |                            `- warning: stored property 'stackTrace' of 'Sendable'-conforming struct 'TemplateSyntaxError' has non-sendable type '[Token]'; this is an error in the Swift 6 language mode
32 |   public var templateName: String? { token?.sourceMap.filename }
33 |   var allTokens: [Token] {
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/Tokenizer.swift:106:14: note: class 'Token' does not conform to the 'Sendable' protocol
104 | }
105 |
106 | public class Token: Equatable {
    |              `- note: class 'Token' does not conform to the 'Sendable' protocol
107 |   public enum Kind: Equatable {
108 |     /// A token representing a piece of text.
[18/29] Compiling Stencil Expression.swift
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/Errors.swift:7:14: warning: non-final class 'TemplateDoesNotExist' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
 5 | //
 6 |
 7 | public class TemplateDoesNotExist: Error, CustomStringConvertible {
   |              `- warning: non-final class 'TemplateDoesNotExist' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
 8 |   let templateNames: [String]
 9 |   let loader: Loader?
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/Errors.swift:9:7: warning: stored property 'loader' of 'Sendable'-conforming class 'TemplateDoesNotExist' has non-sendable type '(any Loader)?'; this is an error in the Swift 6 language mode
 7 | public class TemplateDoesNotExist: Error, CustomStringConvertible {
 8 |   let templateNames: [String]
 9 |   let loader: Loader?
   |       `- warning: stored property 'loader' of 'Sendable'-conforming class 'TemplateDoesNotExist' has non-sendable type '(any Loader)?'; this is an error in the Swift 6 language mode
10 |
11 |   public init(templateNames: [String], loader: Loader? = nil) {
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/Loader.swift:11:17: note: protocol 'Loader' does not conform to the 'Sendable' protocol
  9 |
 10 | /// Type used for loading a template
 11 | public protocol Loader {
    |                 `- note: protocol 'Loader' does not conform to the 'Sendable' protocol
 12 |   /// Load a template with the given name
 13 |   func loadTemplate(name: String, environment: Environment) throws -> Template
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/Errors.swift:30:28: warning: stored property 'token' of 'Sendable'-conforming struct 'TemplateSyntaxError' has non-sendable type 'Token?'; this is an error in the Swift 6 language mode
28 |   public let reason: String
29 |   public var description: String { reason }
30 |   public internal(set) var token: Token?
   |                            `- warning: stored property 'token' of 'Sendable'-conforming struct 'TemplateSyntaxError' has non-sendable type 'Token?'; this is an error in the Swift 6 language mode
31 |   public internal(set) var stackTrace: [Token]
32 |   public var templateName: String? { token?.sourceMap.filename }
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/Tokenizer.swift:106:14: note: class 'Token' does not conform to the 'Sendable' protocol
104 | }
105 |
106 | public class Token: Equatable {
    |              `- note: class 'Token' does not conform to the 'Sendable' protocol
107 |   public enum Kind: Equatable {
108 |     /// A token representing a piece of text.
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/Errors.swift:31:28: warning: stored property 'stackTrace' of 'Sendable'-conforming struct 'TemplateSyntaxError' has non-sendable type '[Token]'; this is an error in the Swift 6 language mode
29 |   public var description: String { reason }
30 |   public internal(set) var token: Token?
31 |   public internal(set) var stackTrace: [Token]
   |                            `- warning: stored property 'stackTrace' of 'Sendable'-conforming struct 'TemplateSyntaxError' has non-sendable type '[Token]'; this is an error in the Swift 6 language mode
32 |   public var templateName: String? { token?.sourceMap.filename }
33 |   var allTokens: [Token] {
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/Tokenizer.swift:106:14: note: class 'Token' does not conform to the 'Sendable' protocol
104 | }
105 |
106 | public class Token: Equatable {
    |              `- note: class 'Token' does not conform to the 'Sendable' protocol
107 |   public enum Kind: Equatable {
108 |     /// A token representing a piece of text.
[19/29] Compiling Stencil Extension.swift
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/Errors.swift:7:14: warning: non-final class 'TemplateDoesNotExist' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
 5 | //
 6 |
 7 | public class TemplateDoesNotExist: Error, CustomStringConvertible {
   |              `- warning: non-final class 'TemplateDoesNotExist' cannot conform to 'Sendable'; use '@unchecked Sendable'; this is an error in the Swift 6 language mode
 8 |   let templateNames: [String]
 9 |   let loader: Loader?
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/Errors.swift:9:7: warning: stored property 'loader' of 'Sendable'-conforming class 'TemplateDoesNotExist' has non-sendable type '(any Loader)?'; this is an error in the Swift 6 language mode
 7 | public class TemplateDoesNotExist: Error, CustomStringConvertible {
 8 |   let templateNames: [String]
 9 |   let loader: Loader?
   |       `- warning: stored property 'loader' of 'Sendable'-conforming class 'TemplateDoesNotExist' has non-sendable type '(any Loader)?'; this is an error in the Swift 6 language mode
10 |
11 |   public init(templateNames: [String], loader: Loader? = nil) {
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/Loader.swift:11:17: note: protocol 'Loader' does not conform to the 'Sendable' protocol
  9 |
 10 | /// Type used for loading a template
 11 | public protocol Loader {
    |                 `- note: protocol 'Loader' does not conform to the 'Sendable' protocol
 12 |   /// Load a template with the given name
 13 |   func loadTemplate(name: String, environment: Environment) throws -> Template
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/Errors.swift:30:28: warning: stored property 'token' of 'Sendable'-conforming struct 'TemplateSyntaxError' has non-sendable type 'Token?'; this is an error in the Swift 6 language mode
28 |   public let reason: String
29 |   public var description: String { reason }
30 |   public internal(set) var token: Token?
   |                            `- warning: stored property 'token' of 'Sendable'-conforming struct 'TemplateSyntaxError' has non-sendable type 'Token?'; this is an error in the Swift 6 language mode
31 |   public internal(set) var stackTrace: [Token]
32 |   public var templateName: String? { token?.sourceMap.filename }
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/Tokenizer.swift:106:14: note: class 'Token' does not conform to the 'Sendable' protocol
104 | }
105 |
106 | public class Token: Equatable {
    |              `- note: class 'Token' does not conform to the 'Sendable' protocol
107 |   public enum Kind: Equatable {
108 |     /// A token representing a piece of text.
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/Errors.swift:31:28: warning: stored property 'stackTrace' of 'Sendable'-conforming struct 'TemplateSyntaxError' has non-sendable type '[Token]'; this is an error in the Swift 6 language mode
29 |   public var description: String { reason }
30 |   public internal(set) var token: Token?
31 |   public internal(set) var stackTrace: [Token]
   |                            `- warning: stored property 'stackTrace' of 'Sendable'-conforming struct 'TemplateSyntaxError' has non-sendable type '[Token]'; this is an error in the Swift 6 language mode
32 |   public var templateName: String? { token?.sourceMap.filename }
33 |   var allTokens: [Token] {
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/Tokenizer.swift:106:14: note: class 'Token' does not conform to the 'Sendable' protocol
104 | }
105 |
106 | public class Token: Equatable {
    |              `- note: class 'Token' does not conform to the 'Sendable' protocol
107 |   public enum Kind: Equatable {
108 |     /// A token representing a piece of text.
[20/29] Compiling Stencil NowTag.swift
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/TrimBehaviour.swift:33:21: warning: static property 'nothing' is not concurrency-safe because non-'Sendable' type 'TrimBehaviour' may have shared mutable state; this is an error in the Swift 6 language mode
 7 | import Foundation
 8 |
 9 | public struct TrimBehaviour: Equatable {
   |               `- note: consider making struct 'TrimBehaviour' conform to the 'Sendable' protocol
10 |   var leading: Trim
11 |   var trailing: Trim
   :
31 |
32 |   /// doesn't touch newlines
33 |   public static let nothing = TrimBehaviour(leading: .nothing, trailing: .nothing)
   |                     |- warning: static property 'nothing' is not concurrency-safe because non-'Sendable' type 'TrimBehaviour' may have shared mutable state; this is an error in the Swift 6 language mode
   |                     |- note: annotate 'nothing' 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
34 |
35 |   /// removes whitespace before a block and whitespace and a single newline after a block
[21/29] Compiling Stencil Parser.swift
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/TrimBehaviour.swift:33:21: warning: static property 'nothing' is not concurrency-safe because non-'Sendable' type 'TrimBehaviour' may have shared mutable state; this is an error in the Swift 6 language mode
 7 | import Foundation
 8 |
 9 | public struct TrimBehaviour: Equatable {
   |               `- note: consider making struct 'TrimBehaviour' conform to the 'Sendable' protocol
10 |   var leading: Trim
11 |   var trailing: Trim
   :
31 |
32 |   /// doesn't touch newlines
33 |   public static let nothing = TrimBehaviour(leading: .nothing, trailing: .nothing)
   |                     |- warning: static property 'nothing' is not concurrency-safe because non-'Sendable' type 'TrimBehaviour' may have shared mutable state; this is an error in the Swift 6 language mode
   |                     |- note: annotate 'nothing' 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
34 |
35 |   /// removes whitespace before a block and whitespace and a single newline after a block
[22/29] Compiling Stencil FilterTag.swift
[23/29] Compiling Stencil Filters.swift
[24/29] Compiling Stencil ForTag.swift
[25/29] Compiling Stencil Context.swift
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/TrimBehaviour.swift:33:21: warning: static property 'nothing' is not concurrency-safe because non-'Sendable' type 'TrimBehaviour' may have shared mutable state; this is an error in the Swift 6 language mode
 7 | import Foundation
 8 |
 9 | public struct TrimBehaviour: Equatable {
   |               `- note: consider making struct 'TrimBehaviour' conform to the 'Sendable' protocol
10 |   var leading: Trim
11 |   var trailing: Trim
   :
31 |
32 |   /// doesn't touch newlines
33 |   public static let nothing = TrimBehaviour(leading: .nothing, trailing: .nothing)
   |                     |- warning: static property 'nothing' is not concurrency-safe because non-'Sendable' type 'TrimBehaviour' may have shared mutable state; this is an error in the Swift 6 language mode
   |                     |- note: annotate 'nothing' 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
34 |
35 |   /// removes whitespace before a block and whitespace and a single newline after a block
[26/29] Compiling Stencil DynamicMemberLookup.swift
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/TrimBehaviour.swift:33:21: warning: static property 'nothing' is not concurrency-safe because non-'Sendable' type 'TrimBehaviour' may have shared mutable state; this is an error in the Swift 6 language mode
 7 | import Foundation
 8 |
 9 | public struct TrimBehaviour: Equatable {
   |               `- note: consider making struct 'TrimBehaviour' conform to the 'Sendable' protocol
10 |   var leading: Trim
11 |   var trailing: Trim
   :
31 |
32 |   /// doesn't touch newlines
33 |   public static let nothing = TrimBehaviour(leading: .nothing, trailing: .nothing)
   |                     |- warning: static property 'nothing' is not concurrency-safe because non-'Sendable' type 'TrimBehaviour' may have shared mutable state; this is an error in the Swift 6 language mode
   |                     |- note: annotate 'nothing' 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
34 |
35 |   /// removes whitespace before a block and whitespace and a single newline after a block
[27/29] Compiling Stencil Environment.swift
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/TrimBehaviour.swift:33:21: warning: static property 'nothing' is not concurrency-safe because non-'Sendable' type 'TrimBehaviour' may have shared mutable state; this is an error in the Swift 6 language mode
 7 | import Foundation
 8 |
 9 | public struct TrimBehaviour: Equatable {
   |               `- note: consider making struct 'TrimBehaviour' conform to the 'Sendable' protocol
10 |   var leading: Trim
11 |   var trailing: Trim
   :
31 |
32 |   /// doesn't touch newlines
33 |   public static let nothing = TrimBehaviour(leading: .nothing, trailing: .nothing)
   |                     |- warning: static property 'nothing' is not concurrency-safe because non-'Sendable' type 'TrimBehaviour' may have shared mutable state; this is an error in the Swift 6 language mode
   |                     |- note: annotate 'nothing' 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
34 |
35 |   /// removes whitespace before a block and whitespace and a single newline after a block
[28/29] Compiling Stencil TrimBehaviour.swift
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/TrimBehaviour.swift:33:21: warning: static property 'nothing' is not concurrency-safe because non-'Sendable' type 'TrimBehaviour' may have shared mutable state; this is an error in the Swift 6 language mode
 7 | import Foundation
 8 |
 9 | public struct TrimBehaviour: Equatable {
   |               `- note: consider making struct 'TrimBehaviour' conform to the 'Sendable' protocol
10 |   var leading: Trim
11 |   var trailing: Trim
   :
31 |
32 |   /// doesn't touch newlines
33 |   public static let nothing = TrimBehaviour(leading: .nothing, trailing: .nothing)
   |                     |- warning: static property 'nothing' is not concurrency-safe because non-'Sendable' type 'TrimBehaviour' may have shared mutable state; this is an error in the Swift 6 language mode
   |                     |- note: annotate 'nothing' 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
34 |
35 |   /// removes whitespace before a block and whitespace and a single newline after a block
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/TrimBehaviour.swift:36:21: warning: static property 'smart' is not concurrency-safe because non-'Sendable' type 'TrimBehaviour' may have shared mutable state; this is an error in the Swift 6 language mode
 7 | import Foundation
 8 |
 9 | public struct TrimBehaviour: Equatable {
   |               `- note: consider making struct 'TrimBehaviour' conform to the 'Sendable' protocol
10 |   var leading: Trim
11 |   var trailing: Trim
   :
34 |
35 |   /// removes whitespace before a block and whitespace and a single newline after a block
36 |   public static let smart = TrimBehaviour(leading: .whitespace, trailing: .whitespaceAndOneNewLine)
   |                     |- warning: static property 'smart' is not concurrency-safe because non-'Sendable' type 'TrimBehaviour' may have shared mutable state; this is an error in the Swift 6 language mode
   |                     |- note: annotate 'smart' 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
37 |
38 |   /// removes all whitespace and newlines before and after a block
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/TrimBehaviour.swift:39:21: warning: static property 'all' is not concurrency-safe because non-'Sendable' type 'TrimBehaviour' may have shared mutable state; this is an error in the Swift 6 language mode
 7 | import Foundation
 8 |
 9 | public struct TrimBehaviour: Equatable {
   |               `- note: consider making struct 'TrimBehaviour' conform to the 'Sendable' protocol
10 |   var leading: Trim
11 |   var trailing: Trim
   :
37 |
38 |   /// removes all whitespace and newlines before and after a block
39 |   public static let all = TrimBehaviour(leading: .whitespaceAndNewLines, trailing: .whitespaceAndNewLines)
   |                     |- warning: static property 'all' is not concurrency-safe because non-'Sendable' type 'TrimBehaviour' may have shared mutable state; this is an error in the Swift 6 language mode
   |                     |- note: annotate 'all' 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
40 |
41 |   static func leadingRegex(trim: Trim) -> NSRegularExpression {
[29/29] Compiling Stencil Variable.swift
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/TrimBehaviour.swift:33:21: warning: static property 'nothing' is not concurrency-safe because non-'Sendable' type 'TrimBehaviour' may have shared mutable state; this is an error in the Swift 6 language mode
 7 | import Foundation
 8 |
 9 | public struct TrimBehaviour: Equatable {
   |               `- note: consider making struct 'TrimBehaviour' conform to the 'Sendable' protocol
10 |   var leading: Trim
11 |   var trailing: Trim
   :
31 |
32 |   /// doesn't touch newlines
33 |   public static let nothing = TrimBehaviour(leading: .nothing, trailing: .nothing)
   |                     |- warning: static property 'nothing' is not concurrency-safe because non-'Sendable' type 'TrimBehaviour' may have shared mutable state; this is an error in the Swift 6 language mode
   |                     |- note: annotate 'nothing' 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
34 |
35 |   /// removes whitespace before a block and whitespace and a single newline after a block
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/TrimBehaviour.swift:36:21: warning: static property 'smart' is not concurrency-safe because non-'Sendable' type 'TrimBehaviour' may have shared mutable state; this is an error in the Swift 6 language mode
 7 | import Foundation
 8 |
 9 | public struct TrimBehaviour: Equatable {
   |               `- note: consider making struct 'TrimBehaviour' conform to the 'Sendable' protocol
10 |   var leading: Trim
11 |   var trailing: Trim
   :
34 |
35 |   /// removes whitespace before a block and whitespace and a single newline after a block
36 |   public static let smart = TrimBehaviour(leading: .whitespace, trailing: .whitespaceAndOneNewLine)
   |                     |- warning: static property 'smart' is not concurrency-safe because non-'Sendable' type 'TrimBehaviour' may have shared mutable state; this is an error in the Swift 6 language mode
   |                     |- note: annotate 'smart' 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
37 |
38 |   /// removes all whitespace and newlines before and after a block
/Users/admin/builder/spi-builder-workspace/Sources/Stencil/TrimBehaviour.swift:39:21: warning: static property 'all' is not concurrency-safe because non-'Sendable' type 'TrimBehaviour' may have shared mutable state; this is an error in the Swift 6 language mode
 7 | import Foundation
 8 |
 9 | public struct TrimBehaviour: Equatable {
   |               `- note: consider making struct 'TrimBehaviour' conform to the 'Sendable' protocol
10 |   var leading: Trim
11 |   var trailing: Trim
   :
37 |
38 |   /// removes all whitespace and newlines before and after a block
39 |   public static let all = TrimBehaviour(leading: .whitespaceAndNewLines, trailing: .whitespaceAndNewLines)
   |                     |- warning: static property 'all' is not concurrency-safe because non-'Sendable' type 'TrimBehaviour' may have shared mutable state; this is an error in the Swift 6 language mode
   |                     |- note: annotate 'all' 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
40 |
41 |   static func leadingRegex(trim: Trim) -> NSRegularExpression {
Build complete! (15.73s)
Fetching https://github.com/kylef/Spectre.git
Fetching https://github.com/kylef/PathKit.git
[1/1021] Fetching spectre
[165/2432] Fetching spectre, pathkit
Fetched https://github.com/kylef/PathKit.git from cache (0.96s)
Fetched https://github.com/kylef/Spectre.git from cache (0.96s)
Computing version for https://github.com/kylef/Spectre.git
Computed https://github.com/kylef/Spectre.git at 0.10.1 (0.64s)
Computing version for https://github.com/kylef/PathKit.git
Computed https://github.com/kylef/PathKit.git at 1.0.1 (2.55s)
Creating working copy for https://github.com/kylef/PathKit.git
Working copy of https://github.com/kylef/PathKit.git resolved at 1.0.1
Creating working copy for https://github.com/kylef/Spectre.git
Working copy of https://github.com/kylef/Spectre.git resolved at 0.10.1
Build complete.
{
  "dependencies" : [
    {
      "identity" : "pathkit",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.0.1",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/kylef/PathKit.git"
    },
    {
      "identity" : "spectre",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "0.10.1",
            "upper_bound" : "1.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/kylef/Spectre.git"
    }
  ],
  "manifest_display_name" : "Stencil",
  "name" : "Stencil",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
  ],
  "products" : [
    {
      "name" : "Stencil",
      "targets" : [
        "Stencil"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "swift_languages_versions" : [
    "5"
  ],
  "targets" : [
    {
      "c99name" : "StencilTests",
      "module_type" : "SwiftTarget",
      "name" : "StencilTests",
      "path" : "Tests/StencilTests",
      "product_dependencies" : [
        "Spectre"
      ],
      "sources" : [
        "ContextSpec.swift",
        "EnvironmentBaseAndChildTemplateSpec.swift",
        "EnvironmentIncludeTemplateSpec.swift",
        "EnvironmentSpec.swift",
        "ExpressionSpec.swift",
        "FilterSpec.swift",
        "FilterTagSpec.swift",
        "ForNodeSpec.swift",
        "Helpers.swift",
        "IfNodeSpec.swift",
        "IncludeSpec.swift",
        "InheritanceSpec.swift",
        "LexerSpec.swift",
        "LoaderSpec.swift",
        "NodeSpec.swift",
        "NowNodeSpec.swift",
        "ParserSpec.swift",
        "StencilSpec.swift",
        "TemplateSpec.swift",
        "TokenSpec.swift",
        "TrimBehaviourSpec.swift",
        "VariableSpec.swift"
      ],
      "target_dependencies" : [
        "Stencil"
      ],
      "type" : "test"
    },
    {
      "c99name" : "Stencil",
      "module_type" : "SwiftTarget",
      "name" : "Stencil",
      "path" : "Sources/Stencil",
      "product_dependencies" : [
        "PathKit"
      ],
      "product_memberships" : [
        "Stencil"
      ],
      "sources" : [
        "Context.swift",
        "DynamicMemberLookup.swift",
        "Environment.swift",
        "Errors.swift",
        "Expression.swift",
        "Extension.swift",
        "FilterTag.swift",
        "Filters.swift",
        "ForTag.swift",
        "IfTag.swift",
        "Include.swift",
        "Inheritance.swift",
        "KeyPath.swift",
        "LazyValueWrapper.swift",
        "Lexer.swift",
        "Loader.swift",
        "Node.swift",
        "NowTag.swift",
        "Parser.swift",
        "Template.swift",
        "Tokenizer.swift",
        "TrimBehaviour.swift",
        "Variable.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.0"
}
Done.