The Swift Package Index logo.Swift Package Index

Build Information

Successful build of bluetooth-law-energy-swift, reference main (607f6b), with Swift 6.4 for macOS (SPM) on 22 Sep 2026 20:58:16 UTC.

Swift 6 data race errors: 0

Build Command

env DEVELOPER_DIR=/Applications/Xcode-27.0.0-Release.Candidate.app xcrun swift build --arch arm64

Build Log

========================================
RunAll
========================================
Builder version: 5.1.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/swiftuiux/bluetooth-law-energy-swift.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/swiftuiux/bluetooth-law-energy-swift
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
HEAD is now at 607f6b6 Update README.md
Cloned https://github.com/swiftuiux/bluetooth-law-energy-swift.git
Revision (git rev-parse @):
607f6b662ee58458d1c2bab018cec8fa8b0adb8d
SPI manifest file found: $PWD/.spi.yml
SUCCESS checkout https://github.com/swiftuiux/bluetooth-law-energy-swift.git at main
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.4
Building package at path:  $PWD
https://github.com/swiftuiux/bluetooth-law-energy-swift.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-27.0.0-Release.Candidate.app xcrun swift build --arch arm64
Building for debugging...
[Pre-planning 1 / 96]
[Planning deferred tasks]
[25 / 42]
[26 / 43] retry-policy-service
[36 / 81]
[41 / 81]
[44 / 81]
[45 / 81]
[49 / 81]
[51 / 81]
[54 / 81]
[57 / 81]
[59 / 81]
[60 / 81]
[64 / 81] retry-policy-service
[71 / 82] bluetooth-law-energy-swift
[74 / 96]
[82 / 96] bluetooth-law-energy-swift
[83 / 96] bluetooth-law-energy-swift
[85 / 96] bluetooth-law-energy-swift
[93 / 96] bluetooth-law-energy-swift
Build complete! (8.06 sec)
Fetching https://github.com/swiftuiux/retry-policy-service.git
[1/101] Fetching retry-policy-service
Fetched https://github.com/swiftuiux/retry-policy-service.git (1.25s)
Computing version for https://github.com/swiftuiux/retry-policy-service.git
Computed https://github.com/swiftuiux/retry-policy-service.git at 1.0.1 (1.96s)
Creating working copy for https://github.com/swiftuiux/retry-policy-service.git
Working copy of https://github.com/swiftuiux/retry-policy-service.git resolved at 1.0.1
/Users/admin/builder/spi-builder-workspace/Sources/bluetooth-law-energy-swift/delegate/PeripheralDelegate.swift:50:17: warning: unstructured throwing task created by 'init(name:priority:operation:)' is not used, which may accidentally ignore errors thrown inside the task [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/no-use-throwing-unstructured-task\NoUseUnstructuredThrowingTask]8;;\]
48 |         public func discoverServices(for peripheral: CBPeripheral) async throws {
49 |             return try await withCheckedThrowingContinuation { continuation in
50 |                 Task{
   |                 |- warning: unstructured throwing task created by 'init(name:priority:operation:)' is not used, which may accidentally ignore errors thrown inside the task [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/no-use-throwing-unstructured-task\NoUseUnstructuredThrowingTask]8;;\]
   |                 `- note: to silence this warning, handle the error inside the task, or store/discard the task value explicitly
51 |                     let id = peripheral.getId
52 |                     let name = peripheral.getName
[#NoUseUnstructuredThrowingTask]: <https://docs.swift.org/compiler/documentation/diagnostics/no-use-throwing-unstructured-task>
/Users/admin/builder/spi-builder-workspace/Sources/bluetooth-law-energy-swift/BluetoothLEManager.swift:147:35: warning: 'weak' ownership of capture 'self' differs from implicitly-captured strong reference in outer scope [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/implicit-strong-capture\ImplicitStrongCapture]8;;\]
139 |
140 |         return try await withCheckedThrowingContinuation { continuation in
141 |             Task {
    |                  |- note: 'self' implicitly strongly captured here
    |                  `- note: add 'self' as a capture list item to silence
142 |                 let id = peripheral.getId
143 |                 let name = peripheral.getName
    :
145 |                     try await delegateHandler.connect(to: id, name: name, with: continuation)
146 |                     try Task.checkCancellation() // ensure early exit if cancelled
147 |                     onBLE { [weak self] in
    |                                   |- warning: 'weak' ownership of capture 'self' differs from implicitly-captured strong reference in outer scope [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/implicit-strong-capture\ImplicitStrongCapture]8;;\]
    |                                   `- note: explicitly assign the capture list item to silence
148 |                         guard let self else { return }
149 |                         self.centralManager.connect(peripheral, options: nil)
/Users/admin/builder/spi-builder-workspace/Sources/bluetooth-law-energy-swift/BluetoothLEManager.swift:177:35: warning: 'weak' ownership of capture 'self' differs from implicitly-captured strong reference in outer scope [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/implicit-strong-capture\ImplicitStrongCapture]8;;\]
169 |
170 |         return try await withCheckedThrowingContinuation { continuation in
171 |             Task {
    |                  |- note: 'self' implicitly strongly captured here
    |                  `- note: add 'self' as a capture list item to silence
172 |                 let id = peripheral.getId
173 |                 let name = peripheral.getName
    :
175 |                     try await delegateHandler.disconnect(to: id, name: name, with: continuation)
176 |                     try Task.checkCancellation() // ensure early exit if cancelled
177 |                     onBLE { [weak self] in
    |                                   |- warning: 'weak' ownership of capture 'self' differs from implicitly-captured strong reference in outer scope [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/implicit-strong-capture\ImplicitStrongCapture]8;;\]
    |                                   `- note: explicitly assign the capture list item to silence
178 |                         guard let self else { return }
179 |                         self.centralManager.cancelPeripheralConnection(peripheral)
/Users/admin/builder/spi-builder-workspace/Sources/bluetooth-law-energy-swift/BluetoothLEManager.swift:235:37: warning: main actor-isolated property 'bleState' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
 16 |     /// Publishes BLE state changes to the main actor.
 17 |     @MainActor
 18 |     public let bleState: CurrentValueSubject<BLEState, Never> = .init(.init())
    |                `- note: property declared here
 19 |
 20 |     /// Internal state flags.
    :
233 |                 guard let self = self else { return }
234 |                 let result = self.checkForScan(state, subscriberCount)
235 |                 let bleState = self.bleState
    |                                     `- warning: main actor-isolated property 'bleState' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
236 |                 Task { @MainActor in
237 |                     bleState.send(result)
[#ImplicitStrongCapture]: <https://docs.swift.org/compiler/documentation/diagnostics/implicit-strong-capture>
Build complete.
{
  "dependencies" : [
    {
      "identity" : "retry-policy-service",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.0.1",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/swiftuiux/retry-policy-service.git"
    }
  ],
  "manifest_display_name" : "bluetooth-law-energy-swift",
  "name" : "bluetooth-law-energy-swift",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "12.0"
    },
    {
      "name" : "ios",
      "version" : "15.0"
    },
    {
      "name" : "watchos",
      "version" : "8.0"
    },
    {
      "name" : "tvos",
      "version" : "15.0"
    }
  ],
  "products" : [
    {
      "name" : "bluetooth-law-energy-swift",
      "targets" : [
        "bluetooth-law-energy-swift"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "bluetooth_law_energy_swiftTests",
      "module_type" : "SwiftTarget",
      "name" : "bluetooth-law-energy-swiftTests",
      "path" : "Tests/bluetooth-law-energy-swiftTests",
      "sources" : [
        "BluetoothLEManagerTests.swift"
      ],
      "target_dependencies" : [
        "bluetooth-law-energy-swift"
      ],
      "type" : "test"
    },
    {
      "c99name" : "bluetooth_law_energy_swift",
      "module_type" : "SwiftTarget",
      "name" : "bluetooth-law-energy-swift",
      "path" : "Sources/bluetooth-law-energy-swift",
      "product_dependencies" : [
        "retry-policy-service"
      ],
      "product_memberships" : [
        "bluetooth-law-energy-swift"
      ],
      "sources" : [
        "BluetoothLEManager.swift",
        "Combine+/Publisher+.swift",
        "delegate/BluetoothDelegate.swift",
        "delegate/PeripheralDelegate.swift",
        "enum/Errors.swift",
        "enum/ServiceType.swift",
        "ext/CBPeripheral+.swift",
        "ext/Task+.swift",
        "model/BLEState.swift",
        "protocol/IBluetoothLEManager.swift",
        "protocol/ILogger.swift",
        "service/AppleLogger.swift",
        "service/CacheServices.swift",
        "service/ServiceRegistration.swift",
        "service/State.swift",
        "service/StreamFactory.swift",
        "service/StreamRegistration.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.7"
}
Done.