The Swift Package Index logo.Swift Package Index

Build Information

Failed to build Yakka, reference master (af26fa), with Swift 6.1 for Android on 27 May 2025 10:08:08 UTC.

Build Command

bash -c docker run --pull=always --rm -v "checkouts-4606859-1":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:android-6.1-latest swift build --swift-sdk aarch64-unknown-linux-android24 2>&1

Build Log

========================================
RunAll
========================================
Builder version: 4.63.1
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/KieranHarper/Yakka.git
Reference: master
Initialized empty Git repository in /host/spi-builder-workspace/.git/
hint: Using 'master' as the name for the initial branch. This default branch name
hint: is subject to change. To configure the initial branch name to use in all
hint: of your new repositories, which will suppress this warning, call:
hint:
hint: 	git config --global init.defaultBranch <name>
hint:
hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
hint: 'development'. The just-created branch can be renamed via this command:
hint:
hint: 	git branch -m <name>
From https://github.com/KieranHarper/Yakka
 * branch            master     -> FETCH_HEAD
 * [new branch]      master     -> origin/master
HEAD is now at af26fa7 Release 2.1.3
Cloned https://github.com/KieranHarper/Yakka.git
Revision (git rev-parse @):
af26fa778cd25c6ae5b24abfd141d48c3a37c144
SUCCESS checkout https://github.com/KieranHarper/Yakka.git at master
========================================
Build
========================================
Selected platform:         android
Swift version:             6.1
Building package at path:  $PWD
https://github.com/KieranHarper/Yakka.git
https://github.com/KieranHarper/Yakka.git
WARNING: environment variable SUPPRESS_SWIFT_6_FLAGS is not set
{
  "dependencies" : [
    {
      "identity" : "quick",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.2.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/Quick/Quick.git"
    },
    {
      "identity" : "nimble",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "7.0.0",
            "upper_bound" : "8.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/Quick/Nimble.git"
    }
  ],
  "manifest_display_name" : "Yakka",
  "name" : "Yakka",
  "path" : "/host/spi-builder-workspace",
  "platforms" : [
  ],
  "products" : [
    {
      "name" : "Yakka",
      "targets" : [
        "Yakka"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "YakkaTests",
      "module_type" : "SwiftTarget",
      "name" : "YakkaTests",
      "path" : "Tests/YakkaTests",
      "product_dependencies" : [
        "Quick",
        "Nimble"
      ],
      "sources" : [
        "YakkaTests.swift"
      ],
      "target_dependencies" : [
        "Yakka"
      ],
      "type" : "test"
    },
    {
      "c99name" : "Yakka",
      "module_type" : "SwiftTarget",
      "name" : "Yakka",
      "path" : "Sources",
      "product_memberships" : [
        "Yakka"
      ],
      "sources" : [
        "FeedbackHandlerHelper.swift",
        "Line.swift",
        "MultiTask.swift",
        "Task.swift",
        "TaskRetryHelper.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "4.0"
}
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4606859-1":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:android-6.1-latest swift build --swift-sdk aarch64-unknown-linux-android24 -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 2>&1
android-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:9f3c606dcd2a4f06d17ba472aa533c43685ba7ba19a5c9bc23518a066eb7f86a
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:android-6.1-latest
Fetching https://github.com/Quick/Nimble.git
Fetching https://github.com/Quick/Quick.git
[1/14755] Fetching quick
[887/34339] Fetching quick, nimble
Fetched https://github.com/Quick/Quick.git from cache (2.67s)
Fetched https://github.com/Quick/Nimble.git from cache (2.71s)
Computing version for https://github.com/Quick/Quick.git
Computed https://github.com/Quick/Quick.git at 1.3.4 (3.79s)
Computing version for https://github.com/Quick/Nimble.git
Computed https://github.com/Quick/Nimble.git at 7.3.4 (1.01s)
Creating working copy for https://github.com/Quick/Quick.git
Working copy of https://github.com/Quick/Quick.git resolved at 1.3.4
Creating working copy for https://github.com/Quick/Nimble.git
Working copy of https://github.com/Quick/Nimble.git resolved at 7.3.4
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version-24593BA9C3E375BF.txt
[3/8] Compiling Yakka TaskRetryHelper.swift
/host/spi-builder-workspace/Sources/TaskRetryHelper.swift:48:17: warning: capture of 'retry' with non-sendable type '() -> ()' in a '@Sendable' closure; this is an error in the Swift 6 language mode
46 |             remainingNumRetries = remainingNumRetries - 1
47 |             queue.asyncAfter(deadline: .now() + wait) {
48 |                 retry()
   |                 |- warning: capture of 'retry' with non-sendable type '() -> ()' in a '@Sendable' closure; this is an error in the Swift 6 language mode
   |                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
49 |             }
50 |         } else {
/host/spi-builder-workspace/Sources/TaskRetryHelper.swift:52:17: warning: capture of 'nah' with non-sendable type '() -> ()' in a '@Sendable' closure; this is an error in the Swift 6 language mode
50 |         } else {
51 |             queue.async {
52 |                 nah()
   |                 |- warning: capture of 'nah' with non-sendable type '() -> ()' in a '@Sendable' closure; this is an error in the Swift 6 language mode
   |                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
53 |             }
54 |         }
[4/8] Compiling Yakka Task.swift
/host/spi-builder-workspace/Sources/Task.swift:140:10: error: Objective-C interoperability is disabled
138 |         }
139 |
140 |         @objc private func poll() {
    |          `- error: Objective-C interoperability is disabled
141 |
142 |             // Get the value and pipe it through our other method
/host/spi-builder-workspace/Sources/Task.swift:263:24: warning: static property '_cachedTasks' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
261 |
262 |     /// Global cache of all currently running tasks. This is used to ensure they're retained so the user doesn't have to, and also allows tasks to be retrieved by ID (only if they're running).
263 |     static private var _cachedTasks = Dictionary<String, Task>()
    |                        |- warning: static property '_cachedTasks' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                        |- note: convert '_cachedTasks' to a 'let' constant to make 'Sendable' shared state immutable
    |                        |- note: add '@MainActor' to make static property '_cachedTasks' part of global actor 'MainActor'
    |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
264 |
265 |     /// Queue that serializes access to _cachedTasks for thread safety
/host/spi-builder-workspace/Sources/Task.swift:91:111: error: '#selector' can only be used with the Objective-C runtime
 89 |                     }
 90 |                 #else
 91 |                     self._pollingTimer = Timer.scheduledTimer(timeInterval: interval, target: self, selector: #selector(self.poll), userInfo: nil, repeats: true)
    |                                                                                                               `- error: '#selector' can only be used with the Objective-C runtime
 92 |                 #endif
 93 |             }
/host/spi-builder-workspace/Sources/Task.swift:91:111: error: '#selector' can only be used with the Objective-C runtime
 89 |                     }
 90 |                 #else
 91 |                     self._pollingTimer = Timer.scheduledTimer(timeInterval: interval, target: self, selector: #selector(self.poll), userInfo: nil, repeats: true)
    |                                                                                                               `- error: '#selector' can only be used with the Objective-C runtime
 92 |                 #endif
 93 |             }
/host/spi-builder-workspace/Sources/Task.swift:84:38: error: trailing closure passed to parameter of type 'DispatchWorkItem' that does not accept a closure
 82 |
 83 |             // Switch to main both for thread safety and also because we can't start a timer without a run loop
 84 |             DispatchQueue.main.async {
    |                                      `- error: trailing closure passed to parameter of type 'DispatchWorkItem' that does not accept a closure
 85 |                 self._pollMe = provider
 86 |                 #if os(Linux)
Dispatch.DispatchQueue.async:3:15: note: 'async(execute:)' declared here
1 | class DispatchQueue {
2 | @available(macOS 10.10, iOS 8.0, *)
3 |   public func async(execute workItem: DispatchWorkItem)}
  |               `- note: 'async(execute:)' declared here
4 |
/host/spi-builder-workspace/Sources/Task.swift:303:13: warning: capture of 'self' with non-sendable type 'Task' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 11 |
 12 | /// Building block for work that needs doing
 13 | open class Task: NSObject {
    |            `- note: class 'Task' does not conform to the 'Sendable' protocol
 14 |
 15 |
    :
301 |     public final func workToDo(_ workBlock: @escaping TaskWorkClosure) {
302 |         _internalQueue.async {
303 |             self._workToDo = workBlock
    |             `- warning: capture of 'self' with non-sendable type 'Task' in a '@Sendable' closure; this is an error in the Swift 6 language mode
304 |         }
305 |     }
/host/spi-builder-workspace/Sources/Task.swift:303:30: warning: capture of 'workBlock' with non-sendable type 'Task.TaskWorkClosure' (aka '(Task.Process) -> ()') in a '@Sendable' closure; this is an error in the Swift 6 language mode
301 |     public final func workToDo(_ workBlock: @escaping TaskWorkClosure) {
302 |         _internalQueue.async {
303 |             self._workToDo = workBlock
    |                              |- warning: capture of 'workBlock' with non-sendable type 'Task.TaskWorkClosure' (aka '(Task.Process) -> ()') in a '@Sendable' closure; this is an error in the Swift 6 language mode
    |                              `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
304 |         }
305 |     }
/host/spi-builder-workspace/Sources/Task.swift:317:13: warning: capture of 'self' with non-sendable type 'Task' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 11 |
 12 | /// Building block for work that needs doing
 13 | open class Task: NSObject {
    |            `- note: class 'Task' does not conform to the 'Sendable' protocol
 14 |
 15 |
    :
315 |         // Get on the safe queue to change our state and get started via helper
316 |         _internalQueue.async {
317 |             self._queueForWork = workQueue
    |             `- warning: capture of 'self' with non-sendable type 'Task' in a '@Sendable' closure; this is an error in the Swift 6 language mode
318 |             self.internalStart()
319 |         }
/host/spi-builder-workspace/Sources/Task.swift:327:16: warning: capture of 'self' with non-sendable type 'Task' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 11 |
 12 | /// Building block for work that needs doing
 13 | open class Task: NSObject {
    |            `- note: class 'Task' does not conform to the 'Sendable' protocol
 14 |
 15 |
    :
325 |
326 |             // Change the state
327 |             if self._currentState == .running {
    |                `- warning: capture of 'self' with non-sendable type 'Task' in a '@Sendable' closure; this is an error in the Swift 6 language mode
328 |                 self._currentState = .cancelling
329 |             }
/host/spi-builder-workspace/Sources/Task.swift:334:21: warning: capture of 'handler' with non-sendable type '() -> ()' in a '@Sendable' closure; this is an error in the Swift 6 language mode
332 |             if let handler = self._onCancellingHandler {
333 |                 self._queueForWork.async {
334 |                     handler()
    |                     |- warning: capture of 'handler' with non-sendable type '() -> ()' in a '@Sendable' closure; this is an error in the Swift 6 language mode
    |                     `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
335 |                 }
336 |             }
/host/spi-builder-workspace/Sources/Task.swift:350:16: warning: capture of 'self' with non-sendable type 'Task' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 11 |
 12 | /// Building block for work that needs doing
 13 | open class Task: NSObject {
    |            `- note: class 'Task' does not conform to the 'Sendable' protocol
 14 |
 15 |
    :
348 |
349 |             // Hang onto the handler for later if we haven't started yet
350 |             if self._currentState == .notStarted {
    |                `- warning: capture of 'self' with non-sendable type 'Task' in a '@Sendable' closure; this is an error in the Swift 6 language mode
351 |                 let helper = FeedbackHandlerHelper<Void>(queue: queue, handler: handler)
352 |                 self._startHandlers.append(helper)
/host/spi-builder-workspace/Sources/Task.swift:351:81: warning: capture of 'handler' with non-sendable type 'Task.StartHandler' (aka '() -> ()') in a '@Sendable' closure; this is an error in the Swift 6 language mode
349 |             // Hang onto the handler for later if we haven't started yet
350 |             if self._currentState == .notStarted {
351 |                 let helper = FeedbackHandlerHelper<Void>(queue: queue, handler: handler)
    |                                                                                 |- warning: capture of 'handler' with non-sendable type 'Task.StartHandler' (aka '() -> ()') in a '@Sendable' closure; this is an error in the Swift 6 language mode
    |                                                                                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
352 |                 self._startHandlers.append(helper)
353 |             }
/host/spi-builder-workspace/Sources/Task.swift:357:27: warning: implicit capture of 'self' requires that 'Task' conforms to 'Sendable'; this is an error in the Swift 6 language mode
 11 |
 12 | /// Building block for work that needs doing
 13 | open class Task: NSObject {
    |            `- note: class 'Task' does not conform to the 'Sendable' protocol
 14 |
 15 |
    :
355 |             // Otherwise if currently still running, notify straight away
356 |             else if !self._currentState.isFinished() {
357 |                 (queue ?? self.queueForStartFeedback).async {
    |                           `- warning: implicit capture of 'self' requires that 'Task' conforms to 'Sendable'; this is an error in the Swift 6 language mode
358 |                     handler()
359 |                 }
/host/spi-builder-workspace/Sources/Task.swift:358:21: warning: capture of 'handler' with non-sendable type 'Task.StartHandler' (aka '() -> ()') in a '@Sendable' closure; this is an error in the Swift 6 language mode
356 |             else if !self._currentState.isFinished() {
357 |                 (queue ?? self.queueForStartFeedback).async {
358 |                     handler()
    |                     |- warning: capture of 'handler' with non-sendable type 'Task.StartHandler' (aka '() -> ()') in a '@Sendable' closure; this is an error in the Swift 6 language mode
    |                     `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
359 |                 }
360 |             }
/host/spi-builder-workspace/Sources/Task.swift:369:20: warning: capture of 'self' with non-sendable type 'Task' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 11 |
 12 | /// Building block for work that needs doing
 13 | open class Task: NSObject {
    |            `- note: class 'Task' does not conform to the 'Sendable' protocol
 14 |
 15 |
    :
367 |
368 |             // Only accepting handlers if it hasn't finishd yet
369 |             guard !self._currentState.isFinished() else { return }
    |                    `- warning: capture of 'self' with non-sendable type 'Task' in a '@Sendable' closure; this is an error in the Swift 6 language mode
370 |
371 |             let helper = FeedbackHandlerHelper<Float>(queue: queue, handler: handler)
/host/spi-builder-workspace/Sources/Task.swift:371:78: warning: capture of 'handler' with non-sendable type 'Task.ProgressHandler' (aka '(Float) -> ()') in a '@Sendable' closure; this is an error in the Swift 6 language mode
369 |             guard !self._currentState.isFinished() else { return }
370 |
371 |             let helper = FeedbackHandlerHelper<Float>(queue: queue, handler: handler)
    |                                                                              |- warning: capture of 'handler' with non-sendable type 'Task.ProgressHandler' (aka '(Float) -> ()') in a '@Sendable' closure; this is an error in the Swift 6 language mode
    |                                                                              `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
372 |             self._progressHandlers.append(helper)
373 |         }
/host/spi-builder-workspace/Sources/Task.swift:381:17: warning: capture of 'self' with non-sendable type 'Task' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 11 |
 12 | /// Building block for work that needs doing
 13 | open class Task: NSObject {
    |            `- note: class 'Task' does not conform to the 'Sendable' protocol
 14 |
 15 |
    :
379 |
380 |             // Hang onto the handler for later if we haven't finished yet
381 |             if !self._currentState.isFinished() {
    |                 `- warning: capture of 'self' with non-sendable type 'Task' in a '@Sendable' closure; this is an error in the Swift 6 language mode
382 |                 let helper = FeedbackHandlerHelper<Outcome>(queue: queue, handler: handler)
383 |                 self._finishHandlers.append(helper)
/host/spi-builder-workspace/Sources/Task.swift:382:84: warning: capture of 'handler' with non-sendable type 'Task.FinishHandler' (aka '(Task.Outcome) -> ()') in a '@Sendable' closure; this is an error in the Swift 6 language mode
380 |             // Hang onto the handler for later if we haven't finished yet
381 |             if !self._currentState.isFinished() {
382 |                 let helper = FeedbackHandlerHelper<Outcome>(queue: queue, handler: handler)
    |                                                                                    |- warning: capture of 'handler' with non-sendable type 'Task.FinishHandler' (aka '(Task.Outcome) -> ()') in a '@Sendable' closure; this is an error in the Swift 6 language mode
    |                                                                                    `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
383 |                 self._finishHandlers.append(helper)
384 |             }
/host/spi-builder-workspace/Sources/Task.swift:388:27: warning: implicit capture of 'self' requires that 'Task' conforms to 'Sendable'; this is an error in the Swift 6 language mode
 11 |
 12 | /// Building block for work that needs doing
 13 | open class Task: NSObject {
    |            `- note: class 'Task' does not conform to the 'Sendable' protocol
 14 |
 15 |
    :
386 |             // Otherwise notify straight away with the outcome we finished with
387 |             else if let outcome = self._currentState.finishOutcome() {
388 |                 (queue ?? self.queueForFinishFeedback).async {
    |                           `- warning: implicit capture of 'self' requires that 'Task' conforms to 'Sendable'; this is an error in the Swift 6 language mode
389 |                     handler(outcome)
390 |                 }
/host/spi-builder-workspace/Sources/Task.swift:389:21: warning: capture of 'handler' with non-sendable type 'Task.FinishHandler' (aka '(Task.Outcome) -> ()') in a '@Sendable' closure; this is an error in the Swift 6 language mode
387 |             else if let outcome = self._currentState.finishOutcome() {
388 |                 (queue ?? self.queueForFinishFeedback).async {
389 |                     handler(outcome)
    |                     |- warning: capture of 'handler' with non-sendable type 'Task.FinishHandler' (aka '(Task.Outcome) -> ()') in a '@Sendable' closure; this is an error in the Swift 6 language mode
    |                     `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
390 |                 }
391 |             }
/host/spi-builder-workspace/Sources/Task.swift:389:29: warning: capture of 'outcome' with non-sendable type 'Task.Outcome' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 46 |
 47 |     /// Possible outcomes when finished
 48 |     public enum Outcome {
    |                 `- note: consider making enum 'Outcome' conform to the 'Sendable' protocol
 49 |         case success, cancelled, failure
 50 |     }
    :
387 |             else if let outcome = self._currentState.finishOutcome() {
388 |                 (queue ?? self.queueForFinishFeedback).async {
389 |                     handler(outcome)
    |                             `- warning: capture of 'outcome' with non-sendable type 'Task.Outcome' in a '@Sendable' closure; this is an error in the Swift 6 language mode
390 |                 }
391 |             }
/host/spi-builder-workspace/Sources/Task.swift:400:20: warning: capture of 'self' with non-sendable type 'Task' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 11 |
 12 | /// Building block for work that needs doing
 13 | open class Task: NSObject {
    |            `- note: class 'Task' does not conform to the 'Sendable' protocol
 14 |
 15 |
    :
398 |
399 |             // Only accepting handlers if it hasn't finishd yet
400 |             guard !self._currentState.isFinished() else { return }
    |                    `- warning: capture of 'self' with non-sendable type 'Task' in a '@Sendable' closure; this is an error in the Swift 6 language mode
401 |
402 |             let helper = FeedbackHandlerHelper<Void>(queue: queue, handler: handler)
/host/spi-builder-workspace/Sources/Task.swift:402:77: warning: capture of 'handler' with non-sendable type 'Task.RetryHandler' (aka '() -> ()') in a '@Sendable' closure; this is an error in the Swift 6 language mode
400 |             guard !self._currentState.isFinished() else { return }
401 |
402 |             let helper = FeedbackHandlerHelper<Void>(queue: queue, handler: handler)
    |                                                                             |- warning: capture of 'handler' with non-sendable type 'Task.RetryHandler' (aka '() -> ()') in a '@Sendable' closure; this is an error in the Swift 6 language mode
    |                                                                             `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
403 |             self._retryHandlers.append(helper)
404 |         }
/host/spi-builder-workspace/Sources/Task.swift:436:13: warning: capture of 'work' with non-sendable type 'Task.TaskWorkClosure' (aka '(Task.Process) -> ()') in a '@Sendable' closure; this is an error in the Swift 6 language mode
434 |         // Actually start the work on the worker queue now
435 |         _queueForWork.async {
436 |             work(Process(task: self))
    |             |- warning: capture of 'work' with non-sendable type 'Task.TaskWorkClosure' (aka '(Task.Process) -> ()') in a '@Sendable' closure; this is an error in the Swift 6 language mode
    |             `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
437 |         }
438 |     }
/host/spi-builder-workspace/Sources/Task.swift:436:32: warning: capture of 'self' with non-sendable type 'Task' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 11 |
 12 | /// Building block for work that needs doing
 13 | open class Task: NSObject {
    |            `- note: class 'Task' does not conform to the 'Sendable' protocol
 14 |
 15 |
    :
434 |         // Actually start the work on the worker queue now
435 |         _queueForWork.async {
436 |             work(Process(task: self))
    |                                `- warning: capture of 'self' with non-sendable type 'Task' in a '@Sendable' closure; this is an error in the Swift 6 language mode
437 |         }
438 |     }
/host/spi-builder-workspace/Sources/Task.swift:481:13: warning: capture of 'work' with non-sendable type 'Task.TaskWorkClosure' (aka '(Task.Process) -> ()') in a '@Sendable' closure; this is an error in the Swift 6 language mode
479 |         // Actually restart the work on the worker queue now
480 |         _queueForWork.async {
481 |             work(Process(task: self))
    |             |- warning: capture of 'work' with non-sendable type 'Task.TaskWorkClosure' (aka '(Task.Process) -> ()') in a '@Sendable' closure; this is an error in the Swift 6 language mode
    |             `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
482 |         }
483 |     }
/host/spi-builder-workspace/Sources/Task.swift:481:32: warning: capture of 'self' with non-sendable type 'Task' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 11 |
 12 | /// Building block for work that needs doing
 13 | open class Task: NSObject {
    |            `- note: class 'Task' does not conform to the 'Sendable' protocol
 14 |
 15 |
    :
479 |         // Actually restart the work on the worker queue now
480 |         _queueForWork.async {
481 |             work(Process(task: self))
    |                                `- warning: capture of 'self' with non-sendable type 'Task' in a '@Sendable' closure; this is an error in the Swift 6 language mode
482 |         }
483 |     }
/host/spi-builder-workspace/Sources/Task.swift:504:13: warning: capture of 'self' with non-sendable type 'Task' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 11 |
 12 | /// Building block for work that needs doing
 13 | open class Task: NSObject {
    |            `- note: class 'Task' does not conform to the 'Sendable' protocol
 14 |
 15 |
    :
502 |         // Get on the safe queue and change the state
503 |         _internalQueue.async {
504 |             self.internalFinish(withOutcome: outcome)
    |             `- warning: capture of 'self' with non-sendable type 'Task' in a '@Sendable' closure; this is an error in the Swift 6 language mode
505 |         }
506 |     }
/host/spi-builder-workspace/Sources/Task.swift:504:46: warning: capture of 'outcome' with non-sendable type 'Task.Outcome' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 46 |
 47 |     /// Possible outcomes when finished
 48 |     public enum Outcome {
    |                 `- note: consider making enum 'Outcome' conform to the 'Sendable' protocol
 49 |         case success, cancelled, failure
 50 |     }
    :
502 |         // Get on the safe queue and change the state
503 |         _internalQueue.async {
504 |             self.internalFinish(withOutcome: outcome)
    |                                              `- warning: capture of 'outcome' with non-sendable type 'Task.Outcome' in a '@Sendable' closure; this is an error in the Swift 6 language mode
505 |         }
506 |     }
/host/spi-builder-workspace/Sources/Task.swift:527:13: warning: capture of 'self' with non-sendable type 'Task' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 11 |
 12 | /// Building block for work that needs doing
 13 | open class Task: NSObject {
    |            `- note: class 'Task' does not conform to the 'Sendable' protocol
 14 |
 15 |
    :
525 |     private func storeOnCancelHandler(handler: @escaping ()->()) {
526 |         _internalQueue.async {
527 |             self._onCancellingHandler = handler
    |             `- warning: capture of 'self' with non-sendable type 'Task' in a '@Sendable' closure; this is an error in the Swift 6 language mode
528 |
529 |             // Notify straight away if we're already in the cancelling state
/host/spi-builder-workspace/Sources/Task.swift:527:41: warning: capture of 'handler' with non-sendable type '() -> ()' in a '@Sendable' closure; this is an error in the Swift 6 language mode
525 |     private func storeOnCancelHandler(handler: @escaping ()->()) {
526 |         _internalQueue.async {
527 |             self._onCancellingHandler = handler
    |                                         |- warning: capture of 'handler' with non-sendable type '() -> ()' in a '@Sendable' closure; this is an error in the Swift 6 language mode
    |                                         `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
528 |
529 |             // Notify straight away if we're already in the cancelling state
/host/spi-builder-workspace/Sources/Task.swift:532:21: warning: capture of 'handler' with non-sendable type '() -> ()' in a '@Sendable' closure; this is an error in the Swift 6 language mode
530 |             if self._currentState == .cancelling {
531 |                 self._queueForWork.async {
532 |                     handler()
    |                     |- warning: capture of 'handler' with non-sendable type '() -> ()' in a '@Sendable' closure; this is an error in the Swift 6 language mode
    |                     `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
533 |                 }
534 |             }
/host/spi-builder-workspace/Sources/Task.swift:553:40: warning: capture of 'task' with non-sendable type 'Task?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 11 |
 12 | /// Building block for work that needs doing
 13 | open class Task: NSObject {
    |            `- note: class 'Task' does not conform to the 'Sendable' protocol
 14 |
 15 |
    :
551 |     private class func cache(task: Task?, forID identifier: String) {
552 |         _cachedTasksSafetyQueue.async(flags: .barrier) {
553 |             _cachedTasks[identifier] = task
    |                                        `- warning: capture of 'task' with non-sendable type 'Task?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
554 |         }
555 |     }
error: emit-module command failed with exit code 1 (use -v to see invocation)
[5/8] Compiling Yakka Line.swift
/host/spi-builder-workspace/Sources/Line.swift:92:13: warning: capture of 'self' with non-sendable type 'Line' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 15 |  NOTE: While Task and its subclasses will retain itself while running, Line will not.
 16 |  */
 17 | public final class Line: NSObject {
    |                    `- note: class 'Line' does not conform to the 'Sendable' protocol
 18 |
 19 |
    :
 90 |     @discardableResult public func addTask(_ task: Task) -> Task {
 91 |         _internalQueue.async {
 92 |             self._pendingTasks.append(task)
    |             `- warning: capture of 'self' with non-sendable type 'Line' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 93 |             self.processSubtasks()
 94 |         }
/host/spi-builder-workspace/Sources/Line.swift:92:39: warning: capture of 'task' with non-sendable type 'Task' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 90 |     @discardableResult public func addTask(_ task: Task) -> Task {
 91 |         _internalQueue.async {
 92 |             self._pendingTasks.append(task)
    |                                       `- warning: capture of 'task' with non-sendable type 'Task' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 93 |             self.processSubtasks()
 94 |         }
/host/spi-builder-workspace/Sources/Task.swift:13:12: note: class 'Task' does not conform to the 'Sendable' protocol
 11 |
 12 | /// Building block for work that needs doing
 13 | open class Task: NSObject {
    |            `- note: class 'Task' does not conform to the 'Sendable' protocol
 14 |
 15 |
/host/spi-builder-workspace/Sources/Line.swift:101:13: warning: capture of 'self' with non-sendable type 'Line' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 15 |  NOTE: While Task and its subclasses will retain itself while running, Line will not.
 16 |  */
 17 | public final class Line: NSObject {
    |                    `- note: class 'Line' does not conform to the 'Sendable' protocol
 18 |
 19 |
    :
 99 |     public func addTasks(_ tasks: [Task]) {
100 |         _internalQueue.async {
101 |             self._pendingTasks.append(contentsOf: tasks)
    |             `- warning: capture of 'self' with non-sendable type 'Line' in a '@Sendable' closure; this is an error in the Swift 6 language mode
102 |             self.processSubtasks()
103 |         }
/host/spi-builder-workspace/Sources/Line.swift:101:51: warning: capture of 'tasks' with non-sendable type '[Task]' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 99 |     public func addTasks(_ tasks: [Task]) {
100 |         _internalQueue.async {
101 |             self._pendingTasks.append(contentsOf: tasks)
    |                                                   `- warning: capture of 'tasks' with non-sendable type '[Task]' in a '@Sendable' closure; this is an error in the Swift 6 language mode
102 |             self.processSubtasks()
103 |         }
/host/spi-builder-workspace/Sources/Task.swift:13:12: note: class 'Task' does not conform to the 'Sendable' protocol
 11 |
 12 | /// Building block for work that needs doing
 13 | open class Task: NSObject {
    |            `- note: class 'Task' does not conform to the 'Sendable' protocol
 14 |
 15 |
/host/spi-builder-workspace/Sources/Line.swift:114:17: warning: capture of 'self' with non-sendable type 'Line' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 15 |  NOTE: While Task and its subclasses will retain itself while running, Line will not.
 16 |  */
 17 | public final class Line: NSObject {
    |                    `- note: class 'Line' does not conform to the 'Sendable' protocol
 18 |
 19 |
    :
112 |     public func start() {
113 |         _internalQueue.async {
114 |             if !self.isRunning {
    |                 `- warning: capture of 'self' with non-sendable type 'Line' in a '@Sendable' closure; this is an error in the Swift 6 language mode
115 |                 self.isRunning = true
116 |                 self.processSubtasks()
/host/spi-builder-workspace/Sources/Line.swift:124:13: warning: capture of 'self' with non-sendable type 'Line' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 15 |  NOTE: While Task and its subclasses will retain itself while running, Line will not.
 16 |  */
 17 | public final class Line: NSObject {
    |                    `- note: class 'Line' does not conform to the 'Sendable' protocol
 18 |
 19 |
    :
122 |     public func stop() {
123 |         _internalQueue.async {
124 |             self.isRunning = false
    |             `- warning: capture of 'self' with non-sendable type 'Line' in a '@Sendable' closure; this is an error in the Swift 6 language mode
125 |         }
126 |     }
/host/spi-builder-workspace/Sources/Line.swift:131:25: warning: capture of 'self' with non-sendable type 'Line' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 15 |  NOTE: While Task and its subclasses will retain itself while running, Line will not.
 16 |  */
 17 | public final class Line: NSObject {
    |                    `- note: class 'Line' does not conform to the 'Sendable' protocol
 18 |
 19 |
    :
129 |     public func cancelTasks() {
130 |         _internalQueue.async {
131 |             for task in self._runningTasks {
    |                         `- warning: capture of 'self' with non-sendable type 'Line' in a '@Sendable' closure; this is an error in the Swift 6 language mode
132 |                 task.cancel()
133 |             }
/host/spi-builder-workspace/Sources/Line.swift:151:77: warning: capture of 'handler' with non-sendable type 'Line.BecameEmptyHandler' (aka '() -> ()') in a '@Sendable' closure; this is an error in the Swift 6 language mode
149 |     public final func onBecameEmpty(via queue: DispatchQueue? = nil, handler: @escaping BecameEmptyHandler) {
150 |         _internalQueue.async {
151 |             let helper = FeedbackHandlerHelper<Void>(queue: queue, handler: handler)
    |                                                                             |- warning: capture of 'handler' with non-sendable type 'Line.BecameEmptyHandler' (aka '() -> ()') in a '@Sendable' closure; this is an error in the Swift 6 language mode
    |                                                                             `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
152 |             self._becameEmptyHandlers.append(helper)
153 |         }
/host/spi-builder-workspace/Sources/Line.swift:152:13: warning: capture of 'self' with non-sendable type 'Line' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 15 |  NOTE: While Task and its subclasses will retain itself while running, Line will not.
 16 |  */
 17 | public final class Line: NSObject {
    |                    `- note: class 'Line' does not conform to the 'Sendable' protocol
 18 |
 19 |
    :
150 |         _internalQueue.async {
151 |             let helper = FeedbackHandlerHelper<Void>(queue: queue, handler: handler)
152 |             self._becameEmptyHandlers.append(helper)
    |             `- warning: capture of 'self' with non-sendable type 'Line' in a '@Sendable' closure; this is an error in the Swift 6 language mode
153 |         }
154 |     }
/host/spi-builder-workspace/Sources/Line.swift:159:77: warning: capture of 'handler' with non-sendable type 'Line.StartedTaskHandler' (aka '(Task) -> ()') in a '@Sendable' closure; this is an error in the Swift 6 language mode
157 |     public final func onNextTaskStarted(via queue: DispatchQueue? = nil, handler: @escaping StartedTaskHandler) {
158 |         _internalQueue.async {
159 |             let helper = FeedbackHandlerHelper<Task>(queue: queue, handler: handler)
    |                                                                             |- warning: capture of 'handler' with non-sendable type 'Line.StartedTaskHandler' (aka '(Task) -> ()') in a '@Sendable' closure; this is an error in the Swift 6 language mode
    |                                                                             `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
160 |             self._taskStartedHandlers.append(helper)
161 |         }
/host/spi-builder-workspace/Sources/Line.swift:160:13: warning: capture of 'self' with non-sendable type 'Line' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 15 |  NOTE: While Task and its subclasses will retain itself while running, Line will not.
 16 |  */
 17 | public final class Line: NSObject {
    |                    `- note: class 'Line' does not conform to the 'Sendable' protocol
 18 |
 19 |
    :
158 |         _internalQueue.async {
159 |             let helper = FeedbackHandlerHelper<Task>(queue: queue, handler: handler)
160 |             self._taskStartedHandlers.append(helper)
    |             `- warning: capture of 'self' with non-sendable type 'Line' in a '@Sendable' closure; this is an error in the Swift 6 language mode
161 |         }
162 |     }
[6/8] Compiling Yakka MultiTask.swift
/host/spi-builder-workspace/Sources/MultiTask.swift:70:17: warning: capture of 'self' with non-sendable type 'MultiTask?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 11 |
 12 | /// Base class for tasks that manage the execution of a collection of tasks. Recommend using ParallelTask or SerialTask, which subclass this.
 13 | open class MultiTask: Task {
    |            `- note: class 'MultiTask' does not conform to the 'Sendable' protocol
 14 |
 15 |
    :
 68 |         _overallProcess?.onShouldCancel { [weak self] in
 69 |             self?._internalQueue.async {
 70 |                 self?.handleCancelling()
    |                 `- warning: capture of 'self' with non-sendable type 'MultiTask?' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 71 |             }
 72 |         }
/host/spi-builder-workspace/Sources/MultiTask.swift:70:17: warning: reference to captured var 'self' in concurrently-executing code; this is an error in the Swift 6 language mode
 68 |         _overallProcess?.onShouldCancel { [weak self] in
 69 |             self?._internalQueue.async {
 70 |                 self?.handleCancelling()
    |                 `- warning: reference to captured var 'self' in concurrently-executing code; this is an error in the Swift 6 language mode
 71 |             }
 72 |         }
/host/spi-builder-workspace/Sources/MultiTask.swift:74:13: warning: capture of 'self' with non-sendable type 'MultiTask' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 11 |
 12 | /// Base class for tasks that manage the execution of a collection of tasks. Recommend using ParallelTask or SerialTask, which subclass this.
 13 | open class MultiTask: Task {
    |            `- note: class 'MultiTask' does not conform to the 'Sendable' protocol
 14 |
 15 |
    :
 72 |         }
 73 |         _internalQueue.async {
 74 |             self.processSubtasks()
    |             `- warning: capture of 'self' with non-sendable type 'MultiTask' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 75 |         }
 76 |     }
[7/8] Compiling Yakka FeedbackHandlerHelper.swift
/host/spi-builder-workspace/Sources/FeedbackHandlerHelper.swift:42:107: error: type 'DispatchQueue' does not conform to protocol 'Hashable'
40 | }
41 |
42 | private func getQueueBatches<T>(from helpers: [FeedbackHandlerHelper<T>], defaultQueue: DispatchQueue) -> [DispatchQueue: [(T)->()]] {
   |                                                                                                           `- error: type 'DispatchQueue' does not conform to protocol 'Hashable'
43 |     var dict = [DispatchQueue: [(T)->()]]()
44 |     for helper in helpers {
/host/spi-builder-workspace/Sources/FeedbackHandlerHelper.swift:21:5: error: referencing instance method 'next()' on 'Dictionary.Iterator' requires that 'DispatchQueue' conform to 'Hashable'
19 | internal func notifyHandlers(from helpers: [FeedbackHandlerHelper<Void>], defaultQueue: DispatchQueue) {
20 |     let batches = getQueueBatches(from: helpers, defaultQueue: defaultQueue)
21 |     for (queue, batch) in batches {
   |     `- error: referencing instance method 'next()' on 'Dictionary.Iterator' requires that 'DispatchQueue' conform to 'Hashable'
22 |         queue.async {
23 |             for handler in batch {
Swift.Dictionary.Iterator:1:11: note: where 'Key' = 'DispatchQueue'
1 | extension Dictionary.Iterator : IteratorProtocol {
  |           `- note: where 'Key' = 'DispatchQueue'
2 |     @inlinable public mutating func next() -> (key: Key, value: Value)?
3 |     public typealias Element = (key: Key, value: Value)
/host/spi-builder-workspace/Sources/FeedbackHandlerHelper.swift:21:27: error: referencing instance method 'makeIterator()' on 'Dictionary' requires that 'DispatchQueue' conform to 'Hashable'
19 | internal func notifyHandlers(from helpers: [FeedbackHandlerHelper<Void>], defaultQueue: DispatchQueue) {
20 |     let batches = getQueueBatches(from: helpers, defaultQueue: defaultQueue)
21 |     for (queue, batch) in batches {
   |                           `- error: referencing instance method 'makeIterator()' on 'Dictionary' requires that 'DispatchQueue' conform to 'Hashable'
22 |         queue.async {
23 |             for handler in batch {
Swift.Dictionary:1:11: note: where 'Key' = 'DispatchQueue'
1 | extension Dictionary : Sequence {
  |           `- note: where 'Key' = 'DispatchQueue'
2 |     @inlinable public __consuming func makeIterator() -> Dictionary<Key, Value>.Iterator
3 | }
/host/spi-builder-workspace/Sources/FeedbackHandlerHelper.swift:33:5: error: referencing instance method 'next()' on 'Dictionary.Iterator' requires that 'DispatchQueue' conform to 'Hashable'
31 | internal func notifyHandlers<T>(from helpers: [FeedbackHandlerHelper<T>], defaultQueue: DispatchQueue, parameters: T) {
32 |     let batches = getQueueBatches(from: helpers, defaultQueue: defaultQueue)
33 |     for (queue, batch) in batches {
   |     `- error: referencing instance method 'next()' on 'Dictionary.Iterator' requires that 'DispatchQueue' conform to 'Hashable'
34 |         queue.async {
35 |             for handler in batch {
Swift.Dictionary.Iterator:1:11: note: where 'Key' = 'DispatchQueue'
1 | extension Dictionary.Iterator : IteratorProtocol {
  |           `- note: where 'Key' = 'DispatchQueue'
2 |     @inlinable public mutating func next() -> (key: Key, value: Value)?
3 |     public typealias Element = (key: Key, value: Value)
/host/spi-builder-workspace/Sources/FeedbackHandlerHelper.swift:33:27: error: referencing instance method 'makeIterator()' on 'Dictionary' requires that 'DispatchQueue' conform to 'Hashable'
31 | internal func notifyHandlers<T>(from helpers: [FeedbackHandlerHelper<T>], defaultQueue: DispatchQueue, parameters: T) {
32 |     let batches = getQueueBatches(from: helpers, defaultQueue: defaultQueue)
33 |     for (queue, batch) in batches {
   |                           `- error: referencing instance method 'makeIterator()' on 'Dictionary' requires that 'DispatchQueue' conform to 'Hashable'
34 |         queue.async {
35 |             for handler in batch {
Swift.Dictionary:1:11: note: where 'Key' = 'DispatchQueue'
1 | extension Dictionary : Sequence {
  |           `- note: where 'Key' = 'DispatchQueue'
2 |     @inlinable public __consuming func makeIterator() -> Dictionary<Key, Value>.Iterator
3 | }
/host/spi-builder-workspace/Sources/FeedbackHandlerHelper.swift:43:16: error: type 'DispatchQueue' does not conform to protocol 'Hashable'
41 |
42 | private func getQueueBatches<T>(from helpers: [FeedbackHandlerHelper<T>], defaultQueue: DispatchQueue) -> [DispatchQueue: [(T)->()]] {
43 |     var dict = [DispatchQueue: [(T)->()]]()
   |                `- error: type 'DispatchQueue' does not conform to protocol 'Hashable'
44 |     for helper in helpers {
45 |         let queue = helper.queue ?? defaultQueue
/host/spi-builder-workspace/Sources/FeedbackHandlerHelper.swift:43:16: error: generic struct 'Dictionary' requires that 'DispatchQueue' conform to 'Hashable'
41 |
42 | private func getQueueBatches<T>(from helpers: [FeedbackHandlerHelper<T>], defaultQueue: DispatchQueue) -> [DispatchQueue: [(T)->()]] {
43 |     var dict = [DispatchQueue: [(T)->()]]()
   |                `- error: generic struct 'Dictionary' requires that 'DispatchQueue' conform to 'Hashable'
44 |     for helper in helpers {
45 |         let queue = helper.queue ?? defaultQueue
Swift.Dictionary:1:23: note: where 'Key' = 'DispatchQueue'
1 | @frozen public struct Dictionary<Key, Value> where Key : Hashable {
  |                       `- note: where 'Key' = 'DispatchQueue'
2 |     public typealias Element = (key: Key, value: Value)
3 |     @inlinable public init()
[8/8] Emitting module Yakka
/host/spi-builder-workspace/Sources/FeedbackHandlerHelper.swift:42:107: error: type 'DispatchQueue' does not conform to protocol 'Hashable'
40 | }
41 |
42 | private func getQueueBatches<T>(from helpers: [FeedbackHandlerHelper<T>], defaultQueue: DispatchQueue) -> [DispatchQueue: [(T)->()]] {
   |                                                                                                           `- error: type 'DispatchQueue' does not conform to protocol 'Hashable'
43 |     var dict = [DispatchQueue: [(T)->()]]()
44 |     for helper in helpers {
/host/spi-builder-workspace/Sources/Task.swift:140:10: error: Objective-C interoperability is disabled
138 |         }
139 |
140 |         @objc private func poll() {
    |          `- error: Objective-C interoperability is disabled
141 |
142 |             // Get the value and pipe it through our other method
/host/spi-builder-workspace/Sources/Task.swift:263:24: warning: static property '_cachedTasks' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
261 |
262 |     /// Global cache of all currently running tasks. This is used to ensure they're retained so the user doesn't have to, and also allows tasks to be retrieved by ID (only if they're running).
263 |     static private var _cachedTasks = Dictionary<String, Task>()
    |                        |- warning: static property '_cachedTasks' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                        |- note: convert '_cachedTasks' to a 'let' constant to make 'Sendable' shared state immutable
    |                        |- note: add '@MainActor' to make static property '_cachedTasks' part of global actor 'MainActor'
    |                        `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
264 |
265 |     /// Queue that serializes access to _cachedTasks for thread safety
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4606859-1":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:android-6.1-latest swift build --swift-sdk aarch64-unknown-linux-android24 2>&1
android-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:9f3c606dcd2a4f06d17ba472aa533c43685ba7ba19a5c9bc23518a066eb7f86a
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:android-6.1-latest
[0/1] Planning build
Building for debugging...
[0/1] Write swift-version-24593BA9C3E375BF.txt
[2/7] Compiling Yakka Task.swift
/host/spi-builder-workspace/Sources/Task.swift:140:10: error: Objective-C interoperability is disabled
138 |         }
139 |
140 |         @objc private func poll() {
    |          `- error: Objective-C interoperability is disabled
141 |
142 |             // Get the value and pipe it through our other method
/host/spi-builder-workspace/Sources/Task.swift:91:111: error: '#selector' can only be used with the Objective-C runtime
 89 |                     }
 90 |                 #else
 91 |                     self._pollingTimer = Timer.scheduledTimer(timeInterval: interval, target: self, selector: #selector(self.poll), userInfo: nil, repeats: true)
    |                                                                                                               `- error: '#selector' can only be used with the Objective-C runtime
 92 |                 #endif
 93 |             }
/host/spi-builder-workspace/Sources/Task.swift:91:111: error: '#selector' can only be used with the Objective-C runtime
 89 |                     }
 90 |                 #else
 91 |                     self._pollingTimer = Timer.scheduledTimer(timeInterval: interval, target: self, selector: #selector(self.poll), userInfo: nil, repeats: true)
    |                                                                                                               `- error: '#selector' can only be used with the Objective-C runtime
 92 |                 #endif
 93 |             }
/host/spi-builder-workspace/Sources/Task.swift:84:38: error: trailing closure passed to parameter of type 'DispatchWorkItem' that does not accept a closure
 82 |
 83 |             // Switch to main both for thread safety and also because we can't start a timer without a run loop
 84 |             DispatchQueue.main.async {
    |                                      `- error: trailing closure passed to parameter of type 'DispatchWorkItem' that does not accept a closure
 85 |                 self._pollMe = provider
 86 |                 #if os(Linux)
Dispatch.DispatchQueue.async:3:15: note: 'async(execute:)' declared here
1 | class DispatchQueue {
2 | @available(macOS 10.10, iOS 8.0, *)
3 |   public func async(execute workItem: DispatchWorkItem)}
  |               `- note: 'async(execute:)' declared here
4 |
[3/7] Compiling Yakka TaskRetryHelper.swift
error: emit-module command failed with exit code 1 (use -v to see invocation)
[4/7] Compiling Yakka FeedbackHandlerHelper.swift
/host/spi-builder-workspace/Sources/FeedbackHandlerHelper.swift:42:107: error: type 'DispatchQueue' does not conform to protocol 'Hashable'
40 | }
41 |
42 | private func getQueueBatches<T>(from helpers: [FeedbackHandlerHelper<T>], defaultQueue: DispatchQueue) -> [DispatchQueue: [(T)->()]] {
   |                                                                                                           `- error: type 'DispatchQueue' does not conform to protocol 'Hashable'
43 |     var dict = [DispatchQueue: [(T)->()]]()
44 |     for helper in helpers {
/host/spi-builder-workspace/Sources/FeedbackHandlerHelper.swift:21:5: error: referencing instance method 'next()' on 'Dictionary.Iterator' requires that 'DispatchQueue' conform to 'Hashable'
19 | internal func notifyHandlers(from helpers: [FeedbackHandlerHelper<Void>], defaultQueue: DispatchQueue) {
20 |     let batches = getQueueBatches(from: helpers, defaultQueue: defaultQueue)
21 |     for (queue, batch) in batches {
   |     `- error: referencing instance method 'next()' on 'Dictionary.Iterator' requires that 'DispatchQueue' conform to 'Hashable'
22 |         queue.async {
23 |             for handler in batch {
Swift.Dictionary.Iterator:1:11: note: where 'Key' = 'DispatchQueue'
1 | extension Dictionary.Iterator : IteratorProtocol {
  |           `- note: where 'Key' = 'DispatchQueue'
2 |     @inlinable public mutating func next() -> (key: Key, value: Value)?
3 |     public typealias Element = (key: Key, value: Value)
/host/spi-builder-workspace/Sources/FeedbackHandlerHelper.swift:21:27: error: referencing instance method 'makeIterator()' on 'Dictionary' requires that 'DispatchQueue' conform to 'Hashable'
19 | internal func notifyHandlers(from helpers: [FeedbackHandlerHelper<Void>], defaultQueue: DispatchQueue) {
20 |     let batches = getQueueBatches(from: helpers, defaultQueue: defaultQueue)
21 |     for (queue, batch) in batches {
   |                           `- error: referencing instance method 'makeIterator()' on 'Dictionary' requires that 'DispatchQueue' conform to 'Hashable'
22 |         queue.async {
23 |             for handler in batch {
Swift.Dictionary:1:11: note: where 'Key' = 'DispatchQueue'
1 | extension Dictionary : Sequence {
  |           `- note: where 'Key' = 'DispatchQueue'
2 |     @inlinable public __consuming func makeIterator() -> Dictionary<Key, Value>.Iterator
3 | }
/host/spi-builder-workspace/Sources/FeedbackHandlerHelper.swift:33:5: error: referencing instance method 'next()' on 'Dictionary.Iterator' requires that 'DispatchQueue' conform to 'Hashable'
31 | internal func notifyHandlers<T>(from helpers: [FeedbackHandlerHelper<T>], defaultQueue: DispatchQueue, parameters: T) {
32 |     let batches = getQueueBatches(from: helpers, defaultQueue: defaultQueue)
33 |     for (queue, batch) in batches {
   |     `- error: referencing instance method 'next()' on 'Dictionary.Iterator' requires that 'DispatchQueue' conform to 'Hashable'
34 |         queue.async {
35 |             for handler in batch {
Swift.Dictionary.Iterator:1:11: note: where 'Key' = 'DispatchQueue'
1 | extension Dictionary.Iterator : IteratorProtocol {
  |           `- note: where 'Key' = 'DispatchQueue'
2 |     @inlinable public mutating func next() -> (key: Key, value: Value)?
3 |     public typealias Element = (key: Key, value: Value)
/host/spi-builder-workspace/Sources/FeedbackHandlerHelper.swift:33:27: error: referencing instance method 'makeIterator()' on 'Dictionary' requires that 'DispatchQueue' conform to 'Hashable'
31 | internal func notifyHandlers<T>(from helpers: [FeedbackHandlerHelper<T>], defaultQueue: DispatchQueue, parameters: T) {
32 |     let batches = getQueueBatches(from: helpers, defaultQueue: defaultQueue)
33 |     for (queue, batch) in batches {
   |                           `- error: referencing instance method 'makeIterator()' on 'Dictionary' requires that 'DispatchQueue' conform to 'Hashable'
34 |         queue.async {
35 |             for handler in batch {
Swift.Dictionary:1:11: note: where 'Key' = 'DispatchQueue'
1 | extension Dictionary : Sequence {
  |           `- note: where 'Key' = 'DispatchQueue'
2 |     @inlinable public __consuming func makeIterator() -> Dictionary<Key, Value>.Iterator
3 | }
/host/spi-builder-workspace/Sources/FeedbackHandlerHelper.swift:43:16: error: type 'DispatchQueue' does not conform to protocol 'Hashable'
41 |
42 | private func getQueueBatches<T>(from helpers: [FeedbackHandlerHelper<T>], defaultQueue: DispatchQueue) -> [DispatchQueue: [(T)->()]] {
43 |     var dict = [DispatchQueue: [(T)->()]]()
   |                `- error: type 'DispatchQueue' does not conform to protocol 'Hashable'
44 |     for helper in helpers {
45 |         let queue = helper.queue ?? defaultQueue
/host/spi-builder-workspace/Sources/FeedbackHandlerHelper.swift:43:16: error: generic struct 'Dictionary' requires that 'DispatchQueue' conform to 'Hashable'
41 |
42 | private func getQueueBatches<T>(from helpers: [FeedbackHandlerHelper<T>], defaultQueue: DispatchQueue) -> [DispatchQueue: [(T)->()]] {
43 |     var dict = [DispatchQueue: [(T)->()]]()
   |                `- error: generic struct 'Dictionary' requires that 'DispatchQueue' conform to 'Hashable'
44 |     for helper in helpers {
45 |         let queue = helper.queue ?? defaultQueue
Swift.Dictionary:1:23: note: where 'Key' = 'DispatchQueue'
1 | @frozen public struct Dictionary<Key, Value> where Key : Hashable {
  |                       `- note: where 'Key' = 'DispatchQueue'
2 |     public typealias Element = (key: Key, value: Value)
3 |     @inlinable public init()
[5/7] Emitting module Yakka
/host/spi-builder-workspace/Sources/FeedbackHandlerHelper.swift:42:107: error: type 'DispatchQueue' does not conform to protocol 'Hashable'
40 | }
41 |
42 | private func getQueueBatches<T>(from helpers: [FeedbackHandlerHelper<T>], defaultQueue: DispatchQueue) -> [DispatchQueue: [(T)->()]] {
   |                                                                                                           `- error: type 'DispatchQueue' does not conform to protocol 'Hashable'
43 |     var dict = [DispatchQueue: [(T)->()]]()
44 |     for helper in helpers {
/host/spi-builder-workspace/Sources/Task.swift:140:10: error: Objective-C interoperability is disabled
138 |         }
139 |
140 |         @objc private func poll() {
    |          `- error: Objective-C interoperability is disabled
141 |
142 |             // Get the value and pipe it through our other method
[6/7] Compiling Yakka Line.swift
[7/7] Compiling Yakka MultiTask.swift
/host/spi-builder-workspace/Sources/MultiTask.swift:70:17: warning: reference to captured var 'self' in concurrently-executing code; this is an error in the Swift 6 language mode
 68 |         _overallProcess?.onShouldCancel { [weak self] in
 69 |             self?._internalQueue.async {
 70 |                 self?.handleCancelling()
    |                 `- warning: reference to captured var 'self' in concurrently-executing code; this is an error in the Swift 6 language mode
 71 |             }
 72 |         }
BUILD FAILURE 6.1 android