The Swift Package Index logo.Swift Package Index

Build Information

Successful build of Mobius, reference 0.7.0 (2ce2f0), with Swift 6.1 for macOS (SPM) on 21 Aug 2025 20:26:07 UTC.

Swift 6 data race errors: 3

Build Command

env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures

Build Log

========================================
RunAll
========================================
Builder version: 4.67.1
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/spotify/Mobius.swift.git
Reference: 0.7.0
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/spotify/Mobius.swift
 * tag               0.7.0      -> FETCH_HEAD
HEAD is now at 2ce2f06 Merge pull request #216 from spotify/tools-version
Cloned https://github.com/spotify/Mobius.swift.git
Revision (git rev-parse @):
2ce2f0641cb19194405d553ca8b54196f01d8969
SUCCESS checkout https://github.com/spotify/Mobius.swift.git at 0.7.0
Fetching https://github.com/Quick/Quick
Fetching https://github.com/apple/swift-numerics.git from cache
Fetching https://github.com/mattgallagher/CwlPreconditionTesting.git
Fetching https://github.com/Quick/Nimble
Fetching https://github.com/pointfreeco/swift-case-paths from cache
Fetching https://github.com/mattgallagher/CwlCatchException.git
Fetching https://github.com/apple/swift-argument-parser.git from cache
[1/455] Fetching cwlcatchexception
[41/1712] Fetching cwlcatchexception, cwlpreconditiontesting
[1600/16553] Fetching cwlcatchexception, cwlpreconditiontesting, quick
Fetched https://github.com/apple/swift-numerics.git from cache (0.85s)
Fetching https://github.com/apple/swift-algorithms.git from cache
Fetched https://github.com/mattgallagher/CwlPreconditionTesting.git from cache (0.93s)
[1049/15296] Fetching cwlcatchexception, quick
[1050/34893] Fetching cwlcatchexception, quick, nimble
Fetched https://github.com/Quick/Quick from cache (1.44s)
[2611/20052] Fetching cwlcatchexception, nimble
Fetched https://github.com/apple/swift-algorithms.git from cache (0.70s)
Fetched https://github.com/mattgallagher/CwlCatchException.git from cache (1.92s)
Fetched https://github.com/Quick/Nimble from cache (1.92s)
Fetched https://github.com/pointfreeco/swift-case-paths from cache (1.94s)
Computing version for https://github.com/Quick/Quick
Fetched https://github.com/apple/swift-argument-parser.git from cache (1.94s)
Computed https://github.com/Quick/Quick at 7.6.2 (2.51s)
Computing version for https://github.com/Quick/Nimble
Computed https://github.com/Quick/Nimble at 10.0.0 (0.61s)
Computing version for https://github.com/pointfreeco/swift-case-paths
Computed https://github.com/pointfreeco/swift-case-paths at 0.10.1 (0.61s)
Computing version for https://github.com/apple/swift-algorithms.git
Computed https://github.com/apple/swift-algorithms.git at 1.2.1 (0.57s)
Computing version for https://github.com/apple/swift-argument-parser.git
Computed https://github.com/apple/swift-argument-parser.git at 1.6.1 (0.49s)
Computing version for https://github.com/mattgallagher/CwlPreconditionTesting.git
Computed https://github.com/mattgallagher/CwlPreconditionTesting.git at 2.1.0 (0.58s)
Computing version for https://github.com/apple/swift-numerics.git
Computed https://github.com/apple/swift-numerics.git at 1.0.3 (0.60s)
Computing version for https://github.com/mattgallagher/CwlCatchException.git
Computed https://github.com/mattgallagher/CwlCatchException.git at 2.0.0 (0.57s)
Creating working copy for https://github.com/mattgallagher/CwlPreconditionTesting.git
Working copy of https://github.com/mattgallagher/CwlPreconditionTesting.git resolved at 2.1.0
Creating working copy for https://github.com/apple/swift-algorithms.git
Working copy of https://github.com/apple/swift-algorithms.git resolved at 1.2.1
Creating working copy for https://github.com/mattgallagher/CwlCatchException.git
Working copy of https://github.com/mattgallagher/CwlCatchException.git resolved at 2.0.0
Creating working copy for https://github.com/pointfreeco/swift-case-paths
Working copy of https://github.com/pointfreeco/swift-case-paths resolved at 0.10.1
Creating working copy for https://github.com/Quick/Quick
Working copy of https://github.com/Quick/Quick resolved at 7.6.2
Creating working copy for https://github.com/apple/swift-argument-parser.git
Working copy of https://github.com/apple/swift-argument-parser.git resolved at 1.6.1
Creating working copy for https://github.com/Quick/Nimble
Working copy of https://github.com/Quick/Nimble resolved at 10.0.0
Creating working copy for https://github.com/apple/swift-numerics.git
Working copy of https://github.com/apple/swift-numerics.git resolved at 1.0.3
========================================
ResolveProductDependencies
========================================
Resolving dependencies ...
{
  "identity": ".resolve-product-dependencies",
  "name": "resolve-dependencies",
  "url": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
  "version": "unspecified",
  "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
  "dependencies": [
    {
      "identity": "mobius.swift",
      "name": "Mobius",
      "url": "https://github.com/spotify/Mobius.swift.git",
      "version": "unspecified",
      "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/Mobius.swift",
      "dependencies": [
        {
          "identity": "swift-case-paths",
          "name": "swift-case-paths",
          "url": "https://github.com/pointfreeco/swift-case-paths",
          "version": "0.10.1",
          "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/swift-case-paths",
          "dependencies": [
          ]
        },
        {
          "identity": "nimble",
          "name": "Nimble",
          "url": "https://github.com/Quick/Nimble",
          "version": "10.0.0",
          "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/Nimble",
          "dependencies": [
            {
              "identity": "cwlpreconditiontesting",
              "name": "CwlPreconditionTesting",
              "url": "https://github.com/mattgallagher/CwlPreconditionTesting.git",
              "version": "2.2.2",
              "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/CwlPreconditionTesting",
              "dependencies": [
                {
                  "identity": "cwlcatchexception",
                  "name": "CwlCatchException",
                  "url": "https://github.com/mattgallagher/CwlCatchException.git",
                  "version": "2.2.1",
                  "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/CwlCatchException",
                  "dependencies": [
                  ]
                }
              ]
            }
          ]
        }
      ]
    }
  ]
}
Fetching https://github.com/spotify/Mobius.swift.git
[1/5119] Fetching mobius.swift
Fetched https://github.com/spotify/Mobius.swift.git from cache (1.03s)
Fetching https://github.com/Quick/Nimble from cache
Fetching https://github.com/pointfreeco/swift-case-paths from cache
Fetched https://github.com/Quick/Nimble from cache (0.56s)
Fetched https://github.com/pointfreeco/swift-case-paths from cache (0.57s)
Computing version for https://github.com/Quick/Nimble
Computed https://github.com/Quick/Nimble at 10.0.0 (0.63s)
Fetching https://github.com/mattgallagher/CwlPreconditionTesting.git from cache
Fetched https://github.com/mattgallagher/CwlPreconditionTesting.git from cache (0.46s)
Computing version for https://github.com/pointfreeco/swift-case-paths
Computed https://github.com/pointfreeco/swift-case-paths at 0.10.1 (0.52s)
Computing version for https://github.com/mattgallagher/CwlPreconditionTesting.git
Computed https://github.com/mattgallagher/CwlPreconditionTesting.git at 2.2.2 (0.57s)
Fetching https://github.com/mattgallagher/CwlCatchException.git from cache
Fetched https://github.com/mattgallagher/CwlCatchException.git from cache (0.45s)
Computing version for https://github.com/mattgallagher/CwlCatchException.git
Computed https://github.com/mattgallagher/CwlCatchException.git at 2.2.1 (1.04s)
Creating working copy for https://github.com/mattgallagher/CwlCatchException.git
Working copy of https://github.com/mattgallagher/CwlCatchException.git resolved at 2.2.1
Creating working copy for https://github.com/mattgallagher/CwlPreconditionTesting.git
Working copy of https://github.com/mattgallagher/CwlPreconditionTesting.git resolved at 2.2.2
Creating working copy for https://github.com/pointfreeco/swift-case-paths
Working copy of https://github.com/pointfreeco/swift-case-paths resolved at 0.10.1
Creating working copy for https://github.com/spotify/Mobius.swift.git
Working copy of https://github.com/spotify/Mobius.swift.git resolved at 0.7.0 (2ce2f06)
Creating working copy for https://github.com/Quick/Nimble
Working copy of https://github.com/Quick/Nimble resolved at 10.0.0
warning: '.resolve-product-dependencies': dependency 'mobius.swift' is not used by any target
Found 2 product dependencies
  - swift-case-paths
  - Nimble
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.1
Building package at path:  $PWD
https://github.com/spotify/Mobius.swift.git
https://github.com/spotify/Mobius.swift.git
{
  "dependencies" : [
    {
      "identity" : "swift-case-paths",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "0.10.1",
            "upper_bound" : "0.11.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/pointfreeco/swift-case-paths"
    },
    {
      "identity" : "nimble",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "10.0.0",
            "upper_bound" : "11.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/Quick/Nimble"
    },
    {
      "identity" : "quick",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "7.0.0",
            "upper_bound" : "8.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/Quick/Quick"
    }
  ],
  "manifest_display_name" : "Mobius",
  "name" : "Mobius",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "ios",
      "version" : "10.0"
    },
    {
      "name" : "macos",
      "version" : "10.12"
    },
    {
      "name" : "tvos",
      "version" : "10.0"
    },
    {
      "name" : "watchos",
      "version" : "3.0"
    }
  ],
  "products" : [
    {
      "name" : "MobiusCore",
      "targets" : [
        "MobiusCore"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "MobiusExtras",
      "targets" : [
        "MobiusExtras"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "MobiusNimble",
      "targets" : [
        "MobiusNimble"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "MobiusTest",
      "targets" : [
        "MobiusTest"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "swift_languages_versions" : [
    "5"
  ],
  "targets" : [
    {
      "c99name" : "MobiusThrowableAssertion",
      "module_type" : "ClangTarget",
      "name" : "MobiusThrowableAssertion",
      "path" : "MobiusThrowableAssertion/Source",
      "sources" : [
        "MobiusThrowableAssertion.m"
      ],
      "type" : "library"
    },
    {
      "c99name" : "MobiusTestTests",
      "module_type" : "SwiftTarget",
      "name" : "MobiusTestTests",
      "path" : "MobiusTest/Test",
      "product_dependencies" : [
        "Nimble",
        "Quick"
      ],
      "sources" : [
        "DebugDiffTests.swift",
        "FirstMatchersTests.swift",
        "InitSpecTests.swift",
        "NextMatchersTests.swift",
        "TestUtil.swift",
        "UpdateSpecTests.swift"
      ],
      "target_dependencies" : [
        "MobiusTest"
      ],
      "type" : "test"
    },
    {
      "c99name" : "MobiusTest",
      "module_type" : "SwiftTarget",
      "name" : "MobiusTest",
      "path" : "MobiusTest/Source",
      "product_memberships" : [
        "MobiusNimble",
        "MobiusTest"
      ],
      "sources" : [
        "DebugDiff.swift",
        "FirstMatchers.swift",
        "InitSpec.swift",
        "MatcherUtils.swift",
        "NextMatchers.swift",
        "SimpleDiff.swift",
        "UpdateSpec.swift"
      ],
      "target_dependencies" : [
        "MobiusCore"
      ],
      "type" : "library"
    },
    {
      "c99name" : "MobiusNimbleTests",
      "module_type" : "SwiftTarget",
      "name" : "MobiusNimbleTests",
      "path" : "MobiusNimble/Test",
      "product_dependencies" : [
        "Quick"
      ],
      "sources" : [
        "NimbleFirstMatchersTests.swift",
        "NimbleNextMatchersTests.swift",
        "TestUtil.swift"
      ],
      "target_dependencies" : [
        "MobiusNimble"
      ],
      "type" : "test"
    },
    {
      "c99name" : "MobiusNimble",
      "module_type" : "SwiftTarget",
      "name" : "MobiusNimble",
      "path" : "MobiusNimble/Source",
      "product_dependencies" : [
        "Nimble"
      ],
      "product_memberships" : [
        "MobiusNimble"
      ],
      "sources" : [
        "NimbleFirstMatchers.swift",
        "NimbleNextMatchers.swift"
      ],
      "target_dependencies" : [
        "MobiusCore",
        "MobiusTest"
      ],
      "type" : "library"
    },
    {
      "c99name" : "MobiusExtrasTests",
      "module_type" : "SwiftTarget",
      "name" : "MobiusExtrasTests",
      "path" : "MobiusExtras/Test",
      "product_dependencies" : [
        "Nimble",
        "Quick"
      ],
      "sources" : [
        "ConnectableClassTests.swift",
        "ConnectableContramapTests.swift",
        "ConnectableMapTests.swift",
        "CopyableTests.swift",
        "EventSource+ExtensionsTests.swift",
        "WikiTutorialTest.swift"
      ],
      "target_dependencies" : [
        "MobiusCore",
        "MobiusExtras",
        "MobiusThrowableAssertion"
      ],
      "type" : "test"
    },
    {
      "c99name" : "MobiusExtras",
      "module_type" : "SwiftTarget",
      "name" : "MobiusExtras",
      "path" : "MobiusExtras/Source",
      "product_memberships" : [
        "MobiusExtras"
      ],
      "sources" : [
        "BeginnerLoop.swift",
        "ConnectableClass.swift",
        "ConnectableContramap.swift",
        "ConnectableMap.swift",
        "Copyable.swift",
        "EventSourceMap.swift",
        "SimpleLogger.swift"
      ],
      "target_dependencies" : [
        "MobiusCore"
      ],
      "type" : "library"
    },
    {
      "c99name" : "MobiusCoreTests",
      "module_type" : "SwiftTarget",
      "name" : "MobiusCoreTests",
      "path" : "MobiusCore/Test",
      "product_dependencies" : [
        "Nimble",
        "Quick"
      ],
      "sources" : [
        "AnonymousDisposableTests.swift",
        "AnyConnectionTests.swift",
        "AnyMobiusLoggerTests.swift",
        "AsyncDispatchQueueConnectableTests.swift",
        "CompositeDisposableTests.swift",
        "ConnectablePublisherTests.swift",
        "EffectHandlers/AnyEffectHandlerTests.swift",
        "EffectHandlers/CallbackTests.swift",
        "EffectHandlers/EffectHandlerTests.swift",
        "EffectHandlers/EffectRouterDSLTests.swift",
        "EffectHandlers/EffectRouterTests.swift",
        "EffectHandlers/EnumRouteTests.swift",
        "EventRouterDisposalLogicalRaceRegressionTest.swift",
        "EventSources/AnyEventSourceTests.swift",
        "EventSources/CompositeEventSourceBuilderTests.swift",
        "FirstTests.swift",
        "InitializationTests.swift",
        "LoggingInitiateTests.swift",
        "LoggingUpdateTests.swift",
        "MobiusControllerTests.swift",
        "MobiusHooksTests.swift",
        "MobiusIntegrationTests.swift",
        "MobiusLoopTests.swift",
        "NextTests.swift",
        "NonReentrancyTests.swift",
        "Task+DisposableTests.swift",
        "TestingErrorHandler.swift",
        "TestingUtil.swift",
        "WorkBagTests.swift"
      ],
      "target_dependencies" : [
        "MobiusCore",
        "MobiusThrowableAssertion"
      ],
      "type" : "test"
    },
    {
      "c99name" : "MobiusCore",
      "module_type" : "SwiftTarget",
      "name" : "MobiusCore",
      "path" : "MobiusCore/Source",
      "product_dependencies" : [
        "CasePaths"
      ],
      "product_memberships" : [
        "MobiusCore",
        "MobiusExtras",
        "MobiusNimble",
        "MobiusTest"
      ],
      "sources" : [
        "AsyncDispatchQueueConnectable.swift",
        "AsyncStartStopStateMachine.swift",
        "ConcurrentAccessDetector.swift",
        "Connectable.swift",
        "ConnectablePublisher.swift",
        "Connection.swift",
        "Consumer.swift",
        "Disposables/AnonymousDisposable.swift",
        "Disposables/CompositeDisposable.swift",
        "Disposables/Disposable.swift",
        "Disposables/Task+Disposable.swift",
        "EffectHandlers/EffectCallback.swift",
        "EffectHandlers/EffectExecutor.swift",
        "EffectHandlers/EffectHandler.swift",
        "EffectHandlers/EffectRouter.swift",
        "EffectHandlers/EffectRouterDSL.swift",
        "EffectHandlers/EnumRoute.swift",
        "EffectHandlers/ThreadSafeConnectable.swift",
        "EventSources/AnyEventSource.swift",
        "EventSources/CompositeEventSourceBuilder.swift",
        "EventSources/EventSource.swift",
        "First.swift",
        "Lock.swift",
        "LoggingAdaptors.swift",
        "Mobius.swift",
        "MobiusController.swift",
        "MobiusHooks.swift",
        "MobiusLogger.swift",
        "MobiusLoop.swift",
        "Next.swift",
        "WorkBag.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.2"
}
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures
[1/1] Compiling plugin LintCommandPlugin
[2/2] Compiling plugin LintWarning
[3/3] Compiling plugin LintError
[4/4] Compiling plugin DefocusCommandPlugin
[5/5] Compiling plugin GenerateManual
[6/6] Compiling plugin GenerateDoccReference
Building for debugging...
[6/19] Write sources
[14/19] Write swift-version-2F0A5646E1D333AE.txt
[15/24] Compiling CwlMachBadInstructionHandler mach_excServer.c
[16/24] Compiling CwlCatchExceptionSupport CwlCatchException.m
[17/26] Compiling CwlMachBadInstructionHandler CwlMachBadInstructionHandler.m
[18/26] Compiling MobiusThrowableAssertion MobiusThrowableAssertion.m
[20/26] Compiling CasePaths Operators.swift
[21/26] Compiling CasePaths EnumReflection.swift
[22/26] Compiling CasePaths CasePaths.swift
[23/26] Emitting module CasePaths
[24/26] Compiling CasePaths CasePath.swift
[25/26] Compiling CwlCatchException CwlCatchException.swift
[26/26] Emitting module CwlCatchException
[27/59] Compiling CwlPreconditionTesting CwlDarwinDefinitions.swift
[28/59] Emitting module MobiusCore
/Users/admin/builder/spi-builder-workspace/MobiusCore/Source/MobiusHooks.swift:16:36: warning: static property 'errorHandler' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 |     /// Internal: we prefer to call `errorHandler` directly, without abstractions, to minimize the depth of crash
15 |     /// stack traces. This requires that `#file` and `#line` are passed explicitly.
16 |     public private(set) static var errorHandler: ErrorHandler = MobiusHooks.defaultErrorHandler
   |                                    |- warning: static property 'errorHandler' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                                    |- note: convert 'errorHandler' to a 'let' constant to make 'Sendable' shared state immutable
   |                                    |- note: add '@MainActor' to make static property 'errorHandler' part of global actor 'MainActor'
   |                                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |
18 |     public static func setErrorHandler(_ newErrorHandler: @escaping ErrorHandler) {
[29/62] Compiling MobiusCore EnumRoute.swift
[30/62] Compiling MobiusCore ThreadSafeConnectable.swift
[31/62] Compiling MobiusCore AnyEventSource.swift
[32/62] Compiling MobiusCore Task+Disposable.swift
[33/62] Compiling MobiusCore EffectCallback.swift
[34/62] Compiling MobiusCore EffectExecutor.swift
[35/62] Compiling MobiusCore CompositeEventSourceBuilder.swift
[36/62] Compiling MobiusCore EventSource.swift
[37/62] Compiling MobiusCore First.swift
[38/62] Compiling MobiusCore Lock.swift
[39/62] Compiling MobiusCore LoggingAdaptors.swift
[40/62] Compiling MobiusCore Mobius.swift
[41/62] Compiling MobiusCore AsyncDispatchQueueConnectable.swift
/Users/admin/builder/spi-builder-workspace/MobiusCore/Source/AsyncDispatchQueueConnectable.swift:50:21: warning: capture of 'disposalStatus' with non-sendable type 'Synchronized<Bool>' in a '@Sendable' closure
48 |                 acceptQueue.async {
49 |                     // Prevents forwarding if the connection has since been disposed.
50 |                     disposalStatus.read { disposed in
   |                     `- warning: capture of 'disposalStatus' with non-sendable type 'Synchronized<Bool>' in a '@Sendable' closure
51 |                         guard !disposed else { return }
52 |                         connection.accept(input)
/Users/admin/builder/spi-builder-workspace/MobiusCore/Source/Lock.swift:19:13: note: generic class 'Synchronized' does not conform to the 'Sendable' protocol
17 | }
18 |
19 | final class Synchronized<Value> {
   |             `- note: generic class 'Synchronized' does not conform to the 'Sendable' protocol
20 |     private let lock = DispatchQueue(label: "Mobius synchronized storage")
21 |     private var storage: Value
/Users/admin/builder/spi-builder-workspace/MobiusCore/Source/AsyncDispatchQueueConnectable.swift:52:25: warning: capture of 'connection' with non-sendable type 'Connection<Input>' in a '@Sendable' closure
50 |                     disposalStatus.read { disposed in
51 |                         guard !disposed else { return }
52 |                         connection.accept(input)
   |                         `- warning: capture of 'connection' with non-sendable type 'Connection<Input>' in a '@Sendable' closure
53 |                     }
54 |                 }
/Users/admin/builder/spi-builder-workspace/MobiusCore/Source/Connection.swift:9:20: note: generic class 'Connection' does not conform to the 'Sendable' protocol
 7 | ///
 8 | /// Used for sending values to the connection and to dispose of it and all resources associated with it.
 9 | public final class Connection<Value>: Disposable {
   |                    `- note: generic class 'Connection' does not conform to the 'Sendable' protocol
10 |     private let acceptClosure: (Value) -> Void
11 |     private let disposeClosure: () -> Void
/Users/admin/builder/spi-builder-workspace/MobiusCore/Source/AsyncDispatchQueueConnectable.swift:52:43: warning: capture of 'input' with non-sendable type 'Input' in a '@Sendable' closure
 9 | /// first switching to the provided `acceptQueue`. In other words, the real `accept` method will always be executed
10 | /// asynchronously on the provided queue.
11 | final class AsyncDispatchQueueConnectable<Input, Output>: Connectable {
   |                                           `- note: consider making generic parameter 'Input' conform to the 'Sendable' protocol
12 |     private let underlyingConnectable: AnyConnectable<Input, Output>
13 |     private let acceptQueue: DispatchQueue
   :
50 |                     disposalStatus.read { disposed in
51 |                         guard !disposed else { return }
52 |                         connection.accept(input)
   |                                           `- warning: capture of 'input' with non-sendable type 'Input' in a '@Sendable' closure
53 |                     }
54 |                 }
/Users/admin/builder/spi-builder-workspace/MobiusCore/Source/AsyncDispatchQueueConnectable.swift:52:25: warning: capture of 'connection' with non-sendable type 'Connection<Input>' in an isolated closure; this is an error in the Swift 6 language mode
50 |                     disposalStatus.read { disposed in
51 |                         guard !disposed else { return }
52 |                         connection.accept(input)
   |                         `- warning: capture of 'connection' with non-sendable type 'Connection<Input>' in an isolated closure; this is an error in the Swift 6 language mode
53 |                     }
54 |                 }
/Users/admin/builder/spi-builder-workspace/MobiusCore/Source/Connection.swift:9:20: note: generic class 'Connection' does not conform to the 'Sendable' protocol
 7 | ///
 8 | /// Used for sending values to the connection and to dispose of it and all resources associated with it.
 9 | public final class Connection<Value>: Disposable {
   |                    `- note: generic class 'Connection' does not conform to the 'Sendable' protocol
10 |     private let acceptClosure: (Value) -> Void
11 |     private let disposeClosure: () -> Void
/Users/admin/builder/spi-builder-workspace/MobiusCore/Source/AsyncDispatchQueueConnectable.swift:52:43: warning: capture of 'input' with non-sendable type 'Input' in an isolated closure; this is an error in the Swift 6 language mode
 9 | /// first switching to the provided `acceptQueue`. In other words, the real `accept` method will always be executed
10 | /// asynchronously on the provided queue.
11 | final class AsyncDispatchQueueConnectable<Input, Output>: Connectable {
   |                                           `- note: consider making generic parameter 'Input' conform to the 'Sendable' protocol
12 |     private let underlyingConnectable: AnyConnectable<Input, Output>
13 |     private let acceptQueue: DispatchQueue
   :
50 |                     disposalStatus.read { disposed in
51 |                         guard !disposed else { return }
52 |                         connection.accept(input)
   |                                           `- warning: capture of 'input' with non-sendable type 'Input' in an isolated closure; this is an error in the Swift 6 language mode
53 |                     }
54 |                 }
[42/62] Compiling MobiusCore AsyncStartStopStateMachine.swift
/Users/admin/builder/spi-builder-workspace/MobiusCore/Source/AsyncDispatchQueueConnectable.swift:50:21: warning: capture of 'disposalStatus' with non-sendable type 'Synchronized<Bool>' in a '@Sendable' closure
48 |                 acceptQueue.async {
49 |                     // Prevents forwarding if the connection has since been disposed.
50 |                     disposalStatus.read { disposed in
   |                     `- warning: capture of 'disposalStatus' with non-sendable type 'Synchronized<Bool>' in a '@Sendable' closure
51 |                         guard !disposed else { return }
52 |                         connection.accept(input)
/Users/admin/builder/spi-builder-workspace/MobiusCore/Source/Lock.swift:19:13: note: generic class 'Synchronized' does not conform to the 'Sendable' protocol
17 | }
18 |
19 | final class Synchronized<Value> {
   |             `- note: generic class 'Synchronized' does not conform to the 'Sendable' protocol
20 |     private let lock = DispatchQueue(label: "Mobius synchronized storage")
21 |     private var storage: Value
/Users/admin/builder/spi-builder-workspace/MobiusCore/Source/AsyncDispatchQueueConnectable.swift:52:25: warning: capture of 'connection' with non-sendable type 'Connection<Input>' in a '@Sendable' closure
50 |                     disposalStatus.read { disposed in
51 |                         guard !disposed else { return }
52 |                         connection.accept(input)
   |                         `- warning: capture of 'connection' with non-sendable type 'Connection<Input>' in a '@Sendable' closure
53 |                     }
54 |                 }
/Users/admin/builder/spi-builder-workspace/MobiusCore/Source/Connection.swift:9:20: note: generic class 'Connection' does not conform to the 'Sendable' protocol
 7 | ///
 8 | /// Used for sending values to the connection and to dispose of it and all resources associated with it.
 9 | public final class Connection<Value>: Disposable {
   |                    `- note: generic class 'Connection' does not conform to the 'Sendable' protocol
10 |     private let acceptClosure: (Value) -> Void
11 |     private let disposeClosure: () -> Void
/Users/admin/builder/spi-builder-workspace/MobiusCore/Source/AsyncDispatchQueueConnectable.swift:52:43: warning: capture of 'input' with non-sendable type 'Input' in a '@Sendable' closure
 9 | /// first switching to the provided `acceptQueue`. In other words, the real `accept` method will always be executed
10 | /// asynchronously on the provided queue.
11 | final class AsyncDispatchQueueConnectable<Input, Output>: Connectable {
   |                                           `- note: consider making generic parameter 'Input' conform to the 'Sendable' protocol
12 |     private let underlyingConnectable: AnyConnectable<Input, Output>
13 |     private let acceptQueue: DispatchQueue
   :
50 |                     disposalStatus.read { disposed in
51 |                         guard !disposed else { return }
52 |                         connection.accept(input)
   |                                           `- warning: capture of 'input' with non-sendable type 'Input' in a '@Sendable' closure
53 |                     }
54 |                 }
/Users/admin/builder/spi-builder-workspace/MobiusCore/Source/AsyncDispatchQueueConnectable.swift:52:25: warning: capture of 'connection' with non-sendable type 'Connection<Input>' in an isolated closure; this is an error in the Swift 6 language mode
50 |                     disposalStatus.read { disposed in
51 |                         guard !disposed else { return }
52 |                         connection.accept(input)
   |                         `- warning: capture of 'connection' with non-sendable type 'Connection<Input>' in an isolated closure; this is an error in the Swift 6 language mode
53 |                     }
54 |                 }
/Users/admin/builder/spi-builder-workspace/MobiusCore/Source/Connection.swift:9:20: note: generic class 'Connection' does not conform to the 'Sendable' protocol
 7 | ///
 8 | /// Used for sending values to the connection and to dispose of it and all resources associated with it.
 9 | public final class Connection<Value>: Disposable {
   |                    `- note: generic class 'Connection' does not conform to the 'Sendable' protocol
10 |     private let acceptClosure: (Value) -> Void
11 |     private let disposeClosure: () -> Void
/Users/admin/builder/spi-builder-workspace/MobiusCore/Source/AsyncDispatchQueueConnectable.swift:52:43: warning: capture of 'input' with non-sendable type 'Input' in an isolated closure; this is an error in the Swift 6 language mode
 9 | /// first switching to the provided `acceptQueue`. In other words, the real `accept` method will always be executed
10 | /// asynchronously on the provided queue.
11 | final class AsyncDispatchQueueConnectable<Input, Output>: Connectable {
   |                                           `- note: consider making generic parameter 'Input' conform to the 'Sendable' protocol
12 |     private let underlyingConnectable: AnyConnectable<Input, Output>
13 |     private let acceptQueue: DispatchQueue
   :
50 |                     disposalStatus.read { disposed in
51 |                         guard !disposed else { return }
52 |                         connection.accept(input)
   |                                           `- warning: capture of 'input' with non-sendable type 'Input' in an isolated closure; this is an error in the Swift 6 language mode
53 |                     }
54 |                 }
[43/62] Compiling MobiusCore ConcurrentAccessDetector.swift
/Users/admin/builder/spi-builder-workspace/MobiusCore/Source/AsyncDispatchQueueConnectable.swift:50:21: warning: capture of 'disposalStatus' with non-sendable type 'Synchronized<Bool>' in a '@Sendable' closure
48 |                 acceptQueue.async {
49 |                     // Prevents forwarding if the connection has since been disposed.
50 |                     disposalStatus.read { disposed in
   |                     `- warning: capture of 'disposalStatus' with non-sendable type 'Synchronized<Bool>' in a '@Sendable' closure
51 |                         guard !disposed else { return }
52 |                         connection.accept(input)
/Users/admin/builder/spi-builder-workspace/MobiusCore/Source/Lock.swift:19:13: note: generic class 'Synchronized' does not conform to the 'Sendable' protocol
17 | }
18 |
19 | final class Synchronized<Value> {
   |             `- note: generic class 'Synchronized' does not conform to the 'Sendable' protocol
20 |     private let lock = DispatchQueue(label: "Mobius synchronized storage")
21 |     private var storage: Value
/Users/admin/builder/spi-builder-workspace/MobiusCore/Source/AsyncDispatchQueueConnectable.swift:52:25: warning: capture of 'connection' with non-sendable type 'Connection<Input>' in a '@Sendable' closure
50 |                     disposalStatus.read { disposed in
51 |                         guard !disposed else { return }
52 |                         connection.accept(input)
   |                         `- warning: capture of 'connection' with non-sendable type 'Connection<Input>' in a '@Sendable' closure
53 |                     }
54 |                 }
/Users/admin/builder/spi-builder-workspace/MobiusCore/Source/Connection.swift:9:20: note: generic class 'Connection' does not conform to the 'Sendable' protocol
 7 | ///
 8 | /// Used for sending values to the connection and to dispose of it and all resources associated with it.
 9 | public final class Connection<Value>: Disposable {
   |                    `- note: generic class 'Connection' does not conform to the 'Sendable' protocol
10 |     private let acceptClosure: (Value) -> Void
11 |     private let disposeClosure: () -> Void
/Users/admin/builder/spi-builder-workspace/MobiusCore/Source/AsyncDispatchQueueConnectable.swift:52:43: warning: capture of 'input' with non-sendable type 'Input' in a '@Sendable' closure
 9 | /// first switching to the provided `acceptQueue`. In other words, the real `accept` method will always be executed
10 | /// asynchronously on the provided queue.
11 | final class AsyncDispatchQueueConnectable<Input, Output>: Connectable {
   |                                           `- note: consider making generic parameter 'Input' conform to the 'Sendable' protocol
12 |     private let underlyingConnectable: AnyConnectable<Input, Output>
13 |     private let acceptQueue: DispatchQueue
   :
50 |                     disposalStatus.read { disposed in
51 |                         guard !disposed else { return }
52 |                         connection.accept(input)
   |                                           `- warning: capture of 'input' with non-sendable type 'Input' in a '@Sendable' closure
53 |                     }
54 |                 }
/Users/admin/builder/spi-builder-workspace/MobiusCore/Source/AsyncDispatchQueueConnectable.swift:52:25: warning: capture of 'connection' with non-sendable type 'Connection<Input>' in an isolated closure; this is an error in the Swift 6 language mode
50 |                     disposalStatus.read { disposed in
51 |                         guard !disposed else { return }
52 |                         connection.accept(input)
   |                         `- warning: capture of 'connection' with non-sendable type 'Connection<Input>' in an isolated closure; this is an error in the Swift 6 language mode
53 |                     }
54 |                 }
/Users/admin/builder/spi-builder-workspace/MobiusCore/Source/Connection.swift:9:20: note: generic class 'Connection' does not conform to the 'Sendable' protocol
 7 | ///
 8 | /// Used for sending values to the connection and to dispose of it and all resources associated with it.
 9 | public final class Connection<Value>: Disposable {
   |                    `- note: generic class 'Connection' does not conform to the 'Sendable' protocol
10 |     private let acceptClosure: (Value) -> Void
11 |     private let disposeClosure: () -> Void
/Users/admin/builder/spi-builder-workspace/MobiusCore/Source/AsyncDispatchQueueConnectable.swift:52:43: warning: capture of 'input' with non-sendable type 'Input' in an isolated closure; this is an error in the Swift 6 language mode
 9 | /// first switching to the provided `acceptQueue`. In other words, the real `accept` method will always be executed
10 | /// asynchronously on the provided queue.
11 | final class AsyncDispatchQueueConnectable<Input, Output>: Connectable {
   |                                           `- note: consider making generic parameter 'Input' conform to the 'Sendable' protocol
12 |     private let underlyingConnectable: AnyConnectable<Input, Output>
13 |     private let acceptQueue: DispatchQueue
   :
50 |                     disposalStatus.read { disposed in
51 |                         guard !disposed else { return }
52 |                         connection.accept(input)
   |                                           `- warning: capture of 'input' with non-sendable type 'Input' in an isolated closure; this is an error in the Swift 6 language mode
53 |                     }
54 |                 }
[44/62] Compiling MobiusCore Connectable.swift
/Users/admin/builder/spi-builder-workspace/MobiusCore/Source/AsyncDispatchQueueConnectable.swift:50:21: warning: capture of 'disposalStatus' with non-sendable type 'Synchronized<Bool>' in a '@Sendable' closure
48 |                 acceptQueue.async {
49 |                     // Prevents forwarding if the connection has since been disposed.
50 |                     disposalStatus.read { disposed in
   |                     `- warning: capture of 'disposalStatus' with non-sendable type 'Synchronized<Bool>' in a '@Sendable' closure
51 |                         guard !disposed else { return }
52 |                         connection.accept(input)
/Users/admin/builder/spi-builder-workspace/MobiusCore/Source/Lock.swift:19:13: note: generic class 'Synchronized' does not conform to the 'Sendable' protocol
17 | }
18 |
19 | final class Synchronized<Value> {
   |             `- note: generic class 'Synchronized' does not conform to the 'Sendable' protocol
20 |     private let lock = DispatchQueue(label: "Mobius synchronized storage")
21 |     private var storage: Value
/Users/admin/builder/spi-builder-workspace/MobiusCore/Source/AsyncDispatchQueueConnectable.swift:52:25: warning: capture of 'connection' with non-sendable type 'Connection<Input>' in a '@Sendable' closure
50 |                     disposalStatus.read { disposed in
51 |                         guard !disposed else { return }
52 |                         connection.accept(input)
   |                         `- warning: capture of 'connection' with non-sendable type 'Connection<Input>' in a '@Sendable' closure
53 |                     }
54 |                 }
/Users/admin/builder/spi-builder-workspace/MobiusCore/Source/Connection.swift:9:20: note: generic class 'Connection' does not conform to the 'Sendable' protocol
 7 | ///
 8 | /// Used for sending values to the connection and to dispose of it and all resources associated with it.
 9 | public final class Connection<Value>: Disposable {
   |                    `- note: generic class 'Connection' does not conform to the 'Sendable' protocol
10 |     private let acceptClosure: (Value) -> Void
11 |     private let disposeClosure: () -> Void
/Users/admin/builder/spi-builder-workspace/MobiusCore/Source/AsyncDispatchQueueConnectable.swift:52:43: warning: capture of 'input' with non-sendable type 'Input' in a '@Sendable' closure
 9 | /// first switching to the provided `acceptQueue`. In other words, the real `accept` method will always be executed
10 | /// asynchronously on the provided queue.
11 | final class AsyncDispatchQueueConnectable<Input, Output>: Connectable {
   |                                           `- note: consider making generic parameter 'Input' conform to the 'Sendable' protocol
12 |     private let underlyingConnectable: AnyConnectable<Input, Output>
13 |     private let acceptQueue: DispatchQueue
   :
50 |                     disposalStatus.read { disposed in
51 |                         guard !disposed else { return }
52 |                         connection.accept(input)
   |                                           `- warning: capture of 'input' with non-sendable type 'Input' in a '@Sendable' closure
53 |                     }
54 |                 }
/Users/admin/builder/spi-builder-workspace/MobiusCore/Source/AsyncDispatchQueueConnectable.swift:52:25: warning: capture of 'connection' with non-sendable type 'Connection<Input>' in an isolated closure; this is an error in the Swift 6 language mode
50 |                     disposalStatus.read { disposed in
51 |                         guard !disposed else { return }
52 |                         connection.accept(input)
   |                         `- warning: capture of 'connection' with non-sendable type 'Connection<Input>' in an isolated closure; this is an error in the Swift 6 language mode
53 |                     }
54 |                 }
/Users/admin/builder/spi-builder-workspace/MobiusCore/Source/Connection.swift:9:20: note: generic class 'Connection' does not conform to the 'Sendable' protocol
 7 | ///
 8 | /// Used for sending values to the connection and to dispose of it and all resources associated with it.
 9 | public final class Connection<Value>: Disposable {
   |                    `- note: generic class 'Connection' does not conform to the 'Sendable' protocol
10 |     private let acceptClosure: (Value) -> Void
11 |     private let disposeClosure: () -> Void
/Users/admin/builder/spi-builder-workspace/MobiusCore/Source/AsyncDispatchQueueConnectable.swift:52:43: warning: capture of 'input' with non-sendable type 'Input' in an isolated closure; this is an error in the Swift 6 language mode
 9 | /// first switching to the provided `acceptQueue`. In other words, the real `accept` method will always be executed
10 | /// asynchronously on the provided queue.
11 | final class AsyncDispatchQueueConnectable<Input, Output>: Connectable {
   |                                           `- note: consider making generic parameter 'Input' conform to the 'Sendable' protocol
12 |     private let underlyingConnectable: AnyConnectable<Input, Output>
13 |     private let acceptQueue: DispatchQueue
   :
50 |                     disposalStatus.read { disposed in
51 |                         guard !disposed else { return }
52 |                         connection.accept(input)
   |                                           `- warning: capture of 'input' with non-sendable type 'Input' in an isolated closure; this is an error in the Swift 6 language mode
53 |                     }
54 |                 }
[45/62] Compiling MobiusCore EffectHandler.swift
/Users/admin/builder/spi-builder-workspace/MobiusCore/Source/EffectHandlers/EffectRouter.swift:121:37: warning: capture of 'connection' with non-sendable type 'Connection<EffectParameters>' in a '@Sendable' closure
119 |                             if let queue = queue {
120 |                                 queue.async {
121 |                                     connection.accept(parameters)
    |                                     `- warning: capture of 'connection' with non-sendable type 'Connection<EffectParameters>' in a '@Sendable' closure
122 |                                 }
123 |                             } else {
/Users/admin/builder/spi-builder-workspace/MobiusCore/Source/Connection.swift:9:20: note: generic class 'Connection' does not conform to the 'Sendable' protocol
 7 | ///
 8 | /// Used for sending values to the connection and to dispose of it and all resources associated with it.
 9 | public final class Connection<Value>: Disposable {
   |                    `- note: generic class 'Connection' does not conform to the 'Sendable' protocol
10 |     private let acceptClosure: (Value) -> Void
11 |     private let disposeClosure: () -> Void
/Users/admin/builder/spi-builder-workspace/MobiusCore/Source/EffectHandlers/EffectRouter.swift:121:55: warning: capture of 'parameters' with non-sendable type 'EffectParameters' in a '@Sendable' closure
106 |     let connect: (@escaping Consumer<Output>) -> ConnectedRoute<Input>
107 |
108 |     init<EffectParameters, Conn: Connectable>(
    |          `- note: consider making generic parameter 'EffectParameters' conform to the 'Sendable' protocol
109 |         extractParameters: @escaping (Input) -> EffectParameters?,
110 |         connectable: Conn,
    :
119 |                             if let queue = queue {
120 |                                 queue.async {
121 |                                     connection.accept(parameters)
    |                                                       `- warning: capture of 'parameters' with non-sendable type 'EffectParameters' in a '@Sendable' closure
122 |                                 }
123 |                             } else {
[46/62] Compiling MobiusCore EffectRouter.swift
/Users/admin/builder/spi-builder-workspace/MobiusCore/Source/EffectHandlers/EffectRouter.swift:121:37: warning: capture of 'connection' with non-sendable type 'Connection<EffectParameters>' in a '@Sendable' closure
119 |                             if let queue = queue {
120 |                                 queue.async {
121 |                                     connection.accept(parameters)
    |                                     `- warning: capture of 'connection' with non-sendable type 'Connection<EffectParameters>' in a '@Sendable' closure
122 |                                 }
123 |                             } else {
/Users/admin/builder/spi-builder-workspace/MobiusCore/Source/Connection.swift:9:20: note: generic class 'Connection' does not conform to the 'Sendable' protocol
 7 | ///
 8 | /// Used for sending values to the connection and to dispose of it and all resources associated with it.
 9 | public final class Connection<Value>: Disposable {
   |                    `- note: generic class 'Connection' does not conform to the 'Sendable' protocol
10 |     private let acceptClosure: (Value) -> Void
11 |     private let disposeClosure: () -> Void
/Users/admin/builder/spi-builder-workspace/MobiusCore/Source/EffectHandlers/EffectRouter.swift:121:55: warning: capture of 'parameters' with non-sendable type 'EffectParameters' in a '@Sendable' closure
106 |     let connect: (@escaping Consumer<Output>) -> ConnectedRoute<Input>
107 |
108 |     init<EffectParameters, Conn: Connectable>(
    |          `- note: consider making generic parameter 'EffectParameters' conform to the 'Sendable' protocol
109 |         extractParameters: @escaping (Input) -> EffectParameters?,
110 |         connectable: Conn,
    :
119 |                             if let queue = queue {
120 |                                 queue.async {
121 |                                     connection.accept(parameters)
    |                                                       `- warning: capture of 'parameters' with non-sendable type 'EffectParameters' in a '@Sendable' closure
122 |                                 }
123 |                             } else {
[47/62] Compiling MobiusCore EffectRouterDSL.swift
/Users/admin/builder/spi-builder-workspace/MobiusCore/Source/EffectHandlers/EffectRouter.swift:121:37: warning: capture of 'connection' with non-sendable type 'Connection<EffectParameters>' in a '@Sendable' closure
119 |                             if let queue = queue {
120 |                                 queue.async {
121 |                                     connection.accept(parameters)
    |                                     `- warning: capture of 'connection' with non-sendable type 'Connection<EffectParameters>' in a '@Sendable' closure
122 |                                 }
123 |                             } else {
/Users/admin/builder/spi-builder-workspace/MobiusCore/Source/Connection.swift:9:20: note: generic class 'Connection' does not conform to the 'Sendable' protocol
 7 | ///
 8 | /// Used for sending values to the connection and to dispose of it and all resources associated with it.
 9 | public final class Connection<Value>: Disposable {
   |                    `- note: generic class 'Connection' does not conform to the 'Sendable' protocol
10 |     private let acceptClosure: (Value) -> Void
11 |     private let disposeClosure: () -> Void
/Users/admin/builder/spi-builder-workspace/MobiusCore/Source/EffectHandlers/EffectRouter.swift:121:55: warning: capture of 'parameters' with non-sendable type 'EffectParameters' in a '@Sendable' closure
106 |     let connect: (@escaping Consumer<Output>) -> ConnectedRoute<Input>
107 |
108 |     init<EffectParameters, Conn: Connectable>(
    |          `- note: consider making generic parameter 'EffectParameters' conform to the 'Sendable' protocol
109 |         extractParameters: @escaping (Input) -> EffectParameters?,
110 |         connectable: Conn,
    :
119 |                             if let queue = queue {
120 |                                 queue.async {
121 |                                     connection.accept(parameters)
    |                                                       `- warning: capture of 'parameters' with non-sendable type 'EffectParameters' in a '@Sendable' closure
122 |                                 }
123 |                             } else {
[48/62] Compiling MobiusCore AnonymousDisposable.swift
[49/62] Compiling MobiusCore CompositeDisposable.swift
[50/62] Compiling MobiusCore Disposable.swift
[51/62] Compiling MobiusCore ConnectablePublisher.swift
[52/62] Compiling MobiusCore Connection.swift
[53/62] Compiling MobiusCore Consumer.swift
[54/62] Compiling MobiusCore MobiusController.swift
/Users/admin/builder/spi-builder-workspace/MobiusCore/Source/MobiusController.swift:92:27: warning: capture of 'state' with non-sendable type 'MobiusController<Model, Event, Effect>.State' (aka 'AsyncStartStopStateMachine<MobiusController<Model, Event, Effect>.StoppedState, MobiusController<Model, Event, Effect>.RunningState>') in a '@Sendable' closure
 90 |             return { event in
 91 |                 loopQueue.async {
 92 |                     guard state.running else {
    |                           `- warning: capture of 'state' with non-sendable type 'MobiusController<Model, Event, Effect>.State' (aka 'AsyncStartStopStateMachine<MobiusController<Model, Event, Effect>.StoppedState, MobiusController<Model, Event, Effect>.RunningState>') in a '@Sendable' closure
 93 |                         // If we got here, the controller was stopped while this async block was queued. Callers can’t
 94 |                         // possibly avoid this except through complete external serialization of all access to the
/Users/admin/builder/spi-builder-workspace/MobiusCore/Source/AsyncStartStopStateMachine.swift:12:13: note: generic class 'AsyncStartStopStateMachine' does not conform to the 'Sendable' protocol
 10 | /// tools to easily make it thread safe. In particular, we need to be able to query whether we’re currently running or
 11 | /// not from any queue, including the designated mutating queue.
 12 | final class AsyncStartStopStateMachine<StoppedState, RunningState> {
    |             `- note: generic class 'AsyncStartStopStateMachine' does not conform to the 'Sendable' protocol
 13 |     // Intermediate states are required to handle the case where `running` is queried during a state transition.
 14 |     //
/Users/admin/builder/spi-builder-workspace/MobiusCore/Source/MobiusController.swift:101:21: warning: capture of 'consumer' with non-sendable type 'Consumer<Event>' (aka '(Event) -> ()') in a '@Sendable' closure
 99 |                         return
100 |                     }
101 |                     consumer(event)
    |                     |- warning: capture of 'consumer' with non-sendable type 'Consumer<Event>' (aka '(Event) -> ()') in a '@Sendable' closure
    |                     `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
102 |                 }
103 |             }
/Users/admin/builder/spi-builder-workspace/MobiusCore/Source/MobiusController.swift:101:30: warning: capture of 'event' with non-sendable type 'Event' in a '@Sendable' closure
  8 | /// If a loop is stopped and then started again via the controller, the new loop will continue from where the last one
  9 | /// left off.
 10 | public final class MobiusController<Model, Event, Effect> {
    |                                            `- note: consider making generic parameter 'Event' conform to the 'Sendable' protocol
 11 |     typealias Loop = MobiusLoop<Model, Event, Effect>
 12 |     typealias ViewConnectable = AsyncDispatchQueueConnectable<Model, Event>
    :
 99 |                         return
100 |                     }
101 |                     consumer(event)
    |                              `- warning: capture of 'event' with non-sendable type 'Event' in a '@Sendable' closure
102 |                 }
103 |             }
/Users/admin/builder/spi-builder-workspace/MobiusCore/Source/MobiusHooks.swift:16:36: warning: static property 'errorHandler' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 |     /// Internal: we prefer to call `errorHandler` directly, without abstractions, to minimize the depth of crash
15 |     /// stack traces. This requires that `#file` and `#line` are passed explicitly.
16 |     public private(set) static var errorHandler: ErrorHandler = MobiusHooks.defaultErrorHandler
   |                                    |- warning: static property 'errorHandler' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                                    |- note: convert 'errorHandler' to a 'let' constant to make 'Sendable' shared state immutable
   |                                    |- note: add '@MainActor' to make static property 'errorHandler' part of global actor 'MainActor'
   |                                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |
18 |     public static func setErrorHandler(_ newErrorHandler: @escaping ErrorHandler) {
[55/62] Compiling MobiusCore MobiusHooks.swift
/Users/admin/builder/spi-builder-workspace/MobiusCore/Source/MobiusController.swift:92:27: warning: capture of 'state' with non-sendable type 'MobiusController<Model, Event, Effect>.State' (aka 'AsyncStartStopStateMachine<MobiusController<Model, Event, Effect>.StoppedState, MobiusController<Model, Event, Effect>.RunningState>') in a '@Sendable' closure
 90 |             return { event in
 91 |                 loopQueue.async {
 92 |                     guard state.running else {
    |                           `- warning: capture of 'state' with non-sendable type 'MobiusController<Model, Event, Effect>.State' (aka 'AsyncStartStopStateMachine<MobiusController<Model, Event, Effect>.StoppedState, MobiusController<Model, Event, Effect>.RunningState>') in a '@Sendable' closure
 93 |                         // If we got here, the controller was stopped while this async block was queued. Callers can’t
 94 |                         // possibly avoid this except through complete external serialization of all access to the
/Users/admin/builder/spi-builder-workspace/MobiusCore/Source/AsyncStartStopStateMachine.swift:12:13: note: generic class 'AsyncStartStopStateMachine' does not conform to the 'Sendable' protocol
 10 | /// tools to easily make it thread safe. In particular, we need to be able to query whether we’re currently running or
 11 | /// not from any queue, including the designated mutating queue.
 12 | final class AsyncStartStopStateMachine<StoppedState, RunningState> {
    |             `- note: generic class 'AsyncStartStopStateMachine' does not conform to the 'Sendable' protocol
 13 |     // Intermediate states are required to handle the case where `running` is queried during a state transition.
 14 |     //
/Users/admin/builder/spi-builder-workspace/MobiusCore/Source/MobiusController.swift:101:21: warning: capture of 'consumer' with non-sendable type 'Consumer<Event>' (aka '(Event) -> ()') in a '@Sendable' closure
 99 |                         return
100 |                     }
101 |                     consumer(event)
    |                     |- warning: capture of 'consumer' with non-sendable type 'Consumer<Event>' (aka '(Event) -> ()') in a '@Sendable' closure
    |                     `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
102 |                 }
103 |             }
/Users/admin/builder/spi-builder-workspace/MobiusCore/Source/MobiusController.swift:101:30: warning: capture of 'event' with non-sendable type 'Event' in a '@Sendable' closure
  8 | /// If a loop is stopped and then started again via the controller, the new loop will continue from where the last one
  9 | /// left off.
 10 | public final class MobiusController<Model, Event, Effect> {
    |                                            `- note: consider making generic parameter 'Event' conform to the 'Sendable' protocol
 11 |     typealias Loop = MobiusLoop<Model, Event, Effect>
 12 |     typealias ViewConnectable = AsyncDispatchQueueConnectable<Model, Event>
    :
 99 |                         return
100 |                     }
101 |                     consumer(event)
    |                              `- warning: capture of 'event' with non-sendable type 'Event' in a '@Sendable' closure
102 |                 }
103 |             }
/Users/admin/builder/spi-builder-workspace/MobiusCore/Source/MobiusHooks.swift:16:36: warning: static property 'errorHandler' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 |     /// Internal: we prefer to call `errorHandler` directly, without abstractions, to minimize the depth of crash
15 |     /// stack traces. This requires that `#file` and `#line` are passed explicitly.
16 |     public private(set) static var errorHandler: ErrorHandler = MobiusHooks.defaultErrorHandler
   |                                    |- warning: static property 'errorHandler' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                                    |- note: convert 'errorHandler' to a 'let' constant to make 'Sendable' shared state immutable
   |                                    |- note: add '@MainActor' to make static property 'errorHandler' part of global actor 'MainActor'
   |                                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |
18 |     public static func setErrorHandler(_ newErrorHandler: @escaping ErrorHandler) {
[56/62] Compiling MobiusCore MobiusLogger.swift
/Users/admin/builder/spi-builder-workspace/MobiusCore/Source/MobiusController.swift:92:27: warning: capture of 'state' with non-sendable type 'MobiusController<Model, Event, Effect>.State' (aka 'AsyncStartStopStateMachine<MobiusController<Model, Event, Effect>.StoppedState, MobiusController<Model, Event, Effect>.RunningState>') in a '@Sendable' closure
 90 |             return { event in
 91 |                 loopQueue.async {
 92 |                     guard state.running else {
    |                           `- warning: capture of 'state' with non-sendable type 'MobiusController<Model, Event, Effect>.State' (aka 'AsyncStartStopStateMachine<MobiusController<Model, Event, Effect>.StoppedState, MobiusController<Model, Event, Effect>.RunningState>') in a '@Sendable' closure
 93 |                         // If we got here, the controller was stopped while this async block was queued. Callers can’t
 94 |                         // possibly avoid this except through complete external serialization of all access to the
/Users/admin/builder/spi-builder-workspace/MobiusCore/Source/AsyncStartStopStateMachine.swift:12:13: note: generic class 'AsyncStartStopStateMachine' does not conform to the 'Sendable' protocol
 10 | /// tools to easily make it thread safe. In particular, we need to be able to query whether we’re currently running or
 11 | /// not from any queue, including the designated mutating queue.
 12 | final class AsyncStartStopStateMachine<StoppedState, RunningState> {
    |             `- note: generic class 'AsyncStartStopStateMachine' does not conform to the 'Sendable' protocol
 13 |     // Intermediate states are required to handle the case where `running` is queried during a state transition.
 14 |     //
/Users/admin/builder/spi-builder-workspace/MobiusCore/Source/MobiusController.swift:101:21: warning: capture of 'consumer' with non-sendable type 'Consumer<Event>' (aka '(Event) -> ()') in a '@Sendable' closure
 99 |                         return
100 |                     }
101 |                     consumer(event)
    |                     |- warning: capture of 'consumer' with non-sendable type 'Consumer<Event>' (aka '(Event) -> ()') in a '@Sendable' closure
    |                     `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
102 |                 }
103 |             }
/Users/admin/builder/spi-builder-workspace/MobiusCore/Source/MobiusController.swift:101:30: warning: capture of 'event' with non-sendable type 'Event' in a '@Sendable' closure
  8 | /// If a loop is stopped and then started again via the controller, the new loop will continue from where the last one
  9 | /// left off.
 10 | public final class MobiusController<Model, Event, Effect> {
    |                                            `- note: consider making generic parameter 'Event' conform to the 'Sendable' protocol
 11 |     typealias Loop = MobiusLoop<Model, Event, Effect>
 12 |     typealias ViewConnectable = AsyncDispatchQueueConnectable<Model, Event>
    :
 99 |                         return
100 |                     }
101 |                     consumer(event)
    |                              `- warning: capture of 'event' with non-sendable type 'Event' in a '@Sendable' closure
102 |                 }
103 |             }
/Users/admin/builder/spi-builder-workspace/MobiusCore/Source/MobiusHooks.swift:16:36: warning: static property 'errorHandler' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
14 |     /// Internal: we prefer to call `errorHandler` directly, without abstractions, to minimize the depth of crash
15 |     /// stack traces. This requires that `#file` and `#line` are passed explicitly.
16 |     public private(set) static var errorHandler: ErrorHandler = MobiusHooks.defaultErrorHandler
   |                                    |- warning: static property 'errorHandler' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                                    |- note: convert 'errorHandler' to a 'let' constant to make 'Sendable' shared state immutable
   |                                    |- note: add '@MainActor' to make static property 'errorHandler' part of global actor 'MainActor'
   |                                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
17 |
18 |     public static func setErrorHandler(_ newErrorHandler: @escaping ErrorHandler) {
[57/62] Compiling CwlPreconditionTesting CwlBadInstructionException.swift
[58/62] Emitting module CwlPreconditionTesting
[59/62] Compiling CwlPreconditionTesting CwlCatchBadInstruction.swift
[60/62] Compiling MobiusCore MobiusLoop.swift
[61/62] Compiling MobiusCore Next.swift
[62/62] Compiling MobiusCore WorkBag.swift
[63/128] Compiling MobiusExtras ConnectableMap.swift
[64/128] Compiling MobiusExtras EventSourceMap.swift
[65/128] Compiling MobiusExtras Copyable.swift
[66/128] Compiling MobiusExtras ConnectableContramap.swift
[67/128] Compiling MobiusExtras ConnectableClass.swift
/Users/admin/builder/spi-builder-workspace/MobiusExtras/Source/ConnectableClass.swift:63:25: warning: reference to static property 'errorHandler' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
 61 |
 62 |         guard self.consumer == nil else {
 63 |             MobiusHooks.errorHandler(
    |                         `- warning: reference to static property 'errorHandler' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
 64 |                 "Connection limit exceeded: The Connectable \(type(of: self)) is already connected. " +
 65 |                 "Unable to connect more than once",
/Users/admin/builder/spi-builder-workspace/MobiusCore/Source/MobiusHooks.swift:16:36: note: static property declared here
14 |     /// Internal: we prefer to call `errorHandler` directly, without abstractions, to minimize the depth of crash
15 |     /// stack traces. This requires that `#file` and `#line` are passed explicitly.
16 |     public private(set) static var errorHandler: ErrorHandler = MobiusHooks.defaultErrorHandler
   |                                    `- note: static property declared here
17 |
18 |     public static func setErrorHandler(_ newErrorHandler: @escaping ErrorHandler) {
/Users/admin/builder/spi-builder-workspace/MobiusExtras/Source/ConnectableClass.swift:84:25: warning: reference to static property 'errorHandler' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
 82 |         lock.unlock()
 83 |         guard consumerSet else {
 84 |             MobiusHooks.errorHandler(
    |                         `- warning: reference to static property 'errorHandler' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
 85 |                 "\(type(of: self)) is unable to handle \(type(of: input)) before any consumer has been set",
 86 |                 #file,
/Users/admin/builder/spi-builder-workspace/MobiusCore/Source/MobiusHooks.swift:16:36: note: static property declared here
14 |     /// Internal: we prefer to call `errorHandler` directly, without abstractions, to minimize the depth of crash
15 |     /// stack traces. This requires that `#file` and `#line` are passed explicitly.
16 |     public private(set) static var errorHandler: ErrorHandler = MobiusHooks.defaultErrorHandler
   |                                    `- note: static property declared here
17 |
18 |     public static func setErrorHandler(_ newErrorHandler: @escaping ErrorHandler) {
[68/128] Compiling MobiusExtras BeginnerLoop.swift
[69/128] Compiling MobiusExtras SimpleLogger.swift
[70/128] Emitting module MobiusExtras
[71/128] Compiling MobiusTest SimpleDiff.swift
[72/128] Compiling MobiusTest UpdateSpec.swift
[73/128] Compiling Nimble BeLogical.swift
[74/128] Compiling Nimble BeNil.swift
[75/128] Compiling Nimble BeResult.swift
[76/128] Compiling Nimble BeVoid.swift
[77/128] Compiling Nimble BeWithin.swift
[78/133] Compiling Nimble BeEmpty.swift
[79/133] Compiling Nimble BeGreaterThan.swift
[80/133] Compiling Nimble BeGreaterThanOrEqualTo.swift
[81/133] Compiling Nimble BeIdenticalTo.swift
[82/133] Compiling Nimble BeLessThan.swift
[83/133] Compiling Nimble BeLessThanOrEqual.swift
[84/133] Emitting module Nimble
[85/133] Compiling Nimble ExceptionCapture.swift
[86/133] Compiling Nimble DSL+Wait.swift
[87/133] Compiling Nimble DSL.swift
[88/133] Compiling Nimble Expectation.swift
[89/133] Compiling Nimble ExpectationMessage.swift
[90/133] Compiling Nimble Expression.swift
[91/133] Compiling Nimble SatisfyAllOf.swift
[92/133] Compiling Nimble SatisfyAnyOf.swift
[93/133] Compiling Nimble ThrowAssertion.swift
[94/133] Compiling Nimble ThrowError.swift
[95/133] Compiling Nimble ToSucceed.swift
[96/133] Compiling Nimble BeginWith.swift
[97/133] Compiling Nimble BeginWithPrefix.swift
[98/133] Compiling Nimble Contain.swift
[99/133] Compiling Nimble ContainElementSatisfying.swift
[100/133] Compiling Nimble ElementsEqual.swift
[101/133] Compiling Nimble FailureMessage.swift
[102/133] Compiling Nimble AllPass.swift
[103/133] Compiling Nimble Async.swift
[104/133] Compiling Nimble BeAKindOf.swift
[105/133] Compiling Nimble BeAnInstanceOf.swift
[106/133] Compiling Nimble BeCloseTo.swift
[107/133] Compiling Nimble MatchError.swift
[108/133] Compiling Nimble MatcherProtocols.swift
[109/133] Compiling Nimble PostNotification.swift
[110/133] Compiling Nimble Predicate.swift
[111/133] Compiling Nimble RaisesException.swift
[112/133] Compiling Nimble Await.swift
[113/133] Compiling Nimble DispatchTimeInterval.swift
[114/133] Compiling Nimble Errors.swift
[115/133] Compiling Nimble SourceLocation.swift
[116/133] Compiling Nimble Stringers.swift
[117/133] Compiling MobiusTest MatcherUtils.swift
[118/133] Compiling MobiusTest InitSpec.swift
[119/133] Compiling MobiusTest FirstMatchers.swift
[120/133] Compiling MobiusTest DebugDiff.swift
[121/133] Emitting module MobiusTest
[122/133] Compiling MobiusTest NextMatchers.swift
[123/133] Compiling Nimble EndWith.swift
[124/133] Compiling Nimble Equal+Tuple.swift
[125/133] Compiling Nimble Equal.swift
[126/133] Compiling Nimble HaveCount.swift
[127/133] Compiling Nimble Match.swift
[128/133] Compiling Nimble AdapterProtocols.swift
[129/133] Compiling Nimble AssertionDispatcher.swift
[130/133] Compiling Nimble AssertionRecorder.swift
[131/133] Compiling Nimble NMBExpectation.swift
[132/133] Compiling Nimble NimbleEnvironment.swift
[133/133] Compiling Nimble NimbleXCTestHandler.swift
[134/136] Compiling MobiusNimble NimbleFirstMatchers.swift
/Users/admin/builder/spi-builder-workspace/MobiusNimble/Source/NimbleFirstMatchers.swift:24:5: warning: let 'unexpectedNilParameterPredicateResult' is not concurrency-safe because non-'Sendable' type 'PredicateResult' may have shared mutable state; this is an error in the Swift 6 language mode
 22 |
 23 | let nextBeingNilNotAllowed = "have a non-nil First. Got <nil>"
 24 | let unexpectedNilParameterPredicateResult = PredicateResult(bool: false, message: .expectedTo(nextBeingNilNotAllowed))
    |     `- warning: let 'unexpectedNilParameterPredicateResult' is not concurrency-safe because non-'Sendable' type 'PredicateResult' may have shared mutable state; this is an error in the Swift 6 language mode
 25 |
 26 | /// Returns a `Predicate` that matches `First` instances with a model that is equal to the supplied one.
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Nimble/Sources/Nimble/Matchers/Predicate.swift:91:15: note: struct 'PredicateResult' does not conform to the 'Sendable' protocol
 89 | /// The value that a Predicates return to describe if the given (actual) value matches the
 90 | /// predicate.
 91 | public struct PredicateResult {
    |               `- note: struct 'PredicateResult' does not conform to the 'Sendable' protocol
 92 |     /// Status indicates if the predicate matches, does not match, or fails.
 93 |     public var status: PredicateStatus
/Users/admin/builder/spi-builder-workspace/MobiusNimble/Source/NimbleFirstMatchers.swift:7:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Nimble'
  5 | import MobiusCore
  6 | import MobiusTest
  7 | import Nimble
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Nimble'
  8 |
  9 | /// Function produces an `AssertFirst` function to be used with the `InitSpec`
    :
 22 |
 23 | let nextBeingNilNotAllowed = "have a non-nil First. Got <nil>"
 24 | let unexpectedNilParameterPredicateResult = PredicateResult(bool: false, message: .expectedTo(nextBeingNilNotAllowed))
    |     |- note: add '@MainActor' to make let 'unexpectedNilParameterPredicateResult' part of global actor 'MainActor'
    |     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 25 |
 26 | /// Returns a `Predicate` that matches `First` instances with a model that is equal to the supplied one.
[135/136] Emitting module MobiusNimble
/Users/admin/builder/spi-builder-workspace/MobiusNimble/Source/NimbleFirstMatchers.swift:24:5: warning: let 'unexpectedNilParameterPredicateResult' is not concurrency-safe because non-'Sendable' type 'PredicateResult' may have shared mutable state; this is an error in the Swift 6 language mode
 22 |
 23 | let nextBeingNilNotAllowed = "have a non-nil First. Got <nil>"
 24 | let unexpectedNilParameterPredicateResult = PredicateResult(bool: false, message: .expectedTo(nextBeingNilNotAllowed))
    |     `- warning: let 'unexpectedNilParameterPredicateResult' is not concurrency-safe because non-'Sendable' type 'PredicateResult' may have shared mutable state; this is an error in the Swift 6 language mode
 25 |
 26 | /// Returns a `Predicate` that matches `First` instances with a model that is equal to the supplied one.
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Nimble/Sources/Nimble/Matchers/Predicate.swift:91:15: note: struct 'PredicateResult' does not conform to the 'Sendable' protocol
 89 | /// The value that a Predicates return to describe if the given (actual) value matches the
 90 | /// predicate.
 91 | public struct PredicateResult {
    |               `- note: struct 'PredicateResult' does not conform to the 'Sendable' protocol
 92 |     /// Status indicates if the predicate matches, does not match, or fails.
 93 |     public var status: PredicateStatus
/Users/admin/builder/spi-builder-workspace/MobiusNimble/Source/NimbleFirstMatchers.swift:7:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Nimble'
  5 | import MobiusCore
  6 | import MobiusTest
  7 | import Nimble
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Nimble'
  8 |
  9 | /// Function produces an `AssertFirst` function to be used with the `InitSpec`
    :
 22 |
 23 | let nextBeingNilNotAllowed = "have a non-nil First. Got <nil>"
 24 | let unexpectedNilParameterPredicateResult = PredicateResult(bool: false, message: .expectedTo(nextBeingNilNotAllowed))
    |     |- note: add '@MainActor' to make let 'unexpectedNilParameterPredicateResult' part of global actor 'MainActor'
    |     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 25 |
 26 | /// Returns a `Predicate` that matches `First` instances with a model that is equal to the supplied one.
/Users/admin/builder/spi-builder-workspace/MobiusNimble/Source/NimbleNextMatchers.swift:24:5: warning: let 'unexpectedNilParameterPredicate' is not concurrency-safe because non-'Sendable' type 'PredicateResult' may have shared mutable state; this is an error in the Swift 6 language mode
 22 |
 23 | let haveNonNilNext = "have a non-nil Next. Got <nil>"
 24 | let unexpectedNilParameterPredicate = Nimble.PredicateResult(bool: false, message: .expectedTo(haveNonNilNext))
    |     `- warning: let 'unexpectedNilParameterPredicate' is not concurrency-safe because non-'Sendable' type 'PredicateResult' may have shared mutable state; this is an error in the Swift 6 language mode
 25 |
 26 | /// - Returns: a `Predicate` that matches `Next` instances with no model and no effects.
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Nimble/Sources/Nimble/Matchers/Predicate.swift:91:15: note: struct 'PredicateResult' does not conform to the 'Sendable' protocol
 89 | /// The value that a Predicates return to describe if the given (actual) value matches the
 90 | /// predicate.
 91 | public struct PredicateResult {
    |               `- note: struct 'PredicateResult' does not conform to the 'Sendable' protocol
 92 |     /// Status indicates if the predicate matches, does not match, or fails.
 93 |     public var status: PredicateStatus
/Users/admin/builder/spi-builder-workspace/MobiusNimble/Source/NimbleNextMatchers.swift:7:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Nimble'
  5 | import MobiusCore
  6 | import MobiusTest
  7 | import Nimble
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Nimble'
  8 |
  9 | /// Convenience function for creating assertions.
    :
 22 |
 23 | let haveNonNilNext = "have a non-nil Next. Got <nil>"
 24 | let unexpectedNilParameterPredicate = Nimble.PredicateResult(bool: false, message: .expectedTo(haveNonNilNext))
    |     |- note: add '@MainActor' to make let 'unexpectedNilParameterPredicate' part of global actor 'MainActor'
    |     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 25 |
 26 | /// - Returns: a `Predicate` that matches `Next` instances with no model and no effects.
[136/136] Compiling MobiusNimble NimbleNextMatchers.swift
/Users/admin/builder/spi-builder-workspace/MobiusNimble/Source/NimbleNextMatchers.swift:24:5: warning: let 'unexpectedNilParameterPredicate' is not concurrency-safe because non-'Sendable' type 'PredicateResult' may have shared mutable state; this is an error in the Swift 6 language mode
 22 |
 23 | let haveNonNilNext = "have a non-nil Next. Got <nil>"
 24 | let unexpectedNilParameterPredicate = Nimble.PredicateResult(bool: false, message: .expectedTo(haveNonNilNext))
    |     `- warning: let 'unexpectedNilParameterPredicate' is not concurrency-safe because non-'Sendable' type 'PredicateResult' may have shared mutable state; this is an error in the Swift 6 language mode
 25 |
 26 | /// - Returns: a `Predicate` that matches `Next` instances with no model and no effects.
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Nimble/Sources/Nimble/Matchers/Predicate.swift:91:15: note: struct 'PredicateResult' does not conform to the 'Sendable' protocol
 89 | /// The value that a Predicates return to describe if the given (actual) value matches the
 90 | /// predicate.
 91 | public struct PredicateResult {
    |               `- note: struct 'PredicateResult' does not conform to the 'Sendable' protocol
 92 |     /// Status indicates if the predicate matches, does not match, or fails.
 93 |     public var status: PredicateStatus
/Users/admin/builder/spi-builder-workspace/MobiusNimble/Source/NimbleNextMatchers.swift:7:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Nimble'
  5 | import MobiusCore
  6 | import MobiusTest
  7 | import Nimble
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Nimble'
  8 |
  9 | /// Convenience function for creating assertions.
    :
 22 |
 23 | let haveNonNilNext = "have a non-nil Next. Got <nil>"
 24 | let unexpectedNilParameterPredicate = Nimble.PredicateResult(bool: false, message: .expectedTo(haveNonNilNext))
    |     |- note: add '@MainActor' to make let 'unexpectedNilParameterPredicate' part of global actor 'MainActor'
    |     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 25 |
 26 | /// - Returns: a `Predicate` that matches `Next` instances with no model and no effects.
Build complete! (22.10s)
warning: 'quick': found 1 file(s) which are unhandled; explicitly declare them as resources or exclude from the target
    /Users/admin/builder/spi-builder-workspace/.build/checkouts/Quick/Sources/Quick/PrivacyInfo.xcprivacy
Build complete.
{
  "dependencies" : [
    {
      "identity" : "swift-case-paths",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "0.10.1",
            "upper_bound" : "0.11.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/pointfreeco/swift-case-paths"
    },
    {
      "identity" : "nimble",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "10.0.0",
            "upper_bound" : "11.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/Quick/Nimble"
    },
    {
      "identity" : "quick",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "7.0.0",
            "upper_bound" : "8.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/Quick/Quick"
    }
  ],
  "manifest_display_name" : "Mobius",
  "name" : "Mobius",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "ios",
      "version" : "10.0"
    },
    {
      "name" : "macos",
      "version" : "10.12"
    },
    {
      "name" : "tvos",
      "version" : "10.0"
    },
    {
      "name" : "watchos",
      "version" : "3.0"
    }
  ],
  "products" : [
    {
      "name" : "MobiusCore",
      "targets" : [
        "MobiusCore"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "MobiusExtras",
      "targets" : [
        "MobiusExtras"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "MobiusNimble",
      "targets" : [
        "MobiusNimble"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "MobiusTest",
      "targets" : [
        "MobiusTest"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "swift_languages_versions" : [
    "5"
  ],
  "targets" : [
    {
      "c99name" : "MobiusThrowableAssertion",
      "module_type" : "ClangTarget",
      "name" : "MobiusThrowableAssertion",
      "path" : "MobiusThrowableAssertion/Source",
      "sources" : [
        "MobiusThrowableAssertion.m"
      ],
      "type" : "library"
    },
    {
      "c99name" : "MobiusTestTests",
      "module_type" : "SwiftTarget",
      "name" : "MobiusTestTests",
      "path" : "MobiusTest/Test",
      "product_dependencies" : [
        "Nimble",
        "Quick"
      ],
      "sources" : [
        "DebugDiffTests.swift",
        "FirstMatchersTests.swift",
        "InitSpecTests.swift",
        "NextMatchersTests.swift",
        "TestUtil.swift",
        "UpdateSpecTests.swift"
      ],
      "target_dependencies" : [
        "MobiusTest"
      ],
      "type" : "test"
    },
    {
      "c99name" : "MobiusTest",
      "module_type" : "SwiftTarget",
      "name" : "MobiusTest",
      "path" : "MobiusTest/Source",
      "product_memberships" : [
        "MobiusNimble",
        "MobiusTest"
      ],
      "sources" : [
        "DebugDiff.swift",
        "FirstMatchers.swift",
        "InitSpec.swift",
        "MatcherUtils.swift",
        "NextMatchers.swift",
        "SimpleDiff.swift",
        "UpdateSpec.swift"
      ],
      "target_dependencies" : [
        "MobiusCore"
      ],
      "type" : "library"
    },
    {
      "c99name" : "MobiusNimbleTests",
      "module_type" : "SwiftTarget",
      "name" : "MobiusNimbleTests",
      "path" : "MobiusNimble/Test",
      "product_dependencies" : [
        "Quick"
      ],
      "sources" : [
        "NimbleFirstMatchersTests.swift",
        "NimbleNextMatchersTests.swift",
        "TestUtil.swift"
      ],
      "target_dependencies" : [
        "MobiusNimble"
      ],
      "type" : "test"
    },
    {
      "c99name" : "MobiusNimble",
      "module_type" : "SwiftTarget",
      "name" : "MobiusNimble",
      "path" : "MobiusNimble/Source",
      "product_dependencies" : [
        "Nimble"
      ],
      "product_memberships" : [
        "MobiusNimble"
      ],
      "sources" : [
        "NimbleFirstMatchers.swift",
        "NimbleNextMatchers.swift"
      ],
      "target_dependencies" : [
        "MobiusCore",
        "MobiusTest"
      ],
      "type" : "library"
    },
    {
      "c99name" : "MobiusExtrasTests",
      "module_type" : "SwiftTarget",
      "name" : "MobiusExtrasTests",
      "path" : "MobiusExtras/Test",
      "product_dependencies" : [
        "Nimble",
        "Quick"
      ],
      "sources" : [
        "ConnectableClassTests.swift",
        "ConnectableContramapTests.swift",
        "ConnectableMapTests.swift",
        "CopyableTests.swift",
        "EventSource+ExtensionsTests.swift",
        "WikiTutorialTest.swift"
      ],
      "target_dependencies" : [
        "MobiusCore",
        "MobiusExtras",
        "MobiusThrowableAssertion"
      ],
      "type" : "test"
    },
    {
      "c99name" : "MobiusExtras",
      "module_type" : "SwiftTarget",
      "name" : "MobiusExtras",
      "path" : "MobiusExtras/Source",
      "product_memberships" : [
        "MobiusExtras"
      ],
      "sources" : [
        "BeginnerLoop.swift",
        "ConnectableClass.swift",
        "ConnectableContramap.swift",
        "ConnectableMap.swift",
        "Copyable.swift",
        "EventSourceMap.swift",
        "SimpleLogger.swift"
      ],
      "target_dependencies" : [
        "MobiusCore"
      ],
      "type" : "library"
    },
    {
      "c99name" : "MobiusCoreTests",
      "module_type" : "SwiftTarget",
      "name" : "MobiusCoreTests",
      "path" : "MobiusCore/Test",
      "product_dependencies" : [
        "Nimble",
        "Quick"
      ],
      "sources" : [
        "AnonymousDisposableTests.swift",
        "AnyConnectionTests.swift",
        "AnyMobiusLoggerTests.swift",
        "AsyncDispatchQueueConnectableTests.swift",
        "CompositeDisposableTests.swift",
        "ConnectablePublisherTests.swift",
        "EffectHandlers/AnyEffectHandlerTests.swift",
        "EffectHandlers/CallbackTests.swift",
        "EffectHandlers/EffectHandlerTests.swift",
        "EffectHandlers/EffectRouterDSLTests.swift",
        "EffectHandlers/EffectRouterTests.swift",
        "EffectHandlers/EnumRouteTests.swift",
        "EventRouterDisposalLogicalRaceRegressionTest.swift",
        "EventSources/AnyEventSourceTests.swift",
        "EventSources/CompositeEventSourceBuilderTests.swift",
        "FirstTests.swift",
        "InitializationTests.swift",
        "LoggingInitiateTests.swift",
        "LoggingUpdateTests.swift",
        "MobiusControllerTests.swift",
        "MobiusHooksTests.swift",
        "MobiusIntegrationTests.swift",
        "MobiusLoopTests.swift",
        "NextTests.swift",
        "NonReentrancyTests.swift",
        "Task+DisposableTests.swift",
        "TestingErrorHandler.swift",
        "TestingUtil.swift",
        "WorkBagTests.swift"
      ],
      "target_dependencies" : [
        "MobiusCore",
        "MobiusThrowableAssertion"
      ],
      "type" : "test"
    },
    {
      "c99name" : "MobiusCore",
      "module_type" : "SwiftTarget",
      "name" : "MobiusCore",
      "path" : "MobiusCore/Source",
      "product_dependencies" : [
        "CasePaths"
      ],
      "product_memberships" : [
        "MobiusCore",
        "MobiusExtras",
        "MobiusNimble",
        "MobiusTest"
      ],
      "sources" : [
        "AsyncDispatchQueueConnectable.swift",
        "AsyncStartStopStateMachine.swift",
        "ConcurrentAccessDetector.swift",
        "Connectable.swift",
        "ConnectablePublisher.swift",
        "Connection.swift",
        "Consumer.swift",
        "Disposables/AnonymousDisposable.swift",
        "Disposables/CompositeDisposable.swift",
        "Disposables/Disposable.swift",
        "Disposables/Task+Disposable.swift",
        "EffectHandlers/EffectCallback.swift",
        "EffectHandlers/EffectExecutor.swift",
        "EffectHandlers/EffectHandler.swift",
        "EffectHandlers/EffectRouter.swift",
        "EffectHandlers/EffectRouterDSL.swift",
        "EffectHandlers/EnumRoute.swift",
        "EffectHandlers/ThreadSafeConnectable.swift",
        "EventSources/AnyEventSource.swift",
        "EventSources/CompositeEventSourceBuilder.swift",
        "EventSources/EventSource.swift",
        "First.swift",
        "Lock.swift",
        "LoggingAdaptors.swift",
        "Mobius.swift",
        "MobiusController.swift",
        "MobiusHooks.swift",
        "MobiusLogger.swift",
        "MobiusLoop.swift",
        "Next.swift",
        "WorkBag.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.2"
}
Done.