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 Freddy with Swift 6.0 for Linux.

Swift 6 data race errors: 7

Build Command

bash -c docker run --rm -v "checkouts-4609320-1":/host -w "$workDir" registry.gitlab.com/finestructure/spi-images:basic-6.0-latest swift build --triple x86_64-unknown-linux-gnu -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete 2>&1

Build Log

========================================
RunAll
========================================
Builder version: 4.40.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/modswift/Freddy.git
Reference: master
Initialized empty Git repository in /host/spi-builder-workspace/.git/
hint: Using 'master' as the name for the initial branch. This default branch name
hint: is subject to change. To configure the initial branch name to use in all
hint: of your new repositories, which will suppress this warning, call:
hint:
hint: 	git config --global init.defaultBranch <name>
hint:
hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
hint: 'development'. The just-created branch can be renamed via this command:
hint:
hint: 	git branch -m <name>
From https://github.com/modswift/Freddy
 * branch            master     -> FETCH_HEAD
 * [new branch]      master     -> origin/master
HEAD is now at e2f703a Xcode upgrade version
Cloned https://github.com/modswift/Freddy.git
Revision (git rev-parse @):
e2f703af019074b2eafab81e134b2c30d5a5cdcf
SUCCESS checkout https://github.com/modswift/Freddy.git at master
========================================
Build
========================================
Selected platform:         linux
Swift version:             6.0
Building package at path:  $workDir
https://github.com/modswift/Freddy.git
Running build ...
bash -c docker run --rm -v "checkouts-4609320-1":/host -w "$workDir" registry.gitlab.com/finestructure/spi-images:basic-6.0-latest swift build --triple x86_64-unknown-linux-gnu -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete 2>&1
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version-24593BA9C3E375BF.txt
[3/12] Compiling Freddy JSONLiteralConvertible.swift
[4/13] Compiling Freddy JSONSubscripting.swift
/host/spi-builder-workspace/Sources/Freddy/JSONSubscripting.swift:86:14: warning: associated value 'subscriptIntoNull' of 'Sendable'-conforming enum 'SubscriptError' has non-sendable type 'any JSONPathType'; this is an error in the Swift 6 language mode
 13 | /// A custom type, such as a `RawRepresentable` enum, may be made to conform to `JSONPathType`
 14 | /// and used with the subscript APIs.
 15 | public protocol JSONPathType {
    |                 `- note: protocol 'JSONPathType' does not conform to the 'Sendable' protocol
 16 |     /// Use `self` to key into a `dictionary`.
 17 |     ///
    :
 84 |
 85 |     enum SubscriptError: Swift.Error {
 86 |         case subscriptIntoNull(JSONPathType)
    |              `- warning: associated value 'subscriptIntoNull' of 'Sendable'-conforming enum 'SubscriptError' has non-sendable type 'any JSONPathType'; this is an error in the Swift 6 language mode
 87 |     }
 88 |
/host/spi-builder-workspace/Sources/Freddy/JSONSubscripting.swift:247:27: warning: static property 'nullBecomesNil' is not concurrency-safe because non-'Sendable' type 'JSON.SubscriptingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
238 |     /// * `.nullBecomesNil` - Treat `null` values as `nil`.
239 |     /// * `.missingKeyBecomesNil` - Treat missing keys as `nil`.
240 |     public struct SubscriptingOptions: OptionSet {
    |                   `- note: consider making struct 'SubscriptingOptions' conform to the 'Sendable' protocol
241 |         public let rawValue: Int
242 |         public init(rawValue: Int) {
    :
245 |
246 |         /// Treat `null` values as `nil`.
247 |         public static let nullBecomesNil = SubscriptingOptions(rawValue: 1 << 0)
    |                           |- warning: static property 'nullBecomesNil' is not concurrency-safe because non-'Sendable' type 'JSON.SubscriptingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: annotate 'nullBecomesNil' 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
248 |         /// Treat missing keys as `nil`.
249 |         public static let missingKeyBecomesNil = SubscriptingOptions(rawValue: 1 << 1)
/host/spi-builder-workspace/Sources/Freddy/JSONSubscripting.swift:249:27: warning: static property 'missingKeyBecomesNil' is not concurrency-safe because non-'Sendable' type 'JSON.SubscriptingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
238 |     /// * `.nullBecomesNil` - Treat `null` values as `nil`.
239 |     /// * `.missingKeyBecomesNil` - Treat missing keys as `nil`.
240 |     public struct SubscriptingOptions: OptionSet {
    |                   `- note: consider making struct 'SubscriptingOptions' conform to the 'Sendable' protocol
241 |         public let rawValue: Int
242 |         public init(rawValue: Int) {
    :
247 |         public static let nullBecomesNil = SubscriptingOptions(rawValue: 1 << 0)
248 |         /// Treat missing keys as `nil`.
249 |         public static let missingKeyBecomesNil = SubscriptingOptions(rawValue: 1 << 1)
    |                           |- warning: static property 'missingKeyBecomesNil' is not concurrency-safe because non-'Sendable' type 'JSON.SubscriptingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: annotate 'missingKeyBecomesNil' 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
250 |     }
251 |
[5/13] Compiling Freddy JSONOptional.swift
[6/13] Compiling Freddy JSONSerializing.swift
/host/spi-builder-workspace/Sources/Freddy/JSONSerializing.swift:18:23: warning: static property 'nullSkipsKey' is not concurrency-safe because non-'Sendable' type 'SerializeOptions' may have shared mutable state; this is an error in the Swift 6 language mode
 8 | /// * `.nullSkipsKey` - Skip keys with `null` values so the key is not included
 9 | /// in the serialized json
10 | public struct SerializeOptions: OptionSet {
   |               `- note: consider making struct 'SerializeOptions' conform to the 'Sendable' protocol
11 |     public let rawValue: Int
12 |     public init(rawValue: Int) {
   :
16 |     /// Skip keys with `null` values so the key is not included
17 |     /// in the serialized json
18 |     public static let nullSkipsKey = SerializeOptions(rawValue: 1 << 0)
   |                       |- warning: static property 'nullSkipsKey' is not concurrency-safe because non-'Sendable' type 'SerializeOptions' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'nullSkipsKey' 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
19 | }
20 |
[7/13] Compiling Freddy JSON.swift
/host/spi-builder-workspace/Sources/Freddy/JSON.swift:43:14: warning: associated value 'valueNotConvertible(value:to:)' of 'Sendable'-conforming enum 'Error' has non-sendable type 'JSON'; this is an error in the Swift 6 language mode
 8 |
 9 | /// An enum to describe the structure of JSON.
10 | public enum JSON {
   |             `- note: consider making enum 'JSON' conform to the 'Sendable' protocol
11 |     /// A case for denoting an array with an associated value of `[JSON]`
12 |     case array([JSON])
   :
41 |
42 |         /// Unexpected JSON `value` was found that is not convertible `to` type
43 |         case valueNotConvertible(value: JSON, to: Any.Type)
   |              `- warning: associated value 'valueNotConvertible(value:to:)' of 'Sendable'-conforming enum 'Error' has non-sendable type 'JSON'; this is an error in the Swift 6 language mode
44 |
45 |         /// The JSON is not serializable to a `String`.
[8/13] Compiling Freddy JSONDecodable.swift
/host/spi-builder-workspace/Sources/Freddy/JSON.swift:43:14: warning: associated value 'valueNotConvertible(value:to:)' of 'Sendable'-conforming enum 'Error' has non-sendable type 'JSON'; this is an error in the Swift 6 language mode
 8 |
 9 | /// An enum to describe the structure of JSON.
10 | public enum JSON {
   |             `- note: consider making enum 'JSON' conform to the 'Sendable' protocol
11 |     /// A case for denoting an array with an associated value of `[JSON]`
12 |     case array([JSON])
   :
41 |
42 |         /// Unexpected JSON `value` was found that is not convertible `to` type
43 |         case valueNotConvertible(value: JSON, to: Any.Type)
   |              `- warning: associated value 'valueNotConvertible(value:to:)' of 'Sendable'-conforming enum 'Error' has non-sendable type 'JSON'; this is an error in the Swift 6 language mode
44 |
45 |         /// The JSON is not serializable to a `String`.
[9/13] Emitting module Freddy
/host/spi-builder-workspace/Sources/Freddy/JSON.swift:43:14: warning: associated value 'valueNotConvertible(value:to:)' of 'Sendable'-conforming enum 'Error' has non-sendable type 'JSON'; this is an error in the Swift 6 language mode
 8 |
 9 | /// An enum to describe the structure of JSON.
10 | public enum JSON {
   |             `- note: consider making enum 'JSON' conform to the 'Sendable' protocol
11 |     /// A case for denoting an array with an associated value of `[JSON]`
12 |     case array([JSON])
   :
41 |
42 |         /// Unexpected JSON `value` was found that is not convertible `to` type
43 |         case valueNotConvertible(value: JSON, to: Any.Type)
   |              `- warning: associated value 'valueNotConvertible(value:to:)' of 'Sendable'-conforming enum 'Error' has non-sendable type 'JSON'; this is an error in the Swift 6 language mode
44 |
45 |         /// The JSON is not serializable to a `String`.
/host/spi-builder-workspace/Sources/Freddy/JSONEncodingDetector.swift:27:23: warning: static property 'supportedEncodings' is not concurrency-safe because non-'Sendable' type '[JSONEncodingDetector.Encoding]' may have shared mutable state; this is an error in the Swift 6 language mode
 11 |
 12 |     //// The Unicode encodings looked for during detection
 13 |     public enum Encoding {
    |                 `- note: consider making enum 'Encoding' conform to the 'Sendable' protocol
 14 |         //// UTF-8
 15 |         case utf8
    :
 25 |
 26 |     //// The Unicode encodings supported by JSONParser.swift
 27 |     public static let supportedEncodings: [Encoding] = [.utf8]
    |                       |- warning: static property 'supportedEncodings' is not concurrency-safe because non-'Sendable' type '[JSONEncodingDetector.Encoding]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'supportedEncodings' 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
 28 |
 29 |     typealias ByteStreamPrefixInformation = (encoding: Encoding, byteOrderMarkLength: Int)
/host/spi-builder-workspace/Sources/Freddy/JSONParser.swift:934:14: warning: associated value 'invalidUnicodeStreamEncoding(detectedEncoding:)' of 'Sendable'-conforming enum 'Error' has non-sendable type 'JSONEncodingDetector.Encoding'; this is an error in the Swift 6 language mode
932 |
933 |         /// Supplied data is encoded in an unsupported format.
934 |         case invalidUnicodeStreamEncoding(detectedEncoding: JSONEncodingDetector.Encoding)
    |              `- warning: associated value 'invalidUnicodeStreamEncoding(detectedEncoding:)' of 'Sendable'-conforming enum 'Error' has non-sendable type 'JSONEncodingDetector.Encoding'; this is an error in the Swift 6 language mode
935 |     }
936 |
/host/spi-builder-workspace/Sources/Freddy/JSONEncodingDetector.swift:13:17: note: consider making enum 'Encoding' conform to the 'Sendable' protocol
 11 |
 12 |     //// The Unicode encodings looked for during detection
 13 |     public enum Encoding {
    |                 `- note: consider making enum 'Encoding' conform to the 'Sendable' protocol
 14 |         //// UTF-8
 15 |         case utf8
/host/spi-builder-workspace/Sources/Freddy/JSONSerializing.swift:18:23: warning: static property 'nullSkipsKey' is not concurrency-safe because non-'Sendable' type 'SerializeOptions' may have shared mutable state; this is an error in the Swift 6 language mode
 8 | /// * `.nullSkipsKey` - Skip keys with `null` values so the key is not included
 9 | /// in the serialized json
10 | public struct SerializeOptions: OptionSet {
   |               `- note: consider making struct 'SerializeOptions' conform to the 'Sendable' protocol
11 |     public let rawValue: Int
12 |     public init(rawValue: Int) {
   :
16 |     /// Skip keys with `null` values so the key is not included
17 |     /// in the serialized json
18 |     public static let nullSkipsKey = SerializeOptions(rawValue: 1 << 0)
   |                       |- warning: static property 'nullSkipsKey' is not concurrency-safe because non-'Sendable' type 'SerializeOptions' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'nullSkipsKey' 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
19 | }
20 |
/host/spi-builder-workspace/Sources/Freddy/JSONSubscripting.swift:86:14: warning: associated value 'subscriptIntoNull' of 'Sendable'-conforming enum 'SubscriptError' has non-sendable type 'any JSONPathType'; this is an error in the Swift 6 language mode
 13 | /// A custom type, such as a `RawRepresentable` enum, may be made to conform to `JSONPathType`
 14 | /// and used with the subscript APIs.
 15 | public protocol JSONPathType {
    |                 `- note: protocol 'JSONPathType' does not conform to the 'Sendable' protocol
 16 |     /// Use `self` to key into a `dictionary`.
 17 |     ///
    :
 84 |
 85 |     enum SubscriptError: Swift.Error {
 86 |         case subscriptIntoNull(JSONPathType)
    |              `- warning: associated value 'subscriptIntoNull' of 'Sendable'-conforming enum 'SubscriptError' has non-sendable type 'any JSONPathType'; this is an error in the Swift 6 language mode
 87 |     }
 88 |
/host/spi-builder-workspace/Sources/Freddy/JSONSubscripting.swift:247:27: warning: static property 'nullBecomesNil' is not concurrency-safe because non-'Sendable' type 'JSON.SubscriptingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
238 |     /// * `.nullBecomesNil` - Treat `null` values as `nil`.
239 |     /// * `.missingKeyBecomesNil` - Treat missing keys as `nil`.
240 |     public struct SubscriptingOptions: OptionSet {
    |                   `- note: consider making struct 'SubscriptingOptions' conform to the 'Sendable' protocol
241 |         public let rawValue: Int
242 |         public init(rawValue: Int) {
    :
245 |
246 |         /// Treat `null` values as `nil`.
247 |         public static let nullBecomesNil = SubscriptingOptions(rawValue: 1 << 0)
    |                           |- warning: static property 'nullBecomesNil' is not concurrency-safe because non-'Sendable' type 'JSON.SubscriptingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: annotate 'nullBecomesNil' 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
248 |         /// Treat missing keys as `nil`.
249 |         public static let missingKeyBecomesNil = SubscriptingOptions(rawValue: 1 << 1)
/host/spi-builder-workspace/Sources/Freddy/JSONSubscripting.swift:249:27: warning: static property 'missingKeyBecomesNil' is not concurrency-safe because non-'Sendable' type 'JSON.SubscriptingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
238 |     /// * `.nullBecomesNil` - Treat `null` values as `nil`.
239 |     /// * `.missingKeyBecomesNil` - Treat missing keys as `nil`.
240 |     public struct SubscriptingOptions: OptionSet {
    |                   `- note: consider making struct 'SubscriptingOptions' conform to the 'Sendable' protocol
241 |         public let rawValue: Int
242 |         public init(rawValue: Int) {
    :
247 |         public static let nullBecomesNil = SubscriptingOptions(rawValue: 1 << 0)
248 |         /// Treat missing keys as `nil`.
249 |         public static let missingKeyBecomesNil = SubscriptingOptions(rawValue: 1 << 1)
    |                           |- warning: static property 'missingKeyBecomesNil' is not concurrency-safe because non-'Sendable' type 'JSON.SubscriptingOptions' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: annotate 'missingKeyBecomesNil' 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
250 |     }
251 |
[10/13] Compiling Freddy JSONEncodable.swift
/host/spi-builder-workspace/Sources/Freddy/JSONEncodingDetector.swift:27:23: warning: static property 'supportedEncodings' is not concurrency-safe because non-'Sendable' type '[JSONEncodingDetector.Encoding]' may have shared mutable state; this is an error in the Swift 6 language mode
 11 |
 12 |     //// The Unicode encodings looked for during detection
 13 |     public enum Encoding {
    |                 `- note: consider making enum 'Encoding' conform to the 'Sendable' protocol
 14 |         //// UTF-8
 15 |         case utf8
    :
 25 |
 26 |     //// The Unicode encodings supported by JSONParser.swift
 27 |     public static let supportedEncodings: [Encoding] = [.utf8]
    |                       |- warning: static property 'supportedEncodings' is not concurrency-safe because non-'Sendable' type '[JSONEncodingDetector.Encoding]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'supportedEncodings' 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
 28 |
 29 |     typealias ByteStreamPrefixInformation = (encoding: Encoding, byteOrderMarkLength: Int)
[11/13] Compiling Freddy JSONEncodingDetector.swift
/host/spi-builder-workspace/Sources/Freddy/JSONEncodingDetector.swift:27:23: warning: static property 'supportedEncodings' is not concurrency-safe because non-'Sendable' type '[JSONEncodingDetector.Encoding]' may have shared mutable state; this is an error in the Swift 6 language mode
 11 |
 12 |     //// The Unicode encodings looked for during detection
 13 |     public enum Encoding {
    |                 `- note: consider making enum 'Encoding' conform to the 'Sendable' protocol
 14 |         //// UTF-8
 15 |         case utf8
    :
 25 |
 26 |     //// The Unicode encodings supported by JSONParser.swift
 27 |     public static let supportedEncodings: [Encoding] = [.utf8]
    |                       |- warning: static property 'supportedEncodings' is not concurrency-safe because non-'Sendable' type '[JSONEncodingDetector.Encoding]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'supportedEncodings' 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
 28 |
 29 |     typealias ByteStreamPrefixInformation = (encoding: Encoding, byteOrderMarkLength: Int)
[12/13] Compiling Freddy JSONParser.swift
/host/spi-builder-workspace/Sources/Freddy/JSONParser.swift:934:14: warning: associated value 'invalidUnicodeStreamEncoding(detectedEncoding:)' of 'Sendable'-conforming enum 'Error' has non-sendable type 'JSONEncodingDetector.Encoding'; this is an error in the Swift 6 language mode
932 |
933 |         /// Supplied data is encoded in an unsupported format.
934 |         case invalidUnicodeStreamEncoding(detectedEncoding: JSONEncodingDetector.Encoding)
    |              `- warning: associated value 'invalidUnicodeStreamEncoding(detectedEncoding:)' of 'Sendable'-conforming enum 'Error' has non-sendable type 'JSONEncodingDetector.Encoding'; this is an error in the Swift 6 language mode
935 |     }
936 |
/host/spi-builder-workspace/Sources/Freddy/JSONEncodingDetector.swift:13:17: note: consider making enum 'Encoding' conform to the 'Sendable' protocol
 11 |
 12 |     //// The Unicode encodings looked for during detection
 13 |     public enum Encoding {
    |                 `- note: consider making enum 'Encoding' conform to the 'Sendable' protocol
 14 |         //// UTF-8
 15 |         case utf8
/host/spi-builder-workspace/Sources/Freddy/JSONEncodingDetector.swift:27:23: warning: static property 'supportedEncodings' is not concurrency-safe because non-'Sendable' type '[JSONEncodingDetector.Encoding]' may have shared mutable state; this is an error in the Swift 6 language mode
 11 |
 12 |     //// The Unicode encodings looked for during detection
 13 |     public enum Encoding {
    |                 `- note: consider making enum 'Encoding' conform to the 'Sendable' protocol
 14 |         //// UTF-8
 15 |         case utf8
    :
 25 |
 26 |     //// The Unicode encodings supported by JSONParser.swift
 27 |     public static let supportedEncodings: [Encoding] = [.utf8]
    |                       |- warning: static property 'supportedEncodings' is not concurrency-safe because non-'Sendable' type '[JSONEncodingDetector.Encoding]' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'supportedEncodings' 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
 28 |
 29 |     typealias ByteStreamPrefixInformation = (encoding: Encoding, byteOrderMarkLength: Int)
[13/13] Compiling Freddy JSONParsing.swift
Build complete! (13.82s)
Build complete.
{
  "dependencies" : [
  ],
  "manifest_display_name" : "Freddy",
  "name" : "Freddy",
  "path" : "/host/spi-builder-workspace",
  "platforms" : [
  ],
  "products" : [
    {
      "name" : "Freddy",
      "targets" : [
        "Freddy"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "Freddy",
      "module_type" : "SwiftTarget",
      "name" : "Freddy",
      "path" : "Sources/Freddy",
      "product_memberships" : [
        "Freddy"
      ],
      "sources" : [
        "JSON.swift",
        "JSONDecodable.swift",
        "JSONEncodable.swift",
        "JSONEncodingDetector.swift",
        "JSONLiteralConvertible.swift",
        "JSONOptional.swift",
        "JSONParser.swift",
        "JSONParsing.swift",
        "JSONSerializing.swift",
        "JSONSubscripting.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.0"
}
Done.
This is a staging environment. For live and up-to-date package information, visit swiftpackageindex.com.