The Swift Package Index logo.Swift Package Index

Build Information

Successful build of NordicDFU, reference main (43de98), with Swift 6.1 for macOS (SPM) on 31 Mar 2026 08:25:35 UTC.

Swift 6 data race errors: 1

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.69.2
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/nordicsemi/IOS-DFU-Library.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/nordicsemi/IOS-DFU-Library
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
HEAD is now at 43de982 Merge pull request #556 from Jetbo/patch-1
Cloned https://github.com/nordicsemi/IOS-DFU-Library.git
Revision (git rev-parse @):
43de982ac8bd792c8c72870ac541c2083f7fb7a3
SUCCESS checkout https://github.com/nordicsemi/IOS-DFU-Library.git at main
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.1
Building package at path:  $PWD
https://github.com/nordicsemi/IOS-DFU-Library.git
https://github.com/nordicsemi/IOS-DFU-Library.git
{
  "dependencies" : [
    {
      "identity" : "zipfoundation",
      "requirement" : {
        "exact" : [
          "0.9.19"
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/weichsel/ZIPFoundation"
    },
    {
      "identity" : "swift-docc-plugin",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.0.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/apple/swift-docc-plugin"
    }
  ],
  "manifest_display_name" : "NordicDFU",
  "name" : "NordicDFU",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "10.14"
    },
    {
      "name" : "ios",
      "version" : "12.0"
    },
    {
      "name" : "watchos",
      "version" : "4.0"
    },
    {
      "name" : "tvos",
      "version" : "12.0"
    }
  ],
  "products" : [
    {
      "name" : "NordicDFU",
      "targets" : [
        "NordicDFU"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "swift_languages_versions" : [
    "5"
  ],
  "targets" : [
    {
      "c99name" : "NordicDFUTests",
      "module_type" : "SwiftTarget",
      "name" : "NordicDFUTests",
      "path" : "Tests",
      "sources" : [
        "Hex2BinConverterTests.swift"
      ],
      "target_dependencies" : [
        "NordicDFU"
      ],
      "type" : "test"
    },
    {
      "c99name" : "NordicDFU",
      "module_type" : "SwiftTarget",
      "name" : "NordicDFU",
      "path" : "Library",
      "product_dependencies" : [
        "ZIPFoundation"
      ],
      "product_memberships" : [
        "NordicDFU"
      ],
      "resources" : [
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Library/Assets/PrivacyInfo.xcprivacy",
          "rule" : {
            "process" : {
            }
          }
        }
      ],
      "sources" : [
        "Classes/Implementation/DFUPeripheralSelector.swift",
        "Classes/Implementation/DFUPeripheralSelectorDelegate.swift",
        "Classes/Implementation/DFUSelector/DFUServiceSelector.swift",
        "Classes/Implementation/DFUSelector/DFUStarterPeripheral.swift",
        "Classes/Implementation/DFUServiceController.swift",
        "Classes/Implementation/DFUServiceDelegate.swift",
        "Classes/Implementation/DFUServiceInitiator.swift",
        "Classes/Implementation/DFUUuidHelper.swift",
        "Classes/Implementation/Firmware/DFUFirmware.swift",
        "Classes/Implementation/GenericDFU/DFUCharacteristic.swift",
        "Classes/Implementation/GenericDFU/DFUController.swift",
        "Classes/Implementation/GenericDFU/DFUExecutor.swift",
        "Classes/Implementation/GenericDFU/DFUPeripheral.swift",
        "Classes/Implementation/GenericDFU/DFUPeripheralDelegate.swift",
        "Classes/Implementation/GenericDFU/DFUService.swift",
        "Classes/Implementation/LegacyDFU/Characteristics/DFUControlPoint.swift",
        "Classes/Implementation/LegacyDFU/Characteristics/DFUPacket.swift",
        "Classes/Implementation/LegacyDFU/Characteristics/DFUVersion.swift",
        "Classes/Implementation/LegacyDFU/DFU/LegacyDFUExecutor.swift",
        "Classes/Implementation/LegacyDFU/DFU/LegacyDFUServiceInitiator.swift",
        "Classes/Implementation/LegacyDFU/Peripherals/LegacyDFUPeripheral.swift",
        "Classes/Implementation/LegacyDFU/Peripherals/LegacyDFUPeripheralDelegate.swift",
        "Classes/Implementation/LegacyDFU/Services/LegacyDFUService.swift",
        "Classes/Implementation/SecureDFU/Characteristics/ButtonlessDFU.swift",
        "Classes/Implementation/SecureDFU/Characteristics/SecureDFUControlPoint.swift",
        "Classes/Implementation/SecureDFU/Characteristics/SecureDFUPacket.swift",
        "Classes/Implementation/SecureDFU/DFU/SecureDFUExecutor.swift",
        "Classes/Implementation/SecureDFU/DFU/SecureDFUServiceInitiator.swift",
        "Classes/Implementation/SecureDFU/Peripheral/SecureDFUPeripheral.swift",
        "Classes/Implementation/SecureDFU/Peripheral/SecureDFUPeripheralDelegate.swift",
        "Classes/Implementation/SecureDFU/Services/SecureDFUService.swift",
        "Classes/Utilities/DFUPackage/Manifest/Manifest.swift",
        "Classes/Utilities/DFUPackage/Manifest/ManifestFirmwareInfo.swift",
        "Classes/Utilities/DFUPackage/Manifest/SoftdeviceBootloaderInfo.swift",
        "Classes/Utilities/Data.swift",
        "Classes/Utilities/Double.swift",
        "Classes/Utilities/HexToBinConverter/IntelHex2BinConverter.swift",
        "Classes/Utilities/Logging/LoggerDelegate.swift",
        "Classes/Utilities/Logging/LoggerHelper.swift",
        "Classes/Utilities/Streams/DFUStream.swift",
        "Classes/Utilities/Streams/DFUStreamBin.swift",
        "Classes/Utilities/Streams/DFUStreamHex.swift",
        "Classes/Utilities/Streams/DFUStreamZip.swift",
        "Classes/Utilities/ZipArchive.swift",
        "Classes/Utilities/crc32.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.9"
}
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
[1/1] Compiling plugin Swift-DocC Preview
[2/2] Compiling plugin Swift-DocC
Building for debugging...
[2/7] Write sources
[2/7] Copying PrivacyInfo.xcprivacy
[2/7] Write sources
[3/7] Copying PrivacyInfo.xcprivacy
[6/7] Write swift-version-2F0A5646E1D333AE.txt
[8/28] Emitting module ZIPFoundation
[9/30] Compiling ZIPFoundation URL+ZIP.swift
[10/30] Compiling ZIPFoundation resource_bundle_accessor.swift
[11/30] Compiling ZIPFoundation Entry+ZIP64.swift
[12/30] Compiling ZIPFoundation Entry.swift
[13/30] Compiling ZIPFoundation Archive+BackingConfiguration.swift
[14/30] Compiling ZIPFoundation Archive+Deprecated.swift
[15/30] Compiling ZIPFoundation Archive+Helpers.swift
[16/30] Compiling ZIPFoundation Archive+MemoryFile.swift
[17/30] Compiling ZIPFoundation Archive+Progress.swift
[18/30] Compiling ZIPFoundation Archive+Reading.swift
[19/30] Compiling ZIPFoundation Archive.swift
[20/30] Compiling ZIPFoundation Data+Compression.swift
[21/30] Compiling ZIPFoundation Data+CompressionDeprecated.swift
[22/30] Compiling ZIPFoundation Data+Serialization.swift
[23/30] Compiling ZIPFoundation Archive+ReadingDeprecated.swift
[24/30] Compiling ZIPFoundation Archive+Writing.swift
[25/30] Compiling ZIPFoundation FileManager+ZIP.swift
[26/30] Compiling ZIPFoundation FileManager+ZIPDeprecated.swift
[27/30] Compiling ZIPFoundation Date+ZIP.swift
[28/30] Compiling ZIPFoundation Entry+Serialization.swift
[29/30] Compiling ZIPFoundation Archive+WritingDeprecated.swift
[30/30] Compiling ZIPFoundation Archive+ZIP64.swift
[31/73] Compiling NordicDFU LoggerHelper.swift
/Users/admin/builder/spi-builder-workspace/Library/Classes/Utilities/Logging/LoggerHelper.swift:79:17: warning: capture of 'logger' with non-sendable type 'any LoggerDelegate' in a '@Sendable' closure
77 |         if let logger = logger {
78 |             queue.async {
79 |                 logger.logWith(level, message: message)
   |                 `- warning: capture of 'logger' with non-sendable type 'any LoggerDelegate' in a '@Sendable' closure
80 |             }
81 |         }
/Users/admin/builder/spi-builder-workspace/Library/Classes/Utilities/Logging/LoggerDelegate.swift:71:23: note: protocol 'LoggerDelegate' does not conform to the 'Sendable' protocol
69 |  The Logger delegate.
70 |  */
71 | @objc public protocol LoggerDelegate: AnyObject {
   |                       `- note: protocol 'LoggerDelegate' does not conform to the 'Sendable' protocol
72 |
73 |     /**
/Users/admin/builder/spi-builder-workspace/Library/Classes/Utilities/Logging/LoggerHelper.swift:79:32: warning: capture of 'level' with non-sendable type 'LogLevel' in a '@Sendable' closure
77 |         if let logger = logger {
78 |             queue.async {
79 |                 logger.logWith(level, message: message)
   |                                `- warning: capture of 'level' with non-sendable type 'LogLevel' in a '@Sendable' closure
80 |             }
81 |         }
/Users/admin/builder/spi-builder-workspace/Library/Classes/Utilities/Logging/LoggerDelegate.swift:40:19: note: consider making enum 'LogLevel' conform to the 'Sendable' protocol
38 |  Levels allow to categorize message by importance.
39 |  */
40 | @objc public enum LogLevel : Int {
   |                   `- note: consider making enum 'LogLevel' conform to the 'Sendable' protocol
41 |     /// Lowest priority. Usually names of called methods or callbacks received.
42 |     case debug       = 0
[32/73] Compiling NordicDFU DFUStream.swift
/Users/admin/builder/spi-builder-workspace/Library/Classes/Utilities/Logging/LoggerHelper.swift:79:17: warning: capture of 'logger' with non-sendable type 'any LoggerDelegate' in a '@Sendable' closure
77 |         if let logger = logger {
78 |             queue.async {
79 |                 logger.logWith(level, message: message)
   |                 `- warning: capture of 'logger' with non-sendable type 'any LoggerDelegate' in a '@Sendable' closure
80 |             }
81 |         }
/Users/admin/builder/spi-builder-workspace/Library/Classes/Utilities/Logging/LoggerDelegate.swift:71:23: note: protocol 'LoggerDelegate' does not conform to the 'Sendable' protocol
69 |  The Logger delegate.
70 |  */
71 | @objc public protocol LoggerDelegate: AnyObject {
   |                       `- note: protocol 'LoggerDelegate' does not conform to the 'Sendable' protocol
72 |
73 |     /**
/Users/admin/builder/spi-builder-workspace/Library/Classes/Utilities/Logging/LoggerHelper.swift:79:32: warning: capture of 'level' with non-sendable type 'LogLevel' in a '@Sendable' closure
77 |         if let logger = logger {
78 |             queue.async {
79 |                 logger.logWith(level, message: message)
   |                                `- warning: capture of 'level' with non-sendable type 'LogLevel' in a '@Sendable' closure
80 |             }
81 |         }
/Users/admin/builder/spi-builder-workspace/Library/Classes/Utilities/Logging/LoggerDelegate.swift:40:19: note: consider making enum 'LogLevel' conform to the 'Sendable' protocol
38 |  Levels allow to categorize message by importance.
39 |  */
40 | @objc public enum LogLevel : Int {
   |                   `- note: consider making enum 'LogLevel' conform to the 'Sendable' protocol
41 |     /// Lowest priority. Usually names of called methods or callbacks received.
42 |     case debug       = 0
[33/73] Compiling NordicDFU DFUStreamBin.swift
/Users/admin/builder/spi-builder-workspace/Library/Classes/Utilities/Logging/LoggerHelper.swift:79:17: warning: capture of 'logger' with non-sendable type 'any LoggerDelegate' in a '@Sendable' closure
77 |         if let logger = logger {
78 |             queue.async {
79 |                 logger.logWith(level, message: message)
   |                 `- warning: capture of 'logger' with non-sendable type 'any LoggerDelegate' in a '@Sendable' closure
80 |             }
81 |         }
/Users/admin/builder/spi-builder-workspace/Library/Classes/Utilities/Logging/LoggerDelegate.swift:71:23: note: protocol 'LoggerDelegate' does not conform to the 'Sendable' protocol
69 |  The Logger delegate.
70 |  */
71 | @objc public protocol LoggerDelegate: AnyObject {
   |                       `- note: protocol 'LoggerDelegate' does not conform to the 'Sendable' protocol
72 |
73 |     /**
/Users/admin/builder/spi-builder-workspace/Library/Classes/Utilities/Logging/LoggerHelper.swift:79:32: warning: capture of 'level' with non-sendable type 'LogLevel' in a '@Sendable' closure
77 |         if let logger = logger {
78 |             queue.async {
79 |                 logger.logWith(level, message: message)
   |                                `- warning: capture of 'level' with non-sendable type 'LogLevel' in a '@Sendable' closure
80 |             }
81 |         }
/Users/admin/builder/spi-builder-workspace/Library/Classes/Utilities/Logging/LoggerDelegate.swift:40:19: note: consider making enum 'LogLevel' conform to the 'Sendable' protocol
38 |  Levels allow to categorize message by importance.
39 |  */
40 | @objc public enum LogLevel : Int {
   |                   `- note: consider making enum 'LogLevel' conform to the 'Sendable' protocol
41 |     /// Lowest priority. Usually names of called methods or callbacks received.
42 |     case debug       = 0
[34/73] Compiling NordicDFU DFUStreamHex.swift
/Users/admin/builder/spi-builder-workspace/Library/Classes/Utilities/Logging/LoggerHelper.swift:79:17: warning: capture of 'logger' with non-sendable type 'any LoggerDelegate' in a '@Sendable' closure
77 |         if let logger = logger {
78 |             queue.async {
79 |                 logger.logWith(level, message: message)
   |                 `- warning: capture of 'logger' with non-sendable type 'any LoggerDelegate' in a '@Sendable' closure
80 |             }
81 |         }
/Users/admin/builder/spi-builder-workspace/Library/Classes/Utilities/Logging/LoggerDelegate.swift:71:23: note: protocol 'LoggerDelegate' does not conform to the 'Sendable' protocol
69 |  The Logger delegate.
70 |  */
71 | @objc public protocol LoggerDelegate: AnyObject {
   |                       `- note: protocol 'LoggerDelegate' does not conform to the 'Sendable' protocol
72 |
73 |     /**
/Users/admin/builder/spi-builder-workspace/Library/Classes/Utilities/Logging/LoggerHelper.swift:79:32: warning: capture of 'level' with non-sendable type 'LogLevel' in a '@Sendable' closure
77 |         if let logger = logger {
78 |             queue.async {
79 |                 logger.logWith(level, message: message)
   |                                `- warning: capture of 'level' with non-sendable type 'LogLevel' in a '@Sendable' closure
80 |             }
81 |         }
/Users/admin/builder/spi-builder-workspace/Library/Classes/Utilities/Logging/LoggerDelegate.swift:40:19: note: consider making enum 'LogLevel' conform to the 'Sendable' protocol
38 |  Levels allow to categorize message by importance.
39 |  */
40 | @objc public enum LogLevel : Int {
   |                   `- note: consider making enum 'LogLevel' conform to the 'Sendable' protocol
41 |     /// Lowest priority. Usually names of called methods or callbacks received.
42 |     case debug       = 0
[35/77] Emitting module NordicDFU
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/Firmware/DFUFirmware.swift:72:16: warning: stored property 'type' of 'Sendable'-conforming struct 'DFUFirmwareError' has non-sendable type 'DFUFirmwareError.FileType'; this is an error in the Swift 6 language mode
 61 | public struct DFUFirmwareError : Error {
 62 |     /// The firmware type.
 63 |     public enum FileType {
    |                 `- note: consider making enum 'FileType' conform to the 'Sendable' protocol
 64 |         /// A Distribution packet (ZIP) has failed to be parsed.
 65 |         case zip
    :
 70 |     }
 71 |     /// The firmware type.
 72 |     public let type: FileType
    |                `- warning: stored property 'type' of 'Sendable'-conforming struct 'DFUFirmwareError' has non-sendable type 'DFUFirmwareError.FileType'; this is an error in the Swift 6 language mode
 73 | }
 74 |
[36/77] Compiling NordicDFU DFUPeripheralSelector.swift
[37/77] Compiling NordicDFU DFUPeripheralSelectorDelegate.swift
[38/77] Compiling NordicDFU DFUServiceSelector.swift
[39/77] Compiling NordicDFU DFUStarterPeripheral.swift
[40/77] Compiling NordicDFU DFUServiceController.swift
[41/77] Compiling NordicDFU DFUControlPoint.swift
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/Characteristics/DFUPacket.swift:192:17: warning: capture of 'progress' with non-sendable type '(any DFUProgressDelegate)?' in a '@Sendable' closure
190 |             // Notify progress delegate that upload has started (0%).
191 |             queue.async {
192 |                 progress?.dfuProgressDidChange(
    |                 `- warning: capture of 'progress' with non-sendable type '(any DFUProgressDelegate)?' in a '@Sendable' closure
193 |                     for:   firmware.currentPart,
194 |                     outOf: firmware.parts,
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/DFUServiceDelegate.swift:286:23: note: protocol 'DFUProgressDelegate' does not conform to the 'Sendable' protocol
284 |  Uploading state.
285 |  */
286 | @objc public protocol DFUProgressDelegate {
    |                       `- note: protocol 'DFUProgressDelegate' does not conform to the 'Sendable' protocol
287 |
288 |     /**
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/Characteristics/DFUPacket.swift:193:28: warning: capture of 'firmware' with non-sendable type 'DFUFirmware' in a '@Sendable' closure
191 |             queue.async {
192 |                 progress?.dfuProgressDidChange(
193 |                     for:   firmware.currentPart,
    |                            `- warning: capture of 'firmware' with non-sendable type 'DFUFirmware' in a '@Sendable' closure
194 |                     outOf: firmware.parts,
195 |                     to:    0,
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/Firmware/DFUFirmware.swift:86:20: note: class 'DFUFirmware' does not conform to the 'Sendable' protocol
 84 |  The DFU Firmware object wraps the firmware file and provides access to its content.
 85 |  */
 86 | @objc public class DFUFirmware : NSObject, DFUStream {
    |                    `- note: class 'DFUFirmware' does not conform to the 'Sendable' protocol
 87 |     internal let stream: DFUStream
 88 |
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/Characteristics/DFUPacket.swift:238:21: warning: capture of 'progress' with non-sendable type '(any DFUProgressDelegate)?' in a '@Sendable' closure
236 |
237 |                 queue.async {
238 |                     progress?.dfuProgressDidChange(
    |                     `- warning: capture of 'progress' with non-sendable type '(any DFUProgressDelegate)?' in a '@Sendable' closure
239 |                         for:   firmware.currentPart,
240 |                         outOf: firmware.parts,
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/DFUServiceDelegate.swift:286:23: note: protocol 'DFUProgressDelegate' does not conform to the 'Sendable' protocol
284 |  Uploading state.
285 |  */
286 | @objc public protocol DFUProgressDelegate {
    |                       `- note: protocol 'DFUProgressDelegate' does not conform to the 'Sendable' protocol
287 |
288 |     /**
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/Characteristics/DFUPacket.swift:239:32: warning: capture of 'firmware' with non-sendable type 'DFUFirmware' in a '@Sendable' closure
237 |                 queue.async {
238 |                     progress?.dfuProgressDidChange(
239 |                         for:   firmware.currentPart,
    |                                `- warning: capture of 'firmware' with non-sendable type 'DFUFirmware' in a '@Sendable' closure
240 |                         outOf: firmware.parts,
241 |                         to:    Int(currentProgress),
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/Firmware/DFUFirmware.swift:86:20: note: class 'DFUFirmware' does not conform to the 'Sendable' protocol
 84 |  The DFU Firmware object wraps the firmware file and provides access to its content.
 85 |  */
 86 | @objc public class DFUFirmware : NSObject, DFUStream {
    |                    `- note: class 'DFUFirmware' does not conform to the 'Sendable' protocol
 87 |     internal let stream: DFUStream
 88 |
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/DFU/LegacyDFUServiceInitiator.swift:46:17: warning: capture of 'self' with non-sendable type 'LegacyDFUServiceInitiator' in a '@Sendable' closure
38 |  consider using this initiator instead to skip that part.
39 |  */
40 | @objc public class LegacyDFUServiceInitiator : DFUServiceInitiator {
   |                    `- note: class 'LegacyDFUServiceInitiator' does not conform to the 'Sendable' protocol
41 |
42 |     public override func start(targetWithIdentifier uuid: UUID) -> DFUServiceController? {
   :
44 |         guard let _ = file else {
45 |             delegateQueue.async {
46 |                 self.delegate?.dfuError(.fileNotSpecified, didOccurWithMessage: "Firmware not specified")
   |                 `- warning: capture of 'self' with non-sendable type 'LegacyDFUServiceInitiator' in a '@Sendable' closure
47 |             }
48 |             return nil
[42/77] Compiling NordicDFU DFUPacket.swift
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/Characteristics/DFUPacket.swift:192:17: warning: capture of 'progress' with non-sendable type '(any DFUProgressDelegate)?' in a '@Sendable' closure
190 |             // Notify progress delegate that upload has started (0%).
191 |             queue.async {
192 |                 progress?.dfuProgressDidChange(
    |                 `- warning: capture of 'progress' with non-sendable type '(any DFUProgressDelegate)?' in a '@Sendable' closure
193 |                     for:   firmware.currentPart,
194 |                     outOf: firmware.parts,
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/DFUServiceDelegate.swift:286:23: note: protocol 'DFUProgressDelegate' does not conform to the 'Sendable' protocol
284 |  Uploading state.
285 |  */
286 | @objc public protocol DFUProgressDelegate {
    |                       `- note: protocol 'DFUProgressDelegate' does not conform to the 'Sendable' protocol
287 |
288 |     /**
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/Characteristics/DFUPacket.swift:193:28: warning: capture of 'firmware' with non-sendable type 'DFUFirmware' in a '@Sendable' closure
191 |             queue.async {
192 |                 progress?.dfuProgressDidChange(
193 |                     for:   firmware.currentPart,
    |                            `- warning: capture of 'firmware' with non-sendable type 'DFUFirmware' in a '@Sendable' closure
194 |                     outOf: firmware.parts,
195 |                     to:    0,
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/Firmware/DFUFirmware.swift:86:20: note: class 'DFUFirmware' does not conform to the 'Sendable' protocol
 84 |  The DFU Firmware object wraps the firmware file and provides access to its content.
 85 |  */
 86 | @objc public class DFUFirmware : NSObject, DFUStream {
    |                    `- note: class 'DFUFirmware' does not conform to the 'Sendable' protocol
 87 |     internal let stream: DFUStream
 88 |
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/Characteristics/DFUPacket.swift:238:21: warning: capture of 'progress' with non-sendable type '(any DFUProgressDelegate)?' in a '@Sendable' closure
236 |
237 |                 queue.async {
238 |                     progress?.dfuProgressDidChange(
    |                     `- warning: capture of 'progress' with non-sendable type '(any DFUProgressDelegate)?' in a '@Sendable' closure
239 |                         for:   firmware.currentPart,
240 |                         outOf: firmware.parts,
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/DFUServiceDelegate.swift:286:23: note: protocol 'DFUProgressDelegate' does not conform to the 'Sendable' protocol
284 |  Uploading state.
285 |  */
286 | @objc public protocol DFUProgressDelegate {
    |                       `- note: protocol 'DFUProgressDelegate' does not conform to the 'Sendable' protocol
287 |
288 |     /**
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/Characteristics/DFUPacket.swift:239:32: warning: capture of 'firmware' with non-sendable type 'DFUFirmware' in a '@Sendable' closure
237 |                 queue.async {
238 |                     progress?.dfuProgressDidChange(
239 |                         for:   firmware.currentPart,
    |                                `- warning: capture of 'firmware' with non-sendable type 'DFUFirmware' in a '@Sendable' closure
240 |                         outOf: firmware.parts,
241 |                         to:    Int(currentProgress),
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/Firmware/DFUFirmware.swift:86:20: note: class 'DFUFirmware' does not conform to the 'Sendable' protocol
 84 |  The DFU Firmware object wraps the firmware file and provides access to its content.
 85 |  */
 86 | @objc public class DFUFirmware : NSObject, DFUStream {
    |                    `- note: class 'DFUFirmware' does not conform to the 'Sendable' protocol
 87 |     internal let stream: DFUStream
 88 |
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/DFU/LegacyDFUServiceInitiator.swift:46:17: warning: capture of 'self' with non-sendable type 'LegacyDFUServiceInitiator' in a '@Sendable' closure
38 |  consider using this initiator instead to skip that part.
39 |  */
40 | @objc public class LegacyDFUServiceInitiator : DFUServiceInitiator {
   |                    `- note: class 'LegacyDFUServiceInitiator' does not conform to the 'Sendable' protocol
41 |
42 |     public override func start(targetWithIdentifier uuid: UUID) -> DFUServiceController? {
   :
44 |         guard let _ = file else {
45 |             delegateQueue.async {
46 |                 self.delegate?.dfuError(.fileNotSpecified, didOccurWithMessage: "Firmware not specified")
   |                 `- warning: capture of 'self' with non-sendable type 'LegacyDFUServiceInitiator' in a '@Sendable' closure
47 |             }
48 |             return nil
[43/77] Compiling NordicDFU DFUVersion.swift
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/Characteristics/DFUPacket.swift:192:17: warning: capture of 'progress' with non-sendable type '(any DFUProgressDelegate)?' in a '@Sendable' closure
190 |             // Notify progress delegate that upload has started (0%).
191 |             queue.async {
192 |                 progress?.dfuProgressDidChange(
    |                 `- warning: capture of 'progress' with non-sendable type '(any DFUProgressDelegate)?' in a '@Sendable' closure
193 |                     for:   firmware.currentPart,
194 |                     outOf: firmware.parts,
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/DFUServiceDelegate.swift:286:23: note: protocol 'DFUProgressDelegate' does not conform to the 'Sendable' protocol
284 |  Uploading state.
285 |  */
286 | @objc public protocol DFUProgressDelegate {
    |                       `- note: protocol 'DFUProgressDelegate' does not conform to the 'Sendable' protocol
287 |
288 |     /**
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/Characteristics/DFUPacket.swift:193:28: warning: capture of 'firmware' with non-sendable type 'DFUFirmware' in a '@Sendable' closure
191 |             queue.async {
192 |                 progress?.dfuProgressDidChange(
193 |                     for:   firmware.currentPart,
    |                            `- warning: capture of 'firmware' with non-sendable type 'DFUFirmware' in a '@Sendable' closure
194 |                     outOf: firmware.parts,
195 |                     to:    0,
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/Firmware/DFUFirmware.swift:86:20: note: class 'DFUFirmware' does not conform to the 'Sendable' protocol
 84 |  The DFU Firmware object wraps the firmware file and provides access to its content.
 85 |  */
 86 | @objc public class DFUFirmware : NSObject, DFUStream {
    |                    `- note: class 'DFUFirmware' does not conform to the 'Sendable' protocol
 87 |     internal let stream: DFUStream
 88 |
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/Characteristics/DFUPacket.swift:238:21: warning: capture of 'progress' with non-sendable type '(any DFUProgressDelegate)?' in a '@Sendable' closure
236 |
237 |                 queue.async {
238 |                     progress?.dfuProgressDidChange(
    |                     `- warning: capture of 'progress' with non-sendable type '(any DFUProgressDelegate)?' in a '@Sendable' closure
239 |                         for:   firmware.currentPart,
240 |                         outOf: firmware.parts,
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/DFUServiceDelegate.swift:286:23: note: protocol 'DFUProgressDelegate' does not conform to the 'Sendable' protocol
284 |  Uploading state.
285 |  */
286 | @objc public protocol DFUProgressDelegate {
    |                       `- note: protocol 'DFUProgressDelegate' does not conform to the 'Sendable' protocol
287 |
288 |     /**
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/Characteristics/DFUPacket.swift:239:32: warning: capture of 'firmware' with non-sendable type 'DFUFirmware' in a '@Sendable' closure
237 |                 queue.async {
238 |                     progress?.dfuProgressDidChange(
239 |                         for:   firmware.currentPart,
    |                                `- warning: capture of 'firmware' with non-sendable type 'DFUFirmware' in a '@Sendable' closure
240 |                         outOf: firmware.parts,
241 |                         to:    Int(currentProgress),
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/Firmware/DFUFirmware.swift:86:20: note: class 'DFUFirmware' does not conform to the 'Sendable' protocol
 84 |  The DFU Firmware object wraps the firmware file and provides access to its content.
 85 |  */
 86 | @objc public class DFUFirmware : NSObject, DFUStream {
    |                    `- note: class 'DFUFirmware' does not conform to the 'Sendable' protocol
 87 |     internal let stream: DFUStream
 88 |
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/DFU/LegacyDFUServiceInitiator.swift:46:17: warning: capture of 'self' with non-sendable type 'LegacyDFUServiceInitiator' in a '@Sendable' closure
38 |  consider using this initiator instead to skip that part.
39 |  */
40 | @objc public class LegacyDFUServiceInitiator : DFUServiceInitiator {
   |                    `- note: class 'LegacyDFUServiceInitiator' does not conform to the 'Sendable' protocol
41 |
42 |     public override func start(targetWithIdentifier uuid: UUID) -> DFUServiceController? {
   :
44 |         guard let _ = file else {
45 |             delegateQueue.async {
46 |                 self.delegate?.dfuError(.fileNotSpecified, didOccurWithMessage: "Firmware not specified")
   |                 `- warning: capture of 'self' with non-sendable type 'LegacyDFUServiceInitiator' in a '@Sendable' closure
47 |             }
48 |             return nil
[44/77] Compiling NordicDFU LegacyDFUExecutor.swift
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/Characteristics/DFUPacket.swift:192:17: warning: capture of 'progress' with non-sendable type '(any DFUProgressDelegate)?' in a '@Sendable' closure
190 |             // Notify progress delegate that upload has started (0%).
191 |             queue.async {
192 |                 progress?.dfuProgressDidChange(
    |                 `- warning: capture of 'progress' with non-sendable type '(any DFUProgressDelegate)?' in a '@Sendable' closure
193 |                     for:   firmware.currentPart,
194 |                     outOf: firmware.parts,
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/DFUServiceDelegate.swift:286:23: note: protocol 'DFUProgressDelegate' does not conform to the 'Sendable' protocol
284 |  Uploading state.
285 |  */
286 | @objc public protocol DFUProgressDelegate {
    |                       `- note: protocol 'DFUProgressDelegate' does not conform to the 'Sendable' protocol
287 |
288 |     /**
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/Characteristics/DFUPacket.swift:193:28: warning: capture of 'firmware' with non-sendable type 'DFUFirmware' in a '@Sendable' closure
191 |             queue.async {
192 |                 progress?.dfuProgressDidChange(
193 |                     for:   firmware.currentPart,
    |                            `- warning: capture of 'firmware' with non-sendable type 'DFUFirmware' in a '@Sendable' closure
194 |                     outOf: firmware.parts,
195 |                     to:    0,
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/Firmware/DFUFirmware.swift:86:20: note: class 'DFUFirmware' does not conform to the 'Sendable' protocol
 84 |  The DFU Firmware object wraps the firmware file and provides access to its content.
 85 |  */
 86 | @objc public class DFUFirmware : NSObject, DFUStream {
    |                    `- note: class 'DFUFirmware' does not conform to the 'Sendable' protocol
 87 |     internal let stream: DFUStream
 88 |
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/Characteristics/DFUPacket.swift:238:21: warning: capture of 'progress' with non-sendable type '(any DFUProgressDelegate)?' in a '@Sendable' closure
236 |
237 |                 queue.async {
238 |                     progress?.dfuProgressDidChange(
    |                     `- warning: capture of 'progress' with non-sendable type '(any DFUProgressDelegate)?' in a '@Sendable' closure
239 |                         for:   firmware.currentPart,
240 |                         outOf: firmware.parts,
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/DFUServiceDelegate.swift:286:23: note: protocol 'DFUProgressDelegate' does not conform to the 'Sendable' protocol
284 |  Uploading state.
285 |  */
286 | @objc public protocol DFUProgressDelegate {
    |                       `- note: protocol 'DFUProgressDelegate' does not conform to the 'Sendable' protocol
287 |
288 |     /**
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/Characteristics/DFUPacket.swift:239:32: warning: capture of 'firmware' with non-sendable type 'DFUFirmware' in a '@Sendable' closure
237 |                 queue.async {
238 |                     progress?.dfuProgressDidChange(
239 |                         for:   firmware.currentPart,
    |                                `- warning: capture of 'firmware' with non-sendable type 'DFUFirmware' in a '@Sendable' closure
240 |                         outOf: firmware.parts,
241 |                         to:    Int(currentProgress),
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/Firmware/DFUFirmware.swift:86:20: note: class 'DFUFirmware' does not conform to the 'Sendable' protocol
 84 |  The DFU Firmware object wraps the firmware file and provides access to its content.
 85 |  */
 86 | @objc public class DFUFirmware : NSObject, DFUStream {
    |                    `- note: class 'DFUFirmware' does not conform to the 'Sendable' protocol
 87 |     internal let stream: DFUStream
 88 |
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/DFU/LegacyDFUServiceInitiator.swift:46:17: warning: capture of 'self' with non-sendable type 'LegacyDFUServiceInitiator' in a '@Sendable' closure
38 |  consider using this initiator instead to skip that part.
39 |  */
40 | @objc public class LegacyDFUServiceInitiator : DFUServiceInitiator {
   |                    `- note: class 'LegacyDFUServiceInitiator' does not conform to the 'Sendable' protocol
41 |
42 |     public override func start(targetWithIdentifier uuid: UUID) -> DFUServiceController? {
   :
44 |         guard let _ = file else {
45 |             delegateQueue.async {
46 |                 self.delegate?.dfuError(.fileNotSpecified, didOccurWithMessage: "Firmware not specified")
   |                 `- warning: capture of 'self' with non-sendable type 'LegacyDFUServiceInitiator' in a '@Sendable' closure
47 |             }
48 |             return nil
[45/77] Compiling NordicDFU LegacyDFUServiceInitiator.swift
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/Characteristics/DFUPacket.swift:192:17: warning: capture of 'progress' with non-sendable type '(any DFUProgressDelegate)?' in a '@Sendable' closure
190 |             // Notify progress delegate that upload has started (0%).
191 |             queue.async {
192 |                 progress?.dfuProgressDidChange(
    |                 `- warning: capture of 'progress' with non-sendable type '(any DFUProgressDelegate)?' in a '@Sendable' closure
193 |                     for:   firmware.currentPart,
194 |                     outOf: firmware.parts,
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/DFUServiceDelegate.swift:286:23: note: protocol 'DFUProgressDelegate' does not conform to the 'Sendable' protocol
284 |  Uploading state.
285 |  */
286 | @objc public protocol DFUProgressDelegate {
    |                       `- note: protocol 'DFUProgressDelegate' does not conform to the 'Sendable' protocol
287 |
288 |     /**
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/Characteristics/DFUPacket.swift:193:28: warning: capture of 'firmware' with non-sendable type 'DFUFirmware' in a '@Sendable' closure
191 |             queue.async {
192 |                 progress?.dfuProgressDidChange(
193 |                     for:   firmware.currentPart,
    |                            `- warning: capture of 'firmware' with non-sendable type 'DFUFirmware' in a '@Sendable' closure
194 |                     outOf: firmware.parts,
195 |                     to:    0,
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/Firmware/DFUFirmware.swift:86:20: note: class 'DFUFirmware' does not conform to the 'Sendable' protocol
 84 |  The DFU Firmware object wraps the firmware file and provides access to its content.
 85 |  */
 86 | @objc public class DFUFirmware : NSObject, DFUStream {
    |                    `- note: class 'DFUFirmware' does not conform to the 'Sendable' protocol
 87 |     internal let stream: DFUStream
 88 |
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/Characteristics/DFUPacket.swift:238:21: warning: capture of 'progress' with non-sendable type '(any DFUProgressDelegate)?' in a '@Sendable' closure
236 |
237 |                 queue.async {
238 |                     progress?.dfuProgressDidChange(
    |                     `- warning: capture of 'progress' with non-sendable type '(any DFUProgressDelegate)?' in a '@Sendable' closure
239 |                         for:   firmware.currentPart,
240 |                         outOf: firmware.parts,
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/DFUServiceDelegate.swift:286:23: note: protocol 'DFUProgressDelegate' does not conform to the 'Sendable' protocol
284 |  Uploading state.
285 |  */
286 | @objc public protocol DFUProgressDelegate {
    |                       `- note: protocol 'DFUProgressDelegate' does not conform to the 'Sendable' protocol
287 |
288 |     /**
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/Characteristics/DFUPacket.swift:239:32: warning: capture of 'firmware' with non-sendable type 'DFUFirmware' in a '@Sendable' closure
237 |                 queue.async {
238 |                     progress?.dfuProgressDidChange(
239 |                         for:   firmware.currentPart,
    |                                `- warning: capture of 'firmware' with non-sendable type 'DFUFirmware' in a '@Sendable' closure
240 |                         outOf: firmware.parts,
241 |                         to:    Int(currentProgress),
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/Firmware/DFUFirmware.swift:86:20: note: class 'DFUFirmware' does not conform to the 'Sendable' protocol
 84 |  The DFU Firmware object wraps the firmware file and provides access to its content.
 85 |  */
 86 | @objc public class DFUFirmware : NSObject, DFUStream {
    |                    `- note: class 'DFUFirmware' does not conform to the 'Sendable' protocol
 87 |     internal let stream: DFUStream
 88 |
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/DFU/LegacyDFUServiceInitiator.swift:46:17: warning: capture of 'self' with non-sendable type 'LegacyDFUServiceInitiator' in a '@Sendable' closure
38 |  consider using this initiator instead to skip that part.
39 |  */
40 | @objc public class LegacyDFUServiceInitiator : DFUServiceInitiator {
   |                    `- note: class 'LegacyDFUServiceInitiator' does not conform to the 'Sendable' protocol
41 |
42 |     public override func start(targetWithIdentifier uuid: UUID) -> DFUServiceController? {
   :
44 |         guard let _ = file else {
45 |             delegateQueue.async {
46 |                 self.delegate?.dfuError(.fileNotSpecified, didOccurWithMessage: "Firmware not specified")
   |                 `- warning: capture of 'self' with non-sendable type 'LegacyDFUServiceInitiator' in a '@Sendable' closure
47 |             }
48 |             return nil
[46/77] Compiling NordicDFU DFUController.swift
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/GenericDFU/DFUExecutor.swift:141:17: warning: capture of 'callback' with non-sendable type 'DelegateCallback' (aka '(any DFUServiceDelegate) -> ()') in a '@Sendable' closure
139 |         if let delegate = initiator.delegate {
140 |             initiator.delegateQueue.async {
141 |                 callback(delegate)
    |                 |- warning: capture of 'callback' with non-sendable type 'DelegateCallback' (aka '(any DFUServiceDelegate) -> ()') in a '@Sendable' closure
    |                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
142 |             }
143 |         }
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/GenericDFU/DFUExecutor.swift:141:26: warning: capture of 'delegate' with non-sendable type 'any DFUServiceDelegate' in a '@Sendable' closure
139 |         if let delegate = initiator.delegate {
140 |             initiator.delegateQueue.async {
141 |                 callback(delegate)
    |                          `- warning: capture of 'delegate' with non-sendable type 'any DFUServiceDelegate' in a '@Sendable' closure
142 |             }
143 |         }
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/DFUServiceDelegate.swift:329:23: note: protocol 'DFUServiceDelegate' does not conform to the 'Sendable' protocol
327 |  The service delegate reports about state changes and errors.
328 |  */
329 | @objc public protocol DFUServiceDelegate {
    |                       `- note: protocol 'DFUServiceDelegate' does not conform to the 'Sendable' protocol
330 |
331 |     /**
[47/77] Compiling NordicDFU DFUExecutor.swift
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/GenericDFU/DFUExecutor.swift:141:17: warning: capture of 'callback' with non-sendable type 'DelegateCallback' (aka '(any DFUServiceDelegate) -> ()') in a '@Sendable' closure
139 |         if let delegate = initiator.delegate {
140 |             initiator.delegateQueue.async {
141 |                 callback(delegate)
    |                 |- warning: capture of 'callback' with non-sendable type 'DelegateCallback' (aka '(any DFUServiceDelegate) -> ()') in a '@Sendable' closure
    |                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
142 |             }
143 |         }
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/GenericDFU/DFUExecutor.swift:141:26: warning: capture of 'delegate' with non-sendable type 'any DFUServiceDelegate' in a '@Sendable' closure
139 |         if let delegate = initiator.delegate {
140 |             initiator.delegateQueue.async {
141 |                 callback(delegate)
    |                          `- warning: capture of 'delegate' with non-sendable type 'any DFUServiceDelegate' in a '@Sendable' closure
142 |             }
143 |         }
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/DFUServiceDelegate.swift:329:23: note: protocol 'DFUServiceDelegate' does not conform to the 'Sendable' protocol
327 |  The service delegate reports about state changes and errors.
328 |  */
329 | @objc public protocol DFUServiceDelegate {
    |                       `- note: protocol 'DFUServiceDelegate' does not conform to the 'Sendable' protocol
330 |
331 |     /**
[48/77] Compiling NordicDFU DFUPeripheral.swift
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/GenericDFU/DFUExecutor.swift:141:17: warning: capture of 'callback' with non-sendable type 'DelegateCallback' (aka '(any DFUServiceDelegate) -> ()') in a '@Sendable' closure
139 |         if let delegate = initiator.delegate {
140 |             initiator.delegateQueue.async {
141 |                 callback(delegate)
    |                 |- warning: capture of 'callback' with non-sendable type 'DelegateCallback' (aka '(any DFUServiceDelegate) -> ()') in a '@Sendable' closure
    |                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
142 |             }
143 |         }
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/GenericDFU/DFUExecutor.swift:141:26: warning: capture of 'delegate' with non-sendable type 'any DFUServiceDelegate' in a '@Sendable' closure
139 |         if let delegate = initiator.delegate {
140 |             initiator.delegateQueue.async {
141 |                 callback(delegate)
    |                          `- warning: capture of 'delegate' with non-sendable type 'any DFUServiceDelegate' in a '@Sendable' closure
142 |             }
143 |         }
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/DFUServiceDelegate.swift:329:23: note: protocol 'DFUServiceDelegate' does not conform to the 'Sendable' protocol
327 |  The service delegate reports about state changes and errors.
328 |  */
329 | @objc public protocol DFUServiceDelegate {
    |                       `- note: protocol 'DFUServiceDelegate' does not conform to the 'Sendable' protocol
330 |
331 |     /**
[49/77] Compiling NordicDFU DFUPeripheralDelegate.swift
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/GenericDFU/DFUExecutor.swift:141:17: warning: capture of 'callback' with non-sendable type 'DelegateCallback' (aka '(any DFUServiceDelegate) -> ()') in a '@Sendable' closure
139 |         if let delegate = initiator.delegate {
140 |             initiator.delegateQueue.async {
141 |                 callback(delegate)
    |                 |- warning: capture of 'callback' with non-sendable type 'DelegateCallback' (aka '(any DFUServiceDelegate) -> ()') in a '@Sendable' closure
    |                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
142 |             }
143 |         }
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/GenericDFU/DFUExecutor.swift:141:26: warning: capture of 'delegate' with non-sendable type 'any DFUServiceDelegate' in a '@Sendable' closure
139 |         if let delegate = initiator.delegate {
140 |             initiator.delegateQueue.async {
141 |                 callback(delegate)
    |                          `- warning: capture of 'delegate' with non-sendable type 'any DFUServiceDelegate' in a '@Sendable' closure
142 |             }
143 |         }
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/DFUServiceDelegate.swift:329:23: note: protocol 'DFUServiceDelegate' does not conform to the 'Sendable' protocol
327 |  The service delegate reports about state changes and errors.
328 |  */
329 | @objc public protocol DFUServiceDelegate {
    |                       `- note: protocol 'DFUServiceDelegate' does not conform to the 'Sendable' protocol
330 |
331 |     /**
[50/77] Compiling NordicDFU DFUService.swift
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/GenericDFU/DFUExecutor.swift:141:17: warning: capture of 'callback' with non-sendable type 'DelegateCallback' (aka '(any DFUServiceDelegate) -> ()') in a '@Sendable' closure
139 |         if let delegate = initiator.delegate {
140 |             initiator.delegateQueue.async {
141 |                 callback(delegate)
    |                 |- warning: capture of 'callback' with non-sendable type 'DelegateCallback' (aka '(any DFUServiceDelegate) -> ()') in a '@Sendable' closure
    |                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
142 |             }
143 |         }
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/GenericDFU/DFUExecutor.swift:141:26: warning: capture of 'delegate' with non-sendable type 'any DFUServiceDelegate' in a '@Sendable' closure
139 |         if let delegate = initiator.delegate {
140 |             initiator.delegateQueue.async {
141 |                 callback(delegate)
    |                          `- warning: capture of 'delegate' with non-sendable type 'any DFUServiceDelegate' in a '@Sendable' closure
142 |             }
143 |         }
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/DFUServiceDelegate.swift:329:23: note: protocol 'DFUServiceDelegate' does not conform to the 'Sendable' protocol
327 |  The service delegate reports about state changes and errors.
328 |  */
329 | @objc public protocol DFUServiceDelegate {
    |                       `- note: protocol 'DFUServiceDelegate' does not conform to the 'Sendable' protocol
330 |
331 |     /**
[51/77] Compiling NordicDFU SecureDFUService.swift
[52/77] Compiling NordicDFU Manifest.swift
[53/77] Compiling NordicDFU ManifestFirmwareInfo.swift
[54/77] Compiling NordicDFU SoftdeviceBootloaderInfo.swift
[55/77] Compiling NordicDFU Data.swift
[56/77] Compiling NordicDFU Double.swift
[57/77] Compiling NordicDFU IntelHex2BinConverter.swift
[58/77] Compiling NordicDFU LoggerDelegate.swift
[59/77] Compiling NordicDFU DFUServiceDelegate.swift
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/DFUServiceInitiator.swift:470:17: warning: capture of 'self' with non-sendable type 'DFUServiceInitiator' in a '@Sendable' closure
 50 |  Using the ``DFUServiceController`` you may pause, resume or abort the DFU operation.
 51 |  */
 52 | @objc public class DFUServiceInitiator : NSObject {
    |                    `- note: class 'DFUServiceInitiator' does not conform to the 'Sendable' protocol
 53 |
 54 |     //MARK: - Internal variables
    :
468 |         guard let uuid = targetIdentifier else {
469 |             delegateQueue.async {
470 |                 self.delegate?.dfuError(.failedToConnect, didOccurWithMessage:
    |                 `- warning: capture of 'self' with non-sendable type 'DFUServiceInitiator' in a '@Sendable' closure
471 |                     "Target not specified: use start(target) instead")
472 |             }
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/DFUServiceInitiator.swift:535:17: warning: capture of 'self' with non-sendable type 'DFUServiceInitiator' in a '@Sendable' closure
 50 |  Using the ``DFUServiceController`` you may pause, resume or abort the DFU operation.
 51 |  */
 52 | @objc public class DFUServiceInitiator : NSObject {
    |                    `- note: class 'DFUServiceInitiator' does not conform to the 'Sendable' protocol
 53 |
 54 |     //MARK: - Internal variables
    :
533 |         guard let _ = file else {
534 |             delegateQueue.async {
535 |                 self.delegate?.dfuError(.fileNotSpecified, didOccurWithMessage: "Firmware not specified")
    |                 `- warning: capture of 'self' with non-sendable type 'DFUServiceInitiator' in a '@Sendable' closure
536 |             }
537 |             return nil
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/Firmware/DFUFirmware.swift:72:16: warning: stored property 'type' of 'Sendable'-conforming struct 'DFUFirmwareError' has non-sendable type 'DFUFirmwareError.FileType'; this is an error in the Swift 6 language mode
 61 | public struct DFUFirmwareError : Error {
 62 |     /// The firmware type.
 63 |     public enum FileType {
    |                 `- note: consider making enum 'FileType' conform to the 'Sendable' protocol
 64 |         /// A Distribution packet (ZIP) has failed to be parsed.
 65 |         case zip
    :
 70 |     }
 71 |     /// The firmware type.
 72 |     public let type: FileType
    |                `- warning: stored property 'type' of 'Sendable'-conforming struct 'DFUFirmwareError' has non-sendable type 'DFUFirmwareError.FileType'; this is an error in the Swift 6 language mode
 73 | }
 74 |
[60/77] Compiling NordicDFU DFUServiceInitiator.swift
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/DFUServiceInitiator.swift:470:17: warning: capture of 'self' with non-sendable type 'DFUServiceInitiator' in a '@Sendable' closure
 50 |  Using the ``DFUServiceController`` you may pause, resume or abort the DFU operation.
 51 |  */
 52 | @objc public class DFUServiceInitiator : NSObject {
    |                    `- note: class 'DFUServiceInitiator' does not conform to the 'Sendable' protocol
 53 |
 54 |     //MARK: - Internal variables
    :
468 |         guard let uuid = targetIdentifier else {
469 |             delegateQueue.async {
470 |                 self.delegate?.dfuError(.failedToConnect, didOccurWithMessage:
    |                 `- warning: capture of 'self' with non-sendable type 'DFUServiceInitiator' in a '@Sendable' closure
471 |                     "Target not specified: use start(target) instead")
472 |             }
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/DFUServiceInitiator.swift:535:17: warning: capture of 'self' with non-sendable type 'DFUServiceInitiator' in a '@Sendable' closure
 50 |  Using the ``DFUServiceController`` you may pause, resume or abort the DFU operation.
 51 |  */
 52 | @objc public class DFUServiceInitiator : NSObject {
    |                    `- note: class 'DFUServiceInitiator' does not conform to the 'Sendable' protocol
 53 |
 54 |     //MARK: - Internal variables
    :
533 |         guard let _ = file else {
534 |             delegateQueue.async {
535 |                 self.delegate?.dfuError(.fileNotSpecified, didOccurWithMessage: "Firmware not specified")
    |                 `- warning: capture of 'self' with non-sendable type 'DFUServiceInitiator' in a '@Sendable' closure
536 |             }
537 |             return nil
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/Firmware/DFUFirmware.swift:72:16: warning: stored property 'type' of 'Sendable'-conforming struct 'DFUFirmwareError' has non-sendable type 'DFUFirmwareError.FileType'; this is an error in the Swift 6 language mode
 61 | public struct DFUFirmwareError : Error {
 62 |     /// The firmware type.
 63 |     public enum FileType {
    |                 `- note: consider making enum 'FileType' conform to the 'Sendable' protocol
 64 |         /// A Distribution packet (ZIP) has failed to be parsed.
 65 |         case zip
    :
 70 |     }
 71 |     /// The firmware type.
 72 |     public let type: FileType
    |                `- warning: stored property 'type' of 'Sendable'-conforming struct 'DFUFirmwareError' has non-sendable type 'DFUFirmwareError.FileType'; this is an error in the Swift 6 language mode
 73 | }
 74 |
[61/77] Compiling NordicDFU DFUUuidHelper.swift
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/DFUServiceInitiator.swift:470:17: warning: capture of 'self' with non-sendable type 'DFUServiceInitiator' in a '@Sendable' closure
 50 |  Using the ``DFUServiceController`` you may pause, resume or abort the DFU operation.
 51 |  */
 52 | @objc public class DFUServiceInitiator : NSObject {
    |                    `- note: class 'DFUServiceInitiator' does not conform to the 'Sendable' protocol
 53 |
 54 |     //MARK: - Internal variables
    :
468 |         guard let uuid = targetIdentifier else {
469 |             delegateQueue.async {
470 |                 self.delegate?.dfuError(.failedToConnect, didOccurWithMessage:
    |                 `- warning: capture of 'self' with non-sendable type 'DFUServiceInitiator' in a '@Sendable' closure
471 |                     "Target not specified: use start(target) instead")
472 |             }
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/DFUServiceInitiator.swift:535:17: warning: capture of 'self' with non-sendable type 'DFUServiceInitiator' in a '@Sendable' closure
 50 |  Using the ``DFUServiceController`` you may pause, resume or abort the DFU operation.
 51 |  */
 52 | @objc public class DFUServiceInitiator : NSObject {
    |                    `- note: class 'DFUServiceInitiator' does not conform to the 'Sendable' protocol
 53 |
 54 |     //MARK: - Internal variables
    :
533 |         guard let _ = file else {
534 |             delegateQueue.async {
535 |                 self.delegate?.dfuError(.fileNotSpecified, didOccurWithMessage: "Firmware not specified")
    |                 `- warning: capture of 'self' with non-sendable type 'DFUServiceInitiator' in a '@Sendable' closure
536 |             }
537 |             return nil
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/Firmware/DFUFirmware.swift:72:16: warning: stored property 'type' of 'Sendable'-conforming struct 'DFUFirmwareError' has non-sendable type 'DFUFirmwareError.FileType'; this is an error in the Swift 6 language mode
 61 | public struct DFUFirmwareError : Error {
 62 |     /// The firmware type.
 63 |     public enum FileType {
    |                 `- note: consider making enum 'FileType' conform to the 'Sendable' protocol
 64 |         /// A Distribution packet (ZIP) has failed to be parsed.
 65 |         case zip
    :
 70 |     }
 71 |     /// The firmware type.
 72 |     public let type: FileType
    |                `- warning: stored property 'type' of 'Sendable'-conforming struct 'DFUFirmwareError' has non-sendable type 'DFUFirmwareError.FileType'; this is an error in the Swift 6 language mode
 73 | }
 74 |
[62/77] Compiling NordicDFU DFUFirmware.swift
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/DFUServiceInitiator.swift:470:17: warning: capture of 'self' with non-sendable type 'DFUServiceInitiator' in a '@Sendable' closure
 50 |  Using the ``DFUServiceController`` you may pause, resume or abort the DFU operation.
 51 |  */
 52 | @objc public class DFUServiceInitiator : NSObject {
    |                    `- note: class 'DFUServiceInitiator' does not conform to the 'Sendable' protocol
 53 |
 54 |     //MARK: - Internal variables
    :
468 |         guard let uuid = targetIdentifier else {
469 |             delegateQueue.async {
470 |                 self.delegate?.dfuError(.failedToConnect, didOccurWithMessage:
    |                 `- warning: capture of 'self' with non-sendable type 'DFUServiceInitiator' in a '@Sendable' closure
471 |                     "Target not specified: use start(target) instead")
472 |             }
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/DFUServiceInitiator.swift:535:17: warning: capture of 'self' with non-sendable type 'DFUServiceInitiator' in a '@Sendable' closure
 50 |  Using the ``DFUServiceController`` you may pause, resume or abort the DFU operation.
 51 |  */
 52 | @objc public class DFUServiceInitiator : NSObject {
    |                    `- note: class 'DFUServiceInitiator' does not conform to the 'Sendable' protocol
 53 |
 54 |     //MARK: - Internal variables
    :
533 |         guard let _ = file else {
534 |             delegateQueue.async {
535 |                 self.delegate?.dfuError(.fileNotSpecified, didOccurWithMessage: "Firmware not specified")
    |                 `- warning: capture of 'self' with non-sendable type 'DFUServiceInitiator' in a '@Sendable' closure
536 |             }
537 |             return nil
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/Firmware/DFUFirmware.swift:72:16: warning: stored property 'type' of 'Sendable'-conforming struct 'DFUFirmwareError' has non-sendable type 'DFUFirmwareError.FileType'; this is an error in the Swift 6 language mode
 61 | public struct DFUFirmwareError : Error {
 62 |     /// The firmware type.
 63 |     public enum FileType {
    |                 `- note: consider making enum 'FileType' conform to the 'Sendable' protocol
 64 |         /// A Distribution packet (ZIP) has failed to be parsed.
 65 |         case zip
    :
 70 |     }
 71 |     /// The firmware type.
 72 |     public let type: FileType
    |                `- warning: stored property 'type' of 'Sendable'-conforming struct 'DFUFirmwareError' has non-sendable type 'DFUFirmwareError.FileType'; this is an error in the Swift 6 language mode
 73 | }
 74 |
[63/77] Compiling NordicDFU DFUCharacteristic.swift
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/DFUServiceInitiator.swift:470:17: warning: capture of 'self' with non-sendable type 'DFUServiceInitiator' in a '@Sendable' closure
 50 |  Using the ``DFUServiceController`` you may pause, resume or abort the DFU operation.
 51 |  */
 52 | @objc public class DFUServiceInitiator : NSObject {
    |                    `- note: class 'DFUServiceInitiator' does not conform to the 'Sendable' protocol
 53 |
 54 |     //MARK: - Internal variables
    :
468 |         guard let uuid = targetIdentifier else {
469 |             delegateQueue.async {
470 |                 self.delegate?.dfuError(.failedToConnect, didOccurWithMessage:
    |                 `- warning: capture of 'self' with non-sendable type 'DFUServiceInitiator' in a '@Sendable' closure
471 |                     "Target not specified: use start(target) instead")
472 |             }
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/DFUServiceInitiator.swift:535:17: warning: capture of 'self' with non-sendable type 'DFUServiceInitiator' in a '@Sendable' closure
 50 |  Using the ``DFUServiceController`` you may pause, resume or abort the DFU operation.
 51 |  */
 52 | @objc public class DFUServiceInitiator : NSObject {
    |                    `- note: class 'DFUServiceInitiator' does not conform to the 'Sendable' protocol
 53 |
 54 |     //MARK: - Internal variables
    :
533 |         guard let _ = file else {
534 |             delegateQueue.async {
535 |                 self.delegate?.dfuError(.fileNotSpecified, didOccurWithMessage: "Firmware not specified")
    |                 `- warning: capture of 'self' with non-sendable type 'DFUServiceInitiator' in a '@Sendable' closure
536 |             }
537 |             return nil
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/Firmware/DFUFirmware.swift:72:16: warning: stored property 'type' of 'Sendable'-conforming struct 'DFUFirmwareError' has non-sendable type 'DFUFirmwareError.FileType'; this is an error in the Swift 6 language mode
 61 | public struct DFUFirmwareError : Error {
 62 |     /// The firmware type.
 63 |     public enum FileType {
    |                 `- note: consider making enum 'FileType' conform to the 'Sendable' protocol
 64 |         /// A Distribution packet (ZIP) has failed to be parsed.
 65 |         case zip
    :
 70 |     }
 71 |     /// The firmware type.
 72 |     public let type: FileType
    |                `- warning: stored property 'type' of 'Sendable'-conforming struct 'DFUFirmwareError' has non-sendable type 'DFUFirmwareError.FileType'; this is an error in the Swift 6 language mode
 73 | }
 74 |
[64/77] Compiling NordicDFU DFUStreamZip.swift
[65/77] Compiling NordicDFU ZipArchive.swift
[66/77] Compiling NordicDFU crc32.swift
[67/77] Compiling NordicDFU resource_bundle_accessor.swift
[68/77] Compiling NordicDFU LegacyDFUPeripheral.swift
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/Services/LegacyDFUService.swift:321:79: warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
319 |             // Delay is required as stated above.
320 |             logger.d("wait(1000)")
321 |             queue.asyncAfter(deadline: .now() + .milliseconds(1000), execute: sendStartDfu)
    |                                                                               `- warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
322 |         }
323 |     }
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/Services/LegacyDFUService.swift:344:30: warning: capture of 'self' with non-sendable type 'LegacyDFUService?' in a '@Sendable' closure
 31 | import CoreBluetooth
 32 |
 33 | @objc internal class LegacyDFUService : NSObject, CBPeripheralDelegate, DFUService {
    |                      `- note: class 'LegacyDFUService' does not conform to the 'Sendable' protocol
 34 |
 35 |     internal let queue: DispatchQueue
    :
342 |         logger.d("wait(1000)")
343 |         queue.asyncAfter(deadline: .now() + .milliseconds(1000)) { [weak self] in
344 |             guard let self = self else { return }
    |                              `- warning: capture of 'self' with non-sendable type 'LegacyDFUService?' in a '@Sendable' closure
345 |             // 1. Sends the Start DFU command with the firmware type to the DFU Control Point
346 |             //    characteristic.
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/Services/LegacyDFUService.swift:350:28: warning: capture of 'success' with non-sendable type 'Callback' (aka '() -> ()') in a '@Sendable' closure
348 |             // 3. Receives response notification and calls onSuccess or onError.
349 |             self.dfuControlPointCharacteristic?.send(Request.startDfu_v1,
350 |                 onSuccess: success,
    |                            |- warning: capture of 'success' with non-sendable type 'Callback' (aka '() -> ()') in a '@Sendable' closure
    |                            `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
351 |                 onError: { [weak self] error, message in
352 |                     guard let self = self else { return }
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/Services/LegacyDFUService.swift:355:49: warning: capture of 'report' with non-sendable type 'ErrorCallback' (aka '(DFUError, String) -> ()') in a '@Sendable' closure
353 |                     if error == .remoteLegacyDFUInvalidState {
354 |                         self.targetPeripheral!.shouldReconnect = true
355 |                         self.sendReset(onError: report)
    |                                                 |- warning: capture of 'report' with non-sendable type 'ErrorCallback' (aka '(DFUError, String) -> ()') in a '@Sendable' closure
    |                                                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
356 |                         return
357 |                     }
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/Services/LegacyDFUService.swift:360:63: warning: capture of 'size' with non-sendable type 'DFUFirmwareSize' in a '@Sendable' closure
358 |                     report(error, message)
359 |                 })
360 |             self.dfuPacketCharacteristic?.sendFirmwareSize_v1(size, onError: report)
    |                                                               `- warning: capture of 'size' with non-sendable type 'DFUFirmwareSize' in a '@Sendable' closure
361 |         }
362 |     }
/Users/admin/builder/spi-builder-workspace/Library/Classes/Utilities/Streams/DFUStream.swift:44:18: note: class 'DFUFirmwareSize' does not conform to the 'Sendable' protocol
42 |  the size of the bootloader is 1 and the size of SoftDevice is the total size - 1.
43 |  */
44 | @objc open class DFUFirmwareSize : NSObject {
   |                  `- note: class 'DFUFirmwareSize' does not conform to the 'Sendable' protocol
45 |     /// Size of the SoftDevice in bytes.
46 |     ///
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/Services/LegacyDFUService.swift:355:49: warning: capture of 'report' with non-sendable type 'ErrorCallback' (aka '(DFUError, String) -> ()') in an isolated closure; this is an error in the Swift 6 language mode
353 |                     if error == .remoteLegacyDFUInvalidState {
354 |                         self.targetPeripheral!.shouldReconnect = true
355 |                         self.sendReset(onError: report)
    |                                                 |- warning: capture of 'report' with non-sendable type 'ErrorCallback' (aka '(DFUError, String) -> ()') in an isolated closure; this is an error in the Swift 6 language mode
    |                                                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
356 |                         return
357 |                     }
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/Services/LegacyDFUService.swift:589:96: warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
587 |                     if delay {
588 |                         self.logger.d("wait(2000)")
589 |                         self.queue.asyncAfter(deadline: .now() + .milliseconds(2000), execute: start)
    |                                                                                                `- warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
590 |                     } else {
591 |                         start()
[69/77] Compiling NordicDFU LegacyDFUPeripheralDelegate.swift
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/Services/LegacyDFUService.swift:321:79: warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
319 |             // Delay is required as stated above.
320 |             logger.d("wait(1000)")
321 |             queue.asyncAfter(deadline: .now() + .milliseconds(1000), execute: sendStartDfu)
    |                                                                               `- warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
322 |         }
323 |     }
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/Services/LegacyDFUService.swift:344:30: warning: capture of 'self' with non-sendable type 'LegacyDFUService?' in a '@Sendable' closure
 31 | import CoreBluetooth
 32 |
 33 | @objc internal class LegacyDFUService : NSObject, CBPeripheralDelegate, DFUService {
    |                      `- note: class 'LegacyDFUService' does not conform to the 'Sendable' protocol
 34 |
 35 |     internal let queue: DispatchQueue
    :
342 |         logger.d("wait(1000)")
343 |         queue.asyncAfter(deadline: .now() + .milliseconds(1000)) { [weak self] in
344 |             guard let self = self else { return }
    |                              `- warning: capture of 'self' with non-sendable type 'LegacyDFUService?' in a '@Sendable' closure
345 |             // 1. Sends the Start DFU command with the firmware type to the DFU Control Point
346 |             //    characteristic.
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/Services/LegacyDFUService.swift:350:28: warning: capture of 'success' with non-sendable type 'Callback' (aka '() -> ()') in a '@Sendable' closure
348 |             // 3. Receives response notification and calls onSuccess or onError.
349 |             self.dfuControlPointCharacteristic?.send(Request.startDfu_v1,
350 |                 onSuccess: success,
    |                            |- warning: capture of 'success' with non-sendable type 'Callback' (aka '() -> ()') in a '@Sendable' closure
    |                            `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
351 |                 onError: { [weak self] error, message in
352 |                     guard let self = self else { return }
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/Services/LegacyDFUService.swift:355:49: warning: capture of 'report' with non-sendable type 'ErrorCallback' (aka '(DFUError, String) -> ()') in a '@Sendable' closure
353 |                     if error == .remoteLegacyDFUInvalidState {
354 |                         self.targetPeripheral!.shouldReconnect = true
355 |                         self.sendReset(onError: report)
    |                                                 |- warning: capture of 'report' with non-sendable type 'ErrorCallback' (aka '(DFUError, String) -> ()') in a '@Sendable' closure
    |                                                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
356 |                         return
357 |                     }
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/Services/LegacyDFUService.swift:360:63: warning: capture of 'size' with non-sendable type 'DFUFirmwareSize' in a '@Sendable' closure
358 |                     report(error, message)
359 |                 })
360 |             self.dfuPacketCharacteristic?.sendFirmwareSize_v1(size, onError: report)
    |                                                               `- warning: capture of 'size' with non-sendable type 'DFUFirmwareSize' in a '@Sendable' closure
361 |         }
362 |     }
/Users/admin/builder/spi-builder-workspace/Library/Classes/Utilities/Streams/DFUStream.swift:44:18: note: class 'DFUFirmwareSize' does not conform to the 'Sendable' protocol
42 |  the size of the bootloader is 1 and the size of SoftDevice is the total size - 1.
43 |  */
44 | @objc open class DFUFirmwareSize : NSObject {
   |                  `- note: class 'DFUFirmwareSize' does not conform to the 'Sendable' protocol
45 |     /// Size of the SoftDevice in bytes.
46 |     ///
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/Services/LegacyDFUService.swift:355:49: warning: capture of 'report' with non-sendable type 'ErrorCallback' (aka '(DFUError, String) -> ()') in an isolated closure; this is an error in the Swift 6 language mode
353 |                     if error == .remoteLegacyDFUInvalidState {
354 |                         self.targetPeripheral!.shouldReconnect = true
355 |                         self.sendReset(onError: report)
    |                                                 |- warning: capture of 'report' with non-sendable type 'ErrorCallback' (aka '(DFUError, String) -> ()') in an isolated closure; this is an error in the Swift 6 language mode
    |                                                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
356 |                         return
357 |                     }
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/Services/LegacyDFUService.swift:589:96: warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
587 |                     if delay {
588 |                         self.logger.d("wait(2000)")
589 |                         self.queue.asyncAfter(deadline: .now() + .milliseconds(2000), execute: start)
    |                                                                                                `- warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
590 |                     } else {
591 |                         start()
[70/77] Compiling NordicDFU LegacyDFUService.swift
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/Services/LegacyDFUService.swift:321:79: warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
319 |             // Delay is required as stated above.
320 |             logger.d("wait(1000)")
321 |             queue.asyncAfter(deadline: .now() + .milliseconds(1000), execute: sendStartDfu)
    |                                                                               `- warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
322 |         }
323 |     }
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/Services/LegacyDFUService.swift:344:30: warning: capture of 'self' with non-sendable type 'LegacyDFUService?' in a '@Sendable' closure
 31 | import CoreBluetooth
 32 |
 33 | @objc internal class LegacyDFUService : NSObject, CBPeripheralDelegate, DFUService {
    |                      `- note: class 'LegacyDFUService' does not conform to the 'Sendable' protocol
 34 |
 35 |     internal let queue: DispatchQueue
    :
342 |         logger.d("wait(1000)")
343 |         queue.asyncAfter(deadline: .now() + .milliseconds(1000)) { [weak self] in
344 |             guard let self = self else { return }
    |                              `- warning: capture of 'self' with non-sendable type 'LegacyDFUService?' in a '@Sendable' closure
345 |             // 1. Sends the Start DFU command with the firmware type to the DFU Control Point
346 |             //    characteristic.
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/Services/LegacyDFUService.swift:350:28: warning: capture of 'success' with non-sendable type 'Callback' (aka '() -> ()') in a '@Sendable' closure
348 |             // 3. Receives response notification and calls onSuccess or onError.
349 |             self.dfuControlPointCharacteristic?.send(Request.startDfu_v1,
350 |                 onSuccess: success,
    |                            |- warning: capture of 'success' with non-sendable type 'Callback' (aka '() -> ()') in a '@Sendable' closure
    |                            `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
351 |                 onError: { [weak self] error, message in
352 |                     guard let self = self else { return }
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/Services/LegacyDFUService.swift:355:49: warning: capture of 'report' with non-sendable type 'ErrorCallback' (aka '(DFUError, String) -> ()') in a '@Sendable' closure
353 |                     if error == .remoteLegacyDFUInvalidState {
354 |                         self.targetPeripheral!.shouldReconnect = true
355 |                         self.sendReset(onError: report)
    |                                                 |- warning: capture of 'report' with non-sendable type 'ErrorCallback' (aka '(DFUError, String) -> ()') in a '@Sendable' closure
    |                                                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
356 |                         return
357 |                     }
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/Services/LegacyDFUService.swift:360:63: warning: capture of 'size' with non-sendable type 'DFUFirmwareSize' in a '@Sendable' closure
358 |                     report(error, message)
359 |                 })
360 |             self.dfuPacketCharacteristic?.sendFirmwareSize_v1(size, onError: report)
    |                                                               `- warning: capture of 'size' with non-sendable type 'DFUFirmwareSize' in a '@Sendable' closure
361 |         }
362 |     }
/Users/admin/builder/spi-builder-workspace/Library/Classes/Utilities/Streams/DFUStream.swift:44:18: note: class 'DFUFirmwareSize' does not conform to the 'Sendable' protocol
42 |  the size of the bootloader is 1 and the size of SoftDevice is the total size - 1.
43 |  */
44 | @objc open class DFUFirmwareSize : NSObject {
   |                  `- note: class 'DFUFirmwareSize' does not conform to the 'Sendable' protocol
45 |     /// Size of the SoftDevice in bytes.
46 |     ///
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/Services/LegacyDFUService.swift:355:49: warning: capture of 'report' with non-sendable type 'ErrorCallback' (aka '(DFUError, String) -> ()') in an isolated closure; this is an error in the Swift 6 language mode
353 |                     if error == .remoteLegacyDFUInvalidState {
354 |                         self.targetPeripheral!.shouldReconnect = true
355 |                         self.sendReset(onError: report)
    |                                                 |- warning: capture of 'report' with non-sendable type 'ErrorCallback' (aka '(DFUError, String) -> ()') in an isolated closure; this is an error in the Swift 6 language mode
    |                                                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
356 |                         return
357 |                     }
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/Services/LegacyDFUService.swift:589:96: warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
587 |                     if delay {
588 |                         self.logger.d("wait(2000)")
589 |                         self.queue.asyncAfter(deadline: .now() + .milliseconds(2000), execute: start)
    |                                                                                                `- warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
590 |                     } else {
591 |                         start()
[71/77] Compiling NordicDFU ButtonlessDFU.swift
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/Services/LegacyDFUService.swift:321:79: warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
319 |             // Delay is required as stated above.
320 |             logger.d("wait(1000)")
321 |             queue.asyncAfter(deadline: .now() + .milliseconds(1000), execute: sendStartDfu)
    |                                                                               `- warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
322 |         }
323 |     }
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/Services/LegacyDFUService.swift:344:30: warning: capture of 'self' with non-sendable type 'LegacyDFUService?' in a '@Sendable' closure
 31 | import CoreBluetooth
 32 |
 33 | @objc internal class LegacyDFUService : NSObject, CBPeripheralDelegate, DFUService {
    |                      `- note: class 'LegacyDFUService' does not conform to the 'Sendable' protocol
 34 |
 35 |     internal let queue: DispatchQueue
    :
342 |         logger.d("wait(1000)")
343 |         queue.asyncAfter(deadline: .now() + .milliseconds(1000)) { [weak self] in
344 |             guard let self = self else { return }
    |                              `- warning: capture of 'self' with non-sendable type 'LegacyDFUService?' in a '@Sendable' closure
345 |             // 1. Sends the Start DFU command with the firmware type to the DFU Control Point
346 |             //    characteristic.
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/Services/LegacyDFUService.swift:350:28: warning: capture of 'success' with non-sendable type 'Callback' (aka '() -> ()') in a '@Sendable' closure
348 |             // 3. Receives response notification and calls onSuccess or onError.
349 |             self.dfuControlPointCharacteristic?.send(Request.startDfu_v1,
350 |                 onSuccess: success,
    |                            |- warning: capture of 'success' with non-sendable type 'Callback' (aka '() -> ()') in a '@Sendable' closure
    |                            `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
351 |                 onError: { [weak self] error, message in
352 |                     guard let self = self else { return }
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/Services/LegacyDFUService.swift:355:49: warning: capture of 'report' with non-sendable type 'ErrorCallback' (aka '(DFUError, String) -> ()') in a '@Sendable' closure
353 |                     if error == .remoteLegacyDFUInvalidState {
354 |                         self.targetPeripheral!.shouldReconnect = true
355 |                         self.sendReset(onError: report)
    |                                                 |- warning: capture of 'report' with non-sendable type 'ErrorCallback' (aka '(DFUError, String) -> ()') in a '@Sendable' closure
    |                                                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
356 |                         return
357 |                     }
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/Services/LegacyDFUService.swift:360:63: warning: capture of 'size' with non-sendable type 'DFUFirmwareSize' in a '@Sendable' closure
358 |                     report(error, message)
359 |                 })
360 |             self.dfuPacketCharacteristic?.sendFirmwareSize_v1(size, onError: report)
    |                                                               `- warning: capture of 'size' with non-sendable type 'DFUFirmwareSize' in a '@Sendable' closure
361 |         }
362 |     }
/Users/admin/builder/spi-builder-workspace/Library/Classes/Utilities/Streams/DFUStream.swift:44:18: note: class 'DFUFirmwareSize' does not conform to the 'Sendable' protocol
42 |  the size of the bootloader is 1 and the size of SoftDevice is the total size - 1.
43 |  */
44 | @objc open class DFUFirmwareSize : NSObject {
   |                  `- note: class 'DFUFirmwareSize' does not conform to the 'Sendable' protocol
45 |     /// Size of the SoftDevice in bytes.
46 |     ///
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/Services/LegacyDFUService.swift:355:49: warning: capture of 'report' with non-sendable type 'ErrorCallback' (aka '(DFUError, String) -> ()') in an isolated closure; this is an error in the Swift 6 language mode
353 |                     if error == .remoteLegacyDFUInvalidState {
354 |                         self.targetPeripheral!.shouldReconnect = true
355 |                         self.sendReset(onError: report)
    |                                                 |- warning: capture of 'report' with non-sendable type 'ErrorCallback' (aka '(DFUError, String) -> ()') in an isolated closure; this is an error in the Swift 6 language mode
    |                                                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
356 |                         return
357 |                     }
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/Services/LegacyDFUService.swift:589:96: warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
587 |                     if delay {
588 |                         self.logger.d("wait(2000)")
589 |                         self.queue.asyncAfter(deadline: .now() + .milliseconds(2000), execute: start)
    |                                                                                                `- warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
590 |                     } else {
591 |                         start()
[72/77] Compiling NordicDFU SecureDFUControlPoint.swift
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/Services/LegacyDFUService.swift:321:79: warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
319 |             // Delay is required as stated above.
320 |             logger.d("wait(1000)")
321 |             queue.asyncAfter(deadline: .now() + .milliseconds(1000), execute: sendStartDfu)
    |                                                                               `- warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
322 |         }
323 |     }
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/Services/LegacyDFUService.swift:344:30: warning: capture of 'self' with non-sendable type 'LegacyDFUService?' in a '@Sendable' closure
 31 | import CoreBluetooth
 32 |
 33 | @objc internal class LegacyDFUService : NSObject, CBPeripheralDelegate, DFUService {
    |                      `- note: class 'LegacyDFUService' does not conform to the 'Sendable' protocol
 34 |
 35 |     internal let queue: DispatchQueue
    :
342 |         logger.d("wait(1000)")
343 |         queue.asyncAfter(deadline: .now() + .milliseconds(1000)) { [weak self] in
344 |             guard let self = self else { return }
    |                              `- warning: capture of 'self' with non-sendable type 'LegacyDFUService?' in a '@Sendable' closure
345 |             // 1. Sends the Start DFU command with the firmware type to the DFU Control Point
346 |             //    characteristic.
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/Services/LegacyDFUService.swift:350:28: warning: capture of 'success' with non-sendable type 'Callback' (aka '() -> ()') in a '@Sendable' closure
348 |             // 3. Receives response notification and calls onSuccess or onError.
349 |             self.dfuControlPointCharacteristic?.send(Request.startDfu_v1,
350 |                 onSuccess: success,
    |                            |- warning: capture of 'success' with non-sendable type 'Callback' (aka '() -> ()') in a '@Sendable' closure
    |                            `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
351 |                 onError: { [weak self] error, message in
352 |                     guard let self = self else { return }
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/Services/LegacyDFUService.swift:355:49: warning: capture of 'report' with non-sendable type 'ErrorCallback' (aka '(DFUError, String) -> ()') in a '@Sendable' closure
353 |                     if error == .remoteLegacyDFUInvalidState {
354 |                         self.targetPeripheral!.shouldReconnect = true
355 |                         self.sendReset(onError: report)
    |                                                 |- warning: capture of 'report' with non-sendable type 'ErrorCallback' (aka '(DFUError, String) -> ()') in a '@Sendable' closure
    |                                                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
356 |                         return
357 |                     }
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/Services/LegacyDFUService.swift:360:63: warning: capture of 'size' with non-sendable type 'DFUFirmwareSize' in a '@Sendable' closure
358 |                     report(error, message)
359 |                 })
360 |             self.dfuPacketCharacteristic?.sendFirmwareSize_v1(size, onError: report)
    |                                                               `- warning: capture of 'size' with non-sendable type 'DFUFirmwareSize' in a '@Sendable' closure
361 |         }
362 |     }
/Users/admin/builder/spi-builder-workspace/Library/Classes/Utilities/Streams/DFUStream.swift:44:18: note: class 'DFUFirmwareSize' does not conform to the 'Sendable' protocol
42 |  the size of the bootloader is 1 and the size of SoftDevice is the total size - 1.
43 |  */
44 | @objc open class DFUFirmwareSize : NSObject {
   |                  `- note: class 'DFUFirmwareSize' does not conform to the 'Sendable' protocol
45 |     /// Size of the SoftDevice in bytes.
46 |     ///
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/Services/LegacyDFUService.swift:355:49: warning: capture of 'report' with non-sendable type 'ErrorCallback' (aka '(DFUError, String) -> ()') in an isolated closure; this is an error in the Swift 6 language mode
353 |                     if error == .remoteLegacyDFUInvalidState {
354 |                         self.targetPeripheral!.shouldReconnect = true
355 |                         self.sendReset(onError: report)
    |                                                 |- warning: capture of 'report' with non-sendable type 'ErrorCallback' (aka '(DFUError, String) -> ()') in an isolated closure; this is an error in the Swift 6 language mode
    |                                                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
356 |                         return
357 |                     }
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/LegacyDFU/Services/LegacyDFUService.swift:589:96: warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
587 |                     if delay {
588 |                         self.logger.d("wait(2000)")
589 |                         self.queue.asyncAfter(deadline: .now() + .milliseconds(2000), execute: start)
    |                                                                                                `- warning: converting non-sendable function value to '@Sendable @convention(block) () -> Void' may introduce data races
590 |                     } else {
591 |                         start()
[73/77] Compiling NordicDFU SecureDFUPacket.swift
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/SecureDFU/Characteristics/SecureDFUPacket.swift:166:17: warning: capture of 'progress' with non-sendable type '(any DFUProgressDelegate)?' in a '@Sendable' closure
164 |             // Notify progress delegate that upload has started (0%).
165 |             queue.async {
166 |                 progress?.dfuProgressDidChange(
    |                 `- warning: capture of 'progress' with non-sendable type '(any DFUProgressDelegate)?' in a '@Sendable' closure
167 |                     for:   firmware.currentPart,
168 |                     outOf: firmware.parts,
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/DFUServiceDelegate.swift:286:23: note: protocol 'DFUProgressDelegate' does not conform to the 'Sendable' protocol
284 |  Uploading state.
285 |  */
286 | @objc public protocol DFUProgressDelegate {
    |                       `- note: protocol 'DFUProgressDelegate' does not conform to the 'Sendable' protocol
287 |
288 |     /**
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/SecureDFU/Characteristics/SecureDFUPacket.swift:167:28: warning: capture of 'firmware' with non-sendable type 'DFUFirmware' in a '@Sendable' closure
165 |             queue.async {
166 |                 progress?.dfuProgressDidChange(
167 |                     for:   firmware.currentPart,
    |                            `- warning: capture of 'firmware' with non-sendable type 'DFUFirmware' in a '@Sendable' closure
168 |                     outOf: firmware.parts,
169 |                     to:    0,
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/Firmware/DFUFirmware.swift:86:20: note: class 'DFUFirmware' does not conform to the 'Sendable' protocol
 84 |  The DFU Firmware object wraps the firmware file and provides access to its content.
 85 |  */
 86 | @objc public class DFUFirmware : NSObject, DFUStream {
    |                    `- note: class 'DFUFirmware' does not conform to the 'Sendable' protocol
 87 |     internal let stream: DFUStream
 88 |
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/SecureDFU/Characteristics/SecureDFUPacket.swift:213:21: warning: capture of 'progress' with non-sendable type '(any DFUProgressDelegate)?' in a '@Sendable' closure
211 |                 // Notify progress delegate of overall progress.
212 |                 queue.async {
213 |                     progress?.dfuProgressDidChange(
    |                     `- warning: capture of 'progress' with non-sendable type '(any DFUProgressDelegate)?' in a '@Sendable' closure
214 |                         for:   firmware.currentPart,
215 |                         outOf: firmware.parts,
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/DFUServiceDelegate.swift:286:23: note: protocol 'DFUProgressDelegate' does not conform to the 'Sendable' protocol
284 |  Uploading state.
285 |  */
286 | @objc public protocol DFUProgressDelegate {
    |                       `- note: protocol 'DFUProgressDelegate' does not conform to the 'Sendable' protocol
287 |
288 |     /**
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/SecureDFU/Characteristics/SecureDFUPacket.swift:214:32: warning: capture of 'firmware' with non-sendable type 'DFUFirmware' in a '@Sendable' closure
212 |                 queue.async {
213 |                     progress?.dfuProgressDidChange(
214 |                         for:   firmware.currentPart,
    |                                `- warning: capture of 'firmware' with non-sendable type 'DFUFirmware' in a '@Sendable' closure
215 |                         outOf: firmware.parts,
216 |                         to:    Int(currentProgress),
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/Firmware/DFUFirmware.swift:86:20: note: class 'DFUFirmware' does not conform to the 'Sendable' protocol
 84 |  The DFU Firmware object wraps the firmware file and provides access to its content.
 85 |  */
 86 | @objc public class DFUFirmware : NSObject, DFUStream {
    |                    `- note: class 'DFUFirmware' does not conform to the 'Sendable' protocol
 87 |     internal let stream: DFUStream
 88 |
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/SecureDFU/DFU/SecureDFUExecutor.swift:356:17: warning: capture of 'self' with non-sendable type 'SecureDFUExecutor' in a '@Sendable' closure
 31 | import Foundation
 32 |
 33 | internal class SecureDFUExecutor : DFUExecutor, SecureDFUPeripheralDelegate {
    |                `- note: class 'SecureDFUExecutor' does not conform to the 'Sendable' protocol
 34 |     typealias DFUPeripheralType = SecureDFUPeripheral
 35 |
    :
354 |             logger.d("wait(\(Int(delay * 1000)))")
355 |             initiator.queue.asyncAfter(deadline: .now() + delay) {
356 |                 self.sendDataObject(self.currentRangeIdx) // -> peripheralDidReceiveObject() will be called.
    |                 `- warning: capture of 'self' with non-sendable type 'SecureDFUExecutor' in a '@Sendable' closure
357 |             }
358 |         } else {
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/SecureDFU/DFU/SecureDFUServiceInitiator.swift:46:17: warning: capture of 'self' with non-sendable type 'SecureDFUServiceInitiator' in a '@Sendable' closure
38 |  consider using this initiator instead to skip that part.
39 |  */
40 | @objc public class SecureDFUServiceInitiator : DFUServiceInitiator {
   |                    `- note: class 'SecureDFUServiceInitiator' does not conform to the 'Sendable' protocol
41 |
42 |     public override func start(targetWithIdentifier uuid: UUID) -> DFUServiceController? {
   :
44 |         guard let _ = file else {
45 |             delegateQueue.async {
46 |                 self.delegate?.dfuError(.fileNotSpecified, didOccurWithMessage: "Firmware not specified")
   |                 `- warning: capture of 'self' with non-sendable type 'SecureDFUServiceInitiator' in a '@Sendable' closure
47 |             }
48 |             return nil
[74/77] Compiling NordicDFU SecureDFUExecutor.swift
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/SecureDFU/Characteristics/SecureDFUPacket.swift:166:17: warning: capture of 'progress' with non-sendable type '(any DFUProgressDelegate)?' in a '@Sendable' closure
164 |             // Notify progress delegate that upload has started (0%).
165 |             queue.async {
166 |                 progress?.dfuProgressDidChange(
    |                 `- warning: capture of 'progress' with non-sendable type '(any DFUProgressDelegate)?' in a '@Sendable' closure
167 |                     for:   firmware.currentPart,
168 |                     outOf: firmware.parts,
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/DFUServiceDelegate.swift:286:23: note: protocol 'DFUProgressDelegate' does not conform to the 'Sendable' protocol
284 |  Uploading state.
285 |  */
286 | @objc public protocol DFUProgressDelegate {
    |                       `- note: protocol 'DFUProgressDelegate' does not conform to the 'Sendable' protocol
287 |
288 |     /**
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/SecureDFU/Characteristics/SecureDFUPacket.swift:167:28: warning: capture of 'firmware' with non-sendable type 'DFUFirmware' in a '@Sendable' closure
165 |             queue.async {
166 |                 progress?.dfuProgressDidChange(
167 |                     for:   firmware.currentPart,
    |                            `- warning: capture of 'firmware' with non-sendable type 'DFUFirmware' in a '@Sendable' closure
168 |                     outOf: firmware.parts,
169 |                     to:    0,
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/Firmware/DFUFirmware.swift:86:20: note: class 'DFUFirmware' does not conform to the 'Sendable' protocol
 84 |  The DFU Firmware object wraps the firmware file and provides access to its content.
 85 |  */
 86 | @objc public class DFUFirmware : NSObject, DFUStream {
    |                    `- note: class 'DFUFirmware' does not conform to the 'Sendable' protocol
 87 |     internal let stream: DFUStream
 88 |
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/SecureDFU/Characteristics/SecureDFUPacket.swift:213:21: warning: capture of 'progress' with non-sendable type '(any DFUProgressDelegate)?' in a '@Sendable' closure
211 |                 // Notify progress delegate of overall progress.
212 |                 queue.async {
213 |                     progress?.dfuProgressDidChange(
    |                     `- warning: capture of 'progress' with non-sendable type '(any DFUProgressDelegate)?' in a '@Sendable' closure
214 |                         for:   firmware.currentPart,
215 |                         outOf: firmware.parts,
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/DFUServiceDelegate.swift:286:23: note: protocol 'DFUProgressDelegate' does not conform to the 'Sendable' protocol
284 |  Uploading state.
285 |  */
286 | @objc public protocol DFUProgressDelegate {
    |                       `- note: protocol 'DFUProgressDelegate' does not conform to the 'Sendable' protocol
287 |
288 |     /**
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/SecureDFU/Characteristics/SecureDFUPacket.swift:214:32: warning: capture of 'firmware' with non-sendable type 'DFUFirmware' in a '@Sendable' closure
212 |                 queue.async {
213 |                     progress?.dfuProgressDidChange(
214 |                         for:   firmware.currentPart,
    |                                `- warning: capture of 'firmware' with non-sendable type 'DFUFirmware' in a '@Sendable' closure
215 |                         outOf: firmware.parts,
216 |                         to:    Int(currentProgress),
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/Firmware/DFUFirmware.swift:86:20: note: class 'DFUFirmware' does not conform to the 'Sendable' protocol
 84 |  The DFU Firmware object wraps the firmware file and provides access to its content.
 85 |  */
 86 | @objc public class DFUFirmware : NSObject, DFUStream {
    |                    `- note: class 'DFUFirmware' does not conform to the 'Sendable' protocol
 87 |     internal let stream: DFUStream
 88 |
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/SecureDFU/DFU/SecureDFUExecutor.swift:356:17: warning: capture of 'self' with non-sendable type 'SecureDFUExecutor' in a '@Sendable' closure
 31 | import Foundation
 32 |
 33 | internal class SecureDFUExecutor : DFUExecutor, SecureDFUPeripheralDelegate {
    |                `- note: class 'SecureDFUExecutor' does not conform to the 'Sendable' protocol
 34 |     typealias DFUPeripheralType = SecureDFUPeripheral
 35 |
    :
354 |             logger.d("wait(\(Int(delay * 1000)))")
355 |             initiator.queue.asyncAfter(deadline: .now() + delay) {
356 |                 self.sendDataObject(self.currentRangeIdx) // -> peripheralDidReceiveObject() will be called.
    |                 `- warning: capture of 'self' with non-sendable type 'SecureDFUExecutor' in a '@Sendable' closure
357 |             }
358 |         } else {
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/SecureDFU/DFU/SecureDFUServiceInitiator.swift:46:17: warning: capture of 'self' with non-sendable type 'SecureDFUServiceInitiator' in a '@Sendable' closure
38 |  consider using this initiator instead to skip that part.
39 |  */
40 | @objc public class SecureDFUServiceInitiator : DFUServiceInitiator {
   |                    `- note: class 'SecureDFUServiceInitiator' does not conform to the 'Sendable' protocol
41 |
42 |     public override func start(targetWithIdentifier uuid: UUID) -> DFUServiceController? {
   :
44 |         guard let _ = file else {
45 |             delegateQueue.async {
46 |                 self.delegate?.dfuError(.fileNotSpecified, didOccurWithMessage: "Firmware not specified")
   |                 `- warning: capture of 'self' with non-sendable type 'SecureDFUServiceInitiator' in a '@Sendable' closure
47 |             }
48 |             return nil
[75/77] Compiling NordicDFU SecureDFUServiceInitiator.swift
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/SecureDFU/Characteristics/SecureDFUPacket.swift:166:17: warning: capture of 'progress' with non-sendable type '(any DFUProgressDelegate)?' in a '@Sendable' closure
164 |             // Notify progress delegate that upload has started (0%).
165 |             queue.async {
166 |                 progress?.dfuProgressDidChange(
    |                 `- warning: capture of 'progress' with non-sendable type '(any DFUProgressDelegate)?' in a '@Sendable' closure
167 |                     for:   firmware.currentPart,
168 |                     outOf: firmware.parts,
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/DFUServiceDelegate.swift:286:23: note: protocol 'DFUProgressDelegate' does not conform to the 'Sendable' protocol
284 |  Uploading state.
285 |  */
286 | @objc public protocol DFUProgressDelegate {
    |                       `- note: protocol 'DFUProgressDelegate' does not conform to the 'Sendable' protocol
287 |
288 |     /**
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/SecureDFU/Characteristics/SecureDFUPacket.swift:167:28: warning: capture of 'firmware' with non-sendable type 'DFUFirmware' in a '@Sendable' closure
165 |             queue.async {
166 |                 progress?.dfuProgressDidChange(
167 |                     for:   firmware.currentPart,
    |                            `- warning: capture of 'firmware' with non-sendable type 'DFUFirmware' in a '@Sendable' closure
168 |                     outOf: firmware.parts,
169 |                     to:    0,
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/Firmware/DFUFirmware.swift:86:20: note: class 'DFUFirmware' does not conform to the 'Sendable' protocol
 84 |  The DFU Firmware object wraps the firmware file and provides access to its content.
 85 |  */
 86 | @objc public class DFUFirmware : NSObject, DFUStream {
    |                    `- note: class 'DFUFirmware' does not conform to the 'Sendable' protocol
 87 |     internal let stream: DFUStream
 88 |
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/SecureDFU/Characteristics/SecureDFUPacket.swift:213:21: warning: capture of 'progress' with non-sendable type '(any DFUProgressDelegate)?' in a '@Sendable' closure
211 |                 // Notify progress delegate of overall progress.
212 |                 queue.async {
213 |                     progress?.dfuProgressDidChange(
    |                     `- warning: capture of 'progress' with non-sendable type '(any DFUProgressDelegate)?' in a '@Sendable' closure
214 |                         for:   firmware.currentPart,
215 |                         outOf: firmware.parts,
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/DFUServiceDelegate.swift:286:23: note: protocol 'DFUProgressDelegate' does not conform to the 'Sendable' protocol
284 |  Uploading state.
285 |  */
286 | @objc public protocol DFUProgressDelegate {
    |                       `- note: protocol 'DFUProgressDelegate' does not conform to the 'Sendable' protocol
287 |
288 |     /**
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/SecureDFU/Characteristics/SecureDFUPacket.swift:214:32: warning: capture of 'firmware' with non-sendable type 'DFUFirmware' in a '@Sendable' closure
212 |                 queue.async {
213 |                     progress?.dfuProgressDidChange(
214 |                         for:   firmware.currentPart,
    |                                `- warning: capture of 'firmware' with non-sendable type 'DFUFirmware' in a '@Sendable' closure
215 |                         outOf: firmware.parts,
216 |                         to:    Int(currentProgress),
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/Firmware/DFUFirmware.swift:86:20: note: class 'DFUFirmware' does not conform to the 'Sendable' protocol
 84 |  The DFU Firmware object wraps the firmware file and provides access to its content.
 85 |  */
 86 | @objc public class DFUFirmware : NSObject, DFUStream {
    |                    `- note: class 'DFUFirmware' does not conform to the 'Sendable' protocol
 87 |     internal let stream: DFUStream
 88 |
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/SecureDFU/DFU/SecureDFUExecutor.swift:356:17: warning: capture of 'self' with non-sendable type 'SecureDFUExecutor' in a '@Sendable' closure
 31 | import Foundation
 32 |
 33 | internal class SecureDFUExecutor : DFUExecutor, SecureDFUPeripheralDelegate {
    |                `- note: class 'SecureDFUExecutor' does not conform to the 'Sendable' protocol
 34 |     typealias DFUPeripheralType = SecureDFUPeripheral
 35 |
    :
354 |             logger.d("wait(\(Int(delay * 1000)))")
355 |             initiator.queue.asyncAfter(deadline: .now() + delay) {
356 |                 self.sendDataObject(self.currentRangeIdx) // -> peripheralDidReceiveObject() will be called.
    |                 `- warning: capture of 'self' with non-sendable type 'SecureDFUExecutor' in a '@Sendable' closure
357 |             }
358 |         } else {
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/SecureDFU/DFU/SecureDFUServiceInitiator.swift:46:17: warning: capture of 'self' with non-sendable type 'SecureDFUServiceInitiator' in a '@Sendable' closure
38 |  consider using this initiator instead to skip that part.
39 |  */
40 | @objc public class SecureDFUServiceInitiator : DFUServiceInitiator {
   |                    `- note: class 'SecureDFUServiceInitiator' does not conform to the 'Sendable' protocol
41 |
42 |     public override func start(targetWithIdentifier uuid: UUID) -> DFUServiceController? {
   :
44 |         guard let _ = file else {
45 |             delegateQueue.async {
46 |                 self.delegate?.dfuError(.fileNotSpecified, didOccurWithMessage: "Firmware not specified")
   |                 `- warning: capture of 'self' with non-sendable type 'SecureDFUServiceInitiator' in a '@Sendable' closure
47 |             }
48 |             return nil
[76/77] Compiling NordicDFU SecureDFUPeripheral.swift
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/SecureDFU/Characteristics/SecureDFUPacket.swift:166:17: warning: capture of 'progress' with non-sendable type '(any DFUProgressDelegate)?' in a '@Sendable' closure
164 |             // Notify progress delegate that upload has started (0%).
165 |             queue.async {
166 |                 progress?.dfuProgressDidChange(
    |                 `- warning: capture of 'progress' with non-sendable type '(any DFUProgressDelegate)?' in a '@Sendable' closure
167 |                     for:   firmware.currentPart,
168 |                     outOf: firmware.parts,
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/DFUServiceDelegate.swift:286:23: note: protocol 'DFUProgressDelegate' does not conform to the 'Sendable' protocol
284 |  Uploading state.
285 |  */
286 | @objc public protocol DFUProgressDelegate {
    |                       `- note: protocol 'DFUProgressDelegate' does not conform to the 'Sendable' protocol
287 |
288 |     /**
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/SecureDFU/Characteristics/SecureDFUPacket.swift:167:28: warning: capture of 'firmware' with non-sendable type 'DFUFirmware' in a '@Sendable' closure
165 |             queue.async {
166 |                 progress?.dfuProgressDidChange(
167 |                     for:   firmware.currentPart,
    |                            `- warning: capture of 'firmware' with non-sendable type 'DFUFirmware' in a '@Sendable' closure
168 |                     outOf: firmware.parts,
169 |                     to:    0,
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/Firmware/DFUFirmware.swift:86:20: note: class 'DFUFirmware' does not conform to the 'Sendable' protocol
 84 |  The DFU Firmware object wraps the firmware file and provides access to its content.
 85 |  */
 86 | @objc public class DFUFirmware : NSObject, DFUStream {
    |                    `- note: class 'DFUFirmware' does not conform to the 'Sendable' protocol
 87 |     internal let stream: DFUStream
 88 |
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/SecureDFU/Characteristics/SecureDFUPacket.swift:213:21: warning: capture of 'progress' with non-sendable type '(any DFUProgressDelegate)?' in a '@Sendable' closure
211 |                 // Notify progress delegate of overall progress.
212 |                 queue.async {
213 |                     progress?.dfuProgressDidChange(
    |                     `- warning: capture of 'progress' with non-sendable type '(any DFUProgressDelegate)?' in a '@Sendable' closure
214 |                         for:   firmware.currentPart,
215 |                         outOf: firmware.parts,
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/DFUServiceDelegate.swift:286:23: note: protocol 'DFUProgressDelegate' does not conform to the 'Sendable' protocol
284 |  Uploading state.
285 |  */
286 | @objc public protocol DFUProgressDelegate {
    |                       `- note: protocol 'DFUProgressDelegate' does not conform to the 'Sendable' protocol
287 |
288 |     /**
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/SecureDFU/Characteristics/SecureDFUPacket.swift:214:32: warning: capture of 'firmware' with non-sendable type 'DFUFirmware' in a '@Sendable' closure
212 |                 queue.async {
213 |                     progress?.dfuProgressDidChange(
214 |                         for:   firmware.currentPart,
    |                                `- warning: capture of 'firmware' with non-sendable type 'DFUFirmware' in a '@Sendable' closure
215 |                         outOf: firmware.parts,
216 |                         to:    Int(currentProgress),
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/Firmware/DFUFirmware.swift:86:20: note: class 'DFUFirmware' does not conform to the 'Sendable' protocol
 84 |  The DFU Firmware object wraps the firmware file and provides access to its content.
 85 |  */
 86 | @objc public class DFUFirmware : NSObject, DFUStream {
    |                    `- note: class 'DFUFirmware' does not conform to the 'Sendable' protocol
 87 |     internal let stream: DFUStream
 88 |
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/SecureDFU/DFU/SecureDFUExecutor.swift:356:17: warning: capture of 'self' with non-sendable type 'SecureDFUExecutor' in a '@Sendable' closure
 31 | import Foundation
 32 |
 33 | internal class SecureDFUExecutor : DFUExecutor, SecureDFUPeripheralDelegate {
    |                `- note: class 'SecureDFUExecutor' does not conform to the 'Sendable' protocol
 34 |     typealias DFUPeripheralType = SecureDFUPeripheral
 35 |
    :
354 |             logger.d("wait(\(Int(delay * 1000)))")
355 |             initiator.queue.asyncAfter(deadline: .now() + delay) {
356 |                 self.sendDataObject(self.currentRangeIdx) // -> peripheralDidReceiveObject() will be called.
    |                 `- warning: capture of 'self' with non-sendable type 'SecureDFUExecutor' in a '@Sendable' closure
357 |             }
358 |         } else {
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/SecureDFU/DFU/SecureDFUServiceInitiator.swift:46:17: warning: capture of 'self' with non-sendable type 'SecureDFUServiceInitiator' in a '@Sendable' closure
38 |  consider using this initiator instead to skip that part.
39 |  */
40 | @objc public class SecureDFUServiceInitiator : DFUServiceInitiator {
   |                    `- note: class 'SecureDFUServiceInitiator' does not conform to the 'Sendable' protocol
41 |
42 |     public override func start(targetWithIdentifier uuid: UUID) -> DFUServiceController? {
   :
44 |         guard let _ = file else {
45 |             delegateQueue.async {
46 |                 self.delegate?.dfuError(.fileNotSpecified, didOccurWithMessage: "Firmware not specified")
   |                 `- warning: capture of 'self' with non-sendable type 'SecureDFUServiceInitiator' in a '@Sendable' closure
47 |             }
48 |             return nil
[77/77] Compiling NordicDFU SecureDFUPeripheralDelegate.swift
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/SecureDFU/Characteristics/SecureDFUPacket.swift:166:17: warning: capture of 'progress' with non-sendable type '(any DFUProgressDelegate)?' in a '@Sendable' closure
164 |             // Notify progress delegate that upload has started (0%).
165 |             queue.async {
166 |                 progress?.dfuProgressDidChange(
    |                 `- warning: capture of 'progress' with non-sendable type '(any DFUProgressDelegate)?' in a '@Sendable' closure
167 |                     for:   firmware.currentPart,
168 |                     outOf: firmware.parts,
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/DFUServiceDelegate.swift:286:23: note: protocol 'DFUProgressDelegate' does not conform to the 'Sendable' protocol
284 |  Uploading state.
285 |  */
286 | @objc public protocol DFUProgressDelegate {
    |                       `- note: protocol 'DFUProgressDelegate' does not conform to the 'Sendable' protocol
287 |
288 |     /**
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/SecureDFU/Characteristics/SecureDFUPacket.swift:167:28: warning: capture of 'firmware' with non-sendable type 'DFUFirmware' in a '@Sendable' closure
165 |             queue.async {
166 |                 progress?.dfuProgressDidChange(
167 |                     for:   firmware.currentPart,
    |                            `- warning: capture of 'firmware' with non-sendable type 'DFUFirmware' in a '@Sendable' closure
168 |                     outOf: firmware.parts,
169 |                     to:    0,
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/Firmware/DFUFirmware.swift:86:20: note: class 'DFUFirmware' does not conform to the 'Sendable' protocol
 84 |  The DFU Firmware object wraps the firmware file and provides access to its content.
 85 |  */
 86 | @objc public class DFUFirmware : NSObject, DFUStream {
    |                    `- note: class 'DFUFirmware' does not conform to the 'Sendable' protocol
 87 |     internal let stream: DFUStream
 88 |
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/SecureDFU/Characteristics/SecureDFUPacket.swift:213:21: warning: capture of 'progress' with non-sendable type '(any DFUProgressDelegate)?' in a '@Sendable' closure
211 |                 // Notify progress delegate of overall progress.
212 |                 queue.async {
213 |                     progress?.dfuProgressDidChange(
    |                     `- warning: capture of 'progress' with non-sendable type '(any DFUProgressDelegate)?' in a '@Sendable' closure
214 |                         for:   firmware.currentPart,
215 |                         outOf: firmware.parts,
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/DFUServiceDelegate.swift:286:23: note: protocol 'DFUProgressDelegate' does not conform to the 'Sendable' protocol
284 |  Uploading state.
285 |  */
286 | @objc public protocol DFUProgressDelegate {
    |                       `- note: protocol 'DFUProgressDelegate' does not conform to the 'Sendable' protocol
287 |
288 |     /**
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/SecureDFU/Characteristics/SecureDFUPacket.swift:214:32: warning: capture of 'firmware' with non-sendable type 'DFUFirmware' in a '@Sendable' closure
212 |                 queue.async {
213 |                     progress?.dfuProgressDidChange(
214 |                         for:   firmware.currentPart,
    |                                `- warning: capture of 'firmware' with non-sendable type 'DFUFirmware' in a '@Sendable' closure
215 |                         outOf: firmware.parts,
216 |                         to:    Int(currentProgress),
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/Firmware/DFUFirmware.swift:86:20: note: class 'DFUFirmware' does not conform to the 'Sendable' protocol
 84 |  The DFU Firmware object wraps the firmware file and provides access to its content.
 85 |  */
 86 | @objc public class DFUFirmware : NSObject, DFUStream {
    |                    `- note: class 'DFUFirmware' does not conform to the 'Sendable' protocol
 87 |     internal let stream: DFUStream
 88 |
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/SecureDFU/DFU/SecureDFUExecutor.swift:356:17: warning: capture of 'self' with non-sendable type 'SecureDFUExecutor' in a '@Sendable' closure
 31 | import Foundation
 32 |
 33 | internal class SecureDFUExecutor : DFUExecutor, SecureDFUPeripheralDelegate {
    |                `- note: class 'SecureDFUExecutor' does not conform to the 'Sendable' protocol
 34 |     typealias DFUPeripheralType = SecureDFUPeripheral
 35 |
    :
354 |             logger.d("wait(\(Int(delay * 1000)))")
355 |             initiator.queue.asyncAfter(deadline: .now() + delay) {
356 |                 self.sendDataObject(self.currentRangeIdx) // -> peripheralDidReceiveObject() will be called.
    |                 `- warning: capture of 'self' with non-sendable type 'SecureDFUExecutor' in a '@Sendable' closure
357 |             }
358 |         } else {
/Users/admin/builder/spi-builder-workspace/Library/Classes/Implementation/SecureDFU/DFU/SecureDFUServiceInitiator.swift:46:17: warning: capture of 'self' with non-sendable type 'SecureDFUServiceInitiator' in a '@Sendable' closure
38 |  consider using this initiator instead to skip that part.
39 |  */
40 | @objc public class SecureDFUServiceInitiator : DFUServiceInitiator {
   |                    `- note: class 'SecureDFUServiceInitiator' does not conform to the 'Sendable' protocol
41 |
42 |     public override func start(targetWithIdentifier uuid: UUID) -> DFUServiceController? {
   :
44 |         guard let _ = file else {
45 |             delegateQueue.async {
46 |                 self.delegate?.dfuError(.fileNotSpecified, didOccurWithMessage: "Firmware not specified")
   |                 `- warning: capture of 'self' with non-sendable type 'SecureDFUServiceInitiator' in a '@Sendable' closure
47 |             }
48 |             return nil
Build complete! (25.31s)
Fetching https://github.com/apple/swift-docc-plugin
Fetching https://github.com/weichsel/ZIPFoundation
[1/2171] Fetching swift-docc-plugin
[240/8134] Fetching swift-docc-plugin, zipfoundation
Fetched https://github.com/apple/swift-docc-plugin from cache (1.33s)
Fetched https://github.com/weichsel/ZIPFoundation from cache (1.33s)
Computing version for https://github.com/weichsel/ZIPFoundation
Computed https://github.com/weichsel/ZIPFoundation at 0.9.19 (1.84s)
Computing version for https://github.com/apple/swift-docc-plugin
Computed https://github.com/apple/swift-docc-plugin at 1.4.6 (3.07s)
Fetching https://github.com/swiftlang/swift-docc-symbolkit from cache
Fetched https://github.com/swiftlang/swift-docc-symbolkit from cache (0.83s)
Computing version for https://github.com/swiftlang/swift-docc-symbolkit
Computed https://github.com/swiftlang/swift-docc-symbolkit at 1.0.0 (1.51s)
Creating working copy for https://github.com/weichsel/ZIPFoundation
Working copy of https://github.com/weichsel/ZIPFoundation resolved at 0.9.19
Creating working copy for https://github.com/apple/swift-docc-plugin
Working copy of https://github.com/apple/swift-docc-plugin resolved at 1.4.6
Creating working copy for https://github.com/swiftlang/swift-docc-symbolkit
Working copy of https://github.com/swiftlang/swift-docc-symbolkit resolved at 1.0.0
Build complete.
{
  "dependencies" : [
    {
      "identity" : "zipfoundation",
      "requirement" : {
        "exact" : [
          "0.9.19"
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/weichsel/ZIPFoundation"
    },
    {
      "identity" : "swift-docc-plugin",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.0.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/apple/swift-docc-plugin"
    }
  ],
  "manifest_display_name" : "NordicDFU",
  "name" : "NordicDFU",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "10.14"
    },
    {
      "name" : "ios",
      "version" : "12.0"
    },
    {
      "name" : "watchos",
      "version" : "4.0"
    },
    {
      "name" : "tvos",
      "version" : "12.0"
    }
  ],
  "products" : [
    {
      "name" : "NordicDFU",
      "targets" : [
        "NordicDFU"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "swift_languages_versions" : [
    "5"
  ],
  "targets" : [
    {
      "c99name" : "NordicDFUTests",
      "module_type" : "SwiftTarget",
      "name" : "NordicDFUTests",
      "path" : "Tests",
      "sources" : [
        "Hex2BinConverterTests.swift"
      ],
      "target_dependencies" : [
        "NordicDFU"
      ],
      "type" : "test"
    },
    {
      "c99name" : "NordicDFU",
      "module_type" : "SwiftTarget",
      "name" : "NordicDFU",
      "path" : "Library",
      "product_dependencies" : [
        "ZIPFoundation"
      ],
      "product_memberships" : [
        "NordicDFU"
      ],
      "resources" : [
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Library/Assets/PrivacyInfo.xcprivacy",
          "rule" : {
            "process" : {
            }
          }
        }
      ],
      "sources" : [
        "Classes/Implementation/DFUPeripheralSelector.swift",
        "Classes/Implementation/DFUPeripheralSelectorDelegate.swift",
        "Classes/Implementation/DFUSelector/DFUServiceSelector.swift",
        "Classes/Implementation/DFUSelector/DFUStarterPeripheral.swift",
        "Classes/Implementation/DFUServiceController.swift",
        "Classes/Implementation/DFUServiceDelegate.swift",
        "Classes/Implementation/DFUServiceInitiator.swift",
        "Classes/Implementation/DFUUuidHelper.swift",
        "Classes/Implementation/Firmware/DFUFirmware.swift",
        "Classes/Implementation/GenericDFU/DFUCharacteristic.swift",
        "Classes/Implementation/GenericDFU/DFUController.swift",
        "Classes/Implementation/GenericDFU/DFUExecutor.swift",
        "Classes/Implementation/GenericDFU/DFUPeripheral.swift",
        "Classes/Implementation/GenericDFU/DFUPeripheralDelegate.swift",
        "Classes/Implementation/GenericDFU/DFUService.swift",
        "Classes/Implementation/LegacyDFU/Characteristics/DFUControlPoint.swift",
        "Classes/Implementation/LegacyDFU/Characteristics/DFUPacket.swift",
        "Classes/Implementation/LegacyDFU/Characteristics/DFUVersion.swift",
        "Classes/Implementation/LegacyDFU/DFU/LegacyDFUExecutor.swift",
        "Classes/Implementation/LegacyDFU/DFU/LegacyDFUServiceInitiator.swift",
        "Classes/Implementation/LegacyDFU/Peripherals/LegacyDFUPeripheral.swift",
        "Classes/Implementation/LegacyDFU/Peripherals/LegacyDFUPeripheralDelegate.swift",
        "Classes/Implementation/LegacyDFU/Services/LegacyDFUService.swift",
        "Classes/Implementation/SecureDFU/Characteristics/ButtonlessDFU.swift",
        "Classes/Implementation/SecureDFU/Characteristics/SecureDFUControlPoint.swift",
        "Classes/Implementation/SecureDFU/Characteristics/SecureDFUPacket.swift",
        "Classes/Implementation/SecureDFU/DFU/SecureDFUExecutor.swift",
        "Classes/Implementation/SecureDFU/DFU/SecureDFUServiceInitiator.swift",
        "Classes/Implementation/SecureDFU/Peripheral/SecureDFUPeripheral.swift",
        "Classes/Implementation/SecureDFU/Peripheral/SecureDFUPeripheralDelegate.swift",
        "Classes/Implementation/SecureDFU/Services/SecureDFUService.swift",
        "Classes/Utilities/DFUPackage/Manifest/Manifest.swift",
        "Classes/Utilities/DFUPackage/Manifest/ManifestFirmwareInfo.swift",
        "Classes/Utilities/DFUPackage/Manifest/SoftdeviceBootloaderInfo.swift",
        "Classes/Utilities/Data.swift",
        "Classes/Utilities/Double.swift",
        "Classes/Utilities/HexToBinConverter/IntelHex2BinConverter.swift",
        "Classes/Utilities/Logging/LoggerDelegate.swift",
        "Classes/Utilities/Logging/LoggerHelper.swift",
        "Classes/Utilities/Streams/DFUStream.swift",
        "Classes/Utilities/Streams/DFUStreamBin.swift",
        "Classes/Utilities/Streams/DFUStreamHex.swift",
        "Classes/Utilities/Streams/DFUStreamZip.swift",
        "Classes/Utilities/ZipArchive.swift",
        "Classes/Utilities/crc32.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.9"
}
Done.