This is a staging environment. For live and up-to-date package information, visit swiftpackageindex.com.

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 Hyphenation with Swift 6.0 for macOS (SPM).

Swift 6 data race errors: 3

Build Command

env DEVELOPER_DIR=/Applications/Xcode-15.3.0.app xcrun --toolchain org.swift.600202405261a swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete

Build Log

========================================
RunAll
========================================
Builder version: 4.40.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/john-mueller/Hyphenation.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/john-mueller/Hyphenation
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
HEAD is now at c8bfaaf Merge pull request #4 from john-mueller/updates
Cloned https://github.com/john-mueller/Hyphenation.git
Revision (git rev-parse @):
c8bfaafc2122d0dc548d37a0566a1def17ab9eb4
SUCCESS checkout https://github.com/john-mueller/Hyphenation.git at main
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.0
Building package at path:  $workDir
https://github.com/john-mueller/Hyphenation.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-15.3.0.app xcrun --toolchain org.swift.600202405261a 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-6F35C1178C84523A.txt
[3/14] Compiling Hyphenation Token.swift
[4/15] Compiling Hyphenation hyph-en-us.hyp.swift
[5/15] Compiling Hyphenation hyph-en-us.pat.swift
[6/15] Compiling Hyphenation TokenSequence.swift
[7/15] Compiling Hyphenation Pattern.swift
/Users/admin/builder/spi-builder-workspace/Sources/Hyphenation/Internal/Pattern.swift:106:31: warning: 'IndexDistance' is deprecated: All index distances are now of type Int
104 |     /// An integer that represents the number of indices from the beginning of the pattern string
105 |     ///  to the index of a potential split location.
106 |     typealias Offset = String.IndexDistance
    |                               `- warning: 'IndexDistance' is deprecated: All index distances are now of type Int
107 |     /// An integer that represents the priority with which a string should be split or not split
108 |     ///  at a given index.
[8/15] Compiling Hyphenation HyphenatorCache.swift
[9/15] Compiling Hyphenation Hyphenator.swift
[10/15] Compiling Hyphenation PatternParsingError.swift
[11/15] Compiling Hyphenation ExceptionDictionary.swift
/Users/admin/builder/spi-builder-workspace/Sources/Hyphenation/Internal/ExceptionDictionary.swift:138:24: warning: static property 'defaultDictionary' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
136 | extension ExceptionDictionary {
137 |     /// An `ExceptionDictionary` containing the default English exceptions.
138 |     private static var defaultDictionary = ExceptionDictionary(string: .defaultExceptions)
    |                        |- warning: static property 'defaultDictionary' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
    |                        |- note: convert 'defaultDictionary' to a 'let' constant to make 'Sendable' shared state immutable
    |                        |- note: annotate 'defaultDictionary' 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
139 | }
140 |
[12/15] Compiling Hyphenation Copyable.swift
[13/15] Compiling Hyphenation Exception.swift
[14/15] Emitting module Hyphenation
/Users/admin/builder/spi-builder-workspace/Sources/Hyphenation/Internal/ExceptionDictionary.swift:138:24: warning: static property 'defaultDictionary' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
136 | extension ExceptionDictionary {
137 |     /// An `ExceptionDictionary` containing the default English exceptions.
138 |     private static var defaultDictionary = ExceptionDictionary(string: .defaultExceptions)
    |                        |- warning: static property 'defaultDictionary' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
    |                        |- note: convert 'defaultDictionary' to a 'let' constant to make 'Sendable' shared state immutable
    |                        |- note: annotate 'defaultDictionary' 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
139 | }
140 |
/Users/admin/builder/spi-builder-workspace/Sources/Hyphenation/Internal/Pattern.swift:106:31: warning: 'IndexDistance' is deprecated: All index distances are now of type Int
104 |     /// An integer that represents the number of indices from the beginning of the pattern string
105 |     ///  to the index of a potential split location.
106 |     typealias Offset = String.IndexDistance
    |                               `- warning: 'IndexDistance' is deprecated: All index distances are now of type Int
107 |     /// An integer that represents the priority with which a string should be split or not split
108 |     ///  at a given index.
/Users/admin/builder/spi-builder-workspace/Sources/Hyphenation/Internal/PatternDictionary.swift:87:24: warning: static property 'defaultDictionary' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
85 | extension PatternDictionary {
86 |     /// A `PatternDictionary` containing the default English patterns.
87 |     private static var defaultDictionary = try! PatternDictionary(string: .defaultPatterns)
   |                        |- warning: static property 'defaultDictionary' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert 'defaultDictionary' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate 'defaultDictionary' 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
88 |     // swiftlint:disable:previous force_try
89 |
/Users/admin/builder/spi-builder-workspace/Sources/Hyphenation/Internal/PatternDictionary.swift:91:24: warning: static property 'defaultMaxLength' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
89 |
90 |     /// The length of the longest identifier in the default dictionary.
91 |     private static var defaultMaxLength = defaultDictionary.dictionary.keys.reduce(0) { max($0, $1.count) }
   |                        |- warning: static property 'defaultMaxLength' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert 'defaultMaxLength' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate 'defaultMaxLength' 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
92 | }
93 |
[15/15] Compiling Hyphenation PatternDictionary.swift
/Users/admin/builder/spi-builder-workspace/Sources/Hyphenation/Internal/PatternDictionary.swift:87:24: warning: static property 'defaultDictionary' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
85 | extension PatternDictionary {
86 |     /// A `PatternDictionary` containing the default English patterns.
87 |     private static var defaultDictionary = try! PatternDictionary(string: .defaultPatterns)
   |                        |- warning: static property 'defaultDictionary' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert 'defaultDictionary' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate 'defaultDictionary' 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
88 |     // swiftlint:disable:previous force_try
89 |
/Users/admin/builder/spi-builder-workspace/Sources/Hyphenation/Internal/PatternDictionary.swift:91:24: warning: static property 'defaultMaxLength' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
89 |
90 |     /// The length of the longest identifier in the default dictionary.
91 |     private static var defaultMaxLength = defaultDictionary.dictionary.keys.reduce(0) { max($0, $1.count) }
   |                        |- warning: static property 'defaultMaxLength' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert 'defaultMaxLength' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: annotate 'defaultMaxLength' 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
92 | }
93 |
Build complete! (20.19s)
Build complete.
{
  "dependencies" : [
  ],
  "manifest_display_name" : "Hyphenation",
  "name" : "Hyphenation",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
  ],
  "products" : [
    {
      "name" : "Hyphenation",
      "targets" : [
        "Hyphenation"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "HyphenationTests",
      "module_type" : "SwiftTarget",
      "name" : "HyphenationTests",
      "path" : "Tests/HyphenationTests",
      "resources" : [
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/HyphenationTests/TextFiles/PrideAndPrejudice.txt",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/HyphenationTests/TextFiles/Clarissa.txt",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/HyphenationTests/TextFiles/GreatExpectations.txt",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/HyphenationTests/TextFiles/Constitution.txt",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/HyphenationTests/TextFiles/TestPatterns.txt",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/HyphenationTests/TextFiles/TestExceptions.txt",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/HyphenationTests/TextFiles/WarAndPeace.txt",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/HyphenationTests/TextFiles/KingJamesBible.txt",
          "rule" : {
            "process" : {
            }
          }
        }
      ],
      "sources" : [
        "CorrectnessTests.swift",
        "PerformanceTests.swift",
        "TestHelpers/TestURLs.swift",
        "TestHelpers/XCTest+AssertThrows.swift",
        "ThreadSafetyTests.swift"
      ],
      "target_dependencies" : [
        "Hyphenation"
      ],
      "type" : "test"
    },
    {
      "c99name" : "Hyphenation",
      "module_type" : "SwiftTarget",
      "name" : "Hyphenation",
      "path" : "Sources/Hyphenation",
      "product_memberships" : [
        "Hyphenation"
      ],
      "sources" : [
        "API/Hyphenator.swift",
        "API/PatternParsingError.swift",
        "Internal/Copyable.swift",
        "Internal/Exception.swift",
        "Internal/ExceptionDictionary.swift",
        "Internal/HyphenatorCache.swift",
        "Internal/Pattern.swift",
        "Internal/PatternDictionary.swift",
        "Internal/Token.swift",
        "Internal/TokenSequence.swift",
        "Patterns/hyph-en-us.hyp.swift",
        "Patterns/hyph-en-us.pat.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.4"
}
Done.
This is a staging environment. For live and up-to-date package information, visit swiftpackageindex.com.