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 Blessed, reference main (fc7c93), with Swift 6.0 for macOS (SPM) on 2 Nov 2024 11:54:51 UTC.

Swift 6 data race errors: 3

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/Blessed.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/trilemma-dev/Blessed
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
HEAD is now at fc7c930 Update README.md
Cloned https://github.com/trilemma-dev/Blessed.git
Revision (git rev-parse @):
fc7c930f3cc1894a2481e1f884c336007712e6a8
SUCCESS checkout https://github.com/trilemma-dev/Blessed.git at main
Fetching https://github.com/trilemma-dev/Authorized.git
Fetching https://github.com/trilemma-dev/Required.git
Fetching https://github.com/trilemma-dev/EmbeddedPropertyList.git
[1/36] Fetching authorized
[26/193] Fetching authorized, embeddedpropertylist
[169/469] Fetching authorized, embeddedpropertylist, required
Fetched https://github.com/trilemma-dev/Required.git from cache (0.89s)
Fetched https://github.com/trilemma-dev/EmbeddedPropertyList.git from cache (0.89s)
Fetched https://github.com/trilemma-dev/Authorized.git from cache (0.89s)
Computing version for https://github.com/trilemma-dev/Authorized.git
Computed https://github.com/trilemma-dev/Authorized.git at 1.0.0 (0.64s)
Computing version for https://github.com/trilemma-dev/Required.git
Computed https://github.com/trilemma-dev/Required.git at 0.1.1 (0.64s)
Computing version for https://github.com/trilemma-dev/EmbeddedPropertyList.git
Computed https://github.com/trilemma-dev/EmbeddedPropertyList.git at 2.0.2 (0.65s)
Creating working copy for https://github.com/trilemma-dev/EmbeddedPropertyList.git
Working copy of https://github.com/trilemma-dev/EmbeddedPropertyList.git resolved at 2.0.2
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
Creating working copy for https://github.com/trilemma-dev/Required.git
Working copy of https://github.com/trilemma-dev/Required.git resolved at 0.1.1
========================================
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": "blessed",
      "name": "Blessed",
      "url": "https://github.com/trilemma-dev/Blessed.git",
      "version": "unspecified",
      "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/Blessed",
      "dependencies": [
        {
          "identity": "embeddedpropertylist",
          "name": "EmbeddedPropertyList",
          "url": "https://github.com/trilemma-dev/EmbeddedPropertyList.git",
          "version": "2.0.2",
          "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/EmbeddedPropertyList",
          "dependencies": [
          ]
        },
        {
          "identity": "required",
          "name": "Required",
          "url": "https://github.com/trilemma-dev/Required.git",
          "version": "0.1.1",
          "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/Required",
          "dependencies": [
          ]
        },
        {
          "identity": "authorized",
          "name": "Authorized",
          "url": "https://github.com/trilemma-dev/Authorized.git",
          "version": "1.0.0",
          "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/Authorized",
          "dependencies": [
          ]
        }
      ]
    }
  ]
}
Fetching https://github.com/trilemma-dev/Blessed.git
[2/173] Fetching blessed
Fetched https://github.com/trilemma-dev/Blessed.git from cache (0.78s)
Fetching https://github.com/trilemma-dev/Authorized.git from cache
Fetching https://github.com/trilemma-dev/Required.git from cache
Fetching https://github.com/trilemma-dev/EmbeddedPropertyList.git from cache
Fetched https://github.com/trilemma-dev/Required.git from cache (0.52s)
Fetched https://github.com/trilemma-dev/Authorized.git from cache (0.54s)
Fetched https://github.com/trilemma-dev/EmbeddedPropertyList.git from cache (0.54s)
Computing version for https://github.com/trilemma-dev/Authorized.git
Computed https://github.com/trilemma-dev/Authorized.git at 1.0.0 (0.02s)
Computing version for https://github.com/trilemma-dev/Required.git
Computed https://github.com/trilemma-dev/Required.git at 0.1.1 (0.02s)
Computing version for https://github.com/trilemma-dev/EmbeddedPropertyList.git
Computed https://github.com/trilemma-dev/EmbeddedPropertyList.git at 2.0.2 (0.02s)
Creating working copy for https://github.com/trilemma-dev/EmbeddedPropertyList.git
Working copy of https://github.com/trilemma-dev/EmbeddedPropertyList.git resolved at 2.0.2
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
Creating working copy for https://github.com/trilemma-dev/Blessed.git
Working copy of https://github.com/trilemma-dev/Blessed.git resolved at main (fc7c930)
Creating working copy for https://github.com/trilemma-dev/Required.git
Working copy of https://github.com/trilemma-dev/Required.git resolved at 0.1.1
warning: '.resolve-product-dependencies': dependency 'blessed' is not used by any target
Found 3 product dependencies
  - EmbeddedPropertyList
  - Required
  - Authorized
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.0
Building package at path:  $PWD
https://github.com/trilemma-dev/Blessed.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/5] Write sources
[4/5] Write swift-version--7754E27361AE5C74.txt
[6/54] Emitting module Required
[7/58] Compiling Required NegationRequirement.swift
[8/58] Compiling Required OrRequirement.swift
[9/58] Compiling Required ParenthesesRequirement.swift
[10/58] Compiling Required Parser.swift
[11/58] Compiling Required ParserError.swift
[12/58] Compiling Required Requirement.swift
[13/58] Compiling Required RequirementSet.swift
[14/58] Compiling Required Symbols.swift
[15/58] Compiling Required WildcardString.swift
[16/58] Compiling Required Token.swift
[17/58] Compiling Required TokenizationError.swift
[18/58] Compiling Required Tokenizer.swift
[19/58] Compiling Authorized AuthorizationElements.swift
[20/58] Compiling Authorized AuthorizationOption.swift
[21/58] Compiling Authorized AuthorizationPolicyDatabase.swift
[22/58] Emitting module Authorized
[23/58] Emitting module EmbeddedPropertyList
[24/58] Compiling EmbeddedPropertyList ReadError.swift
[25/58] Compiling EmbeddedPropertyList BundleVersion.swift
[26/58] Compiling EmbeddedPropertyList EmbeddedPropertyListReader.swift
[27/58] Compiling Required SecTask+Extensions.swift
[28/58] Compiling Required SecurityCommon.swift
[29/58] Compiling Required SecurityError.swift
[30/58] Compiling Required AndRequirement.swift
[31/58] Compiling Authorized Authorization.swift
[32/58] Compiling Authorized AuthorizationError.swift
[33/58] Compiling Required IdentifierConstraint.swift
[34/58] Compiling Required InfoConstraint.swift
[35/58] Compiling Required KeyExpression.swift
[36/58] Compiling Required MatchExpression.swift
[37/58] Compiling Required CompileAndParse.swift
[38/58] Compiling Required AndRequirement+Evaluate.swift
[39/58] Compiling Required CertificateConstraint+Evaluate.swift
[40/58] Compiling Required CodeDirectoryHashConstraint+Evaluate.swift
[41/58] Compiling Required EntitlementConstraint+Evaluate.swift
[42/58] Compiling Required CertificateConstraint.swift
[43/58] Compiling Required CodeDirectoryHashConstraint.swift
[44/58] Compiling Required Constraint.swift
[45/58] Compiling Required EntitlementConstraint.swift
[46/58] Compiling Required Evaluation.swift
[47/58] Compiling Required IdentifierConstraint+Evaluate.swift
[48/58] Compiling Required InfoConstraint+Evaluate.swift
[49/58] Compiling Required MatchExpression+Evaluate.swift
[50/58] Compiling Required NegationRequirement+Evaluate.swift
[51/58] Compiling Required OrRequirement+Evaluate.swift
[52/58] Compiling Required ParenthesesRequirement+Evaluate.swift
[53/58] Compiling Required Requirement+Evaluate.swift
[54/58] Compiling Required Data+Extensions.swift
[55/58] Compiling Required SecCertificate+Extensions.swift
[56/58] Compiling Required SecCode+Extensions.swift
[57/58] Compiling Required SecRequirement+Extensions.swift
[58/58] Compiling Required SecStaticCode+Extensions.swift
[59/62] Compiling Blessed ProcessInfo+Sandbox.swift
[60/62] Compiling Blessed PrivilegedHelperManager.swift
/Users/admin/builder/spi-builder-workspace/Sources/Blessed/PrivilegedHelperManager.swift:27:23: warning: static property 'shared' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 25 |
 26 |     /// The shared privileged helper manager for the process.
 27 |     public static var shared = PrivilegedHelperManager()
    |                       |- warning: static property 'shared' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'shared' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: annotate 'shared' with '@MainActor' if property should only be accessed from the main actor
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 28 |
 29 |     /// Submits a privileged helper tool as a launchd job.
/Users/admin/builder/spi-builder-workspace/Sources/Blessed/PrivilegedHelperManager.swift:182:16: warning: static property 'blessPrivilegedHelper' is not concurrency-safe because non-'Sendable' type 'AuthorizationRight' may have shared mutable state; this is an error in the Swift 6 language mode
180 |     /// When using this to check or request rights, ``AuthorizationEnvironmentEntry/forPrompt(message:)`` and
181 |     /// ``AuthorizationEnvironmentEntry/forIcon(_:)`` can be specified as environment entries.
182 |     static let blessPrivilegedHelper = AuthorizationRight(name: kSMRightBlessPrivilegedHelper)
    |                `- warning: static property 'blessPrivilegedHelper' is not concurrency-safe because non-'Sendable' type 'AuthorizationRight' may have shared mutable state; this is an error in the Swift 6 language mode
183 |
184 |     /// Authorization right for modifying system daemons.
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Authorized/Sources/Authorized/AuthorizationElements.swift:57:15: note: struct 'AuthorizationRight' does not conform to the 'Sendable' protocol
 55 | /// - ``createOrUpdateDefinition(rules:authorization:descriptionKey:bundle:localeTableName:comment:)``
 56 | /// - ``removeDefinition(authorization:)``
 57 | public struct AuthorizationRight: AuthorizationElement {
    |               `- note: struct 'AuthorizationRight' does not conform to the 'Sendable' protocol
 58 |     /// The name of this authorization right.
 59 |     public let name: String
/Users/admin/builder/spi-builder-workspace/Sources/Blessed/PrivilegedHelperManager.swift:8:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Authorized'
  6 | //
  7 |
  8 | import Authorized
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Authorized'
  9 | import Foundation
 10 | import ServiceManagement
    :
180 |     /// When using this to check or request rights, ``AuthorizationEnvironmentEntry/forPrompt(message:)`` and
181 |     /// ``AuthorizationEnvironmentEntry/forIcon(_:)`` can be specified as environment entries.
182 |     static let blessPrivilegedHelper = AuthorizationRight(name: kSMRightBlessPrivilegedHelper)
    |                |- note: annotate 'blessPrivilegedHelper' 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
183 |
184 |     /// Authorization right for modifying system daemons.
/Users/admin/builder/spi-builder-workspace/Sources/Blessed/PrivilegedHelperManager.swift:185:16: warning: static property 'modifySystemsDaemon' is not concurrency-safe because non-'Sendable' type 'AuthorizationRight' may have shared mutable state; this is an error in the Swift 6 language mode
183 |
184 |     /// Authorization right for modifying system daemons.
185 |     static let modifySystemsDaemon = AuthorizationRight(name: kSMRightModifySystemDaemons)
    |                |- warning: static property 'modifySystemsDaemon' is not concurrency-safe because non-'Sendable' type 'AuthorizationRight' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'modifySystemsDaemon' 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
186 | }
187 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Authorized/Sources/Authorized/AuthorizationElements.swift:57:15: note: struct 'AuthorizationRight' does not conform to the 'Sendable' protocol
 55 | /// - ``createOrUpdateDefinition(rules:authorization:descriptionKey:bundle:localeTableName:comment:)``
 56 | /// - ``removeDefinition(authorization:)``
 57 | public struct AuthorizationRight: AuthorizationElement {
    |               `- note: struct 'AuthorizationRight' does not conform to the 'Sendable' protocol
 58 |     /// The name of this authorization right.
 59 |     public let name: String
[61/62] Emitting module Blessed
/Users/admin/builder/spi-builder-workspace/Sources/Blessed/PrivilegedHelperManager.swift:27:23: warning: static property 'shared' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 25 |
 26 |     /// The shared privileged helper manager for the process.
 27 |     public static var shared = PrivilegedHelperManager()
    |                       |- warning: static property 'shared' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'shared' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: annotate 'shared' with '@MainActor' if property should only be accessed from the main actor
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 28 |
 29 |     /// Submits a privileged helper tool as a launchd job.
/Users/admin/builder/spi-builder-workspace/Sources/Blessed/PrivilegedHelperManager.swift:182:16: warning: static property 'blessPrivilegedHelper' is not concurrency-safe because non-'Sendable' type 'AuthorizationRight' may have shared mutable state; this is an error in the Swift 6 language mode
180 |     /// When using this to check or request rights, ``AuthorizationEnvironmentEntry/forPrompt(message:)`` and
181 |     /// ``AuthorizationEnvironmentEntry/forIcon(_:)`` can be specified as environment entries.
182 |     static let blessPrivilegedHelper = AuthorizationRight(name: kSMRightBlessPrivilegedHelper)
    |                `- warning: static property 'blessPrivilegedHelper' is not concurrency-safe because non-'Sendable' type 'AuthorizationRight' may have shared mutable state; this is an error in the Swift 6 language mode
183 |
184 |     /// Authorization right for modifying system daemons.
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Authorized/Sources/Authorized/AuthorizationElements.swift:57:15: note: struct 'AuthorizationRight' does not conform to the 'Sendable' protocol
 55 | /// - ``createOrUpdateDefinition(rules:authorization:descriptionKey:bundle:localeTableName:comment:)``
 56 | /// - ``removeDefinition(authorization:)``
 57 | public struct AuthorizationRight: AuthorizationElement {
    |               `- note: struct 'AuthorizationRight' does not conform to the 'Sendable' protocol
 58 |     /// The name of this authorization right.
 59 |     public let name: String
/Users/admin/builder/spi-builder-workspace/Sources/Blessed/PrivilegedHelperManager.swift:8:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Authorized'
  6 | //
  7 |
  8 | import Authorized
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Authorized'
  9 | import Foundation
 10 | import ServiceManagement
    :
180 |     /// When using this to check or request rights, ``AuthorizationEnvironmentEntry/forPrompt(message:)`` and
181 |     /// ``AuthorizationEnvironmentEntry/forIcon(_:)`` can be specified as environment entries.
182 |     static let blessPrivilegedHelper = AuthorizationRight(name: kSMRightBlessPrivilegedHelper)
    |                |- note: annotate 'blessPrivilegedHelper' 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
183 |
184 |     /// Authorization right for modifying system daemons.
/Users/admin/builder/spi-builder-workspace/Sources/Blessed/PrivilegedHelperManager.swift:185:16: warning: static property 'modifySystemsDaemon' is not concurrency-safe because non-'Sendable' type 'AuthorizationRight' may have shared mutable state; this is an error in the Swift 6 language mode
183 |
184 |     /// Authorization right for modifying system daemons.
185 |     static let modifySystemsDaemon = AuthorizationRight(name: kSMRightModifySystemDaemons)
    |                |- warning: static property 'modifySystemsDaemon' is not concurrency-safe because non-'Sendable' type 'AuthorizationRight' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: annotate 'modifySystemsDaemon' 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
186 | }
187 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Authorized/Sources/Authorized/AuthorizationElements.swift:57:15: note: struct 'AuthorizationRight' does not conform to the 'Sendable' protocol
 55 | /// - ``createOrUpdateDefinition(rules:authorization:descriptionKey:bundle:localeTableName:comment:)``
 56 | /// - ``removeDefinition(authorization:)``
 57 | public struct AuthorizationRight: AuthorizationElement {
    |               `- note: struct 'AuthorizationRight' does not conform to the 'Sendable' protocol
 58 |     /// The name of this authorization right.
 59 |     public let name: String
[62/62] Compiling Blessed BlessError.swift
Build complete! (30.91s)
Build complete.
{
  "dependencies" : [
    {
      "identity" : "embeddedpropertylist",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "2.0.2",
            "upper_bound" : "3.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/trilemma-dev/EmbeddedPropertyList.git"
    },
    {
      "identity" : "required",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "0.1.1",
            "upper_bound" : "1.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/trilemma-dev/Required.git"
    },
    {
      "identity" : "authorized",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.0.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/trilemma-dev/Authorized.git"
    }
  ],
  "manifest_display_name" : "Blessed",
  "name" : "Blessed",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "10.10"
    }
  ],
  "products" : [
    {
      "name" : "Blessed",
      "targets" : [
        "Blessed"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "BlessedTests",
      "module_type" : "SwiftTarget",
      "name" : "BlessedTests",
      "path" : "Tests/BlessedTests",
      "sources" : [
        "Sandbox Tests.swift"
      ],
      "target_dependencies" : [
        "Blessed"
      ],
      "type" : "test"
    },
    {
      "c99name" : "Blessed",
      "module_type" : "SwiftTarget",
      "name" : "Blessed",
      "path" : "Sources/Blessed",
      "product_dependencies" : [
        "Authorized",
        "EmbeddedPropertyList",
        "Required"
      ],
      "product_memberships" : [
        "Blessed"
      ],
      "sources" : [
        "BlessError.swift",
        "PrivilegedHelperManager.swift",
        "ProcessInfo+Sandbox.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.5"
}
Done.