The Swift Package Index logo.Swift Package Index

Build Information

Failed to build MotionMachine, reference 3.1.2 (d9b981), with Swift 6.3 for Wasm on 16 Apr 2026 00:32:12 UTC.

Build Command

bash -c docker run --pull=always --rm -v "checkouts-4609320-0":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/swiftpackageindex/spi-images:wasm-6.3-latest swift build --swift-sdk swift-6.3-RELEASE_wasm 2>&1

Build Log

========================================
RunAll
========================================
Builder version: 4.70.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/poetmountain/MotionMachine.git
Reference: 3.1.2
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/poetmountain/MotionMachine
 * tag               3.1.2      -> FETCH_HEAD
HEAD is now at d9b9816 Fix to Equatable conformance for `Additive` protocol, which surfaced as error in Xcode 16.3.
Cloned https://github.com/poetmountain/MotionMachine.git
Revision (git rev-parse @):
d9b981676a8a33e74ce7917d524e61937a4a942b
SUCCESS checkout https://github.com/poetmountain/MotionMachine.git at 3.1.2
========================================
Build
========================================
Selected platform:         wasm
Swift version:             6.3
Building package at path:  $PWD
https://github.com/poetmountain/MotionMachine.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4609320-0":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/swiftpackageindex/spi-images:wasm-6.3-latest swift build --swift-sdk swift-6.3-RELEASE_wasm 2>&1
wasm-6.3-latest: Pulling from swiftpackageindex/spi-images
Digest: sha256:d69f4e7582c319245442d62a08b2d7c7fd5a0c0c69f5d2ef11d1530cd8d3329b
Status: Image is up to date for registry.gitlab.com/swiftpackageindex/spi-images:wasm-6.3-latest
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version-24593BA9C3E375BF.txt
[3/52] Compiling MotionMachine TimerTempo.swift
/host/spi-builder-workspace/Sources/TempoTypes/TimerTempo.swift:28:23: error: cannot find type 'DispatchSourceTimer' in scope
26 |      *  - warning: Do not call the `cancel()` method on this object, as its state is handled by TimerTempo directly.
27 |      */
28 |     public var timer: DispatchSourceTimer?
   |                       `- error: cannot find type 'DispatchSourceTimer' in scope
29 |
30 |     public weak var delegate: TempoDelegate?
/host/spi-builder-workspace/Sources/TempoTypes/TimerTempo.swift:65:21: error: cannot find 'DispatchSource' in scope
63 |     private init(interval: TimeInterval?) {
64 |         if let interval {
65 |             timer = DispatchSource.makeTimerSource(queue: DispatchQueue.main)
   |                     `- error: cannot find 'DispatchSource' in scope
66 |             timer?.schedule(deadline: .now(), repeating: interval, leeway: .milliseconds(2))
67 |             timer?.setEventHandler { [weak self] in
/host/spi-builder-workspace/Sources/TempoTypes/TimerTempo.swift:65:59: error: cannot find 'DispatchQueue' in scope
63 |     private init(interval: TimeInterval?) {
64 |         if let interval {
65 |             timer = DispatchSource.makeTimerSource(queue: DispatchQueue.main)
   |                                                           `- error: cannot find 'DispatchQueue' in scope
66 |             timer?.schedule(deadline: .now(), repeating: interval, leeway: .milliseconds(2))
67 |             timer?.setEventHandler { [weak self] in
/host/spi-builder-workspace/Sources/TempoTypes/TimerTempo.swift:66:40: error: cannot infer contextual base in reference to member 'now'
64 |         if let interval {
65 |             timer = DispatchSource.makeTimerSource(queue: DispatchQueue.main)
66 |             timer?.schedule(deadline: .now(), repeating: interval, leeway: .milliseconds(2))
   |                                        `- error: cannot infer contextual base in reference to member 'now'
67 |             timer?.setEventHandler { [weak self] in
68 |                 self?.update()
/host/spi-builder-workspace/Sources/TempoTypes/TimerTempo.swift:66:77: error: cannot infer contextual base in reference to member 'milliseconds'
64 |         if let interval {
65 |             timer = DispatchSource.makeTimerSource(queue: DispatchQueue.main)
66 |             timer?.schedule(deadline: .now(), repeating: interval, leeway: .milliseconds(2))
   |                                                                             `- error: cannot infer contextual base in reference to member 'milliseconds'
67 |             timer?.setEventHandler { [weak self] in
68 |                 self?.update()
[4/52] Compiling MotionMachine CollectionReversingMode.swift
/host/spi-builder-workspace/Sources/TempoTypes/TimerTempo.swift:28:23: error: cannot find type 'DispatchSourceTimer' in scope
26 |      *  - warning: Do not call the `cancel()` method on this object, as its state is handled by TimerTempo directly.
27 |      */
28 |     public var timer: DispatchSourceTimer?
   |                       `- error: cannot find type 'DispatchSourceTimer' in scope
29 |
30 |     public weak var delegate: TempoDelegate?
/host/spi-builder-workspace/Sources/TempoTypes/TimerTempo.swift:65:21: error: cannot find 'DispatchSource' in scope
63 |     private init(interval: TimeInterval?) {
64 |         if let interval {
65 |             timer = DispatchSource.makeTimerSource(queue: DispatchQueue.main)
   |                     `- error: cannot find 'DispatchSource' in scope
66 |             timer?.schedule(deadline: .now(), repeating: interval, leeway: .milliseconds(2))
67 |             timer?.setEventHandler { [weak self] in
/host/spi-builder-workspace/Sources/TempoTypes/TimerTempo.swift:65:59: error: cannot find 'DispatchQueue' in scope
63 |     private init(interval: TimeInterval?) {
64 |         if let interval {
65 |             timer = DispatchSource.makeTimerSource(queue: DispatchQueue.main)
   |                                                           `- error: cannot find 'DispatchQueue' in scope
66 |             timer?.schedule(deadline: .now(), repeating: interval, leeway: .milliseconds(2))
67 |             timer?.setEventHandler { [weak self] in
/host/spi-builder-workspace/Sources/TempoTypes/TimerTempo.swift:66:40: error: cannot infer contextual base in reference to member 'now'
64 |         if let interval {
65 |             timer = DispatchSource.makeTimerSource(queue: DispatchQueue.main)
66 |             timer?.schedule(deadline: .now(), repeating: interval, leeway: .milliseconds(2))
   |                                        `- error: cannot infer contextual base in reference to member 'now'
67 |             timer?.setEventHandler { [weak self] in
68 |                 self?.update()
/host/spi-builder-workspace/Sources/TempoTypes/TimerTempo.swift:66:77: error: cannot infer contextual base in reference to member 'milliseconds'
64 |         if let interval {
65 |             timer = DispatchSource.makeTimerSource(queue: DispatchQueue.main)
66 |             timer?.schedule(deadline: .now(), repeating: interval, leeway: .milliseconds(2))
   |                                                                             `- error: cannot infer contextual base in reference to member 'milliseconds'
67 |             timer?.setEventHandler { [weak self] in
68 |                 self?.update()
[5/52] Compiling MotionMachine MotionDirection.swift
/host/spi-builder-workspace/Sources/TempoTypes/TimerTempo.swift:28:23: error: cannot find type 'DispatchSourceTimer' in scope
26 |      *  - warning: Do not call the `cancel()` method on this object, as its state is handled by TimerTempo directly.
27 |      */
28 |     public var timer: DispatchSourceTimer?
   |                       `- error: cannot find type 'DispatchSourceTimer' in scope
29 |
30 |     public weak var delegate: TempoDelegate?
/host/spi-builder-workspace/Sources/TempoTypes/TimerTempo.swift:65:21: error: cannot find 'DispatchSource' in scope
63 |     private init(interval: TimeInterval?) {
64 |         if let interval {
65 |             timer = DispatchSource.makeTimerSource(queue: DispatchQueue.main)
   |                     `- error: cannot find 'DispatchSource' in scope
66 |             timer?.schedule(deadline: .now(), repeating: interval, leeway: .milliseconds(2))
67 |             timer?.setEventHandler { [weak self] in
/host/spi-builder-workspace/Sources/TempoTypes/TimerTempo.swift:65:59: error: cannot find 'DispatchQueue' in scope
63 |     private init(interval: TimeInterval?) {
64 |         if let interval {
65 |             timer = DispatchSource.makeTimerSource(queue: DispatchQueue.main)
   |                                                           `- error: cannot find 'DispatchQueue' in scope
66 |             timer?.schedule(deadline: .now(), repeating: interval, leeway: .milliseconds(2))
67 |             timer?.setEventHandler { [weak self] in
/host/spi-builder-workspace/Sources/TempoTypes/TimerTempo.swift:66:40: error: cannot infer contextual base in reference to member 'now'
64 |         if let interval {
65 |             timer = DispatchSource.makeTimerSource(queue: DispatchQueue.main)
66 |             timer?.schedule(deadline: .now(), repeating: interval, leeway: .milliseconds(2))
   |                                        `- error: cannot infer contextual base in reference to member 'now'
67 |             timer?.setEventHandler { [weak self] in
68 |                 self?.update()
/host/spi-builder-workspace/Sources/TempoTypes/TimerTempo.swift:66:77: error: cannot infer contextual base in reference to member 'milliseconds'
64 |         if let interval {
65 |             timer = DispatchSource.makeTimerSource(queue: DispatchQueue.main)
66 |             timer?.schedule(deadline: .now(), repeating: interval, leeway: .milliseconds(2))
   |                                                                             `- error: cannot infer contextual base in reference to member 'milliseconds'
67 |             timer?.setEventHandler { [weak self] in
68 |                 self?.update()
[6/52] Compiling MotionMachine MotionOptions.swift
/host/spi-builder-workspace/Sources/TempoTypes/TimerTempo.swift:28:23: error: cannot find type 'DispatchSourceTimer' in scope
26 |      *  - warning: Do not call the `cancel()` method on this object, as its state is handled by TimerTempo directly.
27 |      */
28 |     public var timer: DispatchSourceTimer?
   |                       `- error: cannot find type 'DispatchSourceTimer' in scope
29 |
30 |     public weak var delegate: TempoDelegate?
/host/spi-builder-workspace/Sources/TempoTypes/TimerTempo.swift:65:21: error: cannot find 'DispatchSource' in scope
63 |     private init(interval: TimeInterval?) {
64 |         if let interval {
65 |             timer = DispatchSource.makeTimerSource(queue: DispatchQueue.main)
   |                     `- error: cannot find 'DispatchSource' in scope
66 |             timer?.schedule(deadline: .now(), repeating: interval, leeway: .milliseconds(2))
67 |             timer?.setEventHandler { [weak self] in
/host/spi-builder-workspace/Sources/TempoTypes/TimerTempo.swift:65:59: error: cannot find 'DispatchQueue' in scope
63 |     private init(interval: TimeInterval?) {
64 |         if let interval {
65 |             timer = DispatchSource.makeTimerSource(queue: DispatchQueue.main)
   |                                                           `- error: cannot find 'DispatchQueue' in scope
66 |             timer?.schedule(deadline: .now(), repeating: interval, leeway: .milliseconds(2))
67 |             timer?.setEventHandler { [weak self] in
/host/spi-builder-workspace/Sources/TempoTypes/TimerTempo.swift:66:40: error: cannot infer contextual base in reference to member 'now'
64 |         if let interval {
65 |             timer = DispatchSource.makeTimerSource(queue: DispatchQueue.main)
66 |             timer?.schedule(deadline: .now(), repeating: interval, leeway: .milliseconds(2))
   |                                        `- error: cannot infer contextual base in reference to member 'now'
67 |             timer?.setEventHandler { [weak self] in
68 |                 self?.update()
/host/spi-builder-workspace/Sources/TempoTypes/TimerTempo.swift:66:77: error: cannot infer contextual base in reference to member 'milliseconds'
64 |         if let interval {
65 |             timer = DispatchSource.makeTimerSource(queue: DispatchQueue.main)
66 |             timer?.schedule(deadline: .now(), repeating: interval, leeway: .milliseconds(2))
   |                                                                             `- error: cannot infer contextual base in reference to member 'milliseconds'
67 |             timer?.setEventHandler { [weak self] in
68 |                 self?.update()
[7/52] Compiling MotionMachine MoveableState.swift
/host/spi-builder-workspace/Sources/TempoTypes/TimerTempo.swift:28:23: error: cannot find type 'DispatchSourceTimer' in scope
26 |      *  - warning: Do not call the `cancel()` method on this object, as its state is handled by TimerTempo directly.
27 |      */
28 |     public var timer: DispatchSourceTimer?
   |                       `- error: cannot find type 'DispatchSourceTimer' in scope
29 |
30 |     public weak var delegate: TempoDelegate?
/host/spi-builder-workspace/Sources/TempoTypes/TimerTempo.swift:65:21: error: cannot find 'DispatchSource' in scope
63 |     private init(interval: TimeInterval?) {
64 |         if let interval {
65 |             timer = DispatchSource.makeTimerSource(queue: DispatchQueue.main)
   |                     `- error: cannot find 'DispatchSource' in scope
66 |             timer?.schedule(deadline: .now(), repeating: interval, leeway: .milliseconds(2))
67 |             timer?.setEventHandler { [weak self] in
/host/spi-builder-workspace/Sources/TempoTypes/TimerTempo.swift:65:59: error: cannot find 'DispatchQueue' in scope
63 |     private init(interval: TimeInterval?) {
64 |         if let interval {
65 |             timer = DispatchSource.makeTimerSource(queue: DispatchQueue.main)
   |                                                           `- error: cannot find 'DispatchQueue' in scope
66 |             timer?.schedule(deadline: .now(), repeating: interval, leeway: .milliseconds(2))
67 |             timer?.setEventHandler { [weak self] in
/host/spi-builder-workspace/Sources/TempoTypes/TimerTempo.swift:66:40: error: cannot infer contextual base in reference to member 'now'
64 |         if let interval {
65 |             timer = DispatchSource.makeTimerSource(queue: DispatchQueue.main)
66 |             timer?.schedule(deadline: .now(), repeating: interval, leeway: .milliseconds(2))
   |                                        `- error: cannot infer contextual base in reference to member 'now'
67 |             timer?.setEventHandler { [weak self] in
68 |                 self?.update()
/host/spi-builder-workspace/Sources/TempoTypes/TimerTempo.swift:66:77: error: cannot infer contextual base in reference to member 'milliseconds'
64 |         if let interval {
65 |             timer = DispatchSource.makeTimerSource(queue: DispatchQueue.main)
66 |             timer?.schedule(deadline: .now(), repeating: interval, leeway: .milliseconds(2))
   |                                                                             `- error: cannot infer contextual base in reference to member 'milliseconds'
67 |             timer?.setEventHandler { [weak self] in
68 |                 self?.update()
[8/52] Compiling MotionMachine MoveableStatus.swift
/host/spi-builder-workspace/Sources/TempoTypes/TimerTempo.swift:28:23: error: cannot find type 'DispatchSourceTimer' in scope
26 |      *  - warning: Do not call the `cancel()` method on this object, as its state is handled by TimerTempo directly.
27 |      */
28 |     public var timer: DispatchSourceTimer?
   |                       `- error: cannot find type 'DispatchSourceTimer' in scope
29 |
30 |     public weak var delegate: TempoDelegate?
/host/spi-builder-workspace/Sources/TempoTypes/TimerTempo.swift:65:21: error: cannot find 'DispatchSource' in scope
63 |     private init(interval: TimeInterval?) {
64 |         if let interval {
65 |             timer = DispatchSource.makeTimerSource(queue: DispatchQueue.main)
   |                     `- error: cannot find 'DispatchSource' in scope
66 |             timer?.schedule(deadline: .now(), repeating: interval, leeway: .milliseconds(2))
67 |             timer?.setEventHandler { [weak self] in
/host/spi-builder-workspace/Sources/TempoTypes/TimerTempo.swift:65:59: error: cannot find 'DispatchQueue' in scope
63 |     private init(interval: TimeInterval?) {
64 |         if let interval {
65 |             timer = DispatchSource.makeTimerSource(queue: DispatchQueue.main)
   |                                                           `- error: cannot find 'DispatchQueue' in scope
66 |             timer?.schedule(deadline: .now(), repeating: interval, leeway: .milliseconds(2))
67 |             timer?.setEventHandler { [weak self] in
/host/spi-builder-workspace/Sources/TempoTypes/TimerTempo.swift:66:40: error: cannot infer contextual base in reference to member 'now'
64 |         if let interval {
65 |             timer = DispatchSource.makeTimerSource(queue: DispatchQueue.main)
66 |             timer?.schedule(deadline: .now(), repeating: interval, leeway: .milliseconds(2))
   |                                        `- error: cannot infer contextual base in reference to member 'now'
67 |             timer?.setEventHandler { [weak self] in
68 |                 self?.update()
/host/spi-builder-workspace/Sources/TempoTypes/TimerTempo.swift:66:77: error: cannot infer contextual base in reference to member 'milliseconds'
64 |         if let interval {
65 |             timer = DispatchSource.makeTimerSource(queue: DispatchQueue.main)
66 |             timer?.schedule(deadline: .now(), repeating: interval, leeway: .milliseconds(2))
   |                                                                             `- error: cannot infer contextual base in reference to member 'milliseconds'
67 |             timer?.setEventHandler { [weak self] in
68 |                 self?.update()
[9/52] Compiling MotionMachine CGColorAssistant.swift
/host/spi-builder-workspace/Sources/TempoTypes/TimerTempo.swift:28:23: error: cannot find type 'DispatchSourceTimer' in scope
26 |      *  - warning: Do not call the `cancel()` method on this object, as its state is handled by TimerTempo directly.
27 |      */
28 |     public var timer: DispatchSourceTimer?
   |                       `- error: cannot find type 'DispatchSourceTimer' in scope
29 |
30 |     public weak var delegate: TempoDelegate?
/host/spi-builder-workspace/Sources/TempoTypes/TimerTempo.swift:65:21: error: cannot find 'DispatchSource' in scope
63 |     private init(interval: TimeInterval?) {
64 |         if let interval {
65 |             timer = DispatchSource.makeTimerSource(queue: DispatchQueue.main)
   |                     `- error: cannot find 'DispatchSource' in scope
66 |             timer?.schedule(deadline: .now(), repeating: interval, leeway: .milliseconds(2))
67 |             timer?.setEventHandler { [weak self] in
/host/spi-builder-workspace/Sources/TempoTypes/TimerTempo.swift:65:59: error: cannot find 'DispatchQueue' in scope
63 |     private init(interval: TimeInterval?) {
64 |         if let interval {
65 |             timer = DispatchSource.makeTimerSource(queue: DispatchQueue.main)
   |                                                           `- error: cannot find 'DispatchQueue' in scope
66 |             timer?.schedule(deadline: .now(), repeating: interval, leeway: .milliseconds(2))
67 |             timer?.setEventHandler { [weak self] in
/host/spi-builder-workspace/Sources/TempoTypes/TimerTempo.swift:66:40: error: cannot infer contextual base in reference to member 'now'
64 |         if let interval {
65 |             timer = DispatchSource.makeTimerSource(queue: DispatchQueue.main)
66 |             timer?.schedule(deadline: .now(), repeating: interval, leeway: .milliseconds(2))
   |                                        `- error: cannot infer contextual base in reference to member 'now'
67 |             timer?.setEventHandler { [weak self] in
68 |                 self?.update()
/host/spi-builder-workspace/Sources/TempoTypes/TimerTempo.swift:66:77: error: cannot infer contextual base in reference to member 'milliseconds'
64 |         if let interval {
65 |             timer = DispatchSource.makeTimerSource(queue: DispatchQueue.main)
66 |             timer?.schedule(deadline: .now(), repeating: interval, leeway: .milliseconds(2))
   |                                                                             `- error: cannot infer contextual base in reference to member 'milliseconds'
67 |             timer?.setEventHandler { [weak self] in
68 |                 self?.update()
[10/52] Compiling MotionMachine TempoDelegate.swift
/host/spi-builder-workspace/Sources/TempoTypes/TimerTempo.swift:28:23: error: cannot find type 'DispatchSourceTimer' in scope
26 |      *  - warning: Do not call the `cancel()` method on this object, as its state is handled by TimerTempo directly.
27 |      */
28 |     public var timer: DispatchSourceTimer?
   |                       `- error: cannot find type 'DispatchSourceTimer' in scope
29 |
30 |     public weak var delegate: TempoDelegate?
[11/52] Compiling MotionMachine TempoDriven.swift
/host/spi-builder-workspace/Sources/TempoTypes/TimerTempo.swift:28:23: error: cannot find type 'DispatchSourceTimer' in scope
26 |      *  - warning: Do not call the `cancel()` method on this object, as its state is handled by TimerTempo directly.
27 |      */
28 |     public var timer: DispatchSourceTimer?
   |                       `- error: cannot find type 'DispatchSourceTimer' in scope
29 |
30 |     public weak var delegate: TempoDelegate?
[12/52] Compiling MotionMachine TempoProviding.swift
/host/spi-builder-workspace/Sources/TempoTypes/TimerTempo.swift:28:23: error: cannot find type 'DispatchSourceTimer' in scope
26 |      *  - warning: Do not call the `cancel()` method on this object, as its state is handled by TimerTempo directly.
27 |      */
28 |     public var timer: DispatchSourceTimer?
   |                       `- error: cannot find type 'DispatchSourceTimer' in scope
29 |
30 |     public weak var delegate: TempoDelegate?
[13/52] Compiling MotionMachine ValueAssistant.swift
/host/spi-builder-workspace/Sources/TempoTypes/TimerTempo.swift:28:23: error: cannot find type 'DispatchSourceTimer' in scope
26 |      *  - warning: Do not call the `cancel()` method on this object, as its state is handled by TimerTempo directly.
27 |      */
28 |     public var timer: DispatchSourceTimer?
   |                       `- error: cannot find type 'DispatchSourceTimer' in scope
29 |
30 |     public weak var delegate: TempoDelegate?
[14/52] Compiling MotionMachine CATempo.swift
/host/spi-builder-workspace/Sources/TempoTypes/TimerTempo.swift:28:23: error: cannot find type 'DispatchSourceTimer' in scope
26 |      *  - warning: Do not call the `cancel()` method on this object, as its state is handled by TimerTempo directly.
27 |      */
28 |     public var timer: DispatchSourceTimer?
   |                       `- error: cannot find type 'DispatchSourceTimer' in scope
29 |
30 |     public weak var delegate: TempoDelegate?
[15/52] Compiling MotionMachine DisplayLinkTempo.swift
/host/spi-builder-workspace/Sources/TempoTypes/TimerTempo.swift:28:23: error: cannot find type 'DispatchSourceTimer' in scope
26 |      *  - warning: Do not call the `cancel()` method on this object, as its state is handled by TimerTempo directly.
27 |      */
28 |     public var timer: DispatchSourceTimer?
   |                       `- error: cannot find type 'DispatchSourceTimer' in scope
29 |
30 |     public weak var delegate: TempoDelegate?
[16/52] Compiling MotionMachine MacDisplayLinkTempo.swift
/host/spi-builder-workspace/Sources/TempoTypes/TimerTempo.swift:28:23: error: cannot find type 'DispatchSourceTimer' in scope
26 |      *  - warning: Do not call the `cancel()` method on this object, as its state is handled by TimerTempo directly.
27 |      */
28 |     public var timer: DispatchSourceTimer?
   |                       `- error: cannot find type 'DispatchSourceTimer' in scope
29 |
30 |     public weak var delegate: TempoDelegate?
[17/59] Compiling MotionMachine PathElement.swift
/host/spi-builder-workspace/Sources/PhysicsMotion.swift:491:31: error: cannot find type 'DispatchSourceTimer' in scope
 489 |
 490 |     /// A `DispatchSourceTimer` which calls the physics update calculation at fixed rate, separate from display rate
 491 |     private var physicsTimer: DispatchSourceTimer?
     |                               `- error: cannot find type 'DispatchSourceTimer' in scope
 492 |
 493 |
/host/spi-builder-workspace/Sources/PhysicsMotion.swift:748:24: error: cannot find 'DispatchSource' in scope
 746 |         }
 747 |
 748 |         physicsTimer = DispatchSource.makeTimerSource(queue: DispatchQueue.main)
     |                        `- error: cannot find 'DispatchSource' in scope
 749 |         physicsTimer?.schedule(deadline: .now(), repeating: physicsTimerInterval, leeway: .milliseconds(2))
 750 |         physicsTimer?.setEventHandler { [weak self] in
/host/spi-builder-workspace/Sources/PhysicsMotion.swift:748:62: error: cannot find 'DispatchQueue' in scope
 746 |         }
 747 |
 748 |         physicsTimer = DispatchSource.makeTimerSource(queue: DispatchQueue.main)
     |                                                              `- error: cannot find 'DispatchQueue' in scope
 749 |         physicsTimer?.schedule(deadline: .now(), repeating: physicsTimerInterval, leeway: .milliseconds(2))
 750 |         physicsTimer?.setEventHandler { [weak self] in
/host/spi-builder-workspace/Sources/PhysicsMotion.swift:749:43: error: cannot infer contextual base in reference to member 'now'
 747 |
 748 |         physicsTimer = DispatchSource.makeTimerSource(queue: DispatchQueue.main)
 749 |         physicsTimer?.schedule(deadline: .now(), repeating: physicsTimerInterval, leeway: .milliseconds(2))
     |                                           `- error: cannot infer contextual base in reference to member 'now'
 750 |         physicsTimer?.setEventHandler { [weak self] in
 751 |             self?.updatePhysicsSystem()
/host/spi-builder-workspace/Sources/PhysicsMotion.swift:749:92: error: cannot infer contextual base in reference to member 'milliseconds'
 747 |
 748 |         physicsTimer = DispatchSource.makeTimerSource(queue: DispatchQueue.main)
 749 |         physicsTimer?.schedule(deadline: .now(), repeating: physicsTimerInterval, leeway: .milliseconds(2))
     |                                                                                            `- error: cannot infer contextual base in reference to member 'milliseconds'
 750 |         physicsTimer?.setEventHandler { [weak self] in
 751 |             self?.updatePhysicsSystem()
[18/59] Compiling MotionMachine PathElementType.swift
/host/spi-builder-workspace/Sources/PhysicsMotion.swift:491:31: error: cannot find type 'DispatchSourceTimer' in scope
 489 |
 490 |     /// A `DispatchSourceTimer` which calls the physics update calculation at fixed rate, separate from display rate
 491 |     private var physicsTimer: DispatchSourceTimer?
     |                               `- error: cannot find type 'DispatchSourceTimer' in scope
 492 |
 493 |
/host/spi-builder-workspace/Sources/PhysicsMotion.swift:748:24: error: cannot find 'DispatchSource' in scope
 746 |         }
 747 |
 748 |         physicsTimer = DispatchSource.makeTimerSource(queue: DispatchQueue.main)
     |                        `- error: cannot find 'DispatchSource' in scope
 749 |         physicsTimer?.schedule(deadline: .now(), repeating: physicsTimerInterval, leeway: .milliseconds(2))
 750 |         physicsTimer?.setEventHandler { [weak self] in
/host/spi-builder-workspace/Sources/PhysicsMotion.swift:748:62: error: cannot find 'DispatchQueue' in scope
 746 |         }
 747 |
 748 |         physicsTimer = DispatchSource.makeTimerSource(queue: DispatchQueue.main)
     |                                                              `- error: cannot find 'DispatchQueue' in scope
 749 |         physicsTimer?.schedule(deadline: .now(), repeating: physicsTimerInterval, leeway: .milliseconds(2))
 750 |         physicsTimer?.setEventHandler { [weak self] in
/host/spi-builder-workspace/Sources/PhysicsMotion.swift:749:43: error: cannot infer contextual base in reference to member 'now'
 747 |
 748 |         physicsTimer = DispatchSource.makeTimerSource(queue: DispatchQueue.main)
 749 |         physicsTimer?.schedule(deadline: .now(), repeating: physicsTimerInterval, leeway: .milliseconds(2))
     |                                           `- error: cannot infer contextual base in reference to member 'now'
 750 |         physicsTimer?.setEventHandler { [weak self] in
 751 |             self?.updatePhysicsSystem()
/host/spi-builder-workspace/Sources/PhysicsMotion.swift:749:92: error: cannot infer contextual base in reference to member 'milliseconds'
 747 |
 748 |         physicsTimer = DispatchSource.makeTimerSource(queue: DispatchQueue.main)
 749 |         physicsTimer?.schedule(deadline: .now(), repeating: physicsTimerInterval, leeway: .milliseconds(2))
     |                                                                                            `- error: cannot infer contextual base in reference to member 'milliseconds'
 750 |         physicsTimer?.setEventHandler { [weak self] in
 751 |             self?.updatePhysicsSystem()
[19/59] Compiling MotionMachine PathState+Extensions.swift
/host/spi-builder-workspace/Sources/PhysicsMotion.swift:491:31: error: cannot find type 'DispatchSourceTimer' in scope
 489 |
 490 |     /// A `DispatchSourceTimer` which calls the physics update calculation at fixed rate, separate from display rate
 491 |     private var physicsTimer: DispatchSourceTimer?
     |                               `- error: cannot find type 'DispatchSourceTimer' in scope
 492 |
 493 |
/host/spi-builder-workspace/Sources/PhysicsMotion.swift:748:24: error: cannot find 'DispatchSource' in scope
 746 |         }
 747 |
 748 |         physicsTimer = DispatchSource.makeTimerSource(queue: DispatchQueue.main)
     |                        `- error: cannot find 'DispatchSource' in scope
 749 |         physicsTimer?.schedule(deadline: .now(), repeating: physicsTimerInterval, leeway: .milliseconds(2))
 750 |         physicsTimer?.setEventHandler { [weak self] in
/host/spi-builder-workspace/Sources/PhysicsMotion.swift:748:62: error: cannot find 'DispatchQueue' in scope
 746 |         }
 747 |
 748 |         physicsTimer = DispatchSource.makeTimerSource(queue: DispatchQueue.main)
     |                                                              `- error: cannot find 'DispatchQueue' in scope
 749 |         physicsTimer?.schedule(deadline: .now(), repeating: physicsTimerInterval, leeway: .milliseconds(2))
 750 |         physicsTimer?.setEventHandler { [weak self] in
/host/spi-builder-workspace/Sources/PhysicsMotion.swift:749:43: error: cannot infer contextual base in reference to member 'now'
 747 |
 748 |         physicsTimer = DispatchSource.makeTimerSource(queue: DispatchQueue.main)
 749 |         physicsTimer?.schedule(deadline: .now(), repeating: physicsTimerInterval, leeway: .milliseconds(2))
     |                                           `- error: cannot infer contextual base in reference to member 'now'
 750 |         physicsTimer?.setEventHandler { [weak self] in
 751 |             self?.updatePhysicsSystem()
/host/spi-builder-workspace/Sources/PhysicsMotion.swift:749:92: error: cannot infer contextual base in reference to member 'milliseconds'
 747 |
 748 |         physicsTimer = DispatchSource.makeTimerSource(queue: DispatchQueue.main)
 749 |         physicsTimer?.schedule(deadline: .now(), repeating: physicsTimerInterval, leeway: .milliseconds(2))
     |                                                                                            `- error: cannot infer contextual base in reference to member 'milliseconds'
 750 |         physicsTimer?.setEventHandler { [weak self] in
 751 |             self?.updatePhysicsSystem()
[20/59] Compiling MotionMachine PathState.swift
/host/spi-builder-workspace/Sources/PhysicsMotion.swift:491:31: error: cannot find type 'DispatchSourceTimer' in scope
 489 |
 490 |     /// A `DispatchSourceTimer` which calls the physics update calculation at fixed rate, separate from display rate
 491 |     private var physicsTimer: DispatchSourceTimer?
     |                               `- error: cannot find type 'DispatchSourceTimer' in scope
 492 |
 493 |
/host/spi-builder-workspace/Sources/PhysicsMotion.swift:748:24: error: cannot find 'DispatchSource' in scope
 746 |         }
 747 |
 748 |         physicsTimer = DispatchSource.makeTimerSource(queue: DispatchQueue.main)
     |                        `- error: cannot find 'DispatchSource' in scope
 749 |         physicsTimer?.schedule(deadline: .now(), repeating: physicsTimerInterval, leeway: .milliseconds(2))
 750 |         physicsTimer?.setEventHandler { [weak self] in
/host/spi-builder-workspace/Sources/PhysicsMotion.swift:748:62: error: cannot find 'DispatchQueue' in scope
 746 |         }
 747 |
 748 |         physicsTimer = DispatchSource.makeTimerSource(queue: DispatchQueue.main)
     |                                                              `- error: cannot find 'DispatchQueue' in scope
 749 |         physicsTimer?.schedule(deadline: .now(), repeating: physicsTimerInterval, leeway: .milliseconds(2))
 750 |         physicsTimer?.setEventHandler { [weak self] in
/host/spi-builder-workspace/Sources/PhysicsMotion.swift:749:43: error: cannot infer contextual base in reference to member 'now'
 747 |
 748 |         physicsTimer = DispatchSource.makeTimerSource(queue: DispatchQueue.main)
 749 |         physicsTimer?.schedule(deadline: .now(), repeating: physicsTimerInterval, leeway: .milliseconds(2))
     |                                           `- error: cannot infer contextual base in reference to member 'now'
 750 |         physicsTimer?.setEventHandler { [weak self] in
 751 |             self?.updatePhysicsSystem()
/host/spi-builder-workspace/Sources/PhysicsMotion.swift:749:92: error: cannot infer contextual base in reference to member 'milliseconds'
 747 |
 748 |         physicsTimer = DispatchSource.makeTimerSource(queue: DispatchQueue.main)
 749 |         physicsTimer?.schedule(deadline: .now(), repeating: physicsTimerInterval, leeway: .milliseconds(2))
     |                                                                                            `- error: cannot infer contextual base in reference to member 'milliseconds'
 750 |         physicsTimer?.setEventHandler { [weak self] in
 751 |             self?.updatePhysicsSystem()
[21/59] Compiling MotionMachine PhysicsConfiguration.swift
/host/spi-builder-workspace/Sources/PhysicsMotion.swift:491:31: error: cannot find type 'DispatchSourceTimer' in scope
 489 |
 490 |     /// A `DispatchSourceTimer` which calls the physics update calculation at fixed rate, separate from display rate
 491 |     private var physicsTimer: DispatchSourceTimer?
     |                               `- error: cannot find type 'DispatchSourceTimer' in scope
 492 |
 493 |
/host/spi-builder-workspace/Sources/PhysicsMotion.swift:748:24: error: cannot find 'DispatchSource' in scope
 746 |         }
 747 |
 748 |         physicsTimer = DispatchSource.makeTimerSource(queue: DispatchQueue.main)
     |                        `- error: cannot find 'DispatchSource' in scope
 749 |         physicsTimer?.schedule(deadline: .now(), repeating: physicsTimerInterval, leeway: .milliseconds(2))
 750 |         physicsTimer?.setEventHandler { [weak self] in
/host/spi-builder-workspace/Sources/PhysicsMotion.swift:748:62: error: cannot find 'DispatchQueue' in scope
 746 |         }
 747 |
 748 |         physicsTimer = DispatchSource.makeTimerSource(queue: DispatchQueue.main)
     |                                                              `- error: cannot find 'DispatchQueue' in scope
 749 |         physicsTimer?.schedule(deadline: .now(), repeating: physicsTimerInterval, leeway: .milliseconds(2))
 750 |         physicsTimer?.setEventHandler { [weak self] in
/host/spi-builder-workspace/Sources/PhysicsMotion.swift:749:43: error: cannot infer contextual base in reference to member 'now'
 747 |
 748 |         physicsTimer = DispatchSource.makeTimerSource(queue: DispatchQueue.main)
 749 |         physicsTimer?.schedule(deadline: .now(), repeating: physicsTimerInterval, leeway: .milliseconds(2))
     |                                           `- error: cannot infer contextual base in reference to member 'now'
 750 |         physicsTimer?.setEventHandler { [weak self] in
 751 |             self?.updatePhysicsSystem()
/host/spi-builder-workspace/Sources/PhysicsMotion.swift:749:92: error: cannot infer contextual base in reference to member 'milliseconds'
 747 |
 748 |         physicsTimer = DispatchSource.makeTimerSource(queue: DispatchQueue.main)
 749 |         physicsTimer?.schedule(deadline: .now(), repeating: physicsTimerInterval, leeway: .milliseconds(2))
     |                                                                                            `- error: cannot infer contextual base in reference to member 'milliseconds'
 750 |         physicsTimer?.setEventHandler { [weak self] in
 751 |             self?.updatePhysicsSystem()
[22/59] Compiling MotionMachine PhysicsMotion.swift
/host/spi-builder-workspace/Sources/PhysicsMotion.swift:491:31: error: cannot find type 'DispatchSourceTimer' in scope
 489 |
 490 |     /// A `DispatchSourceTimer` which calls the physics update calculation at fixed rate, separate from display rate
 491 |     private var physicsTimer: DispatchSourceTimer?
     |                               `- error: cannot find type 'DispatchSourceTimer' in scope
 492 |
 493 |
/host/spi-builder-workspace/Sources/PhysicsMotion.swift:748:24: error: cannot find 'DispatchSource' in scope
 746 |         }
 747 |
 748 |         physicsTimer = DispatchSource.makeTimerSource(queue: DispatchQueue.main)
     |                        `- error: cannot find 'DispatchSource' in scope
 749 |         physicsTimer?.schedule(deadline: .now(), repeating: physicsTimerInterval, leeway: .milliseconds(2))
 750 |         physicsTimer?.setEventHandler { [weak self] in
/host/spi-builder-workspace/Sources/PhysicsMotion.swift:748:62: error: cannot find 'DispatchQueue' in scope
 746 |         }
 747 |
 748 |         physicsTimer = DispatchSource.makeTimerSource(queue: DispatchQueue.main)
     |                                                              `- error: cannot find 'DispatchQueue' in scope
 749 |         physicsTimer?.schedule(deadline: .now(), repeating: physicsTimerInterval, leeway: .milliseconds(2))
 750 |         physicsTimer?.setEventHandler { [weak self] in
/host/spi-builder-workspace/Sources/PhysicsMotion.swift:749:43: error: cannot infer contextual base in reference to member 'now'
 747 |
 748 |         physicsTimer = DispatchSource.makeTimerSource(queue: DispatchQueue.main)
 749 |         physicsTimer?.schedule(deadline: .now(), repeating: physicsTimerInterval, leeway: .milliseconds(2))
     |                                           `- error: cannot infer contextual base in reference to member 'now'
 750 |         physicsTimer?.setEventHandler { [weak self] in
 751 |             self?.updatePhysicsSystem()
/host/spi-builder-workspace/Sources/PhysicsMotion.swift:749:92: error: cannot infer contextual base in reference to member 'milliseconds'
 747 |
 748 |         physicsTimer = DispatchSource.makeTimerSource(queue: DispatchQueue.main)
 749 |         physicsTimer?.schedule(deadline: .now(), repeating: physicsTimerInterval, leeway: .milliseconds(2))
     |                                                                                            `- error: cannot infer contextual base in reference to member 'milliseconds'
 750 |         physicsTimer?.setEventHandler { [weak self] in
 751 |             self?.updatePhysicsSystem()
[23/59] Compiling MotionMachine PhysicsSystem.swift
/host/spi-builder-workspace/Sources/PhysicsMotion.swift:491:31: error: cannot find type 'DispatchSourceTimer' in scope
 489 |
 490 |     /// A `DispatchSourceTimer` which calls the physics update calculation at fixed rate, separate from display rate
 491 |     private var physicsTimer: DispatchSourceTimer?
     |                               `- error: cannot find type 'DispatchSourceTimer' in scope
 492 |
 493 |
/host/spi-builder-workspace/Sources/PhysicsMotion.swift:748:24: error: cannot find 'DispatchSource' in scope
 746 |         }
 747 |
 748 |         physicsTimer = DispatchSource.makeTimerSource(queue: DispatchQueue.main)
     |                        `- error: cannot find 'DispatchSource' in scope
 749 |         physicsTimer?.schedule(deadline: .now(), repeating: physicsTimerInterval, leeway: .milliseconds(2))
 750 |         physicsTimer?.setEventHandler { [weak self] in
/host/spi-builder-workspace/Sources/PhysicsMotion.swift:748:62: error: cannot find 'DispatchQueue' in scope
 746 |         }
 747 |
 748 |         physicsTimer = DispatchSource.makeTimerSource(queue: DispatchQueue.main)
     |                                                              `- error: cannot find 'DispatchQueue' in scope
 749 |         physicsTimer?.schedule(deadline: .now(), repeating: physicsTimerInterval, leeway: .milliseconds(2))
 750 |         physicsTimer?.setEventHandler { [weak self] in
/host/spi-builder-workspace/Sources/PhysicsMotion.swift:749:43: error: cannot infer contextual base in reference to member 'now'
 747 |
 748 |         physicsTimer = DispatchSource.makeTimerSource(queue: DispatchQueue.main)
 749 |         physicsTimer?.schedule(deadline: .now(), repeating: physicsTimerInterval, leeway: .milliseconds(2))
     |                                           `- error: cannot infer contextual base in reference to member 'now'
 750 |         physicsTimer?.setEventHandler { [weak self] in
 751 |             self?.updatePhysicsSystem()
/host/spi-builder-workspace/Sources/PhysicsMotion.swift:749:92: error: cannot infer contextual base in reference to member 'milliseconds'
 747 |
 748 |         physicsTimer = DispatchSource.makeTimerSource(queue: DispatchQueue.main)
 749 |         physicsTimer?.schedule(deadline: .now(), repeating: physicsTimerInterval, leeway: .milliseconds(2))
     |                                                                                            `- error: cannot infer contextual base in reference to member 'milliseconds'
 750 |         physicsTimer?.setEventHandler { [weak self] in
 751 |             self?.updatePhysicsSystem()
[24/59] Compiling MotionMachine Motion.swift
/host/spi-builder-workspace/Sources/MotionSequence.swift:632:22: warning: weak variable 'weak_self' was never mutated; consider changing to 'let' constant [#WeakMutability]
 630 |
 631 |             // call cycle closure
 632 |             weak var weak_self = self
     |                      `- warning: weak variable 'weak_self' was never mutated; consider changing to 'let' constant [#WeakMutability]
 633 |             _cycleRepeated?(weak_self!)
 634 |
/host/spi-builder-workspace/Sources/MotionSequence.swift:684:22: warning: weak variable 'weak_self' was never mutated; consider changing to 'let' constant [#WeakMutability]
 682 |
 683 |             // call step closure
 684 |             weak var weak_self = self
     |                      `- warning: weak variable 'weak_self' was never mutated; consider changing to 'let' constant [#WeakMutability]
 685 |             _stepCompleted?(weak_self!)
 686 |
[#WeakMutability]: <https://docs.swift.org/compiler/documentation/diagnostics/weak-mutability>
[25/59] Compiling MotionMachine MotionGroup.swift
/host/spi-builder-workspace/Sources/MotionSequence.swift:632:22: warning: weak variable 'weak_self' was never mutated; consider changing to 'let' constant [#WeakMutability]
 630 |
 631 |             // call cycle closure
 632 |             weak var weak_self = self
     |                      `- warning: weak variable 'weak_self' was never mutated; consider changing to 'let' constant [#WeakMutability]
 633 |             _cycleRepeated?(weak_self!)
 634 |
/host/spi-builder-workspace/Sources/MotionSequence.swift:684:22: warning: weak variable 'weak_self' was never mutated; consider changing to 'let' constant [#WeakMutability]
 682 |
 683 |             // call step closure
 684 |             weak var weak_self = self
     |                      `- warning: weak variable 'weak_self' was never mutated; consider changing to 'let' constant [#WeakMutability]
 685 |             _stepCompleted?(weak_self!)
 686 |
[#WeakMutability]: <https://docs.swift.org/compiler/documentation/diagnostics/weak-mutability>
[26/59] Compiling MotionMachine MotionSequence.swift
/host/spi-builder-workspace/Sources/MotionSequence.swift:632:22: warning: weak variable 'weak_self' was never mutated; consider changing to 'let' constant [#WeakMutability]
 630 |
 631 |             // call cycle closure
 632 |             weak var weak_self = self
     |                      `- warning: weak variable 'weak_self' was never mutated; consider changing to 'let' constant [#WeakMutability]
 633 |             _cycleRepeated?(weak_self!)
 634 |
/host/spi-builder-workspace/Sources/MotionSequence.swift:684:22: warning: weak variable 'weak_self' was never mutated; consider changing to 'let' constant [#WeakMutability]
 682 |
 683 |             // call step closure
 684 |             weak var weak_self = self
     |                      `- warning: weak variable 'weak_self' was never mutated; consider changing to 'let' constant [#WeakMutability]
 685 |             _stepCompleted?(weak_self!)
 686 |
[#WeakMutability]: <https://docs.swift.org/compiler/documentation/diagnostics/weak-mutability>
[27/59] Compiling MotionMachine MotionState.swift
/host/spi-builder-workspace/Sources/MotionSequence.swift:632:22: warning: weak variable 'weak_self' was never mutated; consider changing to 'let' constant [#WeakMutability]
 630 |
 631 |             // call cycle closure
 632 |             weak var weak_self = self
     |                      `- warning: weak variable 'weak_self' was never mutated; consider changing to 'let' constant [#WeakMutability]
 633 |             _cycleRepeated?(weak_self!)
 634 |
/host/spi-builder-workspace/Sources/MotionSequence.swift:684:22: warning: weak variable 'weak_self' was never mutated; consider changing to 'let' constant [#WeakMutability]
 682 |
 683 |             // call step closure
 684 |             weak var weak_self = self
     |                      `- warning: weak variable 'weak_self' was never mutated; consider changing to 'let' constant [#WeakMutability]
 685 |             _stepCompleted?(weak_self!)
 686 |
[#WeakMutability]: <https://docs.swift.org/compiler/documentation/diagnostics/weak-mutability>
[28/59] Compiling MotionMachine PathMotion.swift
/host/spi-builder-workspace/Sources/MotionSequence.swift:632:22: warning: weak variable 'weak_self' was never mutated; consider changing to 'let' constant [#WeakMutability]
 630 |
 631 |             // call cycle closure
 632 |             weak var weak_self = self
     |                      `- warning: weak variable 'weak_self' was never mutated; consider changing to 'let' constant [#WeakMutability]
 633 |             _cycleRepeated?(weak_self!)
 634 |
/host/spi-builder-workspace/Sources/MotionSequence.swift:684:22: warning: weak variable 'weak_self' was never mutated; consider changing to 'let' constant [#WeakMutability]
 682 |
 683 |             // call step closure
 684 |             weak var weak_self = self
     |                      `- warning: weak variable 'weak_self' was never mutated; consider changing to 'let' constant [#WeakMutability]
 685 |             _stepCompleted?(weak_self!)
 686 |
[#WeakMutability]: <https://docs.swift.org/compiler/documentation/diagnostics/weak-mutability>
[29/59] Compiling MotionMachine PathPhysicsMotion.swift
/host/spi-builder-workspace/Sources/MotionSequence.swift:632:22: warning: weak variable 'weak_self' was never mutated; consider changing to 'let' constant [#WeakMutability]
 630 |
 631 |             // call cycle closure
 632 |             weak var weak_self = self
     |                      `- warning: weak variable 'weak_self' was never mutated; consider changing to 'let' constant [#WeakMutability]
 633 |             _cycleRepeated?(weak_self!)
 634 |
/host/spi-builder-workspace/Sources/MotionSequence.swift:684:22: warning: weak variable 'weak_self' was never mutated; consider changing to 'let' constant [#WeakMutability]
 682 |
 683 |             // call step closure
 684 |             weak var weak_self = self
     |                      `- warning: weak variable 'weak_self' was never mutated; consider changing to 'let' constant [#WeakMutability]
 685 |             _stepCompleted?(weak_self!)
 686 |
[#WeakMutability]: <https://docs.swift.org/compiler/documentation/diagnostics/weak-mutability>
[30/59] Compiling MotionMachine PathEdgeBehavior.swift
/host/spi-builder-workspace/Sources/MotionSequence.swift:632:22: warning: weak variable 'weak_self' was never mutated; consider changing to 'let' constant [#WeakMutability]
 630 |
 631 |             // call cycle closure
 632 |             weak var weak_self = self
     |                      `- warning: weak variable 'weak_self' was never mutated; consider changing to 'let' constant [#WeakMutability]
 633 |             _cycleRepeated?(weak_self!)
 634 |
/host/spi-builder-workspace/Sources/MotionSequence.swift:684:22: warning: weak variable 'weak_self' was never mutated; consider changing to 'let' constant [#WeakMutability]
 682 |
 683 |             // call step closure
 684 |             weak var weak_self = self
     |                      `- warning: weak variable 'weak_self' was never mutated; consider changing to 'let' constant [#WeakMutability]
 685 |             _stepCompleted?(weak_self!)
 686 |
[#WeakMutability]: <https://docs.swift.org/compiler/documentation/diagnostics/weak-mutability>
[31/59] Compiling MotionMachine EasingBack.swift
[32/59] Compiling MotionMachine EasingBounce.swift
[33/59] Compiling MotionMachine EasingCircular.swift
[34/59] Compiling MotionMachine EasingCubic.swift
[35/59] Compiling MotionMachine EasingElastic.swift
[36/59] Compiling MotionMachine EasingExpo.swift
[37/59] Compiling MotionMachine EasingLinear.swift
error: emit-module command failed with exit code 1 (use -v to see invocation)
[38/59] Emitting module MotionMachine
/host/spi-builder-workspace/Sources/PhysicsMotion.swift:491:31: error: cannot find type 'DispatchSourceTimer' in scope
 489 |
 490 |     /// A `DispatchSourceTimer` which calls the physics update calculation at fixed rate, separate from display rate
 491 |     private var physicsTimer: DispatchSourceTimer?
     |                               `- error: cannot find type 'DispatchSourceTimer' in scope
 492 |
 493 |
/host/spi-builder-workspace/Sources/TempoTypes/TimerTempo.swift:28:23: error: cannot find type 'DispatchSourceTimer' in scope
26 |      *  - warning: Do not call the `cancel()` method on this object, as its state is handled by TimerTempo directly.
27 |      */
28 |     public var timer: DispatchSourceTimer?
   |                       `- error: cannot find type 'DispatchSourceTimer' in scope
29 |
30 |     public weak var delegate: TempoDelegate?
[39/59] Compiling MotionMachine PropertyData.swift
[40/59] Compiling MotionMachine Additive.swift
[41/59] Compiling MotionMachine MotionUpdateDelegate.swift
[42/59] Compiling MotionMachine Moveable.swift
[43/59] Compiling MotionMachine MoveableCollection.swift
[44/59] Compiling MotionMachine PropertyCollection.swift
[45/59] Compiling MotionMachine PropertyDataDelegate.swift
[46/59] Compiling MotionMachine EasingQuadratic.swift
[47/59] Compiling MotionMachine EasingQuartic.swift
[48/59] Compiling MotionMachine EasingQuintic.swift
[49/59] Compiling MotionMachine EasingSine.swift
[50/59] Compiling MotionMachine MotionMachine.swift
[51/59] Compiling MotionMachine MotionSupport.swift
[52/59] Compiling MotionMachine WeakAdditiveContainer.swift
[53/59] Compiling MotionMachine CGStructAssistant.swift
[54/59] Compiling MotionMachine CIColorAssistant.swift
[55/59] Compiling MotionMachine NumericAssistant.swift
[56/59] Compiling MotionMachine SIMDAssistant.swift
[57/59] Compiling MotionMachine UIColorAssistant.swift
[58/59] Compiling MotionMachine UIKitStructAssistant.swift
[59/59] Compiling MotionMachine ValueAssistantGroup.swift
BUILD FAILURE 6.3 wasm