The Swift Package Index logo.Swift Package Index

Has it really been five years since Swift Package Index launched? Read our anniversary blog post!

Build Information

Successful build of Euclid, reference main (1aeb8a), with Swift 6.1 for macOS (SPM) on 18 Jun 2025 18:14:57 UTC.

Swift 6 data race errors: 2

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.64.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/nicklockwood/Euclid.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/nicklockwood/Euclid
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
HEAD is now at 1aeb8a7 Update for 0.7.15 release
Cloned https://github.com/nicklockwood/Euclid.git
Revision (git rev-parse @):
1aeb8a7c36c22d31c74d4bd2c7e4529e3d43c097
SUCCESS checkout https://github.com/nicklockwood/Euclid.git at main
========================================
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": "euclid",
      "name": "Euclid",
      "url": "https://github.com/nicklockwood/Euclid.git",
      "version": "unspecified",
      "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/Euclid",
      "dependencies": [
      ]
    }
  ]
}
Fetching https://github.com/nicklockwood/Euclid.git
[1/10825] Fetching euclid
Fetched https://github.com/nicklockwood/Euclid.git from cache (2.61s)
Creating working copy for https://github.com/nicklockwood/Euclid.git
Working copy of https://github.com/nicklockwood/Euclid.git resolved at main (1aeb8a7)
warning: '.resolve-product-dependencies': dependency 'euclid' is not used by any target
Found 0 product dependencies
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.1
Building package at path:  $PWD
https://github.com/nicklockwood/Euclid.git
https://github.com/nicklockwood/Euclid.git
{
  "dependencies" : [
  ],
  "manifest_display_name" : "Euclid",
  "name" : "Euclid",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
  ],
  "products" : [
    {
      "name" : "Euclid",
      "targets" : [
        "Euclid"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "EuclidTests",
      "module_type" : "SwiftTarget",
      "name" : "EuclidTests",
      "path" : "Tests",
      "sources" : [
        "AngleTests.swift",
        "BoundsTests.swift",
        "CGPathTests.swift",
        "CodingTests.swift",
        "Euclid+Testing.swift",
        "LineSegmentTests.swift",
        "LineTests.swift",
        "MeshCSGTests.swift",
        "MeshExportTests.swift",
        "MeshImportTests.swift",
        "MeshLatheTests.swift",
        "MeshLoftTests.swift",
        "MeshShapeTests.swift",
        "MeshTests.swift",
        "MetadataTests.swift",
        "PathShapeTests.swift",
        "PathTests.swift",
        "PlaneTests.swift",
        "PolygonCSGTests.swift",
        "PolygonTests.swift",
        "QuaternionTests.swift",
        "RealityKitTests.swift",
        "RotationTests.swift",
        "SceneKitTests.swift",
        "StretchableTests.swift",
        "TextTests.swift",
        "TransformTests.swift",
        "UtilityTests.swift",
        "VectorTests.swift"
      ],
      "target_dependencies" : [
        "Euclid"
      ],
      "type" : "test"
    },
    {
      "c99name" : "Euclid",
      "module_type" : "SwiftTarget",
      "name" : "Euclid",
      "path" : "Sources",
      "product_memberships" : [
        "Euclid"
      ],
      "sources" : [
        "Angle.swift",
        "BSP.swift",
        "Bounded.swift",
        "Bounds.swift",
        "Color.swift",
        "Euclid+AppKit.swift",
        "Euclid+CoreGraphics.swift",
        "Euclid+CoreText.swift",
        "Euclid+RealityKit.swift",
        "Euclid+SIMD.swift",
        "Euclid+SceneKit.swift",
        "Euclid+UIKit.swift",
        "Line.swift",
        "LineSegment+CSG.swift",
        "LineSegment.swift",
        "Mesh+CSG.swift",
        "Mesh+IO.swift",
        "Mesh+OBJ.swift",
        "Mesh+STL.swift",
        "Mesh+Shapes.swift",
        "Mesh+Texcoords.swift",
        "Mesh.swift",
        "Path+Shapes.swift",
        "Path.swift",
        "PathPoint.swift",
        "Plane.swift",
        "Polygon+CSG.swift",
        "Polygon.swift",
        "Quaternion.swift",
        "Rotation.swift",
        "Stretchable.swift",
        "Transforms.swift",
        "Utilities.swift",
        "Vector.swift",
        "Vertex.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.5"
}
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
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version-2F0A5646E1D333AE.txt
[3/35] Emitting module Euclid
/Users/admin/builder/spi-builder-workspace/Sources/Polygon.swift:121:16: warning: static property 'codableClasses' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 119 |
 120 |     /// Supported `NSSecureCodable` Material base classes.
 121 |     static var codableClasses: [AnyClass] = {
     |                |- warning: static property 'codableClasses' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                |- note: convert 'codableClasses' to a 'let' constant to make 'Sendable' shared state immutable
     |                |- note: add '@MainActor' to make static property 'codableClasses' part of global actor 'MainActor'
     |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 122 |         #if canImport(AppKit) || canImport(UIKit)
 123 |         return [OSImage.self, OSColor.self] + scnMaterialTypes
/Users/admin/builder/spi-builder-workspace/Sources/Transforms.swift:215:16: warning: static property 'identity' is not concurrency-safe because non-'Sendable' type 'Transform' may have shared mutable state; this is an error in the Swift 6 language mode
123 | /// Working with intermediate transform objects instead of directly updating the vertex positions of a mesh
124 | /// is more efficient and avoids a buildup of rounding errors.
125 | public struct Transform: Hashable {
    |               `- note: consider making struct 'Transform' conform to the 'Sendable' protocol
126 |     /// The translation or position component of the transform.
127 |     public var offset: Vector
    :
213 | public extension Transform {
214 |     /// The identity transform (i.e. no transform).
215 |     static let identity = Transform()
    |                |- warning: static property 'identity' is not concurrency-safe because non-'Sendable' type 'Transform' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: add '@MainActor' to make static property 'identity' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
216 |
217 |     /// Creates a offset transform.
[4/38] Compiling Euclid Angle.swift
[5/38] Compiling Euclid BSP.swift
[6/38] Compiling Euclid Bounded.swift
[7/38] Compiling Euclid Bounds.swift
[8/38] Compiling Euclid Polygon+CSG.swift
/Users/admin/builder/spi-builder-workspace/Sources/Polygon.swift:121:16: warning: static property 'codableClasses' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 119 |
 120 |     /// Supported `NSSecureCodable` Material base classes.
 121 |     static var codableClasses: [AnyClass] = {
     |                |- warning: static property 'codableClasses' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                |- note: convert 'codableClasses' to a 'let' constant to make 'Sendable' shared state immutable
     |                |- note: add '@MainActor' to make static property 'codableClasses' part of global actor 'MainActor'
     |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 122 |         #if canImport(AppKit) || canImport(UIKit)
 123 |         return [OSImage.self, OSColor.self] + scnMaterialTypes
[9/38] Compiling Euclid Polygon.swift
/Users/admin/builder/spi-builder-workspace/Sources/Polygon.swift:121:16: warning: static property 'codableClasses' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 119 |
 120 |     /// Supported `NSSecureCodable` Material base classes.
 121 |     static var codableClasses: [AnyClass] = {
     |                |- warning: static property 'codableClasses' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                |- note: convert 'codableClasses' to a 'let' constant to make 'Sendable' shared state immutable
     |                |- note: add '@MainActor' to make static property 'codableClasses' part of global actor 'MainActor'
     |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 122 |         #if canImport(AppKit) || canImport(UIKit)
 123 |         return [OSImage.self, OSColor.self] + scnMaterialTypes
[10/38] Compiling Euclid Quaternion.swift
/Users/admin/builder/spi-builder-workspace/Sources/Polygon.swift:121:16: warning: static property 'codableClasses' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 119 |
 120 |     /// Supported `NSSecureCodable` Material base classes.
 121 |     static var codableClasses: [AnyClass] = {
     |                |- warning: static property 'codableClasses' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
     |                |- note: convert 'codableClasses' to a 'let' constant to make 'Sendable' shared state immutable
     |                |- note: add '@MainActor' to make static property 'codableClasses' part of global actor 'MainActor'
     |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 122 |         #if canImport(AppKit) || canImport(UIKit)
 123 |         return [OSImage.self, OSColor.self] + scnMaterialTypes
[11/38] Compiling Euclid Line.swift
/Users/admin/builder/spi-builder-workspace/Sources/Mesh+CSG.swift:591:17: warning: capture of 'op1' with non-sendable type '() -> Void' in a '@Sendable' closure
589 |     DispatchQueue.concurrentPerform(iterations: 2) { index in
590 |         switch index {
591 |         case 0: op1()
    |                 |- warning: capture of 'op1' with non-sendable type '() -> Void' in a '@Sendable' closure
    |                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
592 |         default: op2()
593 |         }
/Users/admin/builder/spi-builder-workspace/Sources/Mesh+CSG.swift:592:18: warning: capture of 'op2' with non-sendable type '() -> Void' in a '@Sendable' closure
590 |         switch index {
591 |         case 0: op1()
592 |         default: op2()
    |                  |- warning: capture of 'op2' with non-sendable type '() -> Void' in a '@Sendable' closure
    |                  `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
593 |         }
594 |     }
[12/38] Compiling Euclid LineSegment+CSG.swift
/Users/admin/builder/spi-builder-workspace/Sources/Mesh+CSG.swift:591:17: warning: capture of 'op1' with non-sendable type '() -> Void' in a '@Sendable' closure
589 |     DispatchQueue.concurrentPerform(iterations: 2) { index in
590 |         switch index {
591 |         case 0: op1()
    |                 |- warning: capture of 'op1' with non-sendable type '() -> Void' in a '@Sendable' closure
    |                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
592 |         default: op2()
593 |         }
/Users/admin/builder/spi-builder-workspace/Sources/Mesh+CSG.swift:592:18: warning: capture of 'op2' with non-sendable type '() -> Void' in a '@Sendable' closure
590 |         switch index {
591 |         case 0: op1()
592 |         default: op2()
    |                  |- warning: capture of 'op2' with non-sendable type '() -> Void' in a '@Sendable' closure
    |                  `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
593 |         }
594 |     }
[13/38] Compiling Euclid LineSegment.swift
/Users/admin/builder/spi-builder-workspace/Sources/Mesh+CSG.swift:591:17: warning: capture of 'op1' with non-sendable type '() -> Void' in a '@Sendable' closure
589 |     DispatchQueue.concurrentPerform(iterations: 2) { index in
590 |         switch index {
591 |         case 0: op1()
    |                 |- warning: capture of 'op1' with non-sendable type '() -> Void' in a '@Sendable' closure
    |                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
592 |         default: op2()
593 |         }
/Users/admin/builder/spi-builder-workspace/Sources/Mesh+CSG.swift:592:18: warning: capture of 'op2' with non-sendable type '() -> Void' in a '@Sendable' closure
590 |         switch index {
591 |         case 0: op1()
592 |         default: op2()
    |                  |- warning: capture of 'op2' with non-sendable type '() -> Void' in a '@Sendable' closure
    |                  `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
593 |         }
594 |     }
[14/38] Compiling Euclid Mesh+CSG.swift
/Users/admin/builder/spi-builder-workspace/Sources/Mesh+CSG.swift:591:17: warning: capture of 'op1' with non-sendable type '() -> Void' in a '@Sendable' closure
589 |     DispatchQueue.concurrentPerform(iterations: 2) { index in
590 |         switch index {
591 |         case 0: op1()
    |                 |- warning: capture of 'op1' with non-sendable type '() -> Void' in a '@Sendable' closure
    |                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
592 |         default: op2()
593 |         }
/Users/admin/builder/spi-builder-workspace/Sources/Mesh+CSG.swift:592:18: warning: capture of 'op2' with non-sendable type '() -> Void' in a '@Sendable' closure
590 |         switch index {
591 |         case 0: op1()
592 |         default: op2()
    |                  |- warning: capture of 'op2' with non-sendable type '() -> Void' in a '@Sendable' closure
    |                  `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
593 |         }
594 |     }
[15/38] Compiling Euclid Rotation.swift
/Users/admin/builder/spi-builder-workspace/Sources/Transforms.swift:215:16: warning: static property 'identity' is not concurrency-safe because non-'Sendable' type 'Transform' may have shared mutable state; this is an error in the Swift 6 language mode
123 | /// Working with intermediate transform objects instead of directly updating the vertex positions of a mesh
124 | /// is more efficient and avoids a buildup of rounding errors.
125 | public struct Transform: Hashable {
    |               `- note: consider making struct 'Transform' conform to the 'Sendable' protocol
126 |     /// The translation or position component of the transform.
127 |     public var offset: Vector
    :
213 | public extension Transform {
214 |     /// The identity transform (i.e. no transform).
215 |     static let identity = Transform()
    |                |- warning: static property 'identity' is not concurrency-safe because non-'Sendable' type 'Transform' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: add '@MainActor' to make static property 'identity' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
216 |
217 |     /// Creates a offset transform.
[16/38] Compiling Euclid Stretchable.swift
/Users/admin/builder/spi-builder-workspace/Sources/Transforms.swift:215:16: warning: static property 'identity' is not concurrency-safe because non-'Sendable' type 'Transform' may have shared mutable state; this is an error in the Swift 6 language mode
123 | /// Working with intermediate transform objects instead of directly updating the vertex positions of a mesh
124 | /// is more efficient and avoids a buildup of rounding errors.
125 | public struct Transform: Hashable {
    |               `- note: consider making struct 'Transform' conform to the 'Sendable' protocol
126 |     /// The translation or position component of the transform.
127 |     public var offset: Vector
    :
213 | public extension Transform {
214 |     /// The identity transform (i.e. no transform).
215 |     static let identity = Transform()
    |                |- warning: static property 'identity' is not concurrency-safe because non-'Sendable' type 'Transform' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: add '@MainActor' to make static property 'identity' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
216 |
217 |     /// Creates a offset transform.
[17/38] Compiling Euclid Transforms.swift
/Users/admin/builder/spi-builder-workspace/Sources/Transforms.swift:215:16: warning: static property 'identity' is not concurrency-safe because non-'Sendable' type 'Transform' may have shared mutable state; this is an error in the Swift 6 language mode
123 | /// Working with intermediate transform objects instead of directly updating the vertex positions of a mesh
124 | /// is more efficient and avoids a buildup of rounding errors.
125 | public struct Transform: Hashable {
    |               `- note: consider making struct 'Transform' conform to the 'Sendable' protocol
126 |     /// The translation or position component of the transform.
127 |     public var offset: Vector
    :
213 | public extension Transform {
214 |     /// The identity transform (i.e. no transform).
215 |     static let identity = Transform()
    |                |- warning: static property 'identity' is not concurrency-safe because non-'Sendable' type 'Transform' may have shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: add '@MainActor' to make static property 'identity' part of global actor 'MainActor'
    |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
216 |
217 |     /// Creates a offset transform.
[18/38] Compiling Euclid Utilities.swift
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:766:22: warning: capture of 'fn' with non-sendable type '([T]) -> [U]' in a '@Sendable' closure
764 |     var a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x: [U]?
765 |     DispatchQueue.concurrentPerform(iterations: parts.count) { index in
766 |         let result = fn(parts[index])
    |                      |- warning: capture of 'fn' with non-sendable type '([T]) -> [U]' in a '@Sendable' closure
    |                      `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
767 |         switch index {
768 |         case 0: a = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:766:25: warning: capture of 'parts' with non-sendable type '[[T]]' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |            `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
764 |     var a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x: [U]?
765 |     DispatchQueue.concurrentPerform(iterations: parts.count) { index in
766 |         let result = fn(parts[index])
    |                         `- warning: capture of 'parts' with non-sendable type '[[T]]' in a '@Sendable' closure
767 |         switch index {
768 |         case 0: a = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:768:17: warning: capture of 'a' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
766 |         let result = fn(parts[index])
767 |         switch index {
768 |         case 0: a = result
    |                 `- warning: capture of 'a' with non-sendable type '[U]?' in a '@Sendable' closure
769 |         case 1: b = result
770 |         case 2: c = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:769:17: warning: capture of 'b' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
767 |         switch index {
768 |         case 0: a = result
769 |         case 1: b = result
    |                 `- warning: capture of 'b' with non-sendable type '[U]?' in a '@Sendable' closure
770 |         case 2: c = result
771 |         case 3: d = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:770:17: warning: capture of 'c' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
768 |         case 0: a = result
769 |         case 1: b = result
770 |         case 2: c = result
    |                 `- warning: capture of 'c' with non-sendable type '[U]?' in a '@Sendable' closure
771 |         case 3: d = result
772 |         case 4: e = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:771:17: warning: capture of 'd' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
769 |         case 1: b = result
770 |         case 2: c = result
771 |         case 3: d = result
    |                 `- warning: capture of 'd' with non-sendable type '[U]?' in a '@Sendable' closure
772 |         case 4: e = result
773 |         case 5: f = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:772:17: warning: capture of 'e' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
770 |         case 2: c = result
771 |         case 3: d = result
772 |         case 4: e = result
    |                 `- warning: capture of 'e' with non-sendable type '[U]?' in a '@Sendable' closure
773 |         case 5: f = result
774 |         case 6: g = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:773:17: warning: capture of 'f' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
771 |         case 3: d = result
772 |         case 4: e = result
773 |         case 5: f = result
    |                 `- warning: capture of 'f' with non-sendable type '[U]?' in a '@Sendable' closure
774 |         case 6: g = result
775 |         case 7: h = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:774:17: warning: capture of 'g' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
772 |         case 4: e = result
773 |         case 5: f = result
774 |         case 6: g = result
    |                 `- warning: capture of 'g' with non-sendable type '[U]?' in a '@Sendable' closure
775 |         case 7: h = result
776 |         case 8: i = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:775:17: warning: capture of 'h' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
773 |         case 5: f = result
774 |         case 6: g = result
775 |         case 7: h = result
    |                 `- warning: capture of 'h' with non-sendable type '[U]?' in a '@Sendable' closure
776 |         case 8: i = result
777 |         case 9: j = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:776:17: warning: capture of 'i' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
774 |         case 6: g = result
775 |         case 7: h = result
776 |         case 8: i = result
    |                 `- warning: capture of 'i' with non-sendable type '[U]?' in a '@Sendable' closure
777 |         case 9: j = result
778 |         case 10: k = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:777:17: warning: capture of 'j' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
775 |         case 7: h = result
776 |         case 8: i = result
777 |         case 9: j = result
    |                 `- warning: capture of 'j' with non-sendable type '[U]?' in a '@Sendable' closure
778 |         case 10: k = result
779 |         case 11: l = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:778:18: warning: capture of 'k' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
776 |         case 8: i = result
777 |         case 9: j = result
778 |         case 10: k = result
    |                  `- warning: capture of 'k' with non-sendable type '[U]?' in a '@Sendable' closure
779 |         case 11: l = result
780 |         case 12: m = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:779:18: warning: capture of 'l' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
777 |         case 9: j = result
778 |         case 10: k = result
779 |         case 11: l = result
    |                  `- warning: capture of 'l' with non-sendable type '[U]?' in a '@Sendable' closure
780 |         case 12: m = result
781 |         case 13: n = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:780:18: warning: capture of 'm' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
778 |         case 10: k = result
779 |         case 11: l = result
780 |         case 12: m = result
    |                  `- warning: capture of 'm' with non-sendable type '[U]?' in a '@Sendable' closure
781 |         case 13: n = result
782 |         case 14: o = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:781:18: warning: capture of 'n' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
779 |         case 11: l = result
780 |         case 12: m = result
781 |         case 13: n = result
    |                  `- warning: capture of 'n' with non-sendable type '[U]?' in a '@Sendable' closure
782 |         case 14: o = result
783 |         case 15: p = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:782:18: warning: capture of 'o' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
780 |         case 12: m = result
781 |         case 13: n = result
782 |         case 14: o = result
    |                  `- warning: capture of 'o' with non-sendable type '[U]?' in a '@Sendable' closure
783 |         case 15: p = result
784 |         case 16: q = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:783:18: warning: capture of 'p' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
781 |         case 13: n = result
782 |         case 14: o = result
783 |         case 15: p = result
    |                  `- warning: capture of 'p' with non-sendable type '[U]?' in a '@Sendable' closure
784 |         case 16: q = result
785 |         case 17: r = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:784:18: warning: capture of 'q' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
782 |         case 14: o = result
783 |         case 15: p = result
784 |         case 16: q = result
    |                  `- warning: capture of 'q' with non-sendable type '[U]?' in a '@Sendable' closure
785 |         case 17: r = result
786 |         case 18: s = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:785:18: warning: capture of 'r' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
783 |         case 15: p = result
784 |         case 16: q = result
785 |         case 17: r = result
    |                  `- warning: capture of 'r' with non-sendable type '[U]?' in a '@Sendable' closure
786 |         case 18: s = result
787 |         case 19: t = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:786:18: warning: capture of 's' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
784 |         case 16: q = result
785 |         case 17: r = result
786 |         case 18: s = result
    |                  `- warning: capture of 's' with non-sendable type '[U]?' in a '@Sendable' closure
787 |         case 19: t = result
788 |         case 20: u = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:787:18: warning: capture of 't' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
785 |         case 17: r = result
786 |         case 18: s = result
787 |         case 19: t = result
    |                  `- warning: capture of 't' with non-sendable type '[U]?' in a '@Sendable' closure
788 |         case 20: u = result
789 |         case 21: v = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:788:18: warning: capture of 'u' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
786 |         case 18: s = result
787 |         case 19: t = result
788 |         case 20: u = result
    |                  `- warning: capture of 'u' with non-sendable type '[U]?' in a '@Sendable' closure
789 |         case 21: v = result
790 |         case 22: w = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:789:18: warning: capture of 'v' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
787 |         case 19: t = result
788 |         case 20: u = result
789 |         case 21: v = result
    |                  `- warning: capture of 'v' with non-sendable type '[U]?' in a '@Sendable' closure
790 |         case 22: w = result
791 |         case 23: x = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:790:18: warning: capture of 'w' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
788 |         case 20: u = result
789 |         case 21: v = result
790 |         case 22: w = result
    |                  `- warning: capture of 'w' with non-sendable type '[U]?' in a '@Sendable' closure
791 |         case 23: x = result
792 |         default: preconditionFailure()
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:791:18: warning: capture of 'x' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
789 |         case 21: v = result
790 |         case 22: w = result
791 |         case 23: x = result
    |                  `- warning: capture of 'x' with non-sendable type '[U]?' in a '@Sendable' closure
792 |         default: preconditionFailure()
793 |         }
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:768:17: warning: mutation of captured var 'a' in concurrently-executing code
766 |         let result = fn(parts[index])
767 |         switch index {
768 |         case 0: a = result
    |                 `- warning: mutation of captured var 'a' in concurrently-executing code
769 |         case 1: b = result
770 |         case 2: c = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:769:17: warning: mutation of captured var 'b' in concurrently-executing code
767 |         switch index {
768 |         case 0: a = result
769 |         case 1: b = result
    |                 `- warning: mutation of captured var 'b' in concurrently-executing code
770 |         case 2: c = result
771 |         case 3: d = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:770:17: warning: mutation of captured var 'c' in concurrently-executing code
768 |         case 0: a = result
769 |         case 1: b = result
770 |         case 2: c = result
    |                 `- warning: mutation of captured var 'c' in concurrently-executing code
771 |         case 3: d = result
772 |         case 4: e = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:771:17: warning: mutation of captured var 'd' in concurrently-executing code
769 |         case 1: b = result
770 |         case 2: c = result
771 |         case 3: d = result
    |                 `- warning: mutation of captured var 'd' in concurrently-executing code
772 |         case 4: e = result
773 |         case 5: f = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:772:17: warning: mutation of captured var 'e' in concurrently-executing code
770 |         case 2: c = result
771 |         case 3: d = result
772 |         case 4: e = result
    |                 `- warning: mutation of captured var 'e' in concurrently-executing code
773 |         case 5: f = result
774 |         case 6: g = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:773:17: warning: mutation of captured var 'f' in concurrently-executing code
771 |         case 3: d = result
772 |         case 4: e = result
773 |         case 5: f = result
    |                 `- warning: mutation of captured var 'f' in concurrently-executing code
774 |         case 6: g = result
775 |         case 7: h = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:774:17: warning: mutation of captured var 'g' in concurrently-executing code
772 |         case 4: e = result
773 |         case 5: f = result
774 |         case 6: g = result
    |                 `- warning: mutation of captured var 'g' in concurrently-executing code
775 |         case 7: h = result
776 |         case 8: i = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:775:17: warning: mutation of captured var 'h' in concurrently-executing code
773 |         case 5: f = result
774 |         case 6: g = result
775 |         case 7: h = result
    |                 `- warning: mutation of captured var 'h' in concurrently-executing code
776 |         case 8: i = result
777 |         case 9: j = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:776:17: warning: mutation of captured var 'i' in concurrently-executing code
774 |         case 6: g = result
775 |         case 7: h = result
776 |         case 8: i = result
    |                 `- warning: mutation of captured var 'i' in concurrently-executing code
777 |         case 9: j = result
778 |         case 10: k = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:777:17: warning: mutation of captured var 'j' in concurrently-executing code
775 |         case 7: h = result
776 |         case 8: i = result
777 |         case 9: j = result
    |                 `- warning: mutation of captured var 'j' in concurrently-executing code
778 |         case 10: k = result
779 |         case 11: l = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:778:18: warning: mutation of captured var 'k' in concurrently-executing code
776 |         case 8: i = result
777 |         case 9: j = result
778 |         case 10: k = result
    |                  `- warning: mutation of captured var 'k' in concurrently-executing code
779 |         case 11: l = result
780 |         case 12: m = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:779:18: warning: mutation of captured var 'l' in concurrently-executing code
777 |         case 9: j = result
778 |         case 10: k = result
779 |         case 11: l = result
    |                  `- warning: mutation of captured var 'l' in concurrently-executing code
780 |         case 12: m = result
781 |         case 13: n = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:780:18: warning: mutation of captured var 'm' in concurrently-executing code
778 |         case 10: k = result
779 |         case 11: l = result
780 |         case 12: m = result
    |                  `- warning: mutation of captured var 'm' in concurrently-executing code
781 |         case 13: n = result
782 |         case 14: o = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:781:18: warning: mutation of captured var 'n' in concurrently-executing code
779 |         case 11: l = result
780 |         case 12: m = result
781 |         case 13: n = result
    |                  `- warning: mutation of captured var 'n' in concurrently-executing code
782 |         case 14: o = result
783 |         case 15: p = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:782:18: warning: mutation of captured var 'o' in concurrently-executing code
780 |         case 12: m = result
781 |         case 13: n = result
782 |         case 14: o = result
    |                  `- warning: mutation of captured var 'o' in concurrently-executing code
783 |         case 15: p = result
784 |         case 16: q = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:783:18: warning: mutation of captured var 'p' in concurrently-executing code
781 |         case 13: n = result
782 |         case 14: o = result
783 |         case 15: p = result
    |                  `- warning: mutation of captured var 'p' in concurrently-executing code
784 |         case 16: q = result
785 |         case 17: r = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:784:18: warning: mutation of captured var 'q' in concurrently-executing code
782 |         case 14: o = result
783 |         case 15: p = result
784 |         case 16: q = result
    |                  `- warning: mutation of captured var 'q' in concurrently-executing code
785 |         case 17: r = result
786 |         case 18: s = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:785:18: warning: mutation of captured var 'r' in concurrently-executing code
783 |         case 15: p = result
784 |         case 16: q = result
785 |         case 17: r = result
    |                  `- warning: mutation of captured var 'r' in concurrently-executing code
786 |         case 18: s = result
787 |         case 19: t = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:786:18: warning: mutation of captured var 's' in concurrently-executing code
784 |         case 16: q = result
785 |         case 17: r = result
786 |         case 18: s = result
    |                  `- warning: mutation of captured var 's' in concurrently-executing code
787 |         case 19: t = result
788 |         case 20: u = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:787:18: warning: mutation of captured var 't' in concurrently-executing code
785 |         case 17: r = result
786 |         case 18: s = result
787 |         case 19: t = result
    |                  `- warning: mutation of captured var 't' in concurrently-executing code
788 |         case 20: u = result
789 |         case 21: v = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:788:18: warning: mutation of captured var 'u' in concurrently-executing code
786 |         case 18: s = result
787 |         case 19: t = result
788 |         case 20: u = result
    |                  `- warning: mutation of captured var 'u' in concurrently-executing code
789 |         case 21: v = result
790 |         case 22: w = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:789:18: warning: mutation of captured var 'v' in concurrently-executing code
787 |         case 19: t = result
788 |         case 20: u = result
789 |         case 21: v = result
    |                  `- warning: mutation of captured var 'v' in concurrently-executing code
790 |         case 22: w = result
791 |         case 23: x = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:790:18: warning: mutation of captured var 'w' in concurrently-executing code
788 |         case 20: u = result
789 |         case 21: v = result
790 |         case 22: w = result
    |                  `- warning: mutation of captured var 'w' in concurrently-executing code
791 |         case 23: x = result
792 |         default: preconditionFailure()
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:791:18: warning: mutation of captured var 'x' in concurrently-executing code
789 |         case 21: v = result
790 |         case 22: w = result
791 |         case 23: x = result
    |                  `- warning: mutation of captured var 'x' in concurrently-executing code
792 |         default: preconditionFailure()
793 |         }
[19/38] Compiling Euclid Vector.swift
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:766:22: warning: capture of 'fn' with non-sendable type '([T]) -> [U]' in a '@Sendable' closure
764 |     var a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x: [U]?
765 |     DispatchQueue.concurrentPerform(iterations: parts.count) { index in
766 |         let result = fn(parts[index])
    |                      |- warning: capture of 'fn' with non-sendable type '([T]) -> [U]' in a '@Sendable' closure
    |                      `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
767 |         switch index {
768 |         case 0: a = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:766:25: warning: capture of 'parts' with non-sendable type '[[T]]' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |            `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
764 |     var a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x: [U]?
765 |     DispatchQueue.concurrentPerform(iterations: parts.count) { index in
766 |         let result = fn(parts[index])
    |                         `- warning: capture of 'parts' with non-sendable type '[[T]]' in a '@Sendable' closure
767 |         switch index {
768 |         case 0: a = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:768:17: warning: capture of 'a' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
766 |         let result = fn(parts[index])
767 |         switch index {
768 |         case 0: a = result
    |                 `- warning: capture of 'a' with non-sendable type '[U]?' in a '@Sendable' closure
769 |         case 1: b = result
770 |         case 2: c = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:769:17: warning: capture of 'b' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
767 |         switch index {
768 |         case 0: a = result
769 |         case 1: b = result
    |                 `- warning: capture of 'b' with non-sendable type '[U]?' in a '@Sendable' closure
770 |         case 2: c = result
771 |         case 3: d = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:770:17: warning: capture of 'c' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
768 |         case 0: a = result
769 |         case 1: b = result
770 |         case 2: c = result
    |                 `- warning: capture of 'c' with non-sendable type '[U]?' in a '@Sendable' closure
771 |         case 3: d = result
772 |         case 4: e = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:771:17: warning: capture of 'd' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
769 |         case 1: b = result
770 |         case 2: c = result
771 |         case 3: d = result
    |                 `- warning: capture of 'd' with non-sendable type '[U]?' in a '@Sendable' closure
772 |         case 4: e = result
773 |         case 5: f = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:772:17: warning: capture of 'e' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
770 |         case 2: c = result
771 |         case 3: d = result
772 |         case 4: e = result
    |                 `- warning: capture of 'e' with non-sendable type '[U]?' in a '@Sendable' closure
773 |         case 5: f = result
774 |         case 6: g = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:773:17: warning: capture of 'f' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
771 |         case 3: d = result
772 |         case 4: e = result
773 |         case 5: f = result
    |                 `- warning: capture of 'f' with non-sendable type '[U]?' in a '@Sendable' closure
774 |         case 6: g = result
775 |         case 7: h = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:774:17: warning: capture of 'g' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
772 |         case 4: e = result
773 |         case 5: f = result
774 |         case 6: g = result
    |                 `- warning: capture of 'g' with non-sendable type '[U]?' in a '@Sendable' closure
775 |         case 7: h = result
776 |         case 8: i = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:775:17: warning: capture of 'h' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
773 |         case 5: f = result
774 |         case 6: g = result
775 |         case 7: h = result
    |                 `- warning: capture of 'h' with non-sendable type '[U]?' in a '@Sendable' closure
776 |         case 8: i = result
777 |         case 9: j = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:776:17: warning: capture of 'i' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
774 |         case 6: g = result
775 |         case 7: h = result
776 |         case 8: i = result
    |                 `- warning: capture of 'i' with non-sendable type '[U]?' in a '@Sendable' closure
777 |         case 9: j = result
778 |         case 10: k = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:777:17: warning: capture of 'j' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
775 |         case 7: h = result
776 |         case 8: i = result
777 |         case 9: j = result
    |                 `- warning: capture of 'j' with non-sendable type '[U]?' in a '@Sendable' closure
778 |         case 10: k = result
779 |         case 11: l = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:778:18: warning: capture of 'k' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
776 |         case 8: i = result
777 |         case 9: j = result
778 |         case 10: k = result
    |                  `- warning: capture of 'k' with non-sendable type '[U]?' in a '@Sendable' closure
779 |         case 11: l = result
780 |         case 12: m = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:779:18: warning: capture of 'l' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
777 |         case 9: j = result
778 |         case 10: k = result
779 |         case 11: l = result
    |                  `- warning: capture of 'l' with non-sendable type '[U]?' in a '@Sendable' closure
780 |         case 12: m = result
781 |         case 13: n = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:780:18: warning: capture of 'm' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
778 |         case 10: k = result
779 |         case 11: l = result
780 |         case 12: m = result
    |                  `- warning: capture of 'm' with non-sendable type '[U]?' in a '@Sendable' closure
781 |         case 13: n = result
782 |         case 14: o = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:781:18: warning: capture of 'n' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
779 |         case 11: l = result
780 |         case 12: m = result
781 |         case 13: n = result
    |                  `- warning: capture of 'n' with non-sendable type '[U]?' in a '@Sendable' closure
782 |         case 14: o = result
783 |         case 15: p = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:782:18: warning: capture of 'o' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
780 |         case 12: m = result
781 |         case 13: n = result
782 |         case 14: o = result
    |                  `- warning: capture of 'o' with non-sendable type '[U]?' in a '@Sendable' closure
783 |         case 15: p = result
784 |         case 16: q = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:783:18: warning: capture of 'p' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
781 |         case 13: n = result
782 |         case 14: o = result
783 |         case 15: p = result
    |                  `- warning: capture of 'p' with non-sendable type '[U]?' in a '@Sendable' closure
784 |         case 16: q = result
785 |         case 17: r = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:784:18: warning: capture of 'q' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
782 |         case 14: o = result
783 |         case 15: p = result
784 |         case 16: q = result
    |                  `- warning: capture of 'q' with non-sendable type '[U]?' in a '@Sendable' closure
785 |         case 17: r = result
786 |         case 18: s = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:785:18: warning: capture of 'r' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
783 |         case 15: p = result
784 |         case 16: q = result
785 |         case 17: r = result
    |                  `- warning: capture of 'r' with non-sendable type '[U]?' in a '@Sendable' closure
786 |         case 18: s = result
787 |         case 19: t = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:786:18: warning: capture of 's' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
784 |         case 16: q = result
785 |         case 17: r = result
786 |         case 18: s = result
    |                  `- warning: capture of 's' with non-sendable type '[U]?' in a '@Sendable' closure
787 |         case 19: t = result
788 |         case 20: u = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:787:18: warning: capture of 't' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
785 |         case 17: r = result
786 |         case 18: s = result
787 |         case 19: t = result
    |                  `- warning: capture of 't' with non-sendable type '[U]?' in a '@Sendable' closure
788 |         case 20: u = result
789 |         case 21: v = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:788:18: warning: capture of 'u' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
786 |         case 18: s = result
787 |         case 19: t = result
788 |         case 20: u = result
    |                  `- warning: capture of 'u' with non-sendable type '[U]?' in a '@Sendable' closure
789 |         case 21: v = result
790 |         case 22: w = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:789:18: warning: capture of 'v' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
787 |         case 19: t = result
788 |         case 20: u = result
789 |         case 21: v = result
    |                  `- warning: capture of 'v' with non-sendable type '[U]?' in a '@Sendable' closure
790 |         case 22: w = result
791 |         case 23: x = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:790:18: warning: capture of 'w' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
788 |         case 20: u = result
789 |         case 21: v = result
790 |         case 22: w = result
    |                  `- warning: capture of 'w' with non-sendable type '[U]?' in a '@Sendable' closure
791 |         case 23: x = result
792 |         default: preconditionFailure()
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:791:18: warning: capture of 'x' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
789 |         case 21: v = result
790 |         case 22: w = result
791 |         case 23: x = result
    |                  `- warning: capture of 'x' with non-sendable type '[U]?' in a '@Sendable' closure
792 |         default: preconditionFailure()
793 |         }
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:768:17: warning: mutation of captured var 'a' in concurrently-executing code
766 |         let result = fn(parts[index])
767 |         switch index {
768 |         case 0: a = result
    |                 `- warning: mutation of captured var 'a' in concurrently-executing code
769 |         case 1: b = result
770 |         case 2: c = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:769:17: warning: mutation of captured var 'b' in concurrently-executing code
767 |         switch index {
768 |         case 0: a = result
769 |         case 1: b = result
    |                 `- warning: mutation of captured var 'b' in concurrently-executing code
770 |         case 2: c = result
771 |         case 3: d = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:770:17: warning: mutation of captured var 'c' in concurrently-executing code
768 |         case 0: a = result
769 |         case 1: b = result
770 |         case 2: c = result
    |                 `- warning: mutation of captured var 'c' in concurrently-executing code
771 |         case 3: d = result
772 |         case 4: e = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:771:17: warning: mutation of captured var 'd' in concurrently-executing code
769 |         case 1: b = result
770 |         case 2: c = result
771 |         case 3: d = result
    |                 `- warning: mutation of captured var 'd' in concurrently-executing code
772 |         case 4: e = result
773 |         case 5: f = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:772:17: warning: mutation of captured var 'e' in concurrently-executing code
770 |         case 2: c = result
771 |         case 3: d = result
772 |         case 4: e = result
    |                 `- warning: mutation of captured var 'e' in concurrently-executing code
773 |         case 5: f = result
774 |         case 6: g = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:773:17: warning: mutation of captured var 'f' in concurrently-executing code
771 |         case 3: d = result
772 |         case 4: e = result
773 |         case 5: f = result
    |                 `- warning: mutation of captured var 'f' in concurrently-executing code
774 |         case 6: g = result
775 |         case 7: h = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:774:17: warning: mutation of captured var 'g' in concurrently-executing code
772 |         case 4: e = result
773 |         case 5: f = result
774 |         case 6: g = result
    |                 `- warning: mutation of captured var 'g' in concurrently-executing code
775 |         case 7: h = result
776 |         case 8: i = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:775:17: warning: mutation of captured var 'h' in concurrently-executing code
773 |         case 5: f = result
774 |         case 6: g = result
775 |         case 7: h = result
    |                 `- warning: mutation of captured var 'h' in concurrently-executing code
776 |         case 8: i = result
777 |         case 9: j = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:776:17: warning: mutation of captured var 'i' in concurrently-executing code
774 |         case 6: g = result
775 |         case 7: h = result
776 |         case 8: i = result
    |                 `- warning: mutation of captured var 'i' in concurrently-executing code
777 |         case 9: j = result
778 |         case 10: k = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:777:17: warning: mutation of captured var 'j' in concurrently-executing code
775 |         case 7: h = result
776 |         case 8: i = result
777 |         case 9: j = result
    |                 `- warning: mutation of captured var 'j' in concurrently-executing code
778 |         case 10: k = result
779 |         case 11: l = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:778:18: warning: mutation of captured var 'k' in concurrently-executing code
776 |         case 8: i = result
777 |         case 9: j = result
778 |         case 10: k = result
    |                  `- warning: mutation of captured var 'k' in concurrently-executing code
779 |         case 11: l = result
780 |         case 12: m = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:779:18: warning: mutation of captured var 'l' in concurrently-executing code
777 |         case 9: j = result
778 |         case 10: k = result
779 |         case 11: l = result
    |                  `- warning: mutation of captured var 'l' in concurrently-executing code
780 |         case 12: m = result
781 |         case 13: n = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:780:18: warning: mutation of captured var 'm' in concurrently-executing code
778 |         case 10: k = result
779 |         case 11: l = result
780 |         case 12: m = result
    |                  `- warning: mutation of captured var 'm' in concurrently-executing code
781 |         case 13: n = result
782 |         case 14: o = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:781:18: warning: mutation of captured var 'n' in concurrently-executing code
779 |         case 11: l = result
780 |         case 12: m = result
781 |         case 13: n = result
    |                  `- warning: mutation of captured var 'n' in concurrently-executing code
782 |         case 14: o = result
783 |         case 15: p = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:782:18: warning: mutation of captured var 'o' in concurrently-executing code
780 |         case 12: m = result
781 |         case 13: n = result
782 |         case 14: o = result
    |                  `- warning: mutation of captured var 'o' in concurrently-executing code
783 |         case 15: p = result
784 |         case 16: q = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:783:18: warning: mutation of captured var 'p' in concurrently-executing code
781 |         case 13: n = result
782 |         case 14: o = result
783 |         case 15: p = result
    |                  `- warning: mutation of captured var 'p' in concurrently-executing code
784 |         case 16: q = result
785 |         case 17: r = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:784:18: warning: mutation of captured var 'q' in concurrently-executing code
782 |         case 14: o = result
783 |         case 15: p = result
784 |         case 16: q = result
    |                  `- warning: mutation of captured var 'q' in concurrently-executing code
785 |         case 17: r = result
786 |         case 18: s = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:785:18: warning: mutation of captured var 'r' in concurrently-executing code
783 |         case 15: p = result
784 |         case 16: q = result
785 |         case 17: r = result
    |                  `- warning: mutation of captured var 'r' in concurrently-executing code
786 |         case 18: s = result
787 |         case 19: t = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:786:18: warning: mutation of captured var 's' in concurrently-executing code
784 |         case 16: q = result
785 |         case 17: r = result
786 |         case 18: s = result
    |                  `- warning: mutation of captured var 's' in concurrently-executing code
787 |         case 19: t = result
788 |         case 20: u = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:787:18: warning: mutation of captured var 't' in concurrently-executing code
785 |         case 17: r = result
786 |         case 18: s = result
787 |         case 19: t = result
    |                  `- warning: mutation of captured var 't' in concurrently-executing code
788 |         case 20: u = result
789 |         case 21: v = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:788:18: warning: mutation of captured var 'u' in concurrently-executing code
786 |         case 18: s = result
787 |         case 19: t = result
788 |         case 20: u = result
    |                  `- warning: mutation of captured var 'u' in concurrently-executing code
789 |         case 21: v = result
790 |         case 22: w = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:789:18: warning: mutation of captured var 'v' in concurrently-executing code
787 |         case 19: t = result
788 |         case 20: u = result
789 |         case 21: v = result
    |                  `- warning: mutation of captured var 'v' in concurrently-executing code
790 |         case 22: w = result
791 |         case 23: x = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:790:18: warning: mutation of captured var 'w' in concurrently-executing code
788 |         case 20: u = result
789 |         case 21: v = result
790 |         case 22: w = result
    |                  `- warning: mutation of captured var 'w' in concurrently-executing code
791 |         case 23: x = result
792 |         default: preconditionFailure()
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:791:18: warning: mutation of captured var 'x' in concurrently-executing code
789 |         case 21: v = result
790 |         case 22: w = result
791 |         case 23: x = result
    |                  `- warning: mutation of captured var 'x' in concurrently-executing code
792 |         default: preconditionFailure()
793 |         }
[20/38] Compiling Euclid Vertex.swift
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:766:22: warning: capture of 'fn' with non-sendable type '([T]) -> [U]' in a '@Sendable' closure
764 |     var a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x: [U]?
765 |     DispatchQueue.concurrentPerform(iterations: parts.count) { index in
766 |         let result = fn(parts[index])
    |                      |- warning: capture of 'fn' with non-sendable type '([T]) -> [U]' in a '@Sendable' closure
    |                      `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
767 |         switch index {
768 |         case 0: a = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:766:25: warning: capture of 'parts' with non-sendable type '[[T]]' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |            `- note: consider making generic parameter 'T' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
764 |     var a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x: [U]?
765 |     DispatchQueue.concurrentPerform(iterations: parts.count) { index in
766 |         let result = fn(parts[index])
    |                         `- warning: capture of 'parts' with non-sendable type '[[T]]' in a '@Sendable' closure
767 |         switch index {
768 |         case 0: a = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:768:17: warning: capture of 'a' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
766 |         let result = fn(parts[index])
767 |         switch index {
768 |         case 0: a = result
    |                 `- warning: capture of 'a' with non-sendable type '[U]?' in a '@Sendable' closure
769 |         case 1: b = result
770 |         case 2: c = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:769:17: warning: capture of 'b' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
767 |         switch index {
768 |         case 0: a = result
769 |         case 1: b = result
    |                 `- warning: capture of 'b' with non-sendable type '[U]?' in a '@Sendable' closure
770 |         case 2: c = result
771 |         case 3: d = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:770:17: warning: capture of 'c' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
768 |         case 0: a = result
769 |         case 1: b = result
770 |         case 2: c = result
    |                 `- warning: capture of 'c' with non-sendable type '[U]?' in a '@Sendable' closure
771 |         case 3: d = result
772 |         case 4: e = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:771:17: warning: capture of 'd' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
769 |         case 1: b = result
770 |         case 2: c = result
771 |         case 3: d = result
    |                 `- warning: capture of 'd' with non-sendable type '[U]?' in a '@Sendable' closure
772 |         case 4: e = result
773 |         case 5: f = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:772:17: warning: capture of 'e' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
770 |         case 2: c = result
771 |         case 3: d = result
772 |         case 4: e = result
    |                 `- warning: capture of 'e' with non-sendable type '[U]?' in a '@Sendable' closure
773 |         case 5: f = result
774 |         case 6: g = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:773:17: warning: capture of 'f' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
771 |         case 3: d = result
772 |         case 4: e = result
773 |         case 5: f = result
    |                 `- warning: capture of 'f' with non-sendable type '[U]?' in a '@Sendable' closure
774 |         case 6: g = result
775 |         case 7: h = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:774:17: warning: capture of 'g' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
772 |         case 4: e = result
773 |         case 5: f = result
774 |         case 6: g = result
    |                 `- warning: capture of 'g' with non-sendable type '[U]?' in a '@Sendable' closure
775 |         case 7: h = result
776 |         case 8: i = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:775:17: warning: capture of 'h' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
773 |         case 5: f = result
774 |         case 6: g = result
775 |         case 7: h = result
    |                 `- warning: capture of 'h' with non-sendable type '[U]?' in a '@Sendable' closure
776 |         case 8: i = result
777 |         case 9: j = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:776:17: warning: capture of 'i' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
774 |         case 6: g = result
775 |         case 7: h = result
776 |         case 8: i = result
    |                 `- warning: capture of 'i' with non-sendable type '[U]?' in a '@Sendable' closure
777 |         case 9: j = result
778 |         case 10: k = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:777:17: warning: capture of 'j' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
775 |         case 7: h = result
776 |         case 8: i = result
777 |         case 9: j = result
    |                 `- warning: capture of 'j' with non-sendable type '[U]?' in a '@Sendable' closure
778 |         case 10: k = result
779 |         case 11: l = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:778:18: warning: capture of 'k' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
776 |         case 8: i = result
777 |         case 9: j = result
778 |         case 10: k = result
    |                  `- warning: capture of 'k' with non-sendable type '[U]?' in a '@Sendable' closure
779 |         case 11: l = result
780 |         case 12: m = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:779:18: warning: capture of 'l' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
777 |         case 9: j = result
778 |         case 10: k = result
779 |         case 11: l = result
    |                  `- warning: capture of 'l' with non-sendable type '[U]?' in a '@Sendable' closure
780 |         case 12: m = result
781 |         case 13: n = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:780:18: warning: capture of 'm' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
778 |         case 10: k = result
779 |         case 11: l = result
780 |         case 12: m = result
    |                  `- warning: capture of 'm' with non-sendable type '[U]?' in a '@Sendable' closure
781 |         case 13: n = result
782 |         case 14: o = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:781:18: warning: capture of 'n' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
779 |         case 11: l = result
780 |         case 12: m = result
781 |         case 13: n = result
    |                  `- warning: capture of 'n' with non-sendable type '[U]?' in a '@Sendable' closure
782 |         case 14: o = result
783 |         case 15: p = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:782:18: warning: capture of 'o' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
780 |         case 12: m = result
781 |         case 13: n = result
782 |         case 14: o = result
    |                  `- warning: capture of 'o' with non-sendable type '[U]?' in a '@Sendable' closure
783 |         case 15: p = result
784 |         case 16: q = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:783:18: warning: capture of 'p' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
781 |         case 13: n = result
782 |         case 14: o = result
783 |         case 15: p = result
    |                  `- warning: capture of 'p' with non-sendable type '[U]?' in a '@Sendable' closure
784 |         case 16: q = result
785 |         case 17: r = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:784:18: warning: capture of 'q' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
782 |         case 14: o = result
783 |         case 15: p = result
784 |         case 16: q = result
    |                  `- warning: capture of 'q' with non-sendable type '[U]?' in a '@Sendable' closure
785 |         case 17: r = result
786 |         case 18: s = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:785:18: warning: capture of 'r' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
783 |         case 15: p = result
784 |         case 16: q = result
785 |         case 17: r = result
    |                  `- warning: capture of 'r' with non-sendable type '[U]?' in a '@Sendable' closure
786 |         case 18: s = result
787 |         case 19: t = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:786:18: warning: capture of 's' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
784 |         case 16: q = result
785 |         case 17: r = result
786 |         case 18: s = result
    |                  `- warning: capture of 's' with non-sendable type '[U]?' in a '@Sendable' closure
787 |         case 19: t = result
788 |         case 20: u = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:787:18: warning: capture of 't' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
785 |         case 17: r = result
786 |         case 18: s = result
787 |         case 19: t = result
    |                  `- warning: capture of 't' with non-sendable type '[U]?' in a '@Sendable' closure
788 |         case 20: u = result
789 |         case 21: v = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:788:18: warning: capture of 'u' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
786 |         case 18: s = result
787 |         case 19: t = result
788 |         case 20: u = result
    |                  `- warning: capture of 'u' with non-sendable type '[U]?' in a '@Sendable' closure
789 |         case 21: v = result
790 |         case 22: w = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:789:18: warning: capture of 'v' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
787 |         case 19: t = result
788 |         case 20: u = result
789 |         case 21: v = result
    |                  `- warning: capture of 'v' with non-sendable type '[U]?' in a '@Sendable' closure
790 |         case 22: w = result
791 |         case 23: x = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:790:18: warning: capture of 'w' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
788 |         case 20: u = result
789 |         case 21: v = result
790 |         case 22: w = result
    |                  `- warning: capture of 'w' with non-sendable type '[U]?' in a '@Sendable' closure
791 |         case 23: x = result
792 |         default: preconditionFailure()
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:791:18: warning: capture of 'x' with non-sendable type '[U]?' in a '@Sendable' closure
746 | private let cpuCores = ProcessInfo.processInfo.activeProcessorCount
747 |
748 | func batch<T, U>(
    |               `- note: consider making generic parameter 'U' conform to the 'Sendable' protocol
749 |     _ elements: [T],
750 |     stride minBatchSize: Int,
    :
789 |         case 21: v = result
790 |         case 22: w = result
791 |         case 23: x = result
    |                  `- warning: capture of 'x' with non-sendable type '[U]?' in a '@Sendable' closure
792 |         default: preconditionFailure()
793 |         }
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:768:17: warning: mutation of captured var 'a' in concurrently-executing code
766 |         let result = fn(parts[index])
767 |         switch index {
768 |         case 0: a = result
    |                 `- warning: mutation of captured var 'a' in concurrently-executing code
769 |         case 1: b = result
770 |         case 2: c = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:769:17: warning: mutation of captured var 'b' in concurrently-executing code
767 |         switch index {
768 |         case 0: a = result
769 |         case 1: b = result
    |                 `- warning: mutation of captured var 'b' in concurrently-executing code
770 |         case 2: c = result
771 |         case 3: d = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:770:17: warning: mutation of captured var 'c' in concurrently-executing code
768 |         case 0: a = result
769 |         case 1: b = result
770 |         case 2: c = result
    |                 `- warning: mutation of captured var 'c' in concurrently-executing code
771 |         case 3: d = result
772 |         case 4: e = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:771:17: warning: mutation of captured var 'd' in concurrently-executing code
769 |         case 1: b = result
770 |         case 2: c = result
771 |         case 3: d = result
    |                 `- warning: mutation of captured var 'd' in concurrently-executing code
772 |         case 4: e = result
773 |         case 5: f = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:772:17: warning: mutation of captured var 'e' in concurrently-executing code
770 |         case 2: c = result
771 |         case 3: d = result
772 |         case 4: e = result
    |                 `- warning: mutation of captured var 'e' in concurrently-executing code
773 |         case 5: f = result
774 |         case 6: g = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:773:17: warning: mutation of captured var 'f' in concurrently-executing code
771 |         case 3: d = result
772 |         case 4: e = result
773 |         case 5: f = result
    |                 `- warning: mutation of captured var 'f' in concurrently-executing code
774 |         case 6: g = result
775 |         case 7: h = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:774:17: warning: mutation of captured var 'g' in concurrently-executing code
772 |         case 4: e = result
773 |         case 5: f = result
774 |         case 6: g = result
    |                 `- warning: mutation of captured var 'g' in concurrently-executing code
775 |         case 7: h = result
776 |         case 8: i = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:775:17: warning: mutation of captured var 'h' in concurrently-executing code
773 |         case 5: f = result
774 |         case 6: g = result
775 |         case 7: h = result
    |                 `- warning: mutation of captured var 'h' in concurrently-executing code
776 |         case 8: i = result
777 |         case 9: j = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:776:17: warning: mutation of captured var 'i' in concurrently-executing code
774 |         case 6: g = result
775 |         case 7: h = result
776 |         case 8: i = result
    |                 `- warning: mutation of captured var 'i' in concurrently-executing code
777 |         case 9: j = result
778 |         case 10: k = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:777:17: warning: mutation of captured var 'j' in concurrently-executing code
775 |         case 7: h = result
776 |         case 8: i = result
777 |         case 9: j = result
    |                 `- warning: mutation of captured var 'j' in concurrently-executing code
778 |         case 10: k = result
779 |         case 11: l = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:778:18: warning: mutation of captured var 'k' in concurrently-executing code
776 |         case 8: i = result
777 |         case 9: j = result
778 |         case 10: k = result
    |                  `- warning: mutation of captured var 'k' in concurrently-executing code
779 |         case 11: l = result
780 |         case 12: m = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:779:18: warning: mutation of captured var 'l' in concurrently-executing code
777 |         case 9: j = result
778 |         case 10: k = result
779 |         case 11: l = result
    |                  `- warning: mutation of captured var 'l' in concurrently-executing code
780 |         case 12: m = result
781 |         case 13: n = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:780:18: warning: mutation of captured var 'm' in concurrently-executing code
778 |         case 10: k = result
779 |         case 11: l = result
780 |         case 12: m = result
    |                  `- warning: mutation of captured var 'm' in concurrently-executing code
781 |         case 13: n = result
782 |         case 14: o = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:781:18: warning: mutation of captured var 'n' in concurrently-executing code
779 |         case 11: l = result
780 |         case 12: m = result
781 |         case 13: n = result
    |                  `- warning: mutation of captured var 'n' in concurrently-executing code
782 |         case 14: o = result
783 |         case 15: p = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:782:18: warning: mutation of captured var 'o' in concurrently-executing code
780 |         case 12: m = result
781 |         case 13: n = result
782 |         case 14: o = result
    |                  `- warning: mutation of captured var 'o' in concurrently-executing code
783 |         case 15: p = result
784 |         case 16: q = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:783:18: warning: mutation of captured var 'p' in concurrently-executing code
781 |         case 13: n = result
782 |         case 14: o = result
783 |         case 15: p = result
    |                  `- warning: mutation of captured var 'p' in concurrently-executing code
784 |         case 16: q = result
785 |         case 17: r = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:784:18: warning: mutation of captured var 'q' in concurrently-executing code
782 |         case 14: o = result
783 |         case 15: p = result
784 |         case 16: q = result
    |                  `- warning: mutation of captured var 'q' in concurrently-executing code
785 |         case 17: r = result
786 |         case 18: s = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:785:18: warning: mutation of captured var 'r' in concurrently-executing code
783 |         case 15: p = result
784 |         case 16: q = result
785 |         case 17: r = result
    |                  `- warning: mutation of captured var 'r' in concurrently-executing code
786 |         case 18: s = result
787 |         case 19: t = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:786:18: warning: mutation of captured var 's' in concurrently-executing code
784 |         case 16: q = result
785 |         case 17: r = result
786 |         case 18: s = result
    |                  `- warning: mutation of captured var 's' in concurrently-executing code
787 |         case 19: t = result
788 |         case 20: u = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:787:18: warning: mutation of captured var 't' in concurrently-executing code
785 |         case 17: r = result
786 |         case 18: s = result
787 |         case 19: t = result
    |                  `- warning: mutation of captured var 't' in concurrently-executing code
788 |         case 20: u = result
789 |         case 21: v = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:788:18: warning: mutation of captured var 'u' in concurrently-executing code
786 |         case 18: s = result
787 |         case 19: t = result
788 |         case 20: u = result
    |                  `- warning: mutation of captured var 'u' in concurrently-executing code
789 |         case 21: v = result
790 |         case 22: w = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:789:18: warning: mutation of captured var 'v' in concurrently-executing code
787 |         case 19: t = result
788 |         case 20: u = result
789 |         case 21: v = result
    |                  `- warning: mutation of captured var 'v' in concurrently-executing code
790 |         case 22: w = result
791 |         case 23: x = result
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:790:18: warning: mutation of captured var 'w' in concurrently-executing code
788 |         case 20: u = result
789 |         case 21: v = result
790 |         case 22: w = result
    |                  `- warning: mutation of captured var 'w' in concurrently-executing code
791 |         case 23: x = result
792 |         default: preconditionFailure()
/Users/admin/builder/spi-builder-workspace/Sources/Utilities.swift:791:18: warning: mutation of captured var 'x' in concurrently-executing code
789 |         case 21: v = result
790 |         case 22: w = result
791 |         case 23: x = result
    |                  `- warning: mutation of captured var 'x' in concurrently-executing code
792 |         default: preconditionFailure()
793 |         }
[21/38] Compiling Euclid Color.swift
[22/38] Compiling Euclid Euclid+AppKit.swift
[23/38] Compiling Euclid Euclid+CoreGraphics.swift
[24/38] Compiling Euclid Euclid+CoreText.swift
[25/38] Compiling Euclid Path.swift
[26/38] Compiling Euclid PathPoint.swift
[27/38] Compiling Euclid Plane.swift
[28/38] Compiling Euclid Mesh+IO.swift
[29/38] Compiling Euclid Mesh+OBJ.swift
[30/38] Compiling Euclid Mesh+STL.swift
[31/38] Compiling Euclid Mesh+Shapes.swift
[32/38] Compiling Euclid Mesh+Texcoords.swift
[33/38] Compiling Euclid Mesh.swift
[34/38] Compiling Euclid Path+Shapes.swift
[35/38] Compiling Euclid Euclid+RealityKit.swift
/Users/admin/builder/spi-builder-workspace/Sources/Euclid+RealityKit.swift:78:50: warning: call to main actor-isolated static method 'generate(from:withName:options:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
 61 |
 62 | @available(macOS 12.0, iOS 15.0, *)
 63 | private func defaultMaterialLookup(_ material: Polygon.Material?) -> RealityKit.Material? {
    |              `- note: add '@MainActor' to make global function 'defaultMaterialLookup' part of global actor 'MainActor'
 64 |     switch material {
 65 |     case let wrapper as MaterialWrapper:
    :
 76 |         return defaultMaterialLookup(image.cgImage)
 77 |     case let image as CGImage where CFGetTypeID(image) == CGImage.typeID:
 78 |         guard let texture = try? TextureResource.generate(
    |                                                  `- warning: call to main actor-isolated static method 'generate(from:withName:options:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
 79 |             from: image,
 80 |             options: .init(semantic: .color)
RealityFoundation.TextureResource.generate:6:49: note: calls to static method 'generate(from:withName:options:)' from outside of its actor context are implicitly asynchronous
4 |   @available(macCatalyst, introduced: 15.0, deprecated: 18.0, renamed: "init(image:withName:options:)")
5 |   @available(visionOS, introduced: 1.0, deprecated: 2.0, renamed: "init(image:withName:options:)")
6 |   @MainActor @preconcurrency public static func generate(from cgImage: CGImage, withName resourceName: String? = nil, options: TextureResource.CreateOptions) throws -> TextureResource}
  |                                                 `- note: calls to static method 'generate(from:withName:options:)' from outside of its actor context are implicitly asynchronous
7 |
/Users/admin/builder/spi-builder-workspace/Sources/Euclid+RealityKit.swift:430:43: warning: main actor-isolated property 'contents' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
428 |     init(_ meshResource: MeshResource, materials: [Polygon.Material?] = []) {
429 |         var models = [String: Mesh]()
430 |         self.init(submeshes: meshResource.contents.instances.compactMap {
    |                                           `- warning: main actor-isolated property 'contents' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
431 |             var mesh = models[$0.model]
432 |             if mesh == nil, let model = meshResource.contents.models[$0.model] {
RealityFoundation.MeshResource.contents:2:39: note: property declared here
1 | class MeshResource {
2 | @MainActor @preconcurrency public var contents: MeshResource.Contents { get }}
  |                                       `- note: property declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/Euclid+RealityKit.swift:432:54: warning: main actor-isolated property 'contents' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
430 |         self.init(submeshes: meshResource.contents.instances.compactMap {
431 |             var mesh = models[$0.model]
432 |             if mesh == nil, let model = meshResource.contents.models[$0.model] {
    |                                                      `- warning: main actor-isolated property 'contents' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
433 |                 let modelMesh = Mesh(model, materials: materials)
434 |                 models[$0.model] = modelMesh
RealityFoundation.MeshResource.contents:2:39: note: property declared here
1 | class MeshResource {
2 | @MainActor @preconcurrency public var contents: MeshResource.Contents { get }}
  |                                       `- note: property declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/Euclid+RealityKit.swift:468:39: warning: main actor-isolated property 'model' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
466 |     ///   - materialLookup: An optional closure to map the RealityKit materials to Euclid materials.
467 |     init(_ modelEntity: ModelEntity, materialLookup: RealityKitMaterialProvider? = nil) {
468 |         guard let model = modelEntity.model else {
    |                                       `- warning: main actor-isolated property 'model' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
469 |             self = .empty
470 |             return
RealityFoundation.HasModel.model:2:39: note: property declared here
1 | protocol HasModel {
2 | @MainActor @preconcurrency public var model: ModelComponent? { get set }}
  |                                       `- note: property declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/Euclid+RealityKit.swift:473:41: warning: main actor-isolated property 'transform' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
471 |         }
472 |         self.init(model, materialLookup: materialLookup)
473 |         transform(by: .init(modelEntity.transform))
    |                                         `- warning: main actor-isolated property 'transform' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
474 |     }
475 |
RealityFoundation.HasTransform.transform:2:39: note: property declared here
1 | protocol HasTransform {
2 | @MainActor @preconcurrency public var transform: Transform { get set }}
  |                                       `- note: property declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/Euclid+RealityKit.swift:519:52: warning: main actor-isolated property 'avPlayer' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
517 |                 return MaterialWrapper(material)
518 |             case let videoMaterial as VideoMaterial:
519 |                 guard let avPlayer = videoMaterial.avPlayer else { return nil }
    |                                                    `- warning: main actor-isolated property 'avPlayer' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
520 |                 var material = VideoMaterial(avPlayer: avPlayer)
521 |                 #if compiler(>=6)
RealityFoundation.VideoMaterial.avPlayer:2:39: note: property declared here
1 | struct VideoMaterial {
2 | @MainActor @preconcurrency public var avPlayer: AVPlayer? { get set }}
  |                                       `- note: property declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/Euclid+RealityKit.swift:520:32: warning: call to main actor-isolated initializer 'init(avPlayer:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
518 |             case let videoMaterial as VideoMaterial:
519 |                 guard let avPlayer = videoMaterial.avPlayer else { return nil }
520 |                 var material = VideoMaterial(avPlayer: avPlayer)
    |                                `- warning: call to main actor-isolated initializer 'init(avPlayer:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
521 |                 #if compiler(>=6)
522 |                 if #available(visionOS 1.0, macOS 15.0, iOS 18.0, *) {
RealityFoundation.VideoMaterial.init:2:35: note: calls to initializer 'init(avPlayer:)' from outside of its actor context are implicitly asynchronous
1 | struct VideoMaterial {
2 | @MainActor @preconcurrency public init(avPlayer: AVPlayer)}
  |                                   `- note: calls to initializer 'init(avPlayer:)' from outside of its actor context are implicitly asynchronous
3 |
/Users/admin/builder/spi-builder-workspace/Sources/Euclid+RealityKit.swift:523:41: warning: main actor-isolated property 'preferredViewingMode' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
521 |                 #if compiler(>=6)
522 |                 if #available(visionOS 1.0, macOS 15.0, iOS 18.0, *) {
523 |                     material.controller.preferredViewingMode = videoMaterial.controller.preferredViewingMode
    |                                         `- warning: main actor-isolated property 'preferredViewingMode' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
524 |                     material.triangleFillMode = videoMaterial.triangleFillMode
525 |                     if #available(visionOS 2.0, *) {
RealityFoundation.VideoPlaybackController.preferredViewingMode:2:39: note: mutation of this property is only permitted within the actor
1 | class VideoPlaybackController {
2 | @MainActor @preconcurrency public var preferredViewingMode: VideoPlaybackController.ViewingMode { get set }}
  |                                       `- note: mutation of this property is only permitted within the actor
3 |
/Users/admin/builder/spi-builder-workspace/Sources/Euclid+RealityKit.swift:523:89: warning: main actor-isolated property 'preferredViewingMode' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
521 |                 #if compiler(>=6)
522 |                 if #available(visionOS 1.0, macOS 15.0, iOS 18.0, *) {
523 |                     material.controller.preferredViewingMode = videoMaterial.controller.preferredViewingMode
    |                                                                                         `- warning: main actor-isolated property 'preferredViewingMode' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
524 |                     material.triangleFillMode = videoMaterial.triangleFillMode
525 |                     if #available(visionOS 2.0, *) {
RealityFoundation.VideoPlaybackController.preferredViewingMode:2:39: note: property declared here
1 | class VideoPlaybackController {
2 | @MainActor @preconcurrency public var preferredViewingMode: VideoPlaybackController.ViewingMode { get set }}
  |                                       `- note: property declared here
3 |
[36/38] Compiling Euclid Euclid+SIMD.swift
/Users/admin/builder/spi-builder-workspace/Sources/Euclid+RealityKit.swift:78:50: warning: call to main actor-isolated static method 'generate(from:withName:options:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
 61 |
 62 | @available(macOS 12.0, iOS 15.0, *)
 63 | private func defaultMaterialLookup(_ material: Polygon.Material?) -> RealityKit.Material? {
    |              `- note: add '@MainActor' to make global function 'defaultMaterialLookup' part of global actor 'MainActor'
 64 |     switch material {
 65 |     case let wrapper as MaterialWrapper:
    :
 76 |         return defaultMaterialLookup(image.cgImage)
 77 |     case let image as CGImage where CFGetTypeID(image) == CGImage.typeID:
 78 |         guard let texture = try? TextureResource.generate(
    |                                                  `- warning: call to main actor-isolated static method 'generate(from:withName:options:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
 79 |             from: image,
 80 |             options: .init(semantic: .color)
RealityFoundation.TextureResource.generate:6:49: note: calls to static method 'generate(from:withName:options:)' from outside of its actor context are implicitly asynchronous
4 |   @available(macCatalyst, introduced: 15.0, deprecated: 18.0, renamed: "init(image:withName:options:)")
5 |   @available(visionOS, introduced: 1.0, deprecated: 2.0, renamed: "init(image:withName:options:)")
6 |   @MainActor @preconcurrency public static func generate(from cgImage: CGImage, withName resourceName: String? = nil, options: TextureResource.CreateOptions) throws -> TextureResource}
  |                                                 `- note: calls to static method 'generate(from:withName:options:)' from outside of its actor context are implicitly asynchronous
7 |
/Users/admin/builder/spi-builder-workspace/Sources/Euclid+RealityKit.swift:430:43: warning: main actor-isolated property 'contents' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
428 |     init(_ meshResource: MeshResource, materials: [Polygon.Material?] = []) {
429 |         var models = [String: Mesh]()
430 |         self.init(submeshes: meshResource.contents.instances.compactMap {
    |                                           `- warning: main actor-isolated property 'contents' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
431 |             var mesh = models[$0.model]
432 |             if mesh == nil, let model = meshResource.contents.models[$0.model] {
RealityFoundation.MeshResource.contents:2:39: note: property declared here
1 | class MeshResource {
2 | @MainActor @preconcurrency public var contents: MeshResource.Contents { get }}
  |                                       `- note: property declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/Euclid+RealityKit.swift:432:54: warning: main actor-isolated property 'contents' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
430 |         self.init(submeshes: meshResource.contents.instances.compactMap {
431 |             var mesh = models[$0.model]
432 |             if mesh == nil, let model = meshResource.contents.models[$0.model] {
    |                                                      `- warning: main actor-isolated property 'contents' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
433 |                 let modelMesh = Mesh(model, materials: materials)
434 |                 models[$0.model] = modelMesh
RealityFoundation.MeshResource.contents:2:39: note: property declared here
1 | class MeshResource {
2 | @MainActor @preconcurrency public var contents: MeshResource.Contents { get }}
  |                                       `- note: property declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/Euclid+RealityKit.swift:468:39: warning: main actor-isolated property 'model' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
466 |     ///   - materialLookup: An optional closure to map the RealityKit materials to Euclid materials.
467 |     init(_ modelEntity: ModelEntity, materialLookup: RealityKitMaterialProvider? = nil) {
468 |         guard let model = modelEntity.model else {
    |                                       `- warning: main actor-isolated property 'model' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
469 |             self = .empty
470 |             return
RealityFoundation.HasModel.model:2:39: note: property declared here
1 | protocol HasModel {
2 | @MainActor @preconcurrency public var model: ModelComponent? { get set }}
  |                                       `- note: property declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/Euclid+RealityKit.swift:473:41: warning: main actor-isolated property 'transform' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
471 |         }
472 |         self.init(model, materialLookup: materialLookup)
473 |         transform(by: .init(modelEntity.transform))
    |                                         `- warning: main actor-isolated property 'transform' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
474 |     }
475 |
RealityFoundation.HasTransform.transform:2:39: note: property declared here
1 | protocol HasTransform {
2 | @MainActor @preconcurrency public var transform: Transform { get set }}
  |                                       `- note: property declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/Euclid+RealityKit.swift:519:52: warning: main actor-isolated property 'avPlayer' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
517 |                 return MaterialWrapper(material)
518 |             case let videoMaterial as VideoMaterial:
519 |                 guard let avPlayer = videoMaterial.avPlayer else { return nil }
    |                                                    `- warning: main actor-isolated property 'avPlayer' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
520 |                 var material = VideoMaterial(avPlayer: avPlayer)
521 |                 #if compiler(>=6)
RealityFoundation.VideoMaterial.avPlayer:2:39: note: property declared here
1 | struct VideoMaterial {
2 | @MainActor @preconcurrency public var avPlayer: AVPlayer? { get set }}
  |                                       `- note: property declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/Euclid+RealityKit.swift:520:32: warning: call to main actor-isolated initializer 'init(avPlayer:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
518 |             case let videoMaterial as VideoMaterial:
519 |                 guard let avPlayer = videoMaterial.avPlayer else { return nil }
520 |                 var material = VideoMaterial(avPlayer: avPlayer)
    |                                `- warning: call to main actor-isolated initializer 'init(avPlayer:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
521 |                 #if compiler(>=6)
522 |                 if #available(visionOS 1.0, macOS 15.0, iOS 18.0, *) {
RealityFoundation.VideoMaterial.init:2:35: note: calls to initializer 'init(avPlayer:)' from outside of its actor context are implicitly asynchronous
1 | struct VideoMaterial {
2 | @MainActor @preconcurrency public init(avPlayer: AVPlayer)}
  |                                   `- note: calls to initializer 'init(avPlayer:)' from outside of its actor context are implicitly asynchronous
3 |
/Users/admin/builder/spi-builder-workspace/Sources/Euclid+RealityKit.swift:523:41: warning: main actor-isolated property 'preferredViewingMode' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
521 |                 #if compiler(>=6)
522 |                 if #available(visionOS 1.0, macOS 15.0, iOS 18.0, *) {
523 |                     material.controller.preferredViewingMode = videoMaterial.controller.preferredViewingMode
    |                                         `- warning: main actor-isolated property 'preferredViewingMode' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
524 |                     material.triangleFillMode = videoMaterial.triangleFillMode
525 |                     if #available(visionOS 2.0, *) {
RealityFoundation.VideoPlaybackController.preferredViewingMode:2:39: note: mutation of this property is only permitted within the actor
1 | class VideoPlaybackController {
2 | @MainActor @preconcurrency public var preferredViewingMode: VideoPlaybackController.ViewingMode { get set }}
  |                                       `- note: mutation of this property is only permitted within the actor
3 |
/Users/admin/builder/spi-builder-workspace/Sources/Euclid+RealityKit.swift:523:89: warning: main actor-isolated property 'preferredViewingMode' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
521 |                 #if compiler(>=6)
522 |                 if #available(visionOS 1.0, macOS 15.0, iOS 18.0, *) {
523 |                     material.controller.preferredViewingMode = videoMaterial.controller.preferredViewingMode
    |                                                                                         `- warning: main actor-isolated property 'preferredViewingMode' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
524 |                     material.triangleFillMode = videoMaterial.triangleFillMode
525 |                     if #available(visionOS 2.0, *) {
RealityFoundation.VideoPlaybackController.preferredViewingMode:2:39: note: property declared here
1 | class VideoPlaybackController {
2 | @MainActor @preconcurrency public var preferredViewingMode: VideoPlaybackController.ViewingMode { get set }}
  |                                       `- note: property declared here
3 |
[37/38] Compiling Euclid Euclid+SceneKit.swift
/Users/admin/builder/spi-builder-workspace/Sources/Euclid+RealityKit.swift:78:50: warning: call to main actor-isolated static method 'generate(from:withName:options:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
 61 |
 62 | @available(macOS 12.0, iOS 15.0, *)
 63 | private func defaultMaterialLookup(_ material: Polygon.Material?) -> RealityKit.Material? {
    |              `- note: add '@MainActor' to make global function 'defaultMaterialLookup' part of global actor 'MainActor'
 64 |     switch material {
 65 |     case let wrapper as MaterialWrapper:
    :
 76 |         return defaultMaterialLookup(image.cgImage)
 77 |     case let image as CGImage where CFGetTypeID(image) == CGImage.typeID:
 78 |         guard let texture = try? TextureResource.generate(
    |                                                  `- warning: call to main actor-isolated static method 'generate(from:withName:options:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
 79 |             from: image,
 80 |             options: .init(semantic: .color)
RealityFoundation.TextureResource.generate:6:49: note: calls to static method 'generate(from:withName:options:)' from outside of its actor context are implicitly asynchronous
4 |   @available(macCatalyst, introduced: 15.0, deprecated: 18.0, renamed: "init(image:withName:options:)")
5 |   @available(visionOS, introduced: 1.0, deprecated: 2.0, renamed: "init(image:withName:options:)")
6 |   @MainActor @preconcurrency public static func generate(from cgImage: CGImage, withName resourceName: String? = nil, options: TextureResource.CreateOptions) throws -> TextureResource}
  |                                                 `- note: calls to static method 'generate(from:withName:options:)' from outside of its actor context are implicitly asynchronous
7 |
/Users/admin/builder/spi-builder-workspace/Sources/Euclid+RealityKit.swift:430:43: warning: main actor-isolated property 'contents' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
428 |     init(_ meshResource: MeshResource, materials: [Polygon.Material?] = []) {
429 |         var models = [String: Mesh]()
430 |         self.init(submeshes: meshResource.contents.instances.compactMap {
    |                                           `- warning: main actor-isolated property 'contents' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
431 |             var mesh = models[$0.model]
432 |             if mesh == nil, let model = meshResource.contents.models[$0.model] {
RealityFoundation.MeshResource.contents:2:39: note: property declared here
1 | class MeshResource {
2 | @MainActor @preconcurrency public var contents: MeshResource.Contents { get }}
  |                                       `- note: property declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/Euclid+RealityKit.swift:432:54: warning: main actor-isolated property 'contents' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
430 |         self.init(submeshes: meshResource.contents.instances.compactMap {
431 |             var mesh = models[$0.model]
432 |             if mesh == nil, let model = meshResource.contents.models[$0.model] {
    |                                                      `- warning: main actor-isolated property 'contents' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
433 |                 let modelMesh = Mesh(model, materials: materials)
434 |                 models[$0.model] = modelMesh
RealityFoundation.MeshResource.contents:2:39: note: property declared here
1 | class MeshResource {
2 | @MainActor @preconcurrency public var contents: MeshResource.Contents { get }}
  |                                       `- note: property declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/Euclid+RealityKit.swift:468:39: warning: main actor-isolated property 'model' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
466 |     ///   - materialLookup: An optional closure to map the RealityKit materials to Euclid materials.
467 |     init(_ modelEntity: ModelEntity, materialLookup: RealityKitMaterialProvider? = nil) {
468 |         guard let model = modelEntity.model else {
    |                                       `- warning: main actor-isolated property 'model' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
469 |             self = .empty
470 |             return
RealityFoundation.HasModel.model:2:39: note: property declared here
1 | protocol HasModel {
2 | @MainActor @preconcurrency public var model: ModelComponent? { get set }}
  |                                       `- note: property declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/Euclid+RealityKit.swift:473:41: warning: main actor-isolated property 'transform' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
471 |         }
472 |         self.init(model, materialLookup: materialLookup)
473 |         transform(by: .init(modelEntity.transform))
    |                                         `- warning: main actor-isolated property 'transform' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
474 |     }
475 |
RealityFoundation.HasTransform.transform:2:39: note: property declared here
1 | protocol HasTransform {
2 | @MainActor @preconcurrency public var transform: Transform { get set }}
  |                                       `- note: property declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/Euclid+RealityKit.swift:519:52: warning: main actor-isolated property 'avPlayer' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
517 |                 return MaterialWrapper(material)
518 |             case let videoMaterial as VideoMaterial:
519 |                 guard let avPlayer = videoMaterial.avPlayer else { return nil }
    |                                                    `- warning: main actor-isolated property 'avPlayer' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
520 |                 var material = VideoMaterial(avPlayer: avPlayer)
521 |                 #if compiler(>=6)
RealityFoundation.VideoMaterial.avPlayer:2:39: note: property declared here
1 | struct VideoMaterial {
2 | @MainActor @preconcurrency public var avPlayer: AVPlayer? { get set }}
  |                                       `- note: property declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/Euclid+RealityKit.swift:520:32: warning: call to main actor-isolated initializer 'init(avPlayer:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
518 |             case let videoMaterial as VideoMaterial:
519 |                 guard let avPlayer = videoMaterial.avPlayer else { return nil }
520 |                 var material = VideoMaterial(avPlayer: avPlayer)
    |                                `- warning: call to main actor-isolated initializer 'init(avPlayer:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
521 |                 #if compiler(>=6)
522 |                 if #available(visionOS 1.0, macOS 15.0, iOS 18.0, *) {
RealityFoundation.VideoMaterial.init:2:35: note: calls to initializer 'init(avPlayer:)' from outside of its actor context are implicitly asynchronous
1 | struct VideoMaterial {
2 | @MainActor @preconcurrency public init(avPlayer: AVPlayer)}
  |                                   `- note: calls to initializer 'init(avPlayer:)' from outside of its actor context are implicitly asynchronous
3 |
/Users/admin/builder/spi-builder-workspace/Sources/Euclid+RealityKit.swift:523:41: warning: main actor-isolated property 'preferredViewingMode' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
521 |                 #if compiler(>=6)
522 |                 if #available(visionOS 1.0, macOS 15.0, iOS 18.0, *) {
523 |                     material.controller.preferredViewingMode = videoMaterial.controller.preferredViewingMode
    |                                         `- warning: main actor-isolated property 'preferredViewingMode' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
524 |                     material.triangleFillMode = videoMaterial.triangleFillMode
525 |                     if #available(visionOS 2.0, *) {
RealityFoundation.VideoPlaybackController.preferredViewingMode:2:39: note: mutation of this property is only permitted within the actor
1 | class VideoPlaybackController {
2 | @MainActor @preconcurrency public var preferredViewingMode: VideoPlaybackController.ViewingMode { get set }}
  |                                       `- note: mutation of this property is only permitted within the actor
3 |
/Users/admin/builder/spi-builder-workspace/Sources/Euclid+RealityKit.swift:523:89: warning: main actor-isolated property 'preferredViewingMode' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
521 |                 #if compiler(>=6)
522 |                 if #available(visionOS 1.0, macOS 15.0, iOS 18.0, *) {
523 |                     material.controller.preferredViewingMode = videoMaterial.controller.preferredViewingMode
    |                                                                                         `- warning: main actor-isolated property 'preferredViewingMode' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
524 |                     material.triangleFillMode = videoMaterial.triangleFillMode
525 |                     if #available(visionOS 2.0, *) {
RealityFoundation.VideoPlaybackController.preferredViewingMode:2:39: note: property declared here
1 | class VideoPlaybackController {
2 | @MainActor @preconcurrency public var preferredViewingMode: VideoPlaybackController.ViewingMode { get set }}
  |                                       `- note: property declared here
3 |
[38/38] Compiling Euclid Euclid+UIKit.swift
/Users/admin/builder/spi-builder-workspace/Sources/Euclid+RealityKit.swift:78:50: warning: call to main actor-isolated static method 'generate(from:withName:options:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
 61 |
 62 | @available(macOS 12.0, iOS 15.0, *)
 63 | private func defaultMaterialLookup(_ material: Polygon.Material?) -> RealityKit.Material? {
    |              `- note: add '@MainActor' to make global function 'defaultMaterialLookup' part of global actor 'MainActor'
 64 |     switch material {
 65 |     case let wrapper as MaterialWrapper:
    :
 76 |         return defaultMaterialLookup(image.cgImage)
 77 |     case let image as CGImage where CFGetTypeID(image) == CGImage.typeID:
 78 |         guard let texture = try? TextureResource.generate(
    |                                                  `- warning: call to main actor-isolated static method 'generate(from:withName:options:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
 79 |             from: image,
 80 |             options: .init(semantic: .color)
RealityFoundation.TextureResource.generate:6:49: note: calls to static method 'generate(from:withName:options:)' from outside of its actor context are implicitly asynchronous
4 |   @available(macCatalyst, introduced: 15.0, deprecated: 18.0, renamed: "init(image:withName:options:)")
5 |   @available(visionOS, introduced: 1.0, deprecated: 2.0, renamed: "init(image:withName:options:)")
6 |   @MainActor @preconcurrency public static func generate(from cgImage: CGImage, withName resourceName: String? = nil, options: TextureResource.CreateOptions) throws -> TextureResource}
  |                                                 `- note: calls to static method 'generate(from:withName:options:)' from outside of its actor context are implicitly asynchronous
7 |
/Users/admin/builder/spi-builder-workspace/Sources/Euclid+RealityKit.swift:430:43: warning: main actor-isolated property 'contents' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
428 |     init(_ meshResource: MeshResource, materials: [Polygon.Material?] = []) {
429 |         var models = [String: Mesh]()
430 |         self.init(submeshes: meshResource.contents.instances.compactMap {
    |                                           `- warning: main actor-isolated property 'contents' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
431 |             var mesh = models[$0.model]
432 |             if mesh == nil, let model = meshResource.contents.models[$0.model] {
RealityFoundation.MeshResource.contents:2:39: note: property declared here
1 | class MeshResource {
2 | @MainActor @preconcurrency public var contents: MeshResource.Contents { get }}
  |                                       `- note: property declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/Euclid+RealityKit.swift:432:54: warning: main actor-isolated property 'contents' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
430 |         self.init(submeshes: meshResource.contents.instances.compactMap {
431 |             var mesh = models[$0.model]
432 |             if mesh == nil, let model = meshResource.contents.models[$0.model] {
    |                                                      `- warning: main actor-isolated property 'contents' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
433 |                 let modelMesh = Mesh(model, materials: materials)
434 |                 models[$0.model] = modelMesh
RealityFoundation.MeshResource.contents:2:39: note: property declared here
1 | class MeshResource {
2 | @MainActor @preconcurrency public var contents: MeshResource.Contents { get }}
  |                                       `- note: property declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/Euclid+RealityKit.swift:468:39: warning: main actor-isolated property 'model' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
466 |     ///   - materialLookup: An optional closure to map the RealityKit materials to Euclid materials.
467 |     init(_ modelEntity: ModelEntity, materialLookup: RealityKitMaterialProvider? = nil) {
468 |         guard let model = modelEntity.model else {
    |                                       `- warning: main actor-isolated property 'model' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
469 |             self = .empty
470 |             return
RealityFoundation.HasModel.model:2:39: note: property declared here
1 | protocol HasModel {
2 | @MainActor @preconcurrency public var model: ModelComponent? { get set }}
  |                                       `- note: property declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/Euclid+RealityKit.swift:473:41: warning: main actor-isolated property 'transform' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
471 |         }
472 |         self.init(model, materialLookup: materialLookup)
473 |         transform(by: .init(modelEntity.transform))
    |                                         `- warning: main actor-isolated property 'transform' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
474 |     }
475 |
RealityFoundation.HasTransform.transform:2:39: note: property declared here
1 | protocol HasTransform {
2 | @MainActor @preconcurrency public var transform: Transform { get set }}
  |                                       `- note: property declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/Euclid+RealityKit.swift:519:52: warning: main actor-isolated property 'avPlayer' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
517 |                 return MaterialWrapper(material)
518 |             case let videoMaterial as VideoMaterial:
519 |                 guard let avPlayer = videoMaterial.avPlayer else { return nil }
    |                                                    `- warning: main actor-isolated property 'avPlayer' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
520 |                 var material = VideoMaterial(avPlayer: avPlayer)
521 |                 #if compiler(>=6)
RealityFoundation.VideoMaterial.avPlayer:2:39: note: property declared here
1 | struct VideoMaterial {
2 | @MainActor @preconcurrency public var avPlayer: AVPlayer? { get set }}
  |                                       `- note: property declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/Euclid+RealityKit.swift:520:32: warning: call to main actor-isolated initializer 'init(avPlayer:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
518 |             case let videoMaterial as VideoMaterial:
519 |                 guard let avPlayer = videoMaterial.avPlayer else { return nil }
520 |                 var material = VideoMaterial(avPlayer: avPlayer)
    |                                `- warning: call to main actor-isolated initializer 'init(avPlayer:)' in a synchronous nonisolated context; this is an error in the Swift 6 language mode
521 |                 #if compiler(>=6)
522 |                 if #available(visionOS 1.0, macOS 15.0, iOS 18.0, *) {
RealityFoundation.VideoMaterial.init:2:35: note: calls to initializer 'init(avPlayer:)' from outside of its actor context are implicitly asynchronous
1 | struct VideoMaterial {
2 | @MainActor @preconcurrency public init(avPlayer: AVPlayer)}
  |                                   `- note: calls to initializer 'init(avPlayer:)' from outside of its actor context are implicitly asynchronous
3 |
/Users/admin/builder/spi-builder-workspace/Sources/Euclid+RealityKit.swift:523:41: warning: main actor-isolated property 'preferredViewingMode' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
521 |                 #if compiler(>=6)
522 |                 if #available(visionOS 1.0, macOS 15.0, iOS 18.0, *) {
523 |                     material.controller.preferredViewingMode = videoMaterial.controller.preferredViewingMode
    |                                         `- warning: main actor-isolated property 'preferredViewingMode' can not be mutated from a nonisolated context; this is an error in the Swift 6 language mode
524 |                     material.triangleFillMode = videoMaterial.triangleFillMode
525 |                     if #available(visionOS 2.0, *) {
RealityFoundation.VideoPlaybackController.preferredViewingMode:2:39: note: mutation of this property is only permitted within the actor
1 | class VideoPlaybackController {
2 | @MainActor @preconcurrency public var preferredViewingMode: VideoPlaybackController.ViewingMode { get set }}
  |                                       `- note: mutation of this property is only permitted within the actor
3 |
/Users/admin/builder/spi-builder-workspace/Sources/Euclid+RealityKit.swift:523:89: warning: main actor-isolated property 'preferredViewingMode' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
521 |                 #if compiler(>=6)
522 |                 if #available(visionOS 1.0, macOS 15.0, iOS 18.0, *) {
523 |                     material.controller.preferredViewingMode = videoMaterial.controller.preferredViewingMode
    |                                                                                         `- warning: main actor-isolated property 'preferredViewingMode' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
524 |                     material.triangleFillMode = videoMaterial.triangleFillMode
525 |                     if #available(visionOS 2.0, *) {
RealityFoundation.VideoPlaybackController.preferredViewingMode:2:39: note: property declared here
1 | class VideoPlaybackController {
2 | @MainActor @preconcurrency public var preferredViewingMode: VideoPlaybackController.ViewingMode { get set }}
  |                                       `- note: property declared here
3 |
Build complete! (9.70s)
Build complete.
{
  "dependencies" : [
  ],
  "manifest_display_name" : "Euclid",
  "name" : "Euclid",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
  ],
  "products" : [
    {
      "name" : "Euclid",
      "targets" : [
        "Euclid"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "EuclidTests",
      "module_type" : "SwiftTarget",
      "name" : "EuclidTests",
      "path" : "Tests",
      "sources" : [
        "AngleTests.swift",
        "BoundsTests.swift",
        "CGPathTests.swift",
        "CodingTests.swift",
        "Euclid+Testing.swift",
        "LineSegmentTests.swift",
        "LineTests.swift",
        "MeshCSGTests.swift",
        "MeshExportTests.swift",
        "MeshImportTests.swift",
        "MeshLatheTests.swift",
        "MeshLoftTests.swift",
        "MeshShapeTests.swift",
        "MeshTests.swift",
        "MetadataTests.swift",
        "PathShapeTests.swift",
        "PathTests.swift",
        "PlaneTests.swift",
        "PolygonCSGTests.swift",
        "PolygonTests.swift",
        "QuaternionTests.swift",
        "RealityKitTests.swift",
        "RotationTests.swift",
        "SceneKitTests.swift",
        "StretchableTests.swift",
        "TextTests.swift",
        "TransformTests.swift",
        "UtilityTests.swift",
        "VectorTests.swift"
      ],
      "target_dependencies" : [
        "Euclid"
      ],
      "type" : "test"
    },
    {
      "c99name" : "Euclid",
      "module_type" : "SwiftTarget",
      "name" : "Euclid",
      "path" : "Sources",
      "product_memberships" : [
        "Euclid"
      ],
      "sources" : [
        "Angle.swift",
        "BSP.swift",
        "Bounded.swift",
        "Bounds.swift",
        "Color.swift",
        "Euclid+AppKit.swift",
        "Euclid+CoreGraphics.swift",
        "Euclid+CoreText.swift",
        "Euclid+RealityKit.swift",
        "Euclid+SIMD.swift",
        "Euclid+SceneKit.swift",
        "Euclid+UIKit.swift",
        "Line.swift",
        "LineSegment+CSG.swift",
        "LineSegment.swift",
        "Mesh+CSG.swift",
        "Mesh+IO.swift",
        "Mesh+OBJ.swift",
        "Mesh+STL.swift",
        "Mesh+Shapes.swift",
        "Mesh+Texcoords.swift",
        "Mesh.swift",
        "Path+Shapes.swift",
        "Path.swift",
        "PathPoint.swift",
        "Plane.swift",
        "Polygon+CSG.swift",
        "Polygon.swift",
        "Quaternion.swift",
        "Rotation.swift",
        "Stretchable.swift",
        "Transforms.swift",
        "Utilities.swift",
        "Vector.swift",
        "Vertex.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.5"
}
Done.