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 Authorized, reference 1.0.0 (e490b9), with Swift 6.0 for macOS (SPM) on 2 Nov 2024 13:40:46 UTC.

Swift 6 data race errors: 5

Build Command

env DEVELOPER_DIR=/Applications/Xcode-16.1.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete

Build Log

========================================
RunAll
========================================
Builder version: 4.56.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/trilemma-dev/Authorized.git
Reference: 1.0.0
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/trilemma-dev/Authorized
 * tag               1.0.0      -> FETCH_HEAD
HEAD is now at e490b9d Update README.md
Cloned https://github.com/trilemma-dev/Authorized.git
Revision (git rev-parse @):
e490b9d3f4a0e8b17a8b39b5a9750b8e0be7548a
SUCCESS checkout https://github.com/trilemma-dev/Authorized.git at 1.0.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": "authorized",
      "name": "Authorized",
      "url": "https://github.com/trilemma-dev/Authorized.git",
      "version": "unspecified",
      "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/Authorized",
      "dependencies": [
      ]
    }
  ]
}
Fetching https://github.com/trilemma-dev/Authorized.git
[1/36] Fetching authorized
Fetched https://github.com/trilemma-dev/Authorized.git from cache (0.66s)
Creating working copy for https://github.com/trilemma-dev/Authorized.git
Working copy of https://github.com/trilemma-dev/Authorized.git resolved at 1.0.0 (e490b9d)
warning: '.resolve-product-dependencies': dependency 'authorized' is not used by any target
Found 0 product dependencies
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.0
Building package at path:  $PWD
https://github.com/trilemma-dev/Authorized.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.1.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version--7754E27361AE5C74.txt
[3/8] Compiling Authorized AuthorizationOption.swift
[4/8] Compiling Authorized AuthorizationPolicyDatabase.swift
/Users/admin/builder/spi-builder-workspace/Sources/Authorized/AuthorizationPolicyDatabase.swift:142:23: warning: static property 'isAdmin' is not concurrency-safe because non-'Sendable' type 'AuthorizationRightRule' (aka 'AuthorizationRight') may have shared mutable state; this is an error in the Swift 6 language mode
140 |
141 |     /// The user must be an administrator.
142 |     public static let isAdmin: AuthorizationRightRule = AuthorizationRight(name: kAuthorizationRuleIsAdmin)
    |                       |- warning: static property 'isAdmin' is not concurrency-safe because non-'Sendable' type 'AuthorizationRightRule' (aka 'AuthorizationRight') may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'isAdmin' 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
143 |     /// The user must authenticate as an administrator.
144 |     public static let authenticateAsAdmin: AuthorizationRightRule =
/Users/admin/builder/spi-builder-workspace/Sources/Authorized/AuthorizationElements.swift:57:15: note: consider making struct 'AuthorizationRight' conform to the 'Sendable' protocol
 55 | /// - ``createOrUpdateDefinition(rules:authorization:descriptionKey:bundle:localeTableName:comment:)``
 56 | /// - ``removeDefinition(authorization:)``
 57 | public struct AuthorizationRight: AuthorizationElement {
    |               `- note: consider making struct 'AuthorizationRight' conform to the 'Sendable' protocol
 58 |     /// The name of this authorization right.
 59 |     public let name: String
/Users/admin/builder/spi-builder-workspace/Sources/Authorized/AuthorizationPolicyDatabase.swift:144:23: warning: static property 'authenticateAsAdmin' is not concurrency-safe because non-'Sendable' type 'AuthorizationRightRule' (aka 'AuthorizationRight') may have shared mutable state; this is an error in the Swift 6 language mode
142 |     public static let isAdmin: AuthorizationRightRule = AuthorizationRight(name: kAuthorizationRuleIsAdmin)
143 |     /// The user must authenticate as an administrator.
144 |     public static let authenticateAsAdmin: AuthorizationRightRule =
    |                       |- warning: static property 'authenticateAsAdmin' is not concurrency-safe because non-'Sendable' type 'AuthorizationRightRule' (aka 'AuthorizationRight') may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'authenticateAsAdmin' 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
145 |         AuthorizationRight(name: kAuthorizationRuleAuthenticateAsAdmin)
146 |     /// The user must authenticate as the session owner (logged-in user).
/Users/admin/builder/spi-builder-workspace/Sources/Authorized/AuthorizationElements.swift:57:15: note: consider making struct 'AuthorizationRight' conform to the 'Sendable' protocol
 55 | /// - ``createOrUpdateDefinition(rules:authorization:descriptionKey:bundle:localeTableName:comment:)``
 56 | /// - ``removeDefinition(authorization:)``
 57 | public struct AuthorizationRight: AuthorizationElement {
    |               `- note: consider making struct 'AuthorizationRight' conform to the 'Sendable' protocol
 58 |     /// The name of this authorization right.
 59 |     public let name: String
/Users/admin/builder/spi-builder-workspace/Sources/Authorized/AuthorizationPolicyDatabase.swift:147:23: warning: static property 'authenticateAsSessionUser' is not concurrency-safe because non-'Sendable' type 'AuthorizationRightRule' (aka 'AuthorizationRight') may have shared mutable state; this is an error in the Swift 6 language mode
145 |         AuthorizationRight(name: kAuthorizationRuleAuthenticateAsAdmin)
146 |     /// The user must authenticate as the session owner (logged-in user).
147 |     public static let authenticateAsSessionUser: AuthorizationRightRule =
    |                       |- warning: static property 'authenticateAsSessionUser' is not concurrency-safe because non-'Sendable' type 'AuthorizationRightRule' (aka 'AuthorizationRight') may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'authenticateAsSessionUser' 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
148 |         AuthorizationRight(name: kAuthorizationRuleAuthenticateAsSessionUser)
149 |     /// Always allows the specified right.
/Users/admin/builder/spi-builder-workspace/Sources/Authorized/AuthorizationElements.swift:57:15: note: consider making struct 'AuthorizationRight' conform to the 'Sendable' protocol
 55 | /// - ``createOrUpdateDefinition(rules:authorization:descriptionKey:bundle:localeTableName:comment:)``
 56 | /// - ``removeDefinition(authorization:)``
 57 | public struct AuthorizationRight: AuthorizationElement {
    |               `- note: consider making struct 'AuthorizationRight' conform to the 'Sendable' protocol
 58 |     /// The name of this authorization right.
 59 |     public let name: String
/Users/admin/builder/spi-builder-workspace/Sources/Authorized/AuthorizationPolicyDatabase.swift:150:23: warning: static property 'classAllow' is not concurrency-safe because non-'Sendable' type 'AuthorizationRightRule' (aka 'AuthorizationRight') may have shared mutable state; this is an error in the Swift 6 language mode
148 |         AuthorizationRight(name: kAuthorizationRuleAuthenticateAsSessionUser)
149 |     /// Always allows the specified right.
150 |     public static let classAllow: AuthorizationRightRule = AuthorizationRight(name: kAuthorizationRuleClassAllow)
    |                       |- warning: static property 'classAllow' is not concurrency-safe because non-'Sendable' type 'AuthorizationRightRule' (aka 'AuthorizationRight') may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'classAllow' 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
151 |     /// Always denies the specified right.
152 |     public static let classDeny: AuthorizationRightRule = AuthorizationRight(name: kAuthorizationRuleClassDeny)
/Users/admin/builder/spi-builder-workspace/Sources/Authorized/AuthorizationElements.swift:57:15: note: consider making struct 'AuthorizationRight' conform to the 'Sendable' protocol
 55 | /// - ``createOrUpdateDefinition(rules:authorization:descriptionKey:bundle:localeTableName:comment:)``
 56 | /// - ``removeDefinition(authorization:)``
 57 | public struct AuthorizationRight: AuthorizationElement {
    |               `- note: consider making struct 'AuthorizationRight' conform to the 'Sendable' protocol
 58 |     /// The name of this authorization right.
 59 |     public let name: String
/Users/admin/builder/spi-builder-workspace/Sources/Authorized/AuthorizationPolicyDatabase.swift:152:23: warning: static property 'classDeny' is not concurrency-safe because non-'Sendable' type 'AuthorizationRightRule' (aka 'AuthorizationRight') may have shared mutable state; this is an error in the Swift 6 language mode
150 |     public static let classAllow: AuthorizationRightRule = AuthorizationRight(name: kAuthorizationRuleClassAllow)
151 |     /// Always denies the specified right.
152 |     public static let classDeny: AuthorizationRightRule = AuthorizationRight(name: kAuthorizationRuleClassDeny)
    |                       |- warning: static property 'classDeny' is not concurrency-safe because non-'Sendable' type 'AuthorizationRightRule' (aka 'AuthorizationRight') may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'classDeny' 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
153 | }
154 |
/Users/admin/builder/spi-builder-workspace/Sources/Authorized/AuthorizationElements.swift:57:15: note: consider making struct 'AuthorizationRight' conform to the 'Sendable' protocol
 55 | /// - ``createOrUpdateDefinition(rules:authorization:descriptionKey:bundle:localeTableName:comment:)``
 56 | /// - ``removeDefinition(authorization:)``
 57 | public struct AuthorizationRight: AuthorizationElement {
    |               `- note: consider making struct 'AuthorizationRight' conform to the 'Sendable' protocol
 58 |     /// The name of this authorization right.
 59 |     public let name: String
[5/8] Compiling Authorized AuthorizationError.swift
[6/8] Compiling Authorized Authorization.swift
/Users/admin/builder/spi-builder-workspace/Sources/Authorized/Authorization.swift:275:38: warning: sending 'value' risks causing data races; this is an error in the Swift 6 language mode
273 |                 switch result {
274 |                     case .success(let value):
275 |                         continuation.resume(returning: value)
    |                                      |- warning: sending 'value' risks causing data races; this is an error in the Swift 6 language mode
    |                                      `- note: task-isolated 'value' is passed as a 'sending' parameter; Uses in callee may race with later task-isolated uses
276 |                     case .failure(let error):
277 |                         continuation.resume(throwing: error)
[7/8] Compiling Authorized AuthorizationElements.swift
[8/8] Emitting module Authorized
/Users/admin/builder/spi-builder-workspace/Sources/Authorized/AuthorizationPolicyDatabase.swift:142:23: warning: static property 'isAdmin' is not concurrency-safe because non-'Sendable' type 'AuthorizationRightRule' (aka 'AuthorizationRight') may have shared mutable state; this is an error in the Swift 6 language mode
140 |
141 |     /// The user must be an administrator.
142 |     public static let isAdmin: AuthorizationRightRule = AuthorizationRight(name: kAuthorizationRuleIsAdmin)
    |                       |- warning: static property 'isAdmin' is not concurrency-safe because non-'Sendable' type 'AuthorizationRightRule' (aka 'AuthorizationRight') may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'isAdmin' 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
143 |     /// The user must authenticate as an administrator.
144 |     public static let authenticateAsAdmin: AuthorizationRightRule =
/Users/admin/builder/spi-builder-workspace/Sources/Authorized/AuthorizationElements.swift:57:15: note: consider making struct 'AuthorizationRight' conform to the 'Sendable' protocol
 55 | /// - ``createOrUpdateDefinition(rules:authorization:descriptionKey:bundle:localeTableName:comment:)``
 56 | /// - ``removeDefinition(authorization:)``
 57 | public struct AuthorizationRight: AuthorizationElement {
    |               `- note: consider making struct 'AuthorizationRight' conform to the 'Sendable' protocol
 58 |     /// The name of this authorization right.
 59 |     public let name: String
/Users/admin/builder/spi-builder-workspace/Sources/Authorized/AuthorizationPolicyDatabase.swift:144:23: warning: static property 'authenticateAsAdmin' is not concurrency-safe because non-'Sendable' type 'AuthorizationRightRule' (aka 'AuthorizationRight') may have shared mutable state; this is an error in the Swift 6 language mode
142 |     public static let isAdmin: AuthorizationRightRule = AuthorizationRight(name: kAuthorizationRuleIsAdmin)
143 |     /// The user must authenticate as an administrator.
144 |     public static let authenticateAsAdmin: AuthorizationRightRule =
    |                       |- warning: static property 'authenticateAsAdmin' is not concurrency-safe because non-'Sendable' type 'AuthorizationRightRule' (aka 'AuthorizationRight') may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'authenticateAsAdmin' 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
145 |         AuthorizationRight(name: kAuthorizationRuleAuthenticateAsAdmin)
146 |     /// The user must authenticate as the session owner (logged-in user).
/Users/admin/builder/spi-builder-workspace/Sources/Authorized/AuthorizationElements.swift:57:15: note: consider making struct 'AuthorizationRight' conform to the 'Sendable' protocol
 55 | /// - ``createOrUpdateDefinition(rules:authorization:descriptionKey:bundle:localeTableName:comment:)``
 56 | /// - ``removeDefinition(authorization:)``
 57 | public struct AuthorizationRight: AuthorizationElement {
    |               `- note: consider making struct 'AuthorizationRight' conform to the 'Sendable' protocol
 58 |     /// The name of this authorization right.
 59 |     public let name: String
/Users/admin/builder/spi-builder-workspace/Sources/Authorized/AuthorizationPolicyDatabase.swift:147:23: warning: static property 'authenticateAsSessionUser' is not concurrency-safe because non-'Sendable' type 'AuthorizationRightRule' (aka 'AuthorizationRight') may have shared mutable state; this is an error in the Swift 6 language mode
145 |         AuthorizationRight(name: kAuthorizationRuleAuthenticateAsAdmin)
146 |     /// The user must authenticate as the session owner (logged-in user).
147 |     public static let authenticateAsSessionUser: AuthorizationRightRule =
    |                       |- warning: static property 'authenticateAsSessionUser' is not concurrency-safe because non-'Sendable' type 'AuthorizationRightRule' (aka 'AuthorizationRight') may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'authenticateAsSessionUser' 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
148 |         AuthorizationRight(name: kAuthorizationRuleAuthenticateAsSessionUser)
149 |     /// Always allows the specified right.
/Users/admin/builder/spi-builder-workspace/Sources/Authorized/AuthorizationElements.swift:57:15: note: consider making struct 'AuthorizationRight' conform to the 'Sendable' protocol
 55 | /// - ``createOrUpdateDefinition(rules:authorization:descriptionKey:bundle:localeTableName:comment:)``
 56 | /// - ``removeDefinition(authorization:)``
 57 | public struct AuthorizationRight: AuthorizationElement {
    |               `- note: consider making struct 'AuthorizationRight' conform to the 'Sendable' protocol
 58 |     /// The name of this authorization right.
 59 |     public let name: String
/Users/admin/builder/spi-builder-workspace/Sources/Authorized/AuthorizationPolicyDatabase.swift:150:23: warning: static property 'classAllow' is not concurrency-safe because non-'Sendable' type 'AuthorizationRightRule' (aka 'AuthorizationRight') may have shared mutable state; this is an error in the Swift 6 language mode
148 |         AuthorizationRight(name: kAuthorizationRuleAuthenticateAsSessionUser)
149 |     /// Always allows the specified right.
150 |     public static let classAllow: AuthorizationRightRule = AuthorizationRight(name: kAuthorizationRuleClassAllow)
    |                       |- warning: static property 'classAllow' is not concurrency-safe because non-'Sendable' type 'AuthorizationRightRule' (aka 'AuthorizationRight') may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'classAllow' 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
151 |     /// Always denies the specified right.
152 |     public static let classDeny: AuthorizationRightRule = AuthorizationRight(name: kAuthorizationRuleClassDeny)
/Users/admin/builder/spi-builder-workspace/Sources/Authorized/AuthorizationElements.swift:57:15: note: consider making struct 'AuthorizationRight' conform to the 'Sendable' protocol
 55 | /// - ``createOrUpdateDefinition(rules:authorization:descriptionKey:bundle:localeTableName:comment:)``
 56 | /// - ``removeDefinition(authorization:)``
 57 | public struct AuthorizationRight: AuthorizationElement {
    |               `- note: consider making struct 'AuthorizationRight' conform to the 'Sendable' protocol
 58 |     /// The name of this authorization right.
 59 |     public let name: String
/Users/admin/builder/spi-builder-workspace/Sources/Authorized/AuthorizationPolicyDatabase.swift:152:23: warning: static property 'classDeny' is not concurrency-safe because non-'Sendable' type 'AuthorizationRightRule' (aka 'AuthorizationRight') may have shared mutable state; this is an error in the Swift 6 language mode
150 |     public static let classAllow: AuthorizationRightRule = AuthorizationRight(name: kAuthorizationRuleClassAllow)
151 |     /// Always denies the specified right.
152 |     public static let classDeny: AuthorizationRightRule = AuthorizationRight(name: kAuthorizationRuleClassDeny)
    |                       |- warning: static property 'classDeny' is not concurrency-safe because non-'Sendable' type 'AuthorizationRightRule' (aka 'AuthorizationRight') may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: annotate 'classDeny' 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
153 | }
154 |
/Users/admin/builder/spi-builder-workspace/Sources/Authorized/AuthorizationElements.swift:57:15: note: consider making struct 'AuthorizationRight' conform to the 'Sendable' protocol
 55 | /// - ``createOrUpdateDefinition(rules:authorization:descriptionKey:bundle:localeTableName:comment:)``
 56 | /// - ``removeDefinition(authorization:)``
 57 | public struct AuthorizationRight: AuthorizationElement {
    |               `- note: consider making struct 'AuthorizationRight' conform to the 'Sendable' protocol
 58 |     /// The name of this authorization right.
 59 |     public let name: String
Build complete! (7.72s)
Build complete.
{
  "dependencies" : [
  ],
  "manifest_display_name" : "Authorized",
  "name" : "Authorized",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "10.10"
    }
  ],
  "products" : [
    {
      "name" : "Authorized",
      "targets" : [
        "Authorized"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "AuthorizedTests",
      "module_type" : "SwiftTarget",
      "name" : "AuthorizedTests",
      "path" : "Tests/AuthorizedTests",
      "sources" : [
        "AuthorizedTests.swift"
      ],
      "target_dependencies" : [
        "Authorized"
      ],
      "type" : "test"
    },
    {
      "c99name" : "Authorized",
      "module_type" : "SwiftTarget",
      "name" : "Authorized",
      "path" : "Sources/Authorized",
      "product_memberships" : [
        "Authorized"
      ],
      "sources" : [
        "Authorization.swift",
        "AuthorizationElements.swift",
        "AuthorizationError.swift",
        "AuthorizationOption.swift",
        "AuthorizationPolicyDatabase.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.5"
}
Done.