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 SearchExpressionParser, reference 1.1.0 (f526cf), with Swift 6.0 for macOS (SPM) on 2 Nov 2024 21:12:39 UTC.

Swift 6 data race errors: 2

Build Command

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

Build Log

========================================
RunAll
========================================
Builder version: 4.56.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/CleanCocoa/SearchExpressionParser.git
Reference: 1.1.0
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/CleanCocoa/SearchExpressionParser
 * tag               1.1.0      -> FETCH_HEAD
HEAD is now at f526cf1 make compatible with SPM
Cloned https://github.com/CleanCocoa/SearchExpressionParser.git
Revision (git rev-parse @):
f526cf170f2eb2e8a907e28b656aba080e8f6f96
SUCCESS checkout https://github.com/CleanCocoa/SearchExpressionParser.git at 1.1.0
========================================
ResolveProductDependencies
========================================
Resolving dependencies ...
{
  "identity": ".resolve-product-dependencies",
  "name": "resolve-dependencies",
  "url": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
  "version": "unspecified",
  "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
  "dependencies": [
    {
      "identity": "searchexpressionparser",
      "name": "SearchExpressionParser",
      "url": "https://github.com/CleanCocoa/SearchExpressionParser.git",
      "version": "unspecified",
      "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/SearchExpressionParser",
      "dependencies": [
      ]
    }
  ]
}
Fetching https://github.com/CleanCocoa/SearchExpressionParser.git
[1/373] Fetching searchexpressionparser
Fetched https://github.com/CleanCocoa/SearchExpressionParser.git from cache (0.80s)
Creating working copy for https://github.com/CleanCocoa/SearchExpressionParser.git
Working copy of https://github.com/CleanCocoa/SearchExpressionParser.git resolved at 1.1.0 (f526cf1)
warning: '.resolve-product-dependencies': dependency 'searchexpressionparser' is not used by any target
Found 0 product dependencies
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.0
Building package at path:  $PWD
https://github.com/CleanCocoa/SearchExpressionParser.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.1.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version--7754E27361AE5C74.txt
[3/21] Compiling SearchExpressionParser OrExtractor.swift
[4/21] Compiling SearchExpressionParser ParensExtractors.swift
[5/22] Compiling SearchExpressionParser WordExtractor.swift
/Users/admin/builder/spi-builder-workspace/Sources/SearchExpressionParser/Tokenization/Tokenizer.swift:87:9: warning: stored property 'kind' of 'Sendable'-conforming struct 'TokenizerError' has non-sendable type 'TokenizerError.Kind'; this is an error in the Swift 6 language mode
 78 |
 79 | internal struct TokenizerError: Error {
 80 |     enum Kind {
    |          `- note: consider making enum 'Kind' conform to the 'Sendable' protocol
 81 |         case cannotExtractOpeningParens
 82 |         case cannotExtractQuotationMark
    :
 85 |     }
 86 |
 87 |     let kind: Kind
    |         `- warning: stored property 'kind' of 'Sendable'-conforming struct 'TokenizerError' has non-sendable type 'TokenizerError.Kind'; this is an error in the Swift 6 language mode
 88 |     let range: Range<Int>
 89 | }
[6/22] Compiling SearchExpressionParser Tokenizer.swift
/Users/admin/builder/spi-builder-workspace/Sources/SearchExpressionParser/Tokenization/Tokenizer.swift:87:9: warning: stored property 'kind' of 'Sendable'-conforming struct 'TokenizerError' has non-sendable type 'TokenizerError.Kind'; this is an error in the Swift 6 language mode
 78 |
 79 | internal struct TokenizerError: Error {
 80 |     enum Kind {
    |          `- note: consider making enum 'Kind' conform to the 'Sendable' protocol
 81 |         case cannotExtractOpeningParens
 82 |         case cannotExtractQuotationMark
    :
 85 |     }
 86 |
 87 |     let kind: Kind
    |         `- warning: stored property 'kind' of 'Sendable'-conforming struct 'TokenizerError' has non-sendable type 'TokenizerError.Kind'; this is an error in the Swift 6 language mode
 88 |     let range: Range<Int>
 89 | }
[7/22] Compiling SearchExpressionParser BangExtractor.swift
[8/22] Compiling SearchExpressionParser NotExtractor.swift
[9/22] Compiling SearchExpressionParser PhraseExtractor.swift
[10/22] Compiling SearchExpressionParser TokenExtractor.swift
[11/22] Compiling SearchExpressionParser TokenCharacterBuffer.swift
[12/22] Compiling SearchExpressionParser AndExtractor.swift
[13/22] Compiling SearchExpressionParser Tokens.swift
[14/22] Compiling SearchExpressionParser SearchExpressionParser.swift
[15/22] Compiling SearchExpressionParser Character+isWhitespace.swift
[16/22] Compiling SearchExpressionParser Parser.swift
[17/22] Compiling SearchExpressionParser TokenBuffer.swift
[18/22] Compiling SearchExpressionParser Either.swift
[19/22] Compiling SearchExpressionParser ContainmentEvaluator.swift
[20/22] Emitting module SearchExpressionParser
/Users/admin/builder/spi-builder-workspace/Sources/SearchExpressionParser/Parsing/Expressions.swift:45:23: warning: static property 'cStringFactory' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 43 |     public let cString: CString
 44 |
 45 |     public static var cStringFactory: (String) -> CString = ContainsNode.cString(string:)
    |                       |- warning: static property 'cStringFactory' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'cStringFactory' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: annotate 'cStringFactory' 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
 46 |
 47 |     public static func cString(string: String) -> CString {
/Users/admin/builder/spi-builder-workspace/Sources/SearchExpressionParser/Tokenization/Tokenizer.swift:87:9: warning: stored property 'kind' of 'Sendable'-conforming struct 'TokenizerError' has non-sendable type 'TokenizerError.Kind'; this is an error in the Swift 6 language mode
 78 |
 79 | internal struct TokenizerError: Error {
 80 |     enum Kind {
    |          `- note: consider making enum 'Kind' conform to the 'Sendable' protocol
 81 |         case cannotExtractOpeningParens
 82 |         case cannotExtractQuotationMark
    :
 85 |     }
 86 |
 87 |     let kind: Kind
    |         `- warning: stored property 'kind' of 'Sendable'-conforming struct 'TokenizerError' has non-sendable type 'TokenizerError.Kind'; this is an error in the Swift 6 language mode
 88 |     let range: Range<Int>
 89 | }
[21/22] Compiling SearchExpressionParser PhraseCollectionConvertible.swift
/Users/admin/builder/spi-builder-workspace/Sources/SearchExpressionParser/Parsing/Expressions.swift:45:23: warning: static property 'cStringFactory' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 43 |     public let cString: CString
 44 |
 45 |     public static var cStringFactory: (String) -> CString = ContainsNode.cString(string:)
    |                       |- warning: static property 'cStringFactory' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'cStringFactory' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: annotate 'cStringFactory' 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
 46 |
 47 |     public static func cString(string: String) -> CString {
[22/22] Compiling SearchExpressionParser Expressions.swift
/Users/admin/builder/spi-builder-workspace/Sources/SearchExpressionParser/Parsing/Expressions.swift:45:23: warning: static property 'cStringFactory' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 43 |     public let cString: CString
 44 |
 45 |     public static var cStringFactory: (String) -> CString = ContainsNode.cString(string:)
    |                       |- warning: static property 'cStringFactory' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'cStringFactory' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: annotate 'cStringFactory' 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
 46 |
 47 |     public static func cString(string: String) -> CString {
Build complete! (11.44s)
Build complete.
{
  "dependencies" : [
  ],
  "manifest_display_name" : "SearchExpressionParser",
  "name" : "SearchExpressionParser",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "10.13"
    }
  ],
  "products" : [
    {
      "name" : "SearchExpressionParser",
      "targets" : [
        "SearchExpressionParser"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "SearchExpressionParserTests",
      "module_type" : "SwiftTarget",
      "name" : "SearchExpressionParserTests",
      "path" : "Tests/SearchExpressionParserTests",
      "sources" : [
        "AnyEquatable.swift",
        "BalanceParenthesesTests.swift",
        "ContainmentEvaluatorTests.swift",
        "Descriptions.swift",
        "ExpressionTests.swift",
        "ParserTests.swift",
        "PhraseCollectionConvertibleTests.swift",
        "TestHelpers.swift",
        "TokenizerTests.swift",
        "XCTAssertEqual+Expression.swift",
        "XCTAssertEqual+Token.swift"
      ],
      "target_dependencies" : [
        "SearchExpressionParser"
      ],
      "type" : "test"
    },
    {
      "c99name" : "SearchExpressionParser",
      "module_type" : "SwiftTarget",
      "name" : "SearchExpressionParser",
      "path" : "Sources/SearchExpressionParser",
      "product_memberships" : [
        "SearchExpressionParser"
      ],
      "sources" : [
        "Either.swift",
        "NormalForm/ContainmentEvaluator.swift",
        "NormalForm/PhraseCollectionConvertible.swift",
        "Parsing/Expressions.swift",
        "Parsing/Parser.swift",
        "Parsing/TokenBuffer.swift",
        "SearchExpressionParser.swift",
        "Tokenization/Character+isWhitespace.swift",
        "Tokenization/TokenCharacterBuffer.swift",
        "Tokenization/TokenExtractor/AndExtractor.swift",
        "Tokenization/TokenExtractor/BangExtractor.swift",
        "Tokenization/TokenExtractor/NotExtractor.swift",
        "Tokenization/TokenExtractor/OrExtractor.swift",
        "Tokenization/TokenExtractor/ParensExtractors.swift",
        "Tokenization/TokenExtractor/PhraseExtractor.swift",
        "Tokenization/TokenExtractor/TokenExtractor.swift",
        "Tokenization/TokenExtractor/WordExtractor.swift",
        "Tokenization/Tokenizer.swift",
        "Tokenization/Tokens.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.5"
}
Done.