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 ObjCDump, reference main (1e91df), with Swift 6.0 for Linux on 5 Jan 2025 14:29:07 UTC.

Swift 6 data race errors: 2

Build Command

bash -c docker run --pull=always --rm -v "checkouts-4606859-0":/host -w "$PWD" 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 -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.60.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/p-x9/swift-objc-dump.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/p-x9/swift-objc-dump
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
HEAD is now at 1e91dfd Merge pull request #14 from p-x9/feature/support-linux
Cloned https://github.com/p-x9/swift-objc-dump.git
Revision (git rev-parse @):
1e91dfd4c332f7015f4c46f99df8a53fbb495e20
SUCCESS checkout https://github.com/p-x9/swift-objc-dump.git at main
========================================
Build
========================================
Selected platform:         linux
Swift version:             6.0
Building package at path:  $PWD
https://github.com/p-x9/swift-objc-dump.git
https://github.com/p-x9/swift-objc-dump.git
WARNING: environment variable SUPPRESS_SWIFT_6_FLAGS is not set
{
  "dependencies" : [
  ],
  "manifest_display_name" : "ObjCDump",
  "name" : "ObjCDump",
  "path" : "/host/spi-builder-workspace",
  "platforms" : [
  ],
  "products" : [
    {
      "name" : "ObjCDump",
      "targets" : [
        "ObjCDump"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "ObjCTypeDecodeKitTests",
      "module_type" : "SwiftTarget",
      "name" : "ObjCTypeDecodeKitTests",
      "path" : "Tests/ObjCTypeDecodeKitTests",
      "sources" : [
        "ObjCMethodTypeDecodeTests.swift",
        "ObjCTypeDecodeKitTests.swift",
        "ObjCTypeEncodeTests.swift"
      ],
      "target_dependencies" : [
        "ObjCTypeDecodeKit"
      ],
      "type" : "test"
    },
    {
      "c99name" : "ObjCTypeDecodeKit",
      "module_type" : "SwiftTarget",
      "name" : "ObjCTypeDecodeKit",
      "path" : "Sources/ObjCTypeDecodeKit",
      "product_memberships" : [
        "ObjCDump"
      ],
      "sources" : [
        "Extension/String+.swift",
        "Model/Node.swift",
        "Model/ObjCField.swift",
        "Model/ObjCMethodType.swift",
        "Model/ObjCModifier.swift",
        "Model/ObjCPropertyAttribute.swift",
        "Model/ObjCType.swift",
        "Model/types.swift",
        "ObjCMethodTypeDecoder.swift",
        "ObjCPropertyTypeDecoder.swift",
        "ObjCTypeDecoder.swift",
        "Protocol/ObjCTypeCodable.swift"
      ],
      "type" : "library"
    },
    {
      "c99name" : "ObjCDumpTests",
      "module_type" : "SwiftTarget",
      "name" : "ObjCDumpTests",
      "path" : "Tests/ObjCDumpTests",
      "sources" : [
        "ObjCDumpTests.swift"
      ],
      "target_dependencies" : [
        "ObjCDump"
      ],
      "type" : "test"
    },
    {
      "c99name" : "ObjCDump",
      "module_type" : "SwiftTarget",
      "name" : "ObjCDump",
      "path" : "Sources/ObjCDump",
      "product_memberships" : [
        "ObjCDump"
      ],
      "sources" : [
        "Extension/ObjCType+.swift",
        "Model/ObjCCategoryInfo.swift",
        "Model/ObjCClassInfo.swift",
        "Model/ObjCIvarInfo.swift",
        "Model/ObjCMethodInfo.swift",
        "Model/ObjCPropertyInfo.swift",
        "Model/ObjCProtocolInfo.swift",
        "ObjCDump.swift"
      ],
      "target_dependencies" : [
        "ObjCTypeDecodeKit"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.9"
}
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4606859-0":/host -w "$PWD" 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 -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.0-latest: Pulling from finestructure/spi-images
Digest: sha256:081dcf4fb829aea9d08447f4790431afbdfbcc335bfeed728ca69c6f181ae2aa
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.0-latest
Building for debugging...
[0/3] Write sources
[2/3] Write swift-version-24593BA9C3E375BF.txt
[4/15] Compiling ObjCTypeDecodeKit ObjCMethodTypeDecoder.swift
[5/15] Compiling ObjCTypeDecodeKit ObjCPropertyTypeDecoder.swift
[6/15] Compiling ObjCTypeDecodeKit ObjCTypeDecoder.swift
/host/spi-builder-workspace/Sources/ObjCTypeDecodeKit/Model/types.swift:13:5: warning: let 'simpleTypes' is not concurrency-safe because non-'Sendable' type '[Character : ObjCType]' may have shared mutable state; this is an error in the Swift 6 language mode
11 | // ref: https://github.com/apple-oss-distributions/objc4/blob/01edf1705fbc3ff78a423cd21e03dfc21eb4d780/runtime/runtime.h#L1856
12 |
13 | let simpleTypes: [Character: ObjCType] = [
   |     |- warning: let 'simpleTypes' is not concurrency-safe because non-'Sendable' type '[Character : ObjCType]' may have shared mutable state; this is an error in the Swift 6 language mode
   |     |- note: annotate 'simpleTypes' 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
14 |     "@": .object(name: nil),
15 |     "#": .class,
/host/spi-builder-workspace/Sources/ObjCTypeDecodeKit/Model/ObjCType.swift:11:22: note: consider making enum 'ObjCType' conform to the 'Sendable' protocol
  9 | import Foundation
 10 |
 11 | public indirect enum ObjCType: Equatable {
    |                      `- note: consider making enum 'ObjCType' conform to the 'Sendable' protocol
 12 |     case `class`
 13 |     case selector
/host/spi-builder-workspace/Sources/ObjCTypeDecodeKit/Model/types.swift:39:5: warning: let 'modifiers' is not concurrency-safe because non-'Sendable' type '[Character : ObjCModifier]' may have shared mutable state; this is an error in the Swift 6 language mode
37 | ]
38 |
39 | let modifiers: [Character: ObjCModifier] = [
   |     |- warning: let 'modifiers' is not concurrency-safe because non-'Sendable' type '[Character : ObjCModifier]' may have shared mutable state; this is an error in the Swift 6 language mode
   |     |- note: annotate 'modifiers' with '@MainActor' if property should only be accessed from the main actor
   |     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
40 |     "A": .atomic, // #include <stdatomic.h>
41 |     "j": .complex, // #include <complex.h>
/host/spi-builder-workspace/Sources/ObjCTypeDecodeKit/Model/ObjCModifier.swift:11:13: note: consider making enum 'ObjCModifier' conform to the 'Sendable' protocol
 9 | import Foundation
10 |
11 | public enum ObjCModifier: CaseIterable, Equatable {
   |             `- note: consider making enum 'ObjCModifier' conform to the 'Sendable' protocol
12 |     case complex
13 |     case atomic
[7/16] Emitting module ObjCTypeDecodeKit
/host/spi-builder-workspace/Sources/ObjCTypeDecodeKit/Model/types.swift:13:5: warning: let 'simpleTypes' is not concurrency-safe because non-'Sendable' type '[Character : ObjCType]' may have shared mutable state; this is an error in the Swift 6 language mode
11 | // ref: https://github.com/apple-oss-distributions/objc4/blob/01edf1705fbc3ff78a423cd21e03dfc21eb4d780/runtime/runtime.h#L1856
12 |
13 | let simpleTypes: [Character: ObjCType] = [
   |     |- warning: let 'simpleTypes' is not concurrency-safe because non-'Sendable' type '[Character : ObjCType]' may have shared mutable state; this is an error in the Swift 6 language mode
   |     |- note: annotate 'simpleTypes' 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
14 |     "@": .object(name: nil),
15 |     "#": .class,
/host/spi-builder-workspace/Sources/ObjCTypeDecodeKit/Model/ObjCType.swift:11:22: note: consider making enum 'ObjCType' conform to the 'Sendable' protocol
  9 | import Foundation
 10 |
 11 | public indirect enum ObjCType: Equatable {
    |                      `- note: consider making enum 'ObjCType' conform to the 'Sendable' protocol
 12 |     case `class`
 13 |     case selector
/host/spi-builder-workspace/Sources/ObjCTypeDecodeKit/Model/types.swift:39:5: warning: let 'modifiers' is not concurrency-safe because non-'Sendable' type '[Character : ObjCModifier]' may have shared mutable state; this is an error in the Swift 6 language mode
37 | ]
38 |
39 | let modifiers: [Character: ObjCModifier] = [
   |     |- warning: let 'modifiers' is not concurrency-safe because non-'Sendable' type '[Character : ObjCModifier]' may have shared mutable state; this is an error in the Swift 6 language mode
   |     |- note: annotate 'modifiers' with '@MainActor' if property should only be accessed from the main actor
   |     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
40 |     "A": .atomic, // #include <stdatomic.h>
41 |     "j": .complex, // #include <complex.h>
/host/spi-builder-workspace/Sources/ObjCTypeDecodeKit/Model/ObjCModifier.swift:11:13: note: consider making enum 'ObjCModifier' conform to the 'Sendable' protocol
 9 | import Foundation
10 |
11 | public enum ObjCModifier: CaseIterable, Equatable {
   |             `- note: consider making enum 'ObjCModifier' conform to the 'Sendable' protocol
12 |     case complex
13 |     case atomic
[8/16] Compiling ObjCTypeDecodeKit ObjCType.swift
/host/spi-builder-workspace/Sources/ObjCTypeDecodeKit/Model/types.swift:13:5: warning: let 'simpleTypes' is not concurrency-safe because non-'Sendable' type '[Character : ObjCType]' may have shared mutable state; this is an error in the Swift 6 language mode
11 | // ref: https://github.com/apple-oss-distributions/objc4/blob/01edf1705fbc3ff78a423cd21e03dfc21eb4d780/runtime/runtime.h#L1856
12 |
13 | let simpleTypes: [Character: ObjCType] = [
   |     |- warning: let 'simpleTypes' is not concurrency-safe because non-'Sendable' type '[Character : ObjCType]' may have shared mutable state; this is an error in the Swift 6 language mode
   |     |- note: annotate 'simpleTypes' 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
14 |     "@": .object(name: nil),
15 |     "#": .class,
/host/spi-builder-workspace/Sources/ObjCTypeDecodeKit/Model/ObjCType.swift:11:22: note: consider making enum 'ObjCType' conform to the 'Sendable' protocol
  9 | import Foundation
 10 |
 11 | public indirect enum ObjCType: Equatable {
    |                      `- note: consider making enum 'ObjCType' conform to the 'Sendable' protocol
 12 |     case `class`
 13 |     case selector
/host/spi-builder-workspace/Sources/ObjCTypeDecodeKit/Model/types.swift:39:5: warning: let 'modifiers' is not concurrency-safe because non-'Sendable' type '[Character : ObjCModifier]' may have shared mutable state; this is an error in the Swift 6 language mode
37 | ]
38 |
39 | let modifiers: [Character: ObjCModifier] = [
   |     |- warning: let 'modifiers' is not concurrency-safe because non-'Sendable' type '[Character : ObjCModifier]' may have shared mutable state; this is an error in the Swift 6 language mode
   |     |- note: annotate 'modifiers' with '@MainActor' if property should only be accessed from the main actor
   |     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
40 |     "A": .atomic, // #include <stdatomic.h>
41 |     "j": .complex, // #include <complex.h>
/host/spi-builder-workspace/Sources/ObjCTypeDecodeKit/Model/ObjCModifier.swift:11:13: note: consider making enum 'ObjCModifier' conform to the 'Sendable' protocol
 9 | import Foundation
10 |
11 | public enum ObjCModifier: CaseIterable, Equatable {
   |             `- note: consider making enum 'ObjCModifier' conform to the 'Sendable' protocol
12 |     case complex
13 |     case atomic
[9/16] Compiling ObjCTypeDecodeKit types.swift
/host/spi-builder-workspace/Sources/ObjCTypeDecodeKit/Model/types.swift:13:5: warning: let 'simpleTypes' is not concurrency-safe because non-'Sendable' type '[Character : ObjCType]' may have shared mutable state; this is an error in the Swift 6 language mode
11 | // ref: https://github.com/apple-oss-distributions/objc4/blob/01edf1705fbc3ff78a423cd21e03dfc21eb4d780/runtime/runtime.h#L1856
12 |
13 | let simpleTypes: [Character: ObjCType] = [
   |     |- warning: let 'simpleTypes' is not concurrency-safe because non-'Sendable' type '[Character : ObjCType]' may have shared mutable state; this is an error in the Swift 6 language mode
   |     |- note: annotate 'simpleTypes' 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
14 |     "@": .object(name: nil),
15 |     "#": .class,
/host/spi-builder-workspace/Sources/ObjCTypeDecodeKit/Model/ObjCType.swift:11:22: note: consider making enum 'ObjCType' conform to the 'Sendable' protocol
  9 | import Foundation
 10 |
 11 | public indirect enum ObjCType: Equatable {
    |                      `- note: consider making enum 'ObjCType' conform to the 'Sendable' protocol
 12 |     case `class`
 13 |     case selector
/host/spi-builder-workspace/Sources/ObjCTypeDecodeKit/Model/types.swift:39:5: warning: let 'modifiers' is not concurrency-safe because non-'Sendable' type '[Character : ObjCModifier]' may have shared mutable state; this is an error in the Swift 6 language mode
37 | ]
38 |
39 | let modifiers: [Character: ObjCModifier] = [
   |     |- warning: let 'modifiers' is not concurrency-safe because non-'Sendable' type '[Character : ObjCModifier]' may have shared mutable state; this is an error in the Swift 6 language mode
   |     |- note: annotate 'modifiers' with '@MainActor' if property should only be accessed from the main actor
   |     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
40 |     "A": .atomic, // #include <stdatomic.h>
41 |     "j": .complex, // #include <complex.h>
/host/spi-builder-workspace/Sources/ObjCTypeDecodeKit/Model/ObjCModifier.swift:11:13: note: consider making enum 'ObjCModifier' conform to the 'Sendable' protocol
 9 | import Foundation
10 |
11 | public enum ObjCModifier: CaseIterable, Equatable {
   |             `- note: consider making enum 'ObjCModifier' conform to the 'Sendable' protocol
12 |     case complex
13 |     case atomic
[10/16] Compiling ObjCTypeDecodeKit ObjCField.swift
[11/16] Compiling ObjCTypeDecodeKit ObjCMethodType.swift
[12/16] Compiling ObjCTypeDecodeKit ObjCModifier.swift
[13/16] Compiling ObjCTypeDecodeKit ObjCPropertyAttribute.swift
[14/16] Compiling ObjCTypeDecodeKit String+.swift
[15/16] Compiling ObjCTypeDecodeKit Node.swift
[16/16] Compiling ObjCTypeDecodeKit ObjCTypeCodable.swift
[18/25] Compiling ObjCDump ObjCType+.swift
[19/26] Emitting module ObjCDump
[20/26] Compiling ObjCDump ObjCIvarInfo.swift
[21/26] Compiling ObjCDump ObjCCategoryInfo.swift
[22/26] Compiling ObjCDump ObjCClassInfo.swift
[23/26] Compiling ObjCDump ObjCDump.swift
[24/26] Compiling ObjCDump ObjCPropertyInfo.swift
[25/26] Compiling ObjCDump ObjCMethodInfo.swift
[26/26] Compiling ObjCDump ObjCProtocolInfo.swift
Build complete! (10.70s)
Build complete.
{
  "dependencies" : [
  ],
  "manifest_display_name" : "ObjCDump",
  "name" : "ObjCDump",
  "path" : "/host/spi-builder-workspace",
  "platforms" : [
  ],
  "products" : [
    {
      "name" : "ObjCDump",
      "targets" : [
        "ObjCDump"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "ObjCTypeDecodeKitTests",
      "module_type" : "SwiftTarget",
      "name" : "ObjCTypeDecodeKitTests",
      "path" : "Tests/ObjCTypeDecodeKitTests",
      "sources" : [
        "ObjCMethodTypeDecodeTests.swift",
        "ObjCTypeDecodeKitTests.swift",
        "ObjCTypeEncodeTests.swift"
      ],
      "target_dependencies" : [
        "ObjCTypeDecodeKit"
      ],
      "type" : "test"
    },
    {
      "c99name" : "ObjCTypeDecodeKit",
      "module_type" : "SwiftTarget",
      "name" : "ObjCTypeDecodeKit",
      "path" : "Sources/ObjCTypeDecodeKit",
      "product_memberships" : [
        "ObjCDump"
      ],
      "sources" : [
        "Extension/String+.swift",
        "Model/Node.swift",
        "Model/ObjCField.swift",
        "Model/ObjCMethodType.swift",
        "Model/ObjCModifier.swift",
        "Model/ObjCPropertyAttribute.swift",
        "Model/ObjCType.swift",
        "Model/types.swift",
        "ObjCMethodTypeDecoder.swift",
        "ObjCPropertyTypeDecoder.swift",
        "ObjCTypeDecoder.swift",
        "Protocol/ObjCTypeCodable.swift"
      ],
      "type" : "library"
    },
    {
      "c99name" : "ObjCDumpTests",
      "module_type" : "SwiftTarget",
      "name" : "ObjCDumpTests",
      "path" : "Tests/ObjCDumpTests",
      "sources" : [
        "ObjCDumpTests.swift"
      ],
      "target_dependencies" : [
        "ObjCDump"
      ],
      "type" : "test"
    },
    {
      "c99name" : "ObjCDump",
      "module_type" : "SwiftTarget",
      "name" : "ObjCDump",
      "path" : "Sources/ObjCDump",
      "product_memberships" : [
        "ObjCDump"
      ],
      "sources" : [
        "Extension/ObjCType+.swift",
        "Model/ObjCCategoryInfo.swift",
        "Model/ObjCClassInfo.swift",
        "Model/ObjCIvarInfo.swift",
        "Model/ObjCMethodInfo.swift",
        "Model/ObjCPropertyInfo.swift",
        "Model/ObjCProtocolInfo.swift",
        "ObjCDump.swift"
      ],
      "target_dependencies" : [
        "ObjCTypeDecodeKit"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.9"
}
basic-6.0-latest: Pulling from finestructure/spi-images
Digest: sha256:081dcf4fb829aea9d08447f4790431afbdfbcc335bfeed728ca69c6f181ae2aa
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.0-latest
Done.