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 Kodable, reference main (a48c37), with Swift 6.1 for Linux on 1 May 2025 08:00:45 UTC.

Swift 6 data race errors: 8

Build Command

bash -c docker run --pull=always --rm -v "checkouts-4609320-0":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.1-latest swift build --triple x86_64-unknown-linux-gnu -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures 2>&1

Build Log

========================================
RunAll
========================================
Builder version: 4.61.2
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/jarmourato/Kodable.git
Reference: main
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/jarmourato/Kodable
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
HEAD is now at a48c374 update CI
Cloned https://github.com/jarmourato/Kodable.git
Revision (git rev-parse @):
a48c374e7fd3c88c61bfda5ea0c4f8dfe5b5a943
SUCCESS checkout https://github.com/jarmourato/Kodable.git at main
========================================
Build
========================================
Selected platform:         linux
Swift version:             6.1
Building package at path:  $PWD
https://github.com/jarmourato/Kodable.git
https://github.com/jarmourato/Kodable.git
WARNING: environment variable SUPPRESS_SWIFT_6_FLAGS is not set
{
  "dependencies" : [
    {
      "identity" : "cwlpreconditiontesting",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "2.1.0",
            "upper_bound" : "3.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/mattgallagher/CwlPreconditionTesting.git"
    },
    {
      "identity" : "jsen",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.1.2",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/rogerluan/JSEN"
    },
    {
      "identity" : "runtime",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "2.2.2",
            "upper_bound" : "3.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/wickwirew/Runtime"
    }
  ],
  "manifest_display_name" : "Kodable",
  "name" : "Kodable",
  "path" : "/host/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "10.14"
    },
    {
      "name" : "ios",
      "version" : "12.0"
    },
    {
      "name" : "tvos",
      "version" : "12.0"
    },
    {
      "name" : "watchos",
      "version" : "5.0"
    }
  ],
  "products" : [
    {
      "name" : "Kodable",
      "targets" : [
        "Kodable"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "KodableTests",
      "module_type" : "SwiftTarget",
      "name" : "KodableTests",
      "path" : "Tests",
      "product_dependencies" : [
        "CwlPreconditionTesting"
      ],
      "sources" : [
        "KodableTests.swift",
        "XCTestCase+Utilities.swift"
      ],
      "target_dependencies" : [
        "Kodable"
      ],
      "type" : "test"
    },
    {
      "c99name" : "Kodable",
      "module_type" : "SwiftTarget",
      "name" : "Kodable",
      "path" : "Sources",
      "product_dependencies" : [
        "Runtime",
        "JSEN"
      ],
      "product_memberships" : [
        "Kodable"
      ],
      "sources" : [
        "Debug/DebugJSON.swift",
        "Extensions/Codable+NestedKeyable.swift",
        "Extensions/Codable+Utilities.swift",
        "Extensions/Comparable+Utilities.swift",
        "Extensions/DecodingError+Utilities.swift",
        "Extensions/Optional+Utilities.swift",
        "Extensions/Runtime+Utilities.swift",
        "Extensions/TryCatch+Utilities.swift",
        "Kodable/Codable+AnyCodingKey.swift",
        "Kodable/Codable+Lossless.swift",
        "Kodable/Kodable.swift",
        "Kodable/KodableError.swift",
        "Kodable/KodableOption.swift",
        "Kodable/KodableOptions+Presets.swift",
        "Kodable/KodableTransformable.swift",
        "Wrappers/CodableDate.swift",
        "Wrappers/Coding.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.3"
}
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4609320-0":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.1-latest swift build --triple x86_64-unknown-linux-gnu -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures 2>&1
basic-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:3bdcac04179f4ed3e5b8e9dbd6e74bbf5ebc0f4fde48bbaad7d1e5c757e65bcb
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.1-latest
Fetching https://github.com/rogerluan/JSEN
Fetching https://github.com/wickwirew/Runtime
Fetching https://github.com/mattgallagher/CwlPreconditionTesting.git
[1/132] Fetching jsen
[133/1389] Fetching jsen, cwlpreconditiontesting
[1390/3355] Fetching jsen, cwlpreconditiontesting, runtime
Fetched https://github.com/rogerluan/JSEN from cache (0.22s)
Fetched https://github.com/mattgallagher/CwlPreconditionTesting.git from cache (0.22s)
[1396/1966] Fetching runtime
Fetched https://github.com/wickwirew/Runtime from cache (0.26s)
Computing version for https://github.com/rogerluan/JSEN
Computed https://github.com/rogerluan/JSEN at 1.2.1 (0.72s)
Computing version for https://github.com/mattgallagher/CwlPreconditionTesting.git
Computed https://github.com/mattgallagher/CwlPreconditionTesting.git at 2.2.2 (0.46s)
Fetching https://github.com/mattgallagher/CwlCatchException.git
[1/455] Fetching cwlcatchexception
Fetched https://github.com/mattgallagher/CwlCatchException.git from cache (0.16s)
Computing version for https://github.com/mattgallagher/CwlCatchException.git
Computed https://github.com/mattgallagher/CwlCatchException.git at 2.2.1 (0.62s)
Computing version for https://github.com/wickwirew/Runtime
Computed https://github.com/wickwirew/Runtime at 2.2.7 (0.46s)
Creating working copy for https://github.com/mattgallagher/CwlPreconditionTesting.git
Working copy of https://github.com/mattgallagher/CwlPreconditionTesting.git resolved at 2.2.2
Creating working copy for https://github.com/mattgallagher/CwlCatchException.git
Working copy of https://github.com/mattgallagher/CwlCatchException.git resolved at 2.2.1
Creating working copy for https://github.com/rogerluan/JSEN
Working copy of https://github.com/rogerluan/JSEN resolved at 1.2.1
Creating working copy for https://github.com/wickwirew/Runtime
Working copy of https://github.com/wickwirew/Runtime resolved at 2.2.7
Building for debugging...
[0/5] Write sources
[3/5] Compiling CRuntime dummy.c
[4/5] Write swift-version-24593BA9C3E375BF.txt
[6/53] Compiling JSEN JSEN+SyntacticSugar.swift
[7/53] Compiling Runtime ProtocolMetadataLayout.swift
[8/53] Compiling Runtime ProtocolTypeContainer.swift
[9/53] Compiling Runtime StructMetadataLayout.swift
[10/53] Compiling Runtime StructTypeDescriptor.swift
[11/53] Compiling Runtime TargetTypeGenericContextDescriptorHeader.swift
[12/53] Compiling Runtime TupleMetadataLayout.swift
[13/58] Compiling Runtime EnumTypeDescriptor.swift
[14/58] Compiling Runtime ExistentialContainter.swift
[15/58] Compiling Runtime FieldDescriptor.swift
[16/58] Compiling Runtime FunctionMetadataLayout.swift
[17/58] Compiling Runtime MetadataLayoutType.swift
[18/58] Compiling Runtime ProtocolDescriptor.swift
[19/58] Compiling Runtime Errors.swift
[20/58] Compiling Runtime FunctionInfo.swift
[21/58] Compiling Runtime Kind.swift
[22/58] Compiling Runtime PropertyInfo.swift
[23/58] Compiling Runtime TypeInfo.swift
[24/58] Compiling Runtime TypeInfoConvertible.swift
[25/58] Compiling Runtime Pointers.swift
[26/58] Compiling Runtime RelativePointer.swift
[27/58] Compiling Runtime RelativeVectorPointer.swift
[28/58] Compiling Runtime Union.swift
[29/58] Compiling Runtime TypeDescriptor.swift
[30/58] Compiling Runtime ValueWitnessTable.swift
[31/58] Compiling Runtime ClassMetadata.swift
[32/58] Compiling Runtime EnumMetadata.swift
[33/58] Compiling Runtime FuntionMetadata.swift
[34/58] Compiling Runtime Metadata.swift
[35/58] Compiling Runtime MetadataType.swift
[36/58] Compiling Runtime NominalMetadataType.swift
[37/58] Compiling Runtime ProtocolMetadata.swift
[38/58] Compiling Runtime StructMetadata.swift
[39/58] Compiling Runtime TupleMetadata.swift
[40/58] Compiling Runtime Case.swift
[41/58] Compiling Runtime Vector.swift
[42/58] Compiling Runtime GettersSetters.swift
[43/58] Compiling Runtime Pointer+Extensions.swift
[44/58] Compiling Runtime RetainCounts.swift
[45/58] Compiling Runtime String+Extensions.swift
[46/58] Compiling JSEN JSEN+KeyPath.swift
[47/58] Emitting module JSEN
[48/58] Compiling JSEN JSEN+Codable.swift
[49/58] Emitting module Runtime
[50/58] Compiling Runtime DefaultValue.swift
[51/58] Compiling Runtime Factory.swift
[52/58] Compiling Runtime ClassHeader.swift
[53/58] Compiling Runtime ClassMetadataLayout.swift
[54/58] Compiling Runtime ClassTypeDescriptor.swift
[55/58] Compiling Runtime EnumMetadataLayout.swift
[57/59] Compiling JSEN JSENRepresentable.swift
[58/59] Compiling JSEN JSEN.swift
[59/59] Compiling JSEN KeyPath.swift
[61/76] Emitting module Kodable
/host/spi-builder-workspace/Sources/Extensions/Runtime+Utilities.swift:32:24: warning: static property 'cachedTypeInfo' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
30 |     }
31 |
32 |     private static var cachedTypeInfo: [HashedType: TypeInfo] = [:]
   |                        |- warning: static property 'cachedTypeInfo' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert 'cachedTypeInfo' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: add '@MainActor' to make static property 'cachedTypeInfo' part of global actor 'MainActor'
   |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
33 | }
34 |
/host/spi-builder-workspace/Sources/Kodable/Codable+Lossless.swift:166:1: warning: extension declares a conformance of imported type 'Optional' to imported protocol 'CustomStringConvertible'; this will not behave correctly if the owners of 'Swift' introduce this conformance in the future
164 | // MARK: Optional LossLessDecodable Conformance
165 |
166 | extension Optional: CustomStringConvertible where Wrapped: LosslessDecodable {
    | |- warning: extension declares a conformance of imported type 'Optional' to imported protocol 'CustomStringConvertible'; this will not behave correctly if the owners of 'Swift' introduce this conformance in the future
    | `- note: add '@retroactive' to silence this warning
167 |     public var description: String {
168 |         switch self {
/host/spi-builder-workspace/Sources/Kodable/Codable+Lossless.swift:175:1: warning: extension declares a conformance of imported type 'Optional' to imported protocol 'LosslessStringConvertible'; this will not behave correctly if the owners of 'Swift' introduce this conformance in the future
173 | }
174 |
175 | extension Optional: LosslessStringConvertible where Wrapped: LosslessDecodable {
    | |- warning: extension declares a conformance of imported type 'Optional' to imported protocol 'LosslessStringConvertible'; this will not behave correctly if the owners of 'Swift' introduce this conformance in the future
    | `- note: add '@retroactive' to silence this warning
176 |     public init?(_ description: String) {
177 |         self = Wrapped(description)
/host/spi-builder-workspace/Sources/Kodable/KodableError.swift:11:10: warning: associated value 'validationFailed(type:property:parsedValue:)' of 'Sendable'-conforming enum 'KodableError' has non-sendable type 'Any'; this is an error in the Swift 6 language mode
  9 |     case failedToParseDate(source: String)
 10 |     /// Thrown whenever there is at least one validation modifier that fails the validation of the value parsed
 11 |     case validationFailed(type: Any, property: String, parsedValue: Any)
    |          `- warning: associated value 'validationFailed(type:property:parsedValue:)' of 'Sendable'-conforming enum 'KodableError' has non-sendable type 'Any'; this is an error in the Swift 6 language mode
 12 |     /// Thrown whenever a property cannot be decoded
 13 |     indirect case failedDecodingProperty(property: String, key: String, type: Any, underlyingError: KodableError)
/host/spi-builder-workspace/Sources/Kodable/KodableError.swift:11:10: warning: associated value 'validationFailed(type:property:parsedValue:)' of 'Sendable'-conforming enum 'KodableError' has non-sendable type 'Any'; this is an error in the Swift 6 language mode
  9 |     case failedToParseDate(source: String)
 10 |     /// Thrown whenever there is at least one validation modifier that fails the validation of the value parsed
 11 |     case validationFailed(type: Any, property: String, parsedValue: Any)
    |          `- warning: associated value 'validationFailed(type:property:parsedValue:)' of 'Sendable'-conforming enum 'KodableError' has non-sendable type 'Any'; this is an error in the Swift 6 language mode
 12 |     /// Thrown whenever a property cannot be decoded
 13 |     indirect case failedDecodingProperty(property: String, key: String, type: Any, underlyingError: KodableError)
/host/spi-builder-workspace/Sources/Kodable/KodableError.swift:13:19: warning: associated value 'failedDecodingProperty(property:key:type:underlyingError:)' of 'Sendable'-conforming enum 'KodableError' has non-sendable type 'Any'; this is an error in the Swift 6 language mode
 11 |     case validationFailed(type: Any, property: String, parsedValue: Any)
 12 |     /// Thrown whenever a property cannot be decoded
 13 |     indirect case failedDecodingProperty(property: String, key: String, type: Any, underlyingError: KodableError)
    |                   `- warning: associated value 'failedDecodingProperty(property:key:type:underlyingError:)' of 'Sendable'-conforming enum 'KodableError' has non-sendable type 'Any'; this is an error in the Swift 6 language mode
 14 |     /// Thrown whenever a Type cannot be decoded
 15 |     indirect case failedDecodingType(type: Any, underlyingError: KodableError)
/host/spi-builder-workspace/Sources/Kodable/KodableError.swift:15:19: warning: associated value 'failedDecodingType(type:underlyingError:)' of 'Sendable'-conforming enum 'KodableError' has non-sendable type 'Any'; this is an error in the Swift 6 language mode
 13 |     indirect case failedDecodingProperty(property: String, key: String, type: Any, underlyingError: KodableError)
 14 |     /// Thrown whenever a Type cannot be decoded
 15 |     indirect case failedDecodingType(type: Any, underlyingError: KodableError)
    |                   `- warning: associated value 'failedDecodingType(type:underlyingError:)' of 'Sendable'-conforming enum 'KodableError' has non-sendable type 'Any'; this is an error in the Swift 6 language mode
 16 | }
 17 |
/host/spi-builder-workspace/Sources/Kodable/KodableOptions+Presets.swift:90:1: warning: extension declares a conformance of imported type 'Optional' to imported protocol 'Comparable'; this will not behave correctly if the owners of 'Swift' introduce this conformance in the future
 88 | }
 89 |
 90 | extension Optional: Comparable where Wrapped: Comparable {
    | |- warning: extension declares a conformance of imported type 'Optional' to imported protocol 'Comparable'; this will not behave correctly if the owners of 'Swift' introduce this conformance in the future
    | `- note: add '@retroactive' to silence this warning
 91 |     public static func < (lhs: Optional, rhs: Optional) -> Bool {
 92 |         switch (lhs, rhs) {
/host/spi-builder-workspace/Sources/Wrappers/CodableDate.swift:123:24: warning: static property 'iso8601Formatter' is not concurrency-safe because non-'Sendable' type 'ISO8601DateFormatter' may have shared mutable state; this is an error in the Swift 6 language mode
121 |     }
122 |
123 |     private static let iso8601Formatter = ISO8601DateFormatter()
    |                        |- warning: static property 'iso8601Formatter' is not concurrency-safe because non-'Sendable' type 'ISO8601DateFormatter' may have shared mutable state; this is an error in the Swift 6 language mode
    |                        |- note: add '@MainActor' to make static property 'iso8601Formatter' part of global actor 'MainActor'
    |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
124 |     private static let iso8601WithFractionalSecondsFormatter: ISO8601DateFormatter = {
125 |         let result = ISO8601DateFormatter()
Foundation.ISO8601DateFormatter:1:12: note: class 'ISO8601DateFormatter' does not conform to the 'Sendable' protocol
 1 | open class ISO8601DateFormatter : Formatter, NSSecureCoding {
   |            `- note: class 'ISO8601DateFormatter' does not conform to the 'Sendable' protocol
 2 |     open var timeZone: TimeZone! { get set }
 3 |     open var formatOptions: ISO8601DateFormatter.Options { get set }
/host/spi-builder-workspace/Sources/Wrappers/CodableDate.swift:124:24: warning: static property 'iso8601WithFractionalSecondsFormatter' is not concurrency-safe because non-'Sendable' type 'ISO8601DateFormatter' may have shared mutable state; this is an error in the Swift 6 language mode
122 |
123 |     private static let iso8601Formatter = ISO8601DateFormatter()
124 |     private static let iso8601WithFractionalSecondsFormatter: ISO8601DateFormatter = {
    |                        |- warning: static property 'iso8601WithFractionalSecondsFormatter' is not concurrency-safe because non-'Sendable' type 'ISO8601DateFormatter' may have shared mutable state; this is an error in the Swift 6 language mode
    |                        |- note: add '@MainActor' to make static property 'iso8601WithFractionalSecondsFormatter' part of global actor 'MainActor'
    |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
125 |         let result = ISO8601DateFormatter()
126 |         result.formatOptions.insert(.withFractionalSeconds)
Foundation.ISO8601DateFormatter:1:12: note: class 'ISO8601DateFormatter' does not conform to the 'Sendable' protocol
 1 | open class ISO8601DateFormatter : Formatter, NSSecureCoding {
   |            `- note: class 'ISO8601DateFormatter' does not conform to the 'Sendable' protocol
 2 |     open var timeZone: TimeZone! { get set }
 3 |     open var formatOptions: ISO8601DateFormatter.Options { get set }
/host/spi-builder-workspace/Sources/Wrappers/CodableDate.swift:132:24: warning: static property 'formatters' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
130 |     private static let rfc2822Formatter: DateFormatter = getFormatter("EEE, d MMM y HH:mm:ss zzz")
131 |     private static let rfc3339Formatter: DateFormatter = getFormatter("yyyy-MM-dd'T'HH:mm:ssZ")
132 |     private static var formatters: [String: Formatter] = [:]
    |                        |- warning: static property 'formatters' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                        |- note: convert 'formatters' to a 'let' constant to make 'Sendable' shared state immutable
    |                        |- note: add '@MainActor' to make static property 'formatters' part of global actor 'MainActor'
    |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
133 |
134 |     private static func getFormatter(_ dateFormat: String) -> DateFormatter {
[62/78] Compiling Kodable DebugJSON.swift
[63/78] Compiling Kodable Codable+NestedKeyable.swift
[64/78] Compiling Kodable Codable+Utilities.swift
[65/78] Compiling Kodable KodableError.swift
/host/spi-builder-workspace/Sources/Kodable/KodableError.swift:11:10: warning: associated value 'validationFailed(type:property:parsedValue:)' of 'Sendable'-conforming enum 'KodableError' has non-sendable type 'Any'; this is an error in the Swift 6 language mode
  9 |     case failedToParseDate(source: String)
 10 |     /// Thrown whenever there is at least one validation modifier that fails the validation of the value parsed
 11 |     case validationFailed(type: Any, property: String, parsedValue: Any)
    |          `- warning: associated value 'validationFailed(type:property:parsedValue:)' of 'Sendable'-conforming enum 'KodableError' has non-sendable type 'Any'; this is an error in the Swift 6 language mode
 12 |     /// Thrown whenever a property cannot be decoded
 13 |     indirect case failedDecodingProperty(property: String, key: String, type: Any, underlyingError: KodableError)
/host/spi-builder-workspace/Sources/Kodable/KodableError.swift:11:10: warning: associated value 'validationFailed(type:property:parsedValue:)' of 'Sendable'-conforming enum 'KodableError' has non-sendable type 'Any'; this is an error in the Swift 6 language mode
  9 |     case failedToParseDate(source: String)
 10 |     /// Thrown whenever there is at least one validation modifier that fails the validation of the value parsed
 11 |     case validationFailed(type: Any, property: String, parsedValue: Any)
    |          `- warning: associated value 'validationFailed(type:property:parsedValue:)' of 'Sendable'-conforming enum 'KodableError' has non-sendable type 'Any'; this is an error in the Swift 6 language mode
 12 |     /// Thrown whenever a property cannot be decoded
 13 |     indirect case failedDecodingProperty(property: String, key: String, type: Any, underlyingError: KodableError)
/host/spi-builder-workspace/Sources/Kodable/KodableError.swift:13:19: warning: associated value 'failedDecodingProperty(property:key:type:underlyingError:)' of 'Sendable'-conforming enum 'KodableError' has non-sendable type 'Any'; this is an error in the Swift 6 language mode
 11 |     case validationFailed(type: Any, property: String, parsedValue: Any)
 12 |     /// Thrown whenever a property cannot be decoded
 13 |     indirect case failedDecodingProperty(property: String, key: String, type: Any, underlyingError: KodableError)
    |                   `- warning: associated value 'failedDecodingProperty(property:key:type:underlyingError:)' of 'Sendable'-conforming enum 'KodableError' has non-sendable type 'Any'; this is an error in the Swift 6 language mode
 14 |     /// Thrown whenever a Type cannot be decoded
 15 |     indirect case failedDecodingType(type: Any, underlyingError: KodableError)
/host/spi-builder-workspace/Sources/Kodable/KodableError.swift:15:19: warning: associated value 'failedDecodingType(type:underlyingError:)' of 'Sendable'-conforming enum 'KodableError' has non-sendable type 'Any'; this is an error in the Swift 6 language mode
 13 |     indirect case failedDecodingProperty(property: String, key: String, type: Any, underlyingError: KodableError)
 14 |     /// Thrown whenever a Type cannot be decoded
 15 |     indirect case failedDecodingType(type: Any, underlyingError: KodableError)
    |                   `- warning: associated value 'failedDecodingType(type:underlyingError:)' of 'Sendable'-conforming enum 'KodableError' has non-sendable type 'Any'; this is an error in the Swift 6 language mode
 16 | }
 17 |
[66/78] Compiling Kodable KodableOption.swift
/host/spi-builder-workspace/Sources/Kodable/KodableError.swift:11:10: warning: associated value 'validationFailed(type:property:parsedValue:)' of 'Sendable'-conforming enum 'KodableError' has non-sendable type 'Any'; this is an error in the Swift 6 language mode
  9 |     case failedToParseDate(source: String)
 10 |     /// Thrown whenever there is at least one validation modifier that fails the validation of the value parsed
 11 |     case validationFailed(type: Any, property: String, parsedValue: Any)
    |          `- warning: associated value 'validationFailed(type:property:parsedValue:)' of 'Sendable'-conforming enum 'KodableError' has non-sendable type 'Any'; this is an error in the Swift 6 language mode
 12 |     /// Thrown whenever a property cannot be decoded
 13 |     indirect case failedDecodingProperty(property: String, key: String, type: Any, underlyingError: KodableError)
/host/spi-builder-workspace/Sources/Kodable/KodableError.swift:11:10: warning: associated value 'validationFailed(type:property:parsedValue:)' of 'Sendable'-conforming enum 'KodableError' has non-sendable type 'Any'; this is an error in the Swift 6 language mode
  9 |     case failedToParseDate(source: String)
 10 |     /// Thrown whenever there is at least one validation modifier that fails the validation of the value parsed
 11 |     case validationFailed(type: Any, property: String, parsedValue: Any)
    |          `- warning: associated value 'validationFailed(type:property:parsedValue:)' of 'Sendable'-conforming enum 'KodableError' has non-sendable type 'Any'; this is an error in the Swift 6 language mode
 12 |     /// Thrown whenever a property cannot be decoded
 13 |     indirect case failedDecodingProperty(property: String, key: String, type: Any, underlyingError: KodableError)
/host/spi-builder-workspace/Sources/Kodable/KodableError.swift:13:19: warning: associated value 'failedDecodingProperty(property:key:type:underlyingError:)' of 'Sendable'-conforming enum 'KodableError' has non-sendable type 'Any'; this is an error in the Swift 6 language mode
 11 |     case validationFailed(type: Any, property: String, parsedValue: Any)
 12 |     /// Thrown whenever a property cannot be decoded
 13 |     indirect case failedDecodingProperty(property: String, key: String, type: Any, underlyingError: KodableError)
    |                   `- warning: associated value 'failedDecodingProperty(property:key:type:underlyingError:)' of 'Sendable'-conforming enum 'KodableError' has non-sendable type 'Any'; this is an error in the Swift 6 language mode
 14 |     /// Thrown whenever a Type cannot be decoded
 15 |     indirect case failedDecodingType(type: Any, underlyingError: KodableError)
/host/spi-builder-workspace/Sources/Kodable/KodableError.swift:15:19: warning: associated value 'failedDecodingType(type:underlyingError:)' of 'Sendable'-conforming enum 'KodableError' has non-sendable type 'Any'; this is an error in the Swift 6 language mode
 13 |     indirect case failedDecodingProperty(property: String, key: String, type: Any, underlyingError: KodableError)
 14 |     /// Thrown whenever a Type cannot be decoded
 15 |     indirect case failedDecodingType(type: Any, underlyingError: KodableError)
    |                   `- warning: associated value 'failedDecodingType(type:underlyingError:)' of 'Sendable'-conforming enum 'KodableError' has non-sendable type 'Any'; this is an error in the Swift 6 language mode
 16 | }
 17 |
[67/78] Compiling Kodable Optional+Utilities.swift
/host/spi-builder-workspace/Sources/Extensions/Runtime+Utilities.swift:32:24: warning: static property 'cachedTypeInfo' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
30 |     }
31 |
32 |     private static var cachedTypeInfo: [HashedType: TypeInfo] = [:]
   |                        |- warning: static property 'cachedTypeInfo' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert 'cachedTypeInfo' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: add '@MainActor' to make static property 'cachedTypeInfo' part of global actor 'MainActor'
   |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
33 | }
34 |
[68/78] Compiling Kodable Runtime+Utilities.swift
/host/spi-builder-workspace/Sources/Extensions/Runtime+Utilities.swift:32:24: warning: static property 'cachedTypeInfo' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
30 |     }
31 |
32 |     private static var cachedTypeInfo: [HashedType: TypeInfo] = [:]
   |                        |- warning: static property 'cachedTypeInfo' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                        |- note: convert 'cachedTypeInfo' to a 'let' constant to make 'Sendable' shared state immutable
   |                        |- note: add '@MainActor' to make static property 'cachedTypeInfo' part of global actor 'MainActor'
   |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
33 | }
34 |
[69/78] Compiling Kodable TryCatch+Utilities.swift
[70/78] Compiling Kodable Codable+AnyCodingKey.swift
[71/78] Compiling Kodable Comparable+Utilities.swift
[72/78] Compiling Kodable DecodingError+Utilities.swift
[73/78] Compiling Kodable KodableOptions+Presets.swift
/host/spi-builder-workspace/Sources/Kodable/KodableOptions+Presets.swift:90:1: warning: extension declares a conformance of imported type 'Optional' to imported protocol 'Comparable'; this will not behave correctly if the owners of 'Swift' introduce this conformance in the future
 88 | }
 89 |
 90 | extension Optional: Comparable where Wrapped: Comparable {
    | |- warning: extension declares a conformance of imported type 'Optional' to imported protocol 'Comparable'; this will not behave correctly if the owners of 'Swift' introduce this conformance in the future
    | `- note: add '@retroactive' to silence this warning
 91 |     public static func < (lhs: Optional, rhs: Optional) -> Bool {
 92 |         switch (lhs, rhs) {
[74/78] Compiling Kodable KodableTransformable.swift
/host/spi-builder-workspace/Sources/Kodable/KodableOptions+Presets.swift:90:1: warning: extension declares a conformance of imported type 'Optional' to imported protocol 'Comparable'; this will not behave correctly if the owners of 'Swift' introduce this conformance in the future
 88 | }
 89 |
 90 | extension Optional: Comparable where Wrapped: Comparable {
    | |- warning: extension declares a conformance of imported type 'Optional' to imported protocol 'Comparable'; this will not behave correctly if the owners of 'Swift' introduce this conformance in the future
    | `- note: add '@retroactive' to silence this warning
 91 |     public static func < (lhs: Optional, rhs: Optional) -> Bool {
 92 |         switch (lhs, rhs) {
[75/78] Compiling Kodable Codable+Lossless.swift
/host/spi-builder-workspace/Sources/Kodable/Codable+Lossless.swift:166:1: warning: extension declares a conformance of imported type 'Optional' to imported protocol 'CustomStringConvertible'; this will not behave correctly if the owners of 'Swift' introduce this conformance in the future
164 | // MARK: Optional LossLessDecodable Conformance
165 |
166 | extension Optional: CustomStringConvertible where Wrapped: LosslessDecodable {
    | |- warning: extension declares a conformance of imported type 'Optional' to imported protocol 'CustomStringConvertible'; this will not behave correctly if the owners of 'Swift' introduce this conformance in the future
    | `- note: add '@retroactive' to silence this warning
167 |     public var description: String {
168 |         switch self {
/host/spi-builder-workspace/Sources/Kodable/Codable+Lossless.swift:175:1: warning: extension declares a conformance of imported type 'Optional' to imported protocol 'LosslessStringConvertible'; this will not behave correctly if the owners of 'Swift' introduce this conformance in the future
173 | }
174 |
175 | extension Optional: LosslessStringConvertible where Wrapped: LosslessDecodable {
    | |- warning: extension declares a conformance of imported type 'Optional' to imported protocol 'LosslessStringConvertible'; this will not behave correctly if the owners of 'Swift' introduce this conformance in the future
    | `- note: add '@retroactive' to silence this warning
176 |     public init?(_ description: String) {
177 |         self = Wrapped(description)
[76/78] Compiling Kodable Kodable.swift
/host/spi-builder-workspace/Sources/Kodable/Codable+Lossless.swift:166:1: warning: extension declares a conformance of imported type 'Optional' to imported protocol 'CustomStringConvertible'; this will not behave correctly if the owners of 'Swift' introduce this conformance in the future
164 | // MARK: Optional LossLessDecodable Conformance
165 |
166 | extension Optional: CustomStringConvertible where Wrapped: LosslessDecodable {
    | |- warning: extension declares a conformance of imported type 'Optional' to imported protocol 'CustomStringConvertible'; this will not behave correctly if the owners of 'Swift' introduce this conformance in the future
    | `- note: add '@retroactive' to silence this warning
167 |     public var description: String {
168 |         switch self {
/host/spi-builder-workspace/Sources/Kodable/Codable+Lossless.swift:175:1: warning: extension declares a conformance of imported type 'Optional' to imported protocol 'LosslessStringConvertible'; this will not behave correctly if the owners of 'Swift' introduce this conformance in the future
173 | }
174 |
175 | extension Optional: LosslessStringConvertible where Wrapped: LosslessDecodable {
    | |- warning: extension declares a conformance of imported type 'Optional' to imported protocol 'LosslessStringConvertible'; this will not behave correctly if the owners of 'Swift' introduce this conformance in the future
    | `- note: add '@retroactive' to silence this warning
176 |     public init?(_ description: String) {
177 |         self = Wrapped(description)
[77/78] Compiling Kodable CodableDate.swift
/host/spi-builder-workspace/Sources/Wrappers/CodableDate.swift:123:24: warning: static property 'iso8601Formatter' is not concurrency-safe because non-'Sendable' type 'ISO8601DateFormatter' may have shared mutable state; this is an error in the Swift 6 language mode
121 |     }
122 |
123 |     private static let iso8601Formatter = ISO8601DateFormatter()
    |                        |- warning: static property 'iso8601Formatter' is not concurrency-safe because non-'Sendable' type 'ISO8601DateFormatter' may have shared mutable state; this is an error in the Swift 6 language mode
    |                        |- note: add '@MainActor' to make static property 'iso8601Formatter' part of global actor 'MainActor'
    |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
124 |     private static let iso8601WithFractionalSecondsFormatter: ISO8601DateFormatter = {
125 |         let result = ISO8601DateFormatter()
Foundation.ISO8601DateFormatter:1:12: note: class 'ISO8601DateFormatter' does not conform to the 'Sendable' protocol
 1 | open class ISO8601DateFormatter : Formatter, NSSecureCoding {
   |            `- note: class 'ISO8601DateFormatter' does not conform to the 'Sendable' protocol
 2 |     open var timeZone: TimeZone! { get set }
 3 |     open var formatOptions: ISO8601DateFormatter.Options { get set }
/host/spi-builder-workspace/Sources/Wrappers/CodableDate.swift:124:24: warning: static property 'iso8601WithFractionalSecondsFormatter' is not concurrency-safe because non-'Sendable' type 'ISO8601DateFormatter' may have shared mutable state; this is an error in the Swift 6 language mode
122 |
123 |     private static let iso8601Formatter = ISO8601DateFormatter()
124 |     private static let iso8601WithFractionalSecondsFormatter: ISO8601DateFormatter = {
    |                        |- warning: static property 'iso8601WithFractionalSecondsFormatter' is not concurrency-safe because non-'Sendable' type 'ISO8601DateFormatter' may have shared mutable state; this is an error in the Swift 6 language mode
    |                        |- note: add '@MainActor' to make static property 'iso8601WithFractionalSecondsFormatter' part of global actor 'MainActor'
    |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
125 |         let result = ISO8601DateFormatter()
126 |         result.formatOptions.insert(.withFractionalSeconds)
Foundation.ISO8601DateFormatter:1:12: note: class 'ISO8601DateFormatter' does not conform to the 'Sendable' protocol
 1 | open class ISO8601DateFormatter : Formatter, NSSecureCoding {
   |            `- note: class 'ISO8601DateFormatter' does not conform to the 'Sendable' protocol
 2 |     open var timeZone: TimeZone! { get set }
 3 |     open var formatOptions: ISO8601DateFormatter.Options { get set }
/host/spi-builder-workspace/Sources/Wrappers/CodableDate.swift:132:24: warning: static property 'formatters' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
130 |     private static let rfc2822Formatter: DateFormatter = getFormatter("EEE, d MMM y HH:mm:ss zzz")
131 |     private static let rfc3339Formatter: DateFormatter = getFormatter("yyyy-MM-dd'T'HH:mm:ssZ")
132 |     private static var formatters: [String: Formatter] = [:]
    |                        |- warning: static property 'formatters' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                        |- note: convert 'formatters' to a 'let' constant to make 'Sendable' shared state immutable
    |                        |- note: add '@MainActor' to make static property 'formatters' part of global actor 'MainActor'
    |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
133 |
134 |     private static func getFormatter(_ dateFormat: String) -> DateFormatter {
[78/78] Compiling Kodable Coding.swift
/host/spi-builder-workspace/Sources/Wrappers/CodableDate.swift:123:24: warning: static property 'iso8601Formatter' is not concurrency-safe because non-'Sendable' type 'ISO8601DateFormatter' may have shared mutable state; this is an error in the Swift 6 language mode
121 |     }
122 |
123 |     private static let iso8601Formatter = ISO8601DateFormatter()
    |                        |- warning: static property 'iso8601Formatter' is not concurrency-safe because non-'Sendable' type 'ISO8601DateFormatter' may have shared mutable state; this is an error in the Swift 6 language mode
    |                        |- note: add '@MainActor' to make static property 'iso8601Formatter' part of global actor 'MainActor'
    |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
124 |     private static let iso8601WithFractionalSecondsFormatter: ISO8601DateFormatter = {
125 |         let result = ISO8601DateFormatter()
Foundation.ISO8601DateFormatter:1:12: note: class 'ISO8601DateFormatter' does not conform to the 'Sendable' protocol
 1 | open class ISO8601DateFormatter : Formatter, NSSecureCoding {
   |            `- note: class 'ISO8601DateFormatter' does not conform to the 'Sendable' protocol
 2 |     open var timeZone: TimeZone! { get set }
 3 |     open var formatOptions: ISO8601DateFormatter.Options { get set }
/host/spi-builder-workspace/Sources/Wrappers/CodableDate.swift:124:24: warning: static property 'iso8601WithFractionalSecondsFormatter' is not concurrency-safe because non-'Sendable' type 'ISO8601DateFormatter' may have shared mutable state; this is an error in the Swift 6 language mode
122 |
123 |     private static let iso8601Formatter = ISO8601DateFormatter()
124 |     private static let iso8601WithFractionalSecondsFormatter: ISO8601DateFormatter = {
    |                        |- warning: static property 'iso8601WithFractionalSecondsFormatter' is not concurrency-safe because non-'Sendable' type 'ISO8601DateFormatter' may have shared mutable state; this is an error in the Swift 6 language mode
    |                        |- note: add '@MainActor' to make static property 'iso8601WithFractionalSecondsFormatter' part of global actor 'MainActor'
    |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
125 |         let result = ISO8601DateFormatter()
126 |         result.formatOptions.insert(.withFractionalSeconds)
Foundation.ISO8601DateFormatter:1:12: note: class 'ISO8601DateFormatter' does not conform to the 'Sendable' protocol
 1 | open class ISO8601DateFormatter : Formatter, NSSecureCoding {
   |            `- note: class 'ISO8601DateFormatter' does not conform to the 'Sendable' protocol
 2 |     open var timeZone: TimeZone! { get set }
 3 |     open var formatOptions: ISO8601DateFormatter.Options { get set }
/host/spi-builder-workspace/Sources/Wrappers/CodableDate.swift:132:24: warning: static property 'formatters' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
130 |     private static let rfc2822Formatter: DateFormatter = getFormatter("EEE, d MMM y HH:mm:ss zzz")
131 |     private static let rfc3339Formatter: DateFormatter = getFormatter("yyyy-MM-dd'T'HH:mm:ssZ")
132 |     private static var formatters: [String: Formatter] = [:]
    |                        |- warning: static property 'formatters' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                        |- note: convert 'formatters' to a 'let' constant to make 'Sendable' shared state immutable
    |                        |- note: add '@MainActor' to make static property 'formatters' part of global actor 'MainActor'
    |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
133 |
134 |     private static func getFormatter(_ dateFormat: String) -> DateFormatter {
Build complete! (11.26s)
Build complete.
{
  "dependencies" : [
    {
      "identity" : "cwlpreconditiontesting",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "2.1.0",
            "upper_bound" : "3.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/mattgallagher/CwlPreconditionTesting.git"
    },
    {
      "identity" : "jsen",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.1.2",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/rogerluan/JSEN"
    },
    {
      "identity" : "runtime",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "2.2.2",
            "upper_bound" : "3.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/wickwirew/Runtime"
    }
  ],
  "manifest_display_name" : "Kodable",
  "name" : "Kodable",
  "path" : "/host/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "10.14"
    },
    {
      "name" : "ios",
      "version" : "12.0"
    },
    {
      "name" : "tvos",
      "version" : "12.0"
    },
    {
      "name" : "watchos",
      "version" : "5.0"
    }
  ],
  "products" : [
    {
      "name" : "Kodable",
      "targets" : [
        "Kodable"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "KodableTests",
      "module_type" : "SwiftTarget",
      "name" : "KodableTests",
      "path" : "Tests",
      "product_dependencies" : [
        "CwlPreconditionTesting"
      ],
      "sources" : [
        "KodableTests.swift",
        "XCTestCase+Utilities.swift"
      ],
      "target_dependencies" : [
        "Kodable"
      ],
      "type" : "test"
    },
    {
      "c99name" : "Kodable",
      "module_type" : "SwiftTarget",
      "name" : "Kodable",
      "path" : "Sources",
      "product_dependencies" : [
        "Runtime",
        "JSEN"
      ],
      "product_memberships" : [
        "Kodable"
      ],
      "sources" : [
        "Debug/DebugJSON.swift",
        "Extensions/Codable+NestedKeyable.swift",
        "Extensions/Codable+Utilities.swift",
        "Extensions/Comparable+Utilities.swift",
        "Extensions/DecodingError+Utilities.swift",
        "Extensions/Optional+Utilities.swift",
        "Extensions/Runtime+Utilities.swift",
        "Extensions/TryCatch+Utilities.swift",
        "Kodable/Codable+AnyCodingKey.swift",
        "Kodable/Codable+Lossless.swift",
        "Kodable/Kodable.swift",
        "Kodable/KodableError.swift",
        "Kodable/KodableOption.swift",
        "Kodable/KodableOptions+Presets.swift",
        "Kodable/KodableTransformable.swift",
        "Wrappers/CodableDate.swift",
        "Wrappers/Coding.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.3"
}
basic-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:3bdcac04179f4ed3e5b8e9dbd6e74bbf5ebc0f4fde48bbaad7d1e5c757e65bcb
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.1-latest
Done.