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 Dynamic, reference 1.2.0 (ab9a25), with Swift 6.1 for macOS (SPM) on 26 Apr 2025 01:50:49 UTC.

Swift 6 data race errors: 7

Build Command

env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -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

Build Log

========================================
RunAll
========================================
Builder version: 4.61.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/mhdhejazi/Dynamic.git
Reference: 1.2.0
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/mhdhejazi/Dynamic
 * tag               1.2.0      -> FETCH_HEAD
HEAD is now at ab9a257 Use the proper setter name for boolean properties.
Cloned https://github.com/mhdhejazi/Dynamic.git
Revision (git rev-parse @):
ab9a2570862d54aed2663691bb767f881226a12f
SUCCESS checkout https://github.com/mhdhejazi/Dynamic.git at 1.2.0
========================================
ResolveProductDependencies
========================================
Resolving dependencies ...
{
  "identity": ".resolve-product-dependencies",
  "name": "resolve-dependencies",
  "url": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
  "version": "unspecified",
  "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
  "dependencies": [
    {
      "identity": "dynamic",
      "name": "Dynamic",
      "url": "https://github.com/mhdhejazi/Dynamic.git",
      "version": "unspecified",
      "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/Dynamic",
      "dependencies": [
      ]
    }
  ]
}
Fetching https://github.com/mhdhejazi/Dynamic.git
[1/230] Fetching dynamic
Fetched https://github.com/mhdhejazi/Dynamic.git from cache (0.63s)
Creating working copy for https://github.com/mhdhejazi/Dynamic.git
Working copy of https://github.com/mhdhejazi/Dynamic.git resolved at 1.2.0 (ab9a257)
warning: '.resolve-product-dependencies': dependency 'dynamic' is not used by any target
Found 0 product dependencies
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.1
Building package at path:  $PWD
https://github.com/mhdhejazi/Dynamic.git
https://github.com/mhdhejazi/Dynamic.git
{
  "dependencies" : [
  ],
  "manifest_display_name" : "Dynamic",
  "name" : "Dynamic",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "10.12"
    },
    {
      "name" : "ios",
      "version" : "10.0"
    },
    {
      "name" : "tvos",
      "version" : "10.0"
    },
    {
      "name" : "watchos",
      "version" : "3.0"
    }
  ],
  "products" : [
    {
      "name" : "Dynamic",
      "targets" : [
        "Dynamic"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "swift_languages_versions" : [
    "5"
  ],
  "targets" : [
    {
      "c99name" : "DynamicTests",
      "module_type" : "SwiftTarget",
      "name" : "DynamicTests",
      "path" : "Tests/DynamicTests",
      "sources" : [
        "DynamicTests.swift"
      ],
      "target_dependencies" : [
        "Dynamic"
      ],
      "type" : "test"
    },
    {
      "c99name" : "Dynamic",
      "module_type" : "SwiftTarget",
      "name" : "Dynamic",
      "path" : "Sources/Dynamic",
      "product_memberships" : [
        "Dynamic"
      ],
      "sources" : [
        "Dynamic.swift",
        "Invocation.swift",
        "Logger.swift",
        "TypeMapping.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.2"
}
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -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
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version-2F0A5646E1D333AE.txt
[3/7] Compiling Dynamic TypeMapping.swift
[4/7] Compiling Dynamic Logger.swift
/Users/admin/builder/spi-builder-workspace/Sources/Dynamic/Logger.swift:35:16: warning: static property 'dummy' is not concurrency-safe because non-'Sendable' type 'DummyLogger' may have shared mutable state; this is an error in the Swift 6 language mode
 33 |     }
 34 |
 35 |     static let dummy = DummyLogger()
    |                |- warning: static property 'dummy' is not concurrency-safe because non-'Sendable' type 'DummyLogger' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: add '@MainActor' to make static property 'dummy' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 36 |     static var enabled = true
 37 |
    :
 94 | }
 95 |
 96 | class DummyLogger: Logger {
    |       `- note: class 'DummyLogger' does not conform to the 'Sendable' protocol
 97 |     @discardableResult
 98 |     override func log(_ items: [Any], withBullet: Bool = true) -> Logger {
/Users/admin/builder/spi-builder-workspace/Sources/Dynamic/Logger.swift:36:16: warning: static property 'enabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 34 |
 35 |     static let dummy = DummyLogger()
 36 |     static var enabled = true
    |                |- warning: static property 'enabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: convert 'enabled' to a 'let' constant to make 'Sendable' shared state immutable
    |                |- note: add '@MainActor' to make static property 'enabled' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 37 |
 38 |     private static var loggers: [ObjectIdentifier: Logger] = [:]
/Users/admin/builder/spi-builder-workspace/Sources/Dynamic/Logger.swift:38:24: warning: static property 'loggers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 36 |     static var enabled = true
 37 |
 38 |     private static var loggers: [ObjectIdentifier: Logger] = [:]
    |                        |- warning: static property 'loggers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                        |- note: convert 'loggers' to a 'let' constant to make 'Sendable' shared state immutable
    |                        |- note: add '@MainActor' to make static property 'loggers' part of global actor 'MainActor'
    |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 39 |     private static var level: Int = 0
 40 |
/Users/admin/builder/spi-builder-workspace/Sources/Dynamic/Logger.swift:39:24: warning: static property 'level' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 37 |
 38 |     private static var loggers: [ObjectIdentifier: Logger] = [:]
 39 |     private static var level: Int = 0
    |                        |- warning: static property 'level' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                        |- note: convert 'level' to a 'let' constant to make 'Sendable' shared state immutable
    |                        |- note: add '@MainActor' to make static property 'level' part of global actor 'MainActor'
    |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 40 |
 41 |     static func logger(for object: AnyObject) -> Logger {
[5/7] Compiling Dynamic Invocation.swift
/Users/admin/builder/spi-builder-workspace/Sources/Dynamic/Invocation.swift:10:23: warning: static property 'loggingEnabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
  8 |
  9 | class Invocation: Loggable {
 10 |     public static var loggingEnabled: Bool = false
    |                       |- warning: static property 'loggingEnabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'loggingEnabled' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: add '@MainActor' to make static property 'loggingEnabled' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 11 |     var loggingEnabled: Bool { Self.loggingEnabled }
 12 |
[6/7] Emitting module Dynamic
/Users/admin/builder/spi-builder-workspace/Sources/Dynamic/Dynamic.swift:14:23: warning: static property 'loggingEnabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 12 | @dynamicMemberLookup
 13 | public class Dynamic: CustomDebugStringConvertible, Loggable {
 14 |     public static var loggingEnabled: Bool = false {
    |                       |- warning: static property 'loggingEnabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'loggingEnabled' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: add '@MainActor' to make static property 'loggingEnabled' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 15 |         didSet {
 16 |             Invocation.loggingEnabled = loggingEnabled
/Users/admin/builder/spi-builder-workspace/Sources/Dynamic/Dynamic.swift:21:23: warning: static property 'nil' is not concurrency-safe because non-'Sendable' type 'Dynamic' may have shared mutable state; this is an error in the Swift 6 language mode
 11 | @dynamicCallable
 12 | @dynamicMemberLookup
 13 | public class Dynamic: CustomDebugStringConvertible, Loggable {
    |              `- note: class 'Dynamic' does not conform to the 'Sendable' protocol
 14 |     public static var loggingEnabled: Bool = false {
 15 |         didSet {
    :
 19 |     var loggingEnabled: Bool { Self.loggingEnabled }
 20 |
 21 |     public static let `nil` = Dynamic(nil)
    |                       |- warning: static property 'nil' is not concurrency-safe because non-'Sendable' type 'Dynamic' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'nil' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 22 |
 23 |     private let object: AnyObject?
/Users/admin/builder/spi-builder-workspace/Sources/Dynamic/Invocation.swift:10:23: warning: static property 'loggingEnabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
  8 |
  9 | class Invocation: Loggable {
 10 |     public static var loggingEnabled: Bool = false
    |                       |- warning: static property 'loggingEnabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'loggingEnabled' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: add '@MainActor' to make static property 'loggingEnabled' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 11 |     var loggingEnabled: Bool { Self.loggingEnabled }
 12 |
/Users/admin/builder/spi-builder-workspace/Sources/Dynamic/Logger.swift:35:16: warning: static property 'dummy' is not concurrency-safe because non-'Sendable' type 'DummyLogger' may have shared mutable state; this is an error in the Swift 6 language mode
 33 |     }
 34 |
 35 |     static let dummy = DummyLogger()
    |                |- warning: static property 'dummy' is not concurrency-safe because non-'Sendable' type 'DummyLogger' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: add '@MainActor' to make static property 'dummy' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 36 |     static var enabled = true
 37 |
    :
 94 | }
 95 |
 96 | class DummyLogger: Logger {
    |       `- note: class 'DummyLogger' does not conform to the 'Sendable' protocol
 97 |     @discardableResult
 98 |     override func log(_ items: [Any], withBullet: Bool = true) -> Logger {
/Users/admin/builder/spi-builder-workspace/Sources/Dynamic/Logger.swift:36:16: warning: static property 'enabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 34 |
 35 |     static let dummy = DummyLogger()
 36 |     static var enabled = true
    |                |- warning: static property 'enabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: convert 'enabled' to a 'let' constant to make 'Sendable' shared state immutable
    |                |- note: add '@MainActor' to make static property 'enabled' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 37 |
 38 |     private static var loggers: [ObjectIdentifier: Logger] = [:]
/Users/admin/builder/spi-builder-workspace/Sources/Dynamic/Logger.swift:38:24: warning: static property 'loggers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 36 |     static var enabled = true
 37 |
 38 |     private static var loggers: [ObjectIdentifier: Logger] = [:]
    |                        |- warning: static property 'loggers' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                        |- note: convert 'loggers' to a 'let' constant to make 'Sendable' shared state immutable
    |                        |- note: add '@MainActor' to make static property 'loggers' part of global actor 'MainActor'
    |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 39 |     private static var level: Int = 0
 40 |
/Users/admin/builder/spi-builder-workspace/Sources/Dynamic/Logger.swift:39:24: warning: static property 'level' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 37 |
 38 |     private static var loggers: [ObjectIdentifier: Logger] = [:]
 39 |     private static var level: Int = 0
    |                        |- warning: static property 'level' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                        |- note: convert 'level' to a 'let' constant to make 'Sendable' shared state immutable
    |                        |- note: add '@MainActor' to make static property 'level' part of global actor 'MainActor'
    |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 40 |
 41 |     static func logger(for object: AnyObject) -> Logger {
[7/7] Compiling Dynamic Dynamic.swift
/Users/admin/builder/spi-builder-workspace/Sources/Dynamic/Dynamic.swift:14:23: warning: static property 'loggingEnabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 12 | @dynamicMemberLookup
 13 | public class Dynamic: CustomDebugStringConvertible, Loggable {
 14 |     public static var loggingEnabled: Bool = false {
    |                       |- warning: static property 'loggingEnabled' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'loggingEnabled' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: add '@MainActor' to make static property 'loggingEnabled' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 15 |         didSet {
 16 |             Invocation.loggingEnabled = loggingEnabled
/Users/admin/builder/spi-builder-workspace/Sources/Dynamic/Dynamic.swift:21:23: warning: static property 'nil' is not concurrency-safe because non-'Sendable' type 'Dynamic' may have shared mutable state; this is an error in the Swift 6 language mode
 11 | @dynamicCallable
 12 | @dynamicMemberLookup
 13 | public class Dynamic: CustomDebugStringConvertible, Loggable {
    |              `- note: class 'Dynamic' does not conform to the 'Sendable' protocol
 14 |     public static var loggingEnabled: Bool = false {
 15 |         didSet {
    :
 19 |     var loggingEnabled: Bool { Self.loggingEnabled }
 20 |
 21 |     public static let `nil` = Dynamic(nil)
    |                       |- warning: static property 'nil' is not concurrency-safe because non-'Sendable' type 'Dynamic' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'nil' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 22 |
 23 |     private let object: AnyObject?
Build complete! (4.81s)
Build complete.
{
  "dependencies" : [
  ],
  "manifest_display_name" : "Dynamic",
  "name" : "Dynamic",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "10.12"
    },
    {
      "name" : "ios",
      "version" : "10.0"
    },
    {
      "name" : "tvos",
      "version" : "10.0"
    },
    {
      "name" : "watchos",
      "version" : "3.0"
    }
  ],
  "products" : [
    {
      "name" : "Dynamic",
      "targets" : [
        "Dynamic"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "swift_languages_versions" : [
    "5"
  ],
  "targets" : [
    {
      "c99name" : "DynamicTests",
      "module_type" : "SwiftTarget",
      "name" : "DynamicTests",
      "path" : "Tests/DynamicTests",
      "sources" : [
        "DynamicTests.swift"
      ],
      "target_dependencies" : [
        "Dynamic"
      ],
      "type" : "test"
    },
    {
      "c99name" : "Dynamic",
      "module_type" : "SwiftTarget",
      "name" : "Dynamic",
      "path" : "Sources/Dynamic",
      "product_memberships" : [
        "Dynamic"
      ],
      "sources" : [
        "Dynamic.swift",
        "Invocation.swift",
        "Logger.swift",
        "TypeMapping.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.2"
}
Done.