This is a staging environment. For live and up-to-date package information, visit swiftpackageindex.com.

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 KeychainItem with Swift 6.0 for macOS (SPM).

Swift 6 data race errors: 0

Build Command

env DEVELOPER_DIR=/Applications/Xcode-15.3.0.app xcrun --toolchain org.swift.600202405261a swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete

Build Log

========================================
RunAll
========================================
Builder version: 4.40.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/danielctull/KeychainItem.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/danielctull/KeychainItem
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
HEAD is now at ba8ea1c Allow for building on linux
Cloned https://github.com/danielctull/KeychainItem.git
Revision (git rev-parse @):
ba8ea1cc6818a6f16a6529cdb7af13e25ca61fe9
SUCCESS checkout https://github.com/danielctull/KeychainItem.git at main
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.0
Building package at path:  $workDir
https://github.com/danielctull/KeychainItem.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-15.3.0.app xcrun --toolchain org.swift.600202405261a 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-6F35C1178C84523A.txt
[3/8] Compiling KeychainItem Keychain-Static.swift
[4/8] Compiling KeychainItem KeychainItem+Codable.swift
[5/8] Compiling KeychainItem Keychain+Functions.swift
[6/8] Emitting module KeychainItem
[7/8] Compiling KeychainItem Keychain-Dynamic.swift
/Users/admin/builder/spi-builder-workspace/Sources/KeychainItem/Keychain-Dynamic.swift:15:29: warning: call to main actor-isolated static method 'value(for:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
13 |
14 |     var value: Value? {
15 |         get { try? Keychain.value(for: item) }
   |                             `- warning: call to main actor-isolated static method 'value(for:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
16 |         set { try? Keychain.setValue(newValue, for: item) }
17 |     }
/Users/admin/builder/spi-builder-workspace/Sources/KeychainItem/Keychain+Functions.swift:33:17: note: calls to static method 'value(for:)' from outside of its actor context are implicitly asynchronous
31 | extension Keychain {
32 |
33 |     static func value(for item: KeychainItem<Value>) throws -> Value? {
   |                 `- note: calls to static method 'value(for:)' from outside of its actor context are implicitly asynchronous
34 |         var query = item.query
35 |         query[kSecReturnData as String] = true as AnyObject
/Users/admin/builder/spi-builder-workspace/Sources/KeychainItem/Keychain-Dynamic.swift:16:29: warning: call to main actor-isolated static method 'setValue(_:for:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
14 |     var value: Value? {
15 |         get { try? Keychain.value(for: item) }
16 |         set { try? Keychain.setValue(newValue, for: item) }
   |                             `- warning: call to main actor-isolated static method 'setValue(_:for:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
17 |     }
18 |
/Users/admin/builder/spi-builder-workspace/Sources/KeychainItem/Keychain+Functions.swift:44:17: note: calls to static method 'setValue(_:for:)' from outside of its actor context are implicitly asynchronous
42 |     }
43 |
44 |     static func setValue(_ value: Value?, for item: KeychainItem<Value>) throws {
   |                 `- note: calls to static method 'setValue(_:for:)' from outside of its actor context are implicitly asynchronous
45 |
46 |         NotificationCenter.default.post(name: .keychainItemWillChange, object: item)
/Users/admin/builder/spi-builder-workspace/Sources/KeychainItem/Keychain-Dynamic.swift:23:27: warning: will never be executed
21 |         return NotificationCenter.default
22 |             .publisher(for: .keychainItemWillChange)
23 |             .catch { _ in Empty<Notification, Never>() }
   |                    |      `- warning: will never be executed
   |                    `- note: '_' is of type 'NotificationCenter.Publisher.Failure' (aka 'Never') which cannot be constructed because it is an enum with no cases
24 |             .compactMap { $0.object as? KeychainItem<Value> }
25 |             .filter { $0.account == item.account }
/Users/admin/builder/spi-builder-workspace/Sources/KeychainItem/Keychain-Dynamic.swift:15:29: warning: sending 'self.item' risks causing data races; this is an error in the Swift 6 language mode
13 |
14 |     var value: Value? {
15 |         get { try? Keychain.value(for: item) }
   |                             |- warning: sending 'self.item' risks causing data races; this is an error in the Swift 6 language mode
   |                             `- note: sending task-isolated 'self.item' to main actor-isolated callee risks causing data races between main actor-isolated and task-isolated uses
16 |         set { try? Keychain.setValue(newValue, for: item) }
17 |     }
/Users/admin/builder/spi-builder-workspace/Sources/KeychainItem/Keychain-Dynamic.swift:16:29: warning: sending 'newValue' risks causing data races; this is an error in the Swift 6 language mode
14 |     var value: Value? {
15 |         get { try? Keychain.value(for: item) }
16 |         set { try? Keychain.setValue(newValue, for: item) }
   |                             |- warning: sending 'newValue' risks causing data races; this is an error in the Swift 6 language mode
   |                             `- note: sending task-isolated 'newValue' to main actor-isolated callee risks causing data races between main actor-isolated and task-isolated uses
17 |     }
18 |
/Users/admin/builder/spi-builder-workspace/Sources/KeychainItem/Keychain-Dynamic.swift:16:29: warning: sending 'self.item' risks causing data races; this is an error in the Swift 6 language mode
14 |     var value: Value? {
15 |         get { try? Keychain.value(for: item) }
16 |         set { try? Keychain.setValue(newValue, for: item) }
   |                             |- warning: sending 'self.item' risks causing data races; this is an error in the Swift 6 language mode
   |                             `- note: sending task-isolated 'self.item' to main actor-isolated callee risks causing data races between main actor-isolated and task-isolated uses
17 |     }
18 |
[8/8] Compiling KeychainItem KeychainItem.swift
Build complete! (31.55s)
Build complete.
{
  "dependencies" : [
  ],
  "manifest_display_name" : "KeychainItem",
  "name" : "KeychainItem",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "ios",
      "version" : "13.0"
    },
    {
      "name" : "macos",
      "version" : "10.15"
    },
    {
      "name" : "tvos",
      "version" : "13.0"
    },
    {
      "name" : "watchos",
      "version" : "6.0"
    }
  ],
  "products" : [
    {
      "name" : "KeychainItem",
      "targets" : [
        "KeychainItem"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "KeychainItemTests",
      "module_type" : "SwiftTarget",
      "name" : "KeychainItemTests",
      "path" : "Tests/KeychainItemTests",
      "sources" : [
        "CodableTests.swift",
        "KeychainTests.swift"
      ],
      "target_dependencies" : [
        "KeychainItem"
      ],
      "type" : "test"
    },
    {
      "c99name" : "KeychainItem",
      "module_type" : "SwiftTarget",
      "name" : "KeychainItem",
      "path" : "Sources/KeychainItem",
      "product_memberships" : [
        "KeychainItem"
      ],
      "sources" : [
        "Keychain+Functions.swift",
        "Keychain-Dynamic.swift",
        "Keychain-Static.swift",
        "KeychainItem+Codable.swift",
        "KeychainItem.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.1"
}
Done.
This is a staging environment. For live and up-to-date package information, visit swiftpackageindex.com.