The Swift Package Index logo.Swift Package Index

Build Information

Successful build of Ollin, reference 0.17.0 (14d9de), with Swift 6.4 for macOS (SPM) on 28 Oct 2026 00:43:56 UTC.

Swift 6 data race errors: 0

Build Command

env DEVELOPER_DIR=/Applications/Xcode-27.0.0.app xcrun swift build --arch arm64

Build Log

========================================
RunAll
========================================
Builder version: 5.1.3
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/eaviles/Ollin.git
Reference: 0.17.0
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/eaviles/Ollin
 * tag               0.17.0     -> FETCH_HEAD
HEAD is now at 14d9de9 Ollin 0.17.0.
Updating files:  74% (4263/5687)
Updating files:  75% (4266/5687)
Updating files:  76% (4323/5687)
Updating files:  77% (4379/5687)
Updating files:  78% (4436/5687)
Updating files:  79% (4493/5687)
Updating files:  80% (4550/5687)
Updating files:  81% (4607/5687)
Updating files:  82% (4664/5687)
Updating files:  83% (4721/5687)
Updating files:  84% (4778/5687)
Updating files:  85% (4834/5687)
Updating files:  86% (4891/5687)
Updating files:  87% (4948/5687)
Updating files:  88% (5005/5687)
Updating files:  89% (5062/5687)
Updating files:  90% (5119/5687)
Updating files:  91% (5176/5687)
Updating files:  92% (5233/5687)
Updating files:  93% (5289/5687)
Updating files:  94% (5346/5687)
Updating files:  95% (5403/5687)
Updating files:  96% (5460/5687)
Updating files:  97% (5517/5687)
Updating files:  98% (5574/5687)
Updating files:  99% (5631/5687)
Updating files: 100% (5687/5687)
Updating files: 100% (5687/5687), done.
Cloned https://github.com/eaviles/Ollin.git
Revision (git rev-parse @):
14d9de972be5146d4cf00c9fbfab0d82ffbed1cf
SPI manifest file found: $PWD/.spi.yml
SUCCESS checkout https://github.com/eaviles/Ollin.git at 0.17.0
========================================
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",
  "traits": [
    "default"
  ],
  "dependencies": [
    {
      "identity": "ollin",
      "name": "Ollin",
      "url": "https://github.com/eaviles/Ollin.git",
      "version": "unspecified",
      "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/Ollin",
      "traits": [
        "default"
      ],
      "dependencies": [
      ]
    }
  ]
}
Fetching https://github.com/eaviles/Ollin.git
[1/55752] Fetching ollin
Fetched https://github.com/eaviles/Ollin.git (45.70s)
Creating working copy for https://github.com/eaviles/Ollin.git
Working copy of https://github.com/eaviles/Ollin.git resolved at 0.17.0 (14d9de9)
warning: '.resolve-product-dependencies': dependency 'ollin' is not used by any target
Found 0 product dependencies
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.4
Building package at path:  $PWD
https://github.com/eaviles/Ollin.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-27.0.0.app xcrun swift build --arch arm64
Building for debugging...
[Computing dependencies]
[Provisioning 5 / 88]
[Pre-planning 1 / 2542]
[Planning 1587 / 2542]
[Planning deferred tasks]
[Constructing 664 / 5400]
[Starting]
[40 / 1130] OllinSyphon
[281 / 1130] OllinDMX-product
[446 / 1130]
[458 / 1130] Ollin_OllinTests
[461 / 1130]
[472 / 1138] OllinWebGate
[481 / 1191] OllinExpander
[482 / 1214] OllinLink
[496 / 1267] CJolt
[501 / 1267]
[511 / 1267]
[512 / 1267]
[523 / 1267]
[526 / 1267] CJolt
[529 / 1267]
[532 / 1267] CJolt
[537 / 1267] CJolt
[539 / 1267] CJolt
[540 / 1267] OllinExpander
[541 / 1267]
[543 / 1267] OllinExpander
[550 / 1267]
[551 / 1267]
[557 / 1267]
[561 / 1267] CJolt
[565 / 1267]
[566 / 1267]
[568 / 1267]
[572 / 1267]
[573 / 1267] CJolt
[578 / 1267]
[581 / 1267] CJolt
[583 / 1267]
[584 / 1267] CJolt
[586 / 1267] CJolt
[589 / 1267] OllinShaderText
[607 / 1267] CJolt
[617 / 1267]
[631 / 1267] OllinMutation
[639 / 1267] CJolt
[641 / 1267] OllinTestSupport
[643 / 1267] CJolt
[646 / 1267] OllinTestSupport
[653 / 1267] CJolt
[654 / 1267] CJolt
[657 / 1267] CJolt
[659 / 1267] CJolt
[661 / 1267] CJolt
[663 / 1267] CJolt
[664 / 1267] CJolt
[666 / 1267] CJolt
[669 / 1267] CJolt
[672 / 1267] CJolt
[673 / 1267] CJolt
[677 / 1267] CJolt
[679 / 1267] CJolt
[681 / 1267] CJolt
[682 / 1267] CJolt
[684 / 1267] CJolt
[685 / 1267] CJolt
[689 / 1267] CJolt
[690 / 1267] CJolt
[693 / 1267] CJolt
[694 / 1267] CJolt
[695 / 1267] CJolt
[696 / 1267] CJolt
[698 / 1267] CJolt
[700 / 1267] CJolt
[702 / 1267] CJolt
[703 / 1267] CJolt
[705 / 1267] CJolt
[706 / 1267] CJolt
[709 / 1267] CJolt
[711 / 1267] CJolt
[712 / 1267] CJolt
[713 / 1267] CJolt
[715 / 1267] CJolt
[716 / 1267] CJolt
[720 / 1267] CClipper2
[721 / 1267] CClipper2
[722 / 1267]
[727 / 1267]
[732 / 1267]
[739 / 1267]
[743 / 1267] OllinTestSupport
[748 / 1267] OllinShaderText
[751 / 1267] CClipper2
[753 / 1267] OllinShaderText
[754 / 1267]
[768 / 1267] OllinExpander
[772 / 1267] OllinExpander
[776 / 1267]
[781 / 1267]
[784 / 1267] Ollin
[798 / 1267] CLibtess2
[814 / 1287] CLibtess2
[833 / 1287] CLibtess2
[870 / 1288]
[884 / 1288] COllinSourceKit
[894 / 1288] CBox2D
[905 / 1288] CBox2D
[915 / 1289]
[928 / 1300]
[938 / 1300] OllinProjects
[940 / 1300]
[945 / 1300] OllinProjects
[958 / 1300] OllinProjects
[963 / 1300] COllinShaders
[967 / 1301] OllinMutation
[968 / 1301] OllinProjects
[968 / 1301] OllinReference
[975 / 1312] OllinReference
[978 / 1312] OllinReference
[979 / 1312]
[989 / 1312] CSyphon
[997 / 1312] CSyphon
[1007 / 1374]
[1016 / 1374]
[1024 / 1374] OllinDocs-product
[1033 / 1375] CSyphon
[1034 / 1375]
[1036 / 1375] OllinDocs-product
[1041 / 1377]
[1046 / 1377]
[1049 / 1377]
[1050 / 1377]
[1055 / 1377]
[1065 / 1377] Ollin
[1065 / 1377] OllinDocs-product
[1067 / 1377] Ollin
[1068 / 1377] Ollin
[1070 / 1377] Ollin
[1071 / 1377] Ollin
[1073 / 1377] Ollin
[1075 / 1377] Ollin
[1077 / 1377] Ollin
[1082 / 1377] OllinVision
[1083 / 1378]
[1084 / 1391]
[1085 / 1391]
[1087 / 1391] OllinVision
[1088 / 1391] OllinVision
[1089 / 1391] OllinVision
[1090 / 1391] OllinVision
[1092 / 1391] OllinVision
[1099 / 1391] OllinVision
[1100 / 1391] OllinVision-product
[1101 / 1391] OllinVision-product
[1103 / 1392]
[1104 / 1393]
[1107 / 1394] OllinDoctor-product
[1109 / 1398] OllinVideo
[1110 / 1398] OllinVideo
[1111 / 1402] OllinSerial
[1121 / 1407] OllinVideo-product
[1132 / 1407] OllinSerial
[1133 / 1407] OllinSerial
[1135 / 1407] OllinSerial
[1148 / 1413] OllinSerial
[1152 / 1416] OllinLaser
[1157 / 1442]
[1166 / 1469] OllinSceneImport
[1174 / 1469] OllinScreen
[1201 / 1469] OllinRoom
[1211 / 1478] OllinLaser
[1215 / 1478] OllinSceneImport
[1217 / 1478] OllinRemote
[1242 / 1478] OllinRuntime
[1244 / 1478] OllinRoom
[1246 / 1478] OllinRoom-product
[1249 / 1478] OllinRemote
[1250 / 1478] OllinRemote-product
[1253 / 1478] OllinRecord3D-product
[1258 / 1478] OllinRuntime
[1262 / 1478] OllinMIDI-product
[1266 / 1478] OllinMIDI
[1271 / 1478] OllinLaser
[1272 / 1478] OllinLaser-product
[1276 / 1478] OllinLaser
[1282 / 1485] OllinMQTT
[1285 / 1485] OllinDMX
[1286 / 1485] OllinTether-product
[1287 / 1485] OllinLaser
[1291 / 1490] OllinDoctor-product
[1295 / 1508] OllinHaptics
[1298 / 1538] OllinAudio
[1302 / 1556] OllinDoctor-product
[1303 / 1556] OllinDiagram
[1304 / 1556]
[1316 / 1561] OllinDMX
[1345 / 1569] OllinController
[1346 / 1569] OllinBluetooth
[1360 / 1569] OllinPhysics
[1376 / 1582] OllinPhysics
[1378 / 1582] OllinPhysics
[1386 / 1582] OllinPhysics-product
[1387 / 1582] OllinPhysics-product
[1392 / 1582] OllinPhone
[1394 / 1582] OllinPhone
[1398 / 1582] OllinOSC
[1399 / 1582] OllinAudio
[1405 / 1582] OllinOSC
[1410 / 1582] OllinOSC
[1412 / 1582] OllinMQTT
[1414 / 1582] OllinOSC
[1419 / 1582] OllinHaptics-product
[1421 / 1582] OllinHaptics-product
[1425 / 1582] OllinDMX
[1429 / 1582] OllinDMX-product
[1434 / 1582] OllinDoctor-product
[1440 / 1582] OllinController
[1444 / 1582] OllinCamera
[1446 / 1582] OllinCamera-product
[1450 / 1582] OllinBluetooth
[1456 / 1582] OllinRun-product
[1461 / 1582] OllinPhone
[1463 / 1582] OllinAudio
[1465 / 1582] OllinBluetooth
[1467 / 1582]
[1472 / 1583]
[1484 / 1584]
[1485 / 1585]
[1487 / 1587] OllinDocs-product
[1490 / 1592] OllinRun-product
[1492 / 1592] OllinRun-product
[1497 / 1595]
[1502 / 1604] OllinProjectGenerator-product
[1507 / 1604] OllinProjectGenerator-product
[1508 / 1604] OllinProjectGenerator-product
[1508 / 1604] OllinNew-product
[1513 / 1615] OllinLiveCoding-product
[1516 / 1615] OllinProjectGenerator-product
[1519 / 1615] OllinLiveCoding-product
[1520 / 1615] OllinLiveCoding-product
[1522 / 1615] OllinLiveCoding-product
[1523 / 1615] OllinNew-product
[1528 / 1617]
[1531 / 1619] OllinVideo
[1535 / 1619] OllinSceneImport
[1539 / 1619] OllinRemote
[1543 / 1619] OllinPhone
[1547 / 1619] OllinPhysics
[1549 / 1619] OllinLiveCoding-product
[1549 / 1619] OllinLive-product
[1559 / 1643] OllinBluetooth
[1564 / 1643] OllinLive-product
[1567 / 1643] OllinGuideSnippets-product
[1569 / 1643] OllinLive-product
[1574 / 1643] OllinLive-product
[1577 / 1643] OllinLive-product
[1578 / 1643] OllinGuideSnippets-product
[1582 / 1643] OllinExamples-product
[1586 / 1643] OllinExamples-product
[1589 / 1643]
[1597 / 1643] OllinSerial-product
[1604 / 1643] OllinMIDI-product
[1612 / 1643]
[1619 / 1643] OllinCheck-product
[1619 / 1643] OllinNew-product
[1622 / 1643] OllinTether-product
[1623 / 1643] OllinLiveCoding-product
[1627 / 1643] OllinLiveCoding-product
[1632 / 1643] OllinProjectGenerator-product
[1633 / 1643] OllinGuideFigures-product
[1635 / 1643] OllinProjectGenerator-product
[1637 / 1643] OllinGuideFigures-product
[1639 / 1643] OllinExamples-product
[1641 / 1643] OllinExamples-product
Build complete! (67.10 sec)
/Users/admin/builder/spi-builder-workspace/External/CLibtess2/Source/priorityq.c:212:5: warning: implicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'unsigned int' [-Wshorten-64-to-32]
  211 |                         pq->nodes = (PQnode *)alloc->memrealloc( alloc->userData, pq->nodes, 
      |                                               ~~~~~
  212 |                                 (size_t)((pq->max + 1) * sizeof( pq->nodes[0] )));
      |                                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/admin/builder/spi-builder-workspace/External/CLibtess2/Source/priorityq.c:218:5: warning: implicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'unsigned int' [-Wshorten-64-to-32]
  217 |                         pq->handles = (PQhandleElem *)alloc->memrealloc( alloc->userData, pq->handles,
      |                                                       ~~~~~
  218 |                                 (size_t) ((pq->max + 1) * sizeof( pq->handles[0] )));
      |                                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/admin/builder/spi-builder-workspace/External/CLibtess2/Source/priorityq.c:354:13: warning: implicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'unsigned int' [-Wshorten-64-to-32]
  353 |         pq->order = (PQkey **)alloc->memalloc( alloc->userData,
      |                               ~~~~~
  354 |                                                                                   (size_t)((pq->size+1) * sizeof(pq->order[0])) );
      |                                                                                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/admin/builder/spi-builder-workspace/External/CLibtess2/Source/priorityq.c:441:5: warning: implicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'unsigned int' [-Wshorten-64-to-32]
  440 |                         pq->keys = (PQkey *)alloc->memrealloc( alloc->userData, pq->keys, 
      |                                             ~~~~~
  441 |                                 (size_t)(pq->max * sizeof( pq->keys[0] )));
      |                                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
4 warnings generated.
/Users/admin/builder/spi-builder-workspace/External/CLibtess2/Source/bucketalloc.c:66:62: warning: implicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'unsigned int' [-Wshorten-64-to-32]
   66 |         bucket = (Bucket*)ba->alloc->memalloc( ba->alloc->userData, size );
      |                           ~~                                        ^~~~
1 warning generated.
/Users/admin/builder/spi-builder-workspace/External/CSyphon/SyphonServerBase.m:253:72: warning: 'kIOSurfaceIsGlobal' is deprecated: first deprecated in macOS 10.11 - Global surfaces are insecure [-Wdeprecated-declarations]
  253 |         NSDictionary<NSString *, id> *surfaceAttributes = @{(NSString*)kIOSurfaceIsGlobal: @(YES),
      |                                                                        ^
In module 'IOSurface' imported from /Users/admin/builder/spi-builder-workspace/External/CSyphon/SyphonServerConnectionManager.h:32:
/Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX27.0.sdk/System/Library/Frameworks/IOSurface.framework/Headers/IOSurfaceRef.h:101:26: note: 'kIOSurfaceIsGlobal' has been explicitly marked deprecated here
  101 | extern const CFStringRef kIOSurfaceIsGlobal                                 API_DEPRECATED("Global surfaces are insecure",macos(10.6,10.11), ios(11.0,11.0), watchos(4.0,4.0), tvos(11.0,11.0));
      |                          ^
1 warning generated.
/Users/admin/builder/spi-builder-workspace/Sources/Ollin/Geometry/SDFOutline.swift:546:9: warning: variable 'p' was never mutated; consider changing to 'let' constant [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/variable-never-mutated\VariableNeverMutated]8;;\]
544 | private func sdBlobbyCross(_ pos: Vector2, _ he: Double) -> Double {
545 |     let a = Vector2(abs(pos.x), abs(pos.y))
546 |     var p = Vector2(abs(a.x - a.y), 1 - a.x - a.y) / 2.0.squareRoot()
    |         `- warning: variable 'p' was never mutated; consider changing to 'let' constant [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/variable-never-mutated\VariableNeverMutated]8;;\]
547 |     let pp = (he - p.y - 0.25 / he) / (6 * he)
548 |     let q = p.x / (he * he * 16)
[#VariableNeverMutated]: <https://docs.swift.org/compiler/documentation/diagnostics/variable-never-mutated>
/Users/admin/builder/spi-builder-workspace/Sources/Ollin/Text/BitmapFont+Playdate.swift:31:26: warning: no calls to throwing functions occur within 'try' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\]
 29 |     /// when the text has no usable glyphs or its strike can't be decoded.
 30 |     init(fnt text: String) throws {
 31 |         guard let font = try? BitmapFont(fnt: text, externalStrike: { nil }) else {
    |                          `- warning: no calls to throwing functions occur within 'try' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\]
 32 |             throw FileError.unreadable(nil, "holds no Playdate glyphs, or a strike that can't be decoded")
 33 |         }
/Users/admin/builder/spi-builder-workspace/Sources/Ollin/Text/BitmapFont+Playdate.swift:56:26: warning: no calls to throwing functions occur within 'try' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\]
 54 |         let directory = url.deletingLastPathComponent()
 55 |         let base = url.deletingPathExtension().lastPathComponent
 56 |         guard let font = try? BitmapFont(fnt: text, externalStrike: {
    |                          `- warning: no calls to throwing functions occur within 'try' expression [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker\UnnecessaryEffectMarker]8;;\]
 57 |             BitmapFont.findExternalStrike(base: base, in: directory)
 58 |         }) else {
[#UnnecessaryEffectMarker]: <https://docs.swift.org/compiler/documentation/diagnostics/unnecessary-effect-marker>
/Users/admin/builder/spi-builder-workspace/Sources/Ollin/Core/SketchView.swift:4559:21: warning: left side of nil coalescing operator '??' has non-optional type 'ICCProfile', so the right side is never used
4557 |                 let expanded = (named as NSString).expandingTildeInPath
4558 |                 profile = try? ICCProfile(contentsOf: URL(fileURLWithPath: expanded))
4559 |                     ?? ICCProfile.installed(named: named)
     |                     `- warning: left side of nil coalescing operator '??' has non-optional type 'ICCProfile', so the right side is never used
4560 |                 guard profile != nil else {
4561 |                     let installed = ICCProfile.installed().filter { $0.space == .cmyk }
/Users/admin/builder/spi-builder-workspace/Sources/Ollin/Live/Inspector.swift:1029:16: warning: immutable value 'reset' was never used; consider replacing with '_' or removing it [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/no-usage\NoUsage]8;;\]
1027 |     /// untouched card keeps its plain header.
1028 |     @ViewBuilder private func groupReset(_ tuned: [String]) -> some View {
1029 |         if let reset, !tuned.isEmpty {
     |                `- warning: immutable value 'reset' was never used; consider replacing with '_' or removing it [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/no-usage\NoUsage]8;;\]
1030 |             Button("Reset") { noteClearingReset?.perform(tuned) }
1031 |                 .buttonStyle(.plain)
/Users/admin/builder/spi-builder-workspace/Sources/Ollin/Live/Inspector.swift:1058:24: warning: value 'reset' was defined but never used; consider replacing with boolean test [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/no-usage\NoUsage]8;;\]
1056 |                     .help("Write the parameters you changed into the @Param lines they were declared on.")
1057 |                 }
1058 |                 if let reset {
     |                        `- warning: value 'reset' was defined but never used; consider replacing with boolean test [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/no-usage\NoUsage]8;;\]
1059 |                     Button("Reset all") {
1060 |                         noteClearingReset?.perform(nil)
[#NoUsage]: <https://docs.swift.org/compiler/documentation/diagnostics/no-usage>
/Users/admin/builder/spi-builder-workspace/Sources/Ollin/Export/FrameMemory.swift:62:28: warning: capture of 'pointer' with non-Sendable type 'UnsafeMutableRawPointer' in a '@Sendable' closure [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
60 |         let pointer = memory.allocate(byteCount: length)
61 |         return device.makeBuffer(bytesNoCopy: pointer, length: length, options: .storageModeShared) { _, _ in
62 |             memory.release(pointer, byteCount: length)
   |                            `- warning: capture of 'pointer' with non-Sendable type 'UnsafeMutableRawPointer' in a '@Sendable' closure [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
63 |         }
64 |     }
Swift.UnsafeMutableRawPointer:1:23: note: struct 'UnsafeMutableRawPointer' does not conform to the 'Sendable' protocol
1 | @frozen public struct UnsafeMutableRawPointer : @unsafe _Pointer {
  |                       `- note: struct 'UnsafeMutableRawPointer' does not conform to the 'Sendable' protocol
2 |     public typealias Pointee = UInt8
3 |     public let _rawValue: Builtin.RawPointer
[#SendableClosureCaptures]: <https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures>
/Users/admin/builder/spi-builder-workspace/Sources/Ollin/Core/Drawer+Tessellation.swift:417:13: warning: initialization of immutable value 'miterLimit' was never used; consider replacing with assignment to '_' or removing it [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/no-usage\NoUsage]8;;\]
 415 |
 416 |         let fw = 1.0 / ctmScale                 // ~1px AA fringe in screen space
 417 |         let miterLimit = 8.0
     |             `- warning: initialization of immutable value 'miterLimit' was never used; consider replacing with assignment to '_' or removing it [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/no-usage\NoUsage]8;;\]
 418 |         // Half-width per path vertex. A uniform stroke keeps one constant, which is
 419 |         // what makes its geometry and coverage identical to the pre-profile path.
[#NoUsage]: <https://docs.swift.org/compiler/documentation/diagnostics/no-usage>
/Users/admin/builder/spi-builder-workspace/Sources/OllinTether/TetherMain.swift:570:41: warning: capture of 'self' with non-Sendable type 'USBProxy' in a '@Sendable' closure [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
537 | /// two. Plain bytes both ways, one pair of threads per connection; the
538 | /// WebSocket the surface upgrades to passes through untouched.
539 | final class USBProxy {
    |             `- note: class 'USBProxy' does not conform to the 'Sendable' protocol
540 |     private let listener: Int32
541 |     private let phonePort: UInt16
    :
568 |             throw ProxyError.socket(why)
569 |         }
570 |         let thread = Thread { [self] in acceptLoop() }
    |                                         `- warning: capture of 'self' with non-Sendable type 'USBProxy' in a '@Sendable' closure [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
571 |         thread.name = "dev.ollin.phone.proxy"
572 |         thread.start()
[#SendableClosureCaptures]: <https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures>
/Users/admin/builder/spi-builder-workspace/Sources/OllinProjectGenerator/ThreeDStrip.swift:167:25: warning: '+' was deprecated in macOS 26.0: Use string interpolation on `Text` instead: `Text("Hello \(name)")` [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
165 |                     Text(option.title).font(.system(size: 10.5, weight: .medium))
166 |                         + Text(" \u{2014} ").font(.system(size: 10.5)).foregroundColor(.secondary)
167 |                         + Text(objection ?? option.summary).font(.system(size: 10.5)).foregroundColor(.secondary)
    |                         `- warning: '+' was deprecated in macOS 26.0: Use string interpolation on `Text` instead: `Text("Hello \(name)")` [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
168 |                 } else {
169 |                     Text("Hover a choice for what it does, or why it cannot be picked here.")
/Users/admin/builder/spi-builder-workspace/Sources/OllinProjectGenerator/ThreeDStrip.swift:166:25: warning: '+' was deprecated in macOS 26.0: Use string interpolation on `Text` instead: `Text("Hello \(name)")` [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
164 |                 if let option {
165 |                     Text(option.title).font(.system(size: 10.5, weight: .medium))
166 |                         + Text(" \u{2014} ").font(.system(size: 10.5)).foregroundColor(.secondary)
    |                         `- warning: '+' was deprecated in macOS 26.0: Use string interpolation on `Text` instead: `Text("Hello \(name)")` [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
167 |                         + Text(objection ?? option.summary).font(.system(size: 10.5)).foregroundColor(.secondary)
168 |                 } else {
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
/Users/admin/builder/spi-builder-workspace/Sources/OllinGuideSnippets/main.swift:182:15: warning: main actor-isolated var 'jobs' can not be referenced from a nonisolated context
127 | /// 36's mean OllinVision's, and a union of the two makes both ambiguous.
128 | struct Job { var tree: Int; var block: Block; var source: String; var preambleLines: Range<Int>; var prelude: String }
129 | var jobs: [Job] = []
    |     `- note: var declared here
130 | var skipped: [(Block, String)] = []
131 | var shellBlocks: [Block] = []
    :
180 |
181 | DispatchQueue.concurrentPerform(iterations: jobs.count) { index in
182 |     let job = jobs[index]
    |               `- warning: main actor-isolated var 'jobs' can not be referenced from a nonisolated context
183 |     let tree = trees[job.tree]
184 |     let source = job.prelude.isEmpty ? job.source : job.prelude + "\n" + job.source
/Users/admin/builder/spi-builder-workspace/Sources/OllinGuideSnippets/main.swift:189:5: warning: main actor-isolated var 'done' can not be mutated from a nonisolated context
175 | let lock = NSLock()
176 | var failures: [(Block, String)] = []
177 | var done = 0
    |     `- note: mutation of this var is only permitted within the actor
178 | let total = jobs.count
179 | let quiet = ProcessInfo.processInfo.environment["OLLIN_SNIPPETS_QUIET"] != nil
    :
187 |     let result = loader.typecheck(source, fileName: name)
188 |     lock.lock()
189 |     done += 1
    |     `- warning: main actor-isolated var 'done' can not be mutated from a nonisolated context
190 |     if case .failure(let error) = result {
191 |         failures.append((job.block, firstError("\(error)", preambleLines: job.preambleLines)))
/Users/admin/builder/spi-builder-workspace/Sources/OllinGuideSnippets/main.swift:191:9: warning: main actor-isolated var 'failures' can not be mutated from a nonisolated context
174 | /// directory per call, so the runs do not collide.
175 | let lock = NSLock()
176 | var failures: [(Block, String)] = []
    |     `- note: mutation of this var is only permitted within the actor
177 | var done = 0
178 | let total = jobs.count
    :
189 |     done += 1
190 |     if case .failure(let error) = result {
191 |         failures.append((job.block, firstError("\(error)", preambleLines: job.preambleLines)))
    |         `- warning: main actor-isolated var 'failures' can not be mutated from a nonisolated context
192 |     }
193 |     if !quiet && done % 25 == 0 {
/Users/admin/builder/spi-builder-workspace/Sources/OllinGuideSnippets/main.swift:193:18: warning: main actor-isolated var 'done' can not be referenced from a nonisolated context
175 | let lock = NSLock()
176 | var failures: [(Block, String)] = []
177 | var done = 0
    |     `- note: var declared here
178 | let total = jobs.count
179 | let quiet = ProcessInfo.processInfo.environment["OLLIN_SNIPPETS_QUIET"] != nil
    :
191 |         failures.append((job.block, firstError("\(error)", preambleLines: job.preambleLines)))
192 |     }
193 |     if !quiet && done % 25 == 0 {
    |                  `- warning: main actor-isolated var 'done' can not be referenced from a nonisolated context
194 |         FileHandle.standardError.write(Data("  \(done)/\(total)\r".utf8))
195 |     }
/Users/admin/builder/spi-builder-workspace/Sources/OllinGuideSnippets/main.swift:194:50: warning: main actor-isolated var 'done' can not be referenced from a nonisolated context
175 | let lock = NSLock()
176 | var failures: [(Block, String)] = []
177 | var done = 0
    |     `- note: var declared here
178 | let total = jobs.count
179 | let quiet = ProcessInfo.processInfo.environment["OLLIN_SNIPPETS_QUIET"] != nil
    :
192 |     }
193 |     if !quiet && done % 25 == 0 {
194 |         FileHandle.standardError.write(Data("  \(done)/\(total)\r".utf8))
    |                                                  `- warning: main actor-isolated var 'done' can not be referenced from a nonisolated context
195 |     }
196 |     lock.unlock()
/Users/admin/builder/spi-builder-workspace/Sources/OllinGuideSnippets/main.swift:182:15: warning: main actor-isolated var 'jobs' can not be referenced from a nonisolated context
127 | /// 36's mean OllinVision's, and a union of the two makes both ambiguous.
128 | struct Job { var tree: Int; var block: Block; var source: String; var preambleLines: Range<Int>; var prelude: String }
129 | var jobs: [Job] = []
    |     `- note: var declared here
130 | var skipped: [(Block, String)] = []
131 | var shellBlocks: [Block] = []
    :
180 |
181 | DispatchQueue.concurrentPerform(iterations: jobs.count) { index in
182 |     let job = jobs[index]
    |               `- warning: main actor-isolated var 'jobs' can not be referenced from a nonisolated context
183 |     let tree = trees[job.tree]
184 |     let source = job.prelude.isEmpty ? job.source : job.prelude + "\n" + job.source
/Users/admin/builder/spi-builder-workspace/Sources/OllinGuideSnippets/main.swift:189:5: warning: main actor-isolated var 'done' can not be mutated from a nonisolated context
175 | let lock = NSLock()
176 | var failures: [(Block, String)] = []
177 | var done = 0
    |     `- note: mutation of this var is only permitted within the actor
178 | let total = jobs.count
179 | let quiet = ProcessInfo.processInfo.environment["OLLIN_SNIPPETS_QUIET"] != nil
    :
187 |     let result = loader.typecheck(source, fileName: name)
188 |     lock.lock()
189 |     done += 1
    |     `- warning: main actor-isolated var 'done' can not be mutated from a nonisolated context
190 |     if case .failure(let error) = result {
191 |         failures.append((job.block, firstError("\(error)", preambleLines: job.preambleLines)))
/Users/admin/builder/spi-builder-workspace/Sources/OllinGuideSnippets/main.swift:191:9: warning: main actor-isolated var 'failures' can not be mutated from a nonisolated context
174 | /// directory per call, so the runs do not collide.
175 | let lock = NSLock()
176 | var failures: [(Block, String)] = []
    |     `- note: mutation of this var is only permitted within the actor
177 | var done = 0
178 | let total = jobs.count
    :
189 |     done += 1
190 |     if case .failure(let error) = result {
191 |         failures.append((job.block, firstError("\(error)", preambleLines: job.preambleLines)))
    |         `- warning: main actor-isolated var 'failures' can not be mutated from a nonisolated context
192 |     }
193 |     if !quiet && done % 25 == 0 {
/Users/admin/builder/spi-builder-workspace/Sources/OllinGuideSnippets/main.swift:193:18: warning: main actor-isolated var 'done' can not be referenced from a nonisolated context
175 | let lock = NSLock()
176 | var failures: [(Block, String)] = []
177 | var done = 0
    |     `- note: var declared here
178 | let total = jobs.count
179 | let quiet = ProcessInfo.processInfo.environment["OLLIN_SNIPPETS_QUIET"] != nil
    :
191 |         failures.append((job.block, firstError("\(error)", preambleLines: job.preambleLines)))
192 |     }
193 |     if !quiet && done % 25 == 0 {
    |                  `- warning: main actor-isolated var 'done' can not be referenced from a nonisolated context
194 |         FileHandle.standardError.write(Data("  \(done)/\(total)\r".utf8))
195 |     }
/Users/admin/builder/spi-builder-workspace/Sources/OllinGuideSnippets/main.swift:194:50: warning: main actor-isolated var 'done' can not be referenced from a nonisolated context
175 | let lock = NSLock()
176 | var failures: [(Block, String)] = []
177 | var done = 0
    |     `- note: var declared here
178 | let total = jobs.count
179 | let quiet = ProcessInfo.processInfo.environment["OLLIN_SNIPPETS_QUIET"] != nil
    :
192 |     }
193 |     if !quiet && done % 25 == 0 {
194 |         FileHandle.standardError.write(Data("  \(done)/\(total)\r".utf8))
    |                                                  `- warning: main actor-isolated var 'done' can not be referenced from a nonisolated context
195 |     }
196 |     lock.unlock()
/Users/admin/builder/spi-builder-workspace/Sources/OllinExamples/GalleryView.swift:492:43: warning: converting non-Sendable function value to '@MainActor @Sendable @convention(block) () -> Void' may introduce data races
490 |         guard !fired else { return }
491 |         fired = true
492 |         DispatchQueue.main.async(execute: onFirstFrame)
    |                                           `- warning: converting non-Sendable function value to '@MainActor @Sendable @convention(block) () -> Void' may introduce data races
493 |     }
494 | }
Build complete.
{
  "cxx_language_standard" : "c++17",
  "dependencies" : [
  ],
  "manifest_display_name" : "Ollin",
  "name" : "Ollin",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "26.0"
    },
    {
      "name" : "ios",
      "version" : "26.0"
    }
  ],
  "products" : [
    {
      "name" : "Ollin",
      "targets" : [
        "Ollin"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "OllinAudio",
      "targets" : [
        "OllinAudio"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "OllinOSC",
      "targets" : [
        "OllinOSC"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "OllinDMX",
      "targets" : [
        "OllinDMX"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "OllinLaser",
      "targets" : [
        "OllinLaser"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "OllinMIDI",
      "targets" : [
        "OllinMIDI"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "OllinLink",
      "targets" : [
        "OllinLink"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "OllinMQTT",
      "targets" : [
        "OllinMQTT"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "OllinHaptics",
      "targets" : [
        "OllinHaptics"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "OllinSerial",
      "targets" : [
        "OllinSerial"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "OllinBluetooth",
      "targets" : [
        "OllinBluetooth"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "OllinRemote",
      "targets" : [
        "OllinRemote"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "OllinRoom",
      "targets" : [
        "OllinRoom"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "OllinPhysics",
      "targets" : [
        "OllinPhysics"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "OllinVision",
      "targets" : [
        "OllinVision"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "OllinVideo",
      "targets" : [
        "OllinVideo"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "OllinSyphon",
      "targets" : [
        "OllinSyphon"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "OllinCamera",
      "targets" : [
        "OllinCamera"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "OllinRecord3D",
      "targets" : [
        "OllinRecord3D"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "OllinPhone",
      "targets" : [
        "OllinPhone"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "OllinScreen",
      "targets" : [
        "OllinScreen"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "OllinController",
      "targets" : [
        "OllinController"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "OllinSamplePhotos",
      "targets" : [
        "OllinSamplePhotos"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "COllinShaders",
      "targets" : [
        "COllinShaders"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "OllinTether",
      "targets" : [
        "OllinTether"
      ],
      "type" : {
        "executable" : null
      }
    },
    {
      "name" : "OllinRun",
      "targets" : [
        "OllinRun"
      ],
      "type" : {
        "executable" : null
      }
    },
    {
      "name" : "OllinProjectGenerator",
      "targets" : [
        "OllinProjectGenerator"
      ],
      "type" : {
        "executable" : null
      }
    },
    {
      "name" : "OllinNew",
      "targets" : [
        "OllinNew"
      ],
      "type" : {
        "executable" : null
      }
    },
    {
      "name" : "OllinLiveCoding",
      "targets" : [
        "OllinLiveCoding"
      ],
      "type" : {
        "executable" : null
      }
    },
    {
      "name" : "OllinLive",
      "targets" : [
        "OllinLive"
      ],
      "type" : {
        "executable" : null
      }
    },
    {
      "name" : "OllinGuideSnippets",
      "targets" : [
        "OllinGuideSnippets"
      ],
      "type" : {
        "executable" : null
      }
    },
    {
      "name" : "OllinGuideFigures",
      "targets" : [
        "OllinGuideFigures"
      ],
      "type" : {
        "executable" : null
      }
    },
    {
      "name" : "OllinExamples",
      "targets" : [
        "OllinExamples"
      ],
      "type" : {
        "executable" : null
      }
    },
    {
      "name" : "OllinDoctor",
      "targets" : [
        "OllinDoctor"
      ],
      "type" : {
        "executable" : null
      }
    },
    {
      "name" : "OllinDocs",
      "targets" : [
        "OllinDocs"
      ],
      "type" : {
        "executable" : null
      }
    },
    {
      "name" : "OllinCheck",
      "targets" : [
        "OllinCheck"
      ],
      "type" : {
        "executable" : null
      }
    }
  ],
  "swift_languages_versions" : [
    "6"
  ],
  "targets" : [
    {
      "c99name" : "OllinWebGate",
      "module_type" : "SwiftTarget",
      "name" : "OllinWebGate",
      "path" : "Tests/OllinWebGate",
      "sources" : [
        "HeadlessBrowser.swift"
      ],
      "type" : "library"
    },
    {
      "c99name" : "OllinVisionTests",
      "module_type" : "SwiftTarget",
      "name" : "OllinVisionTests",
      "path" : "Tests/OllinVisionTests",
      "sources" : [
        "BarcodeScannerTests.swift",
        "BodyTracker3DTests.swift",
        "BodyTrackerTests.swift",
        "ConceptTrackerTests.swift",
        "ContourDetectorTests.swift",
        "DepthClipTests.swift",
        "DepthLiftTests.swift",
        "DepthTrackerTests.swift",
        "ExportClockTests.swift",
        "FaceTrackerTests.swift",
        "FlowTrackerTests.swift",
        "FrameSourceTests.swift",
        "HandTrackerTests.swift",
        "ImageClassifierTests.swift",
        "ModelTrackerTests.swift",
        "ObjectTrackerTests.swift",
        "PointSegmenterTests.swift",
        "RectangleDetectorTests.swift",
        "SaliencyTrackerTests.swift",
        "SegmenterTests.swift",
        "TextRecognizerTests.swift",
        "TrajectoryTrackerTests.swift",
        "VisionMappingTests.swift",
        "VisionStatusTests.swift",
        "WaitForTests.swift"
      ],
      "target_dependencies" : [
        "Ollin",
        "OllinVision",
        "OllinVideo",
        "OllinSamplePhotos",
        "OllinTestSupport"
      ],
      "type" : "test"
    },
    {
      "c99name" : "OllinVision",
      "module_type" : "SwiftTarget",
      "name" : "OllinVision",
      "path" : "Sources/OllinVision",
      "product_memberships" : [
        "OllinVision",
        "OllinRun",
        "OllinProjectGenerator",
        "OllinLiveCoding",
        "OllinLive",
        "OllinGuideSnippets",
        "OllinGuideFigures",
        "OllinExamples"
      ],
      "sources" : [
        "BarcodeScanner.swift",
        "BodyTracker.swift",
        "BodyTracker3D.swift",
        "Camera.swift",
        "CameraOrStill.swift",
        "ClassMask.swift",
        "ConceptTracker.swift",
        "ContourDetector.swift",
        "DepthClip.swift",
        "DepthLift.swift",
        "DepthTracker.swift",
        "FaceTracker.swift",
        "FlowTracker.swift",
        "HandTracker.swift",
        "ImageClassifier.swift",
        "ModelLoader.swift",
        "ModelTracker.swift",
        "ObjectTracker.swift",
        "PersonSegmenter.swift",
        "PhraseTokenizer.swift",
        "PointSegmenter.swift",
        "RectangleDetector.swift",
        "SaliencyTracker.swift",
        "Segmentation.swift",
        "SubjectSegmenter.swift",
        "TextRecognizer.swift",
        "TrajectoryTracker.swift",
        "VisionAnalyzer.swift",
        "VisionError.swift",
        "VisionMapping.swift",
        "WaitFor.swift"
      ],
      "target_dependencies" : [
        "Ollin"
      ],
      "type" : "library"
    },
    {
      "c99name" : "OllinVideoTests",
      "module_type" : "SwiftTarget",
      "name" : "OllinVideoTests",
      "path" : "Tests/OllinVideoTests",
      "sources" : [
        "VideoAudioTapTests.swift",
        "VideoPlayerTests.swift"
      ],
      "target_dependencies" : [
        "Ollin",
        "OllinVideo",
        "OllinTestSupport"
      ],
      "type" : "test"
    },
    {
      "c99name" : "OllinVideo",
      "module_type" : "SwiftTarget",
      "name" : "OllinVideo",
      "path" : "Sources/OllinVideo",
      "product_memberships" : [
        "OllinVideo",
        "OllinRun",
        "OllinProjectGenerator",
        "OllinLiveCoding",
        "OllinLive",
        "OllinGuideSnippets",
        "OllinGuideFigures",
        "OllinExamples"
      ],
      "sources" : [
        "HeadlessVideoReader.swift",
        "VideoAudioTap.swift",
        "VideoPlayer.swift"
      ],
      "target_dependencies" : [
        "Ollin"
      ],
      "type" : "library"
    },
    {
      "c99name" : "OllinUSBMux",
      "module_type" : "SwiftTarget",
      "name" : "OllinUSBMux",
      "path" : "Sources/OllinUSBMux",
      "product_memberships" : [
        "OllinRecord3D",
        "OllinPhone",
        "OllinTether",
        "OllinRun",
        "OllinProjectGenerator",
        "OllinLiveCoding",
        "OllinLive",
        "OllinGuideSnippets",
        "OllinGuideFigures",
        "OllinExamples"
      ],
      "sources" : [
        "USBMux.swift"
      ],
      "type" : "library"
    },
    {
      "c99name" : "OllinTether",
      "module_type" : "SwiftTarget",
      "name" : "OllinTether",
      "path" : "Sources/OllinTether",
      "product_memberships" : [
        "OllinTether"
      ],
      "sources" : [
        "TetherMain.swift"
      ],
      "target_dependencies" : [
        "OllinRuntime",
        "OllinUSBMux"
      ],
      "type" : "executable"
    },
    {
      "c99name" : "OllinTests",
      "module_type" : "SwiftTarget",
      "name" : "OllinTests",
      "path" : "Tests/OllinTests",
      "resources" : [
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/OllinTests/References",
          "rule" : {
            "copy" : {
            }
          }
        }
      ],
      "sources" : [
        "AerialPerspectiveTests.swift",
        "AnamorphosisTests.swift",
        "AnisotropyTests.swift",
        "AntColonyTests.swift",
        "AntialiasFilterTests.swift",
        "AperiodicTilingTests.swift",
        "ApertureBokehTests.swift",
        "ApertureStarTests.swift",
        "AreaShadowTests.swift",
        "ArrowsFilterTests.swift",
        "AttractorFlowTests.swift",
        "AttractorsTests.swift",
        "AutomationTests.swift",
        "AutostereogramTests.swift",
        "BackgroundKeepsLayersTests.swift",
        "BareForms3DTests.swift",
        "BareFormsTests.swift",
        "BatchTests.swift",
        "BenchmarkSupport.swift",
        "BentOutlineTests.swift",
        "BifurcationTests.swift",
        "BilliardTests.swift",
        "BitmapFontTests.swift",
        "BlackHoleLensTests.swift",
        "BlackHolePageTests.swift",
        "BlueNoiseThinningTests.swift",
        "Box3Tests.swift",
        "BrushTests.swift",
        "BrushworkTests.swift",
        "BuddhabrotTests.swift",
        "Camera3DTests.swift",
        "CameraClockTests.swift",
        "CameraLightTests.swift",
        "CameraRigTests.swift",
        "CanvasSamplerTests.swift",
        "CaptureSourceTests.swift",
        "CausticEnergyTests.swift",
        "CausticsLiveTemporalTests.swift",
        "CausticsTests.swift",
        "CellularAutomataTests.swift",
        "ChannelMixerTests.swift",
        "CheckpointTests.swift",
        "ChladniTests.swift",
        "ChromeFilterTests.swift",
        "ClassicCurveTests.swift",
        "ClipTests.swift",
        "ClothoidTests.swift",
        "CloudRegistrationTests.swift",
        "CloudTests.swift",
        "CoatSheenTests.swift",
        "CollectionConformanceTests.swift",
        "ColorLUTTests.swift",
        "ColorMeasureTests.swift",
        "ColorOutputTests.swift",
        "ColorScienceInvariantTests.swift",
        "ColorSpaceTests.swift",
        "ColorTests.swift",
        "ColorVisionTests.swift",
        "CombineTests.swift",
        "CommandLineHelpTests.swift",
        "ComplexPlaneFramingTests.swift",
        "ComplexTests.swift",
        "ComplexTextTests.swift",
        "ComputeTests.swift",
        "ComputeTextureReadTests.swift",
        "ContourQueryTests.swift",
        "ContourTests.swift",
        "Convenience3DTests.swift",
        "ConvenienceHelperTests.swift",
        "CornerPinTests.swift",
        "CrackGrowthTests.swift",
        "CreasePatternTests.swift",
        "CrowdTests.swift",
        "CubeShadowTests.swift",
        "CueTests.swift",
        "CurveAndListParamTests.swift",
        "CurvedPatchTests.swift",
        "DXFExportTests.swift",
        "DampedSpringTests.swift",
        "DataFeedTests.swift",
        "DataLayerReadTests.swift",
        "DeBruijnTests.swift",
        "DecalTests.swift",
        "DefocusTests.swift",
        "DepthOfFieldTests.swift",
        "DescriptionTests.swift",
        "DetailMapTests.swift",
        "DielectricBreakdownTests.swift",
        "DiffusionCurveTests.swift",
        "DispersionTests.swift",
        "DisplayWallTests.swift",
        "DistanceFieldTests.swift",
        "DitherTests.swift",
        "DoctorTests.swift",
        "DofBenchmarkTests.swift",
        "DomainColoringTests.swift",
        "DoublePendulumTests.swift",
        "DrainageTests.swift",
        "DropTests.swift",
        "DrosteTests.swift",
        "DualContouringTests.swift",
        "EXRExportTests.swift",
        "EasingDerivedTests.swift",
        "EasingTests.swift",
        "EmbroideryExportTests.swift",
        "EnergyConservationTests.swift",
        "EnvelopeTests.swift",
        "EnvironmentCacheTests.swift",
        "EnvironmentMenuTests.swift",
        "EpicyclesTests.swift",
        "EveryCasterTests.swift",
        "EvolutionTests.swift",
        "ExportErrorTests.swift",
        "ExportMetadataTests.swift",
        "FacetFieldTests.swift",
        "FallingSandTests.swift",
        "FeatureEdgesTests.swift",
        "FeedEnvironmentTests.swift",
        "FieldCoverageTests.swift",
        "FieldSlopeTests.swift",
        "FileErrorTests.swift",
        "FillMediumTests.swift",
        "FilmLookTests.swift",
        "FilterCatalogTests.swift",
        "FilterSpreadNoteTests.swift",
        "FluidDynamicsTests.swift",
        "FogTests.swift",
        "ForceLayoutTests.swift",
        "FordCircleTests.swift",
        "FormulaTests.swift",
        "FourierTests.swift",
        "FractalFieldTests.swift",
        "FractalTests.swift",
        "FractureTests.swift",
        "FrameGrabTests.swift",
        "FrameInterpolationTests.swift",
        "FrameInvariantTests.swift",
        "FrameProfileTests.swift",
        "FrameRateTests.swift",
        "FrameRingTests.swift",
        "FringeStrokeTests.swift",
        "GCodeExportTests.swift",
        "GIFMemoryTests.swift",
        "GIFWriterTests.swift",
        "GaborNoiseTests.swift",
        "GainMapExportTests.swift",
        "GestureMarkTests.swift",
        "GlassTests.swift",
        "GlobalIlluminationTests.swift",
        "GlossyReflectionTests.swift",
        "GlyphAtlasTests.swift",
        "GlyphMosaicTests.swift",
        "GlyphStrokeTests.swift",
        "GridTests.swift",
        "GrowthTests.swift",
        "GuillocheTests.swift",
        "HalftoneTests.swift",
        "HangingPunctuationTests.swift",
        "HatchingFilterTests.swift",
        "HeadlessDrainTests.swift",
        "HeadlessFlagSupport.swift",
        "HeadlessFrameReportTests.swift",
        "HeavyPassTests.swift",
        "HeightfieldTests.swift",
        "HeldObjectsTests.swift",
        "HilbertOrderTests.swift",
        "HitomezashiTests.swift",
        "HobbySplineTests.swift",
        "HologramMaterialTests.swift",
        "HolographicFoilTests.swift",
        "HopfFibrationTests.swift",
        "HullTests.swift",
        "HyperbolicTilingTests.swift",
        "IBLCacheTests.swift",
        "IESProfileTests.swift",
        "IKChainTests.swift",
        "ImageFitTests.swift",
        "ImageSamplingTests.swift",
        "ImageSourceTests.swift",
        "ImageTests.swift",
        "InkProbeSupport.swift",
        "InspectorPanelFocusTests.swift",
        "InstallationTests.swift",
        "InstancedMotionTests.swift",
        "InstancedRayTracingTests.swift",
        "InterferenceColorTests.swift",
        "IsolineTests.swift",
        "IsosurfaceTests.swift",
        "JSONTests.swift",
        "KeptShapeTests.swift",
        "KnotworkTests.swift",
        "KolamTests.swift",
        "KuramotoTests.swift",
        "LayerStyleTests.swift",
        "LayersReadOpsTests.swift",
        "LensDiscSupport.swift",
        "LensDistortionTests.swift",
        "LensFlareRenderTests.swift",
        "LensFlareTests.swift",
        "LightAccumulationTests.swift",
        "LightSetTests.swift",
        "LightTests.swift",
        "LightingInvariantTests.swift",
        "LightingTests.swift",
        "LineDrawingTests.swift",
        "LineIntegralConvolutionTests.swift",
        "LineTextureTests.swift",
        "Lines3DTests.swift",
        "LiveSurfaceTests.swift",
        "LoftTests.swift",
        "LoopingNoise3DTests.swift",
        "ManyLightsBenchmarkTests.swift",
        "ManyLightsTests.swift",
        "MarblingTests.swift",
        "MarkovChainTests.swift",
        "MaterialSourceTests.swift",
        "MaterialTests.swift",
        "MaterialTextureRenderTests.swift",
        "MaterialTextureTests.swift",
        "MathTests.swift",
        "MeanderTests.swift",
        "MedialAxisTests.swift",
        "MeshBooleanTests.swift",
        "MeshColorTests.swift",
        "MeshExportTests.swift",
        "MeshFieldTests.swift",
        "MeshGrowthTests.swift",
        "MeshInstanceTests.swift",
        "MeshJoinTests.swift",
        "MeshLoaderTests.swift",
        "MeshOutlineTests.swift",
        "MeshTangentTests.swift",
        "MeshTests.swift",
        "MeshTextTests.swift",
        "MongolianTextTests.swift",
        "MotionBlurTests.swift",
        "MotionFieldTests.swift",
        "MovingAverageSmoothingTests.swift",
        "MultiScaleTuringTests.swift",
        "NBodyTests.swift",
        "NewtonBasinsTests.swift",
        "NoLoopExportTests.swift",
        "NoiseFieldsTests.swift",
        "NoiseTests.swift",
        "OSCanvasHostTests.swift",
        "OceanTests.swift",
        "OneEuroFilterTests.swift",
        "OpticalLookTests.swift",
        "OverlappingWFCTests.swift",
        "OverlayTests.swift",
        "PDFExportTests.swift",
        "PackingTests.swift",
        "PaintTests.swift",
        "PaletteExtractTests.swift",
        "PaletteImportTests.swift",
        "PaletteSchemeTests.swift",
        "PaletteTests.swift",
        "PaperSizeTests.swift",
        "ParallaxTests.swift",
        "ParamListingTests.swift",
        "ParamNumberFieldTests.swift",
        "ParamOverrideTests.swift",
        "ParamOwnTypeTests.swift",
        "ParamTests.swift",
        "ParameterTimelineTests.swift",
        "ParametricLSystemTests.swift",
        "ParquetDeformationTests.swift",
        "ParticleLeniaTests.swift",
        "PathTraceTests.swift",
        "PercolationTests.swift",
        "PersistentLayerCombineTests.swift",
        "PersistentLayerExportTests.swift",
        "PhotoMosaicTests.swift",
        "PinchAndTurnTests.swift",
        "PixelSortTests.swift",
        "PlacementTests.swift",
        "PlaneCurveTests.swift",
        "PlanetMapTests.swift",
        "PointCasterSlotTests.swift",
        "PolyominoTests.swift",
        "PopulationTests.swift",
        "PoseGraphTests.swift",
        "PowerDiagramTests.swift",
        "PredatorPreyTests.swift",
        "PresentDitherTests.swift",
        "PrintColorTests.swift",
        "PrintSeparationTests.swift",
        "ProjectionTests.swift",
        "PursuitTests.swift",
        "PushFeedTests.swift",
        "RGBDFrameTests.swift",
        "RadialBasisTests.swift",
        "RampStepTests.swift",
        "RandomTests.swift",
        "Ray3Tests.swift",
        "RaymarchBenchmarkTests.swift",
        "RectanglePackingTests.swift",
        "RectangleTests.swift",
        "ReflectionBounceTests.swift",
        "RegionTests.swift",
        "RenderScaleTests.swift",
        "RipplesTests.swift",
        "Rotation3DTests.swift",
        "RoundedCornersTests.swift",
        "SDFOutlineTests.swift",
        "SSAOBenchmarkTests.swift",
        "SSRBenchmarkTests.swift",
        "SVGExportTests.swift",
        "SVGImportTests.swift",
        "SamplingTests.swift",
        "SandpileTests.swift",
        "ScanGraphTests.swift",
        "ScatteringTests.swift",
        "SceneAnimationTests.swift",
        "SceneExportTests.swift",
        "SceneFixtureSupport.swift",
        "SceneImportTests.swift",
        "SceneLoaderTests.swift",
        "SceneSkinningTests.swift",
        "ScheduleTests.swift",
        "SchottkyTests.swift",
        "ScreenSaverHostTests.swift",
        "ScreenWakeTests.swift",
        "SeamCarveTests.swift",
        "SeamlessCloneTests.swift",
        "SelfWarpTests.swift",
        "SeparationExportTests.swift",
        "SessionRecorderTests.swift",
        "SetupThrowsTests.swift",
        "ShaderCheckTests.swift",
        "ShaderErrorTests.swift",
        "ShaderImportRenderTests.swift",
        "ShaderIncludeTests.swift",
        "ShaderPaintTests.swift",
        "ShadowArtTests.swift",
        "ShadowBenchmarkTests.swift",
        "ShapeBooleanTests.swift",
        "ShapeCutTests.swift",
        "ShapeGrammarTests.swift",
        "ShapeMorphTests.swift",
        "ShapeSamplingTests.swift",
        "ShockFilterTests.swift",
        "SingleLineTests.swift",
        "SketchConvenienceTests.swift",
        "SlitScanTests.swift",
        "SlowMotionTests.swift",
        "SmallValueTests.swift",
        "SmoothLifeTests.swift",
        "SnapshotSupport.swift",
        "SnapshotTests.swift",
        "SoakTests.swift",
        "SourcePickTests.swift",
        "SpanningTreeTests.swift",
        "SpatialHashTests.swift",
        "SpatialIndexTests.swift",
        "SpatialVideoTests.swift",
        "SpectralEffectsTests.swift",
        "SpectrumTests.swift",
        "SpecularAntialiasTests.swift",
        "SpirolateralTests.swift",
        "StateAutomataTests.swift",
        "SteeringTests.swift",
        "StillFramesTests.swift",
        "StillRateTests.swift",
        "StraightSkeletonTests.swift",
        "StrandFieldTests.swift",
        "StringArtTests.swift",
        "StrokeDashTests.swift",
        "StrokeDynamicsTests.swift",
        "StrokeMediumTests.swift",
        "StrokeProfileTests.swift",
        "StrokeShapeTests.swift",
        "StylizedReflectionTests.swift",
        "StylusTests.swift",
        "SubdivisionSurfaceTests.swift",
        "SubframeExportTests.swift",
        "SummedAreaTests.swift",
        "SupervisorTests.swift",
        "SurfaceMapTests.swift",
        "SurfaceReconstructionTests.swift",
        "SurfaceSamplingTests.swift",
        "SwarmChemistryTests.swift",
        "SwarmTests.swift",
        "SwayTests.swift",
        "SweepTests.swift",
        "SymmetryTests.swift",
        "TAATests.swift",
        "TableTests.swift",
        "TakeTests.swift",
        "TapeAndLensTests.swift",
        "TempPathSupport.swift",
        "TempoTests.swift",
        "TenPrintTests.swift",
        "TensegrityTests.swift",
        "TessellationTests.swift",
        "TextDefaultStrokeTests.swift",
        "TextPlacementTests.swift",
        "TextureFilteringTests.swift",
        "TextureWrapTests.swift",
        "TexturedReflectionTests.swift",
        "ThinFilmTests.swift",
        "TilingTests.swift",
        "TimelineTests.swift",
        "TimerTests.swift",
        "ToneMapTests.swift",
        "TracedBudgetTests.swift",
        "TracedReuseTests.swift",
        "TracedShadowPassTests.swift",
        "TransformStackTests.swift",
        "TransparentOutputTests.swift",
        "TriplanarTests.swift",
        "TurtleTests.swift",
        "TypedTextTests.swift",
        "USDAnimationTests.swift",
        "USDParserTests.swift",
        "USDSkinningTests.swift",
        "USDXformTests.swift",
        "UlamSpiralTests.swift",
        "UndoKeyTests.swift",
        "UpscalingTests.swift",
        "UserSimTests.swift",
        "VariationTests.swift",
        "Vector2Tests.swift",
        "Vector3Tests.swift",
        "VectorProtocolTests.swift",
        "VelocityBufferTests.swift",
        "VerticalTextTests.swift",
        "VideoExportTests.swift",
        "ViewBoxTests.swift",
        "ViewControlTests.swift",
        "VisualCatalogTests.swift",
        "VisualTests.swift",
        "VolumeTests.swift",
        "VolumetricTests.swift",
        "VoxelBlocksTests.swift",
        "WalkTests.swift",
        "WatercolorSimTests.swift",
        "WatercolorTests.swift",
        "WeatherTests.swift",
        "WebAssetTests.swift",
        "WebControlTests.swift",
        "WebEffectsTests.swift",
        "WebExportTests.swift",
        "WebFieldTests.swift",
        "WebGateTests.swift",
        "WebSourceTests.swift",
        "WebStrokeMediumTests.swift",
        "WebTriangleTests.swift",
        "WidgetTimelineTests.swift",
        "WipesAndCopiesTests.swift",
        "WorldCloudTests.swift",
        "XDoGTests.swift"
      ],
      "target_dependencies" : [
        "Ollin",
        "COllinShaders",
        "OllinProjects",
        "OllinSceneImport",
        "OllinShaderText",
        "OllinWebGate",
        "OllinExpander",
        "OllinTestSupport"
      ],
      "type" : "test"
    },
    {
      "c99name" : "OllinTestSupport",
      "module_type" : "SwiftTarget",
      "name" : "OllinTestSupport",
      "path" : "Tests/OllinTestSupport",
      "sources" : [
        "Record3DFrameBytes.swift",
        "WaitFor.swift"
      ],
      "type" : "library"
    },
    {
      "c99name" : "OllinSyphonTests",
      "module_type" : "SwiftTarget",
      "name" : "OllinSyphonTests",
      "path" : "Tests/OllinSyphonTests",
      "sources" : [
        "SyphonLoopbackTests.swift"
      ],
      "target_dependencies" : [
        "Ollin",
        "OllinSyphon",
        "CSyphon",
        "OllinTestSupport"
      ],
      "type" : "test"
    },
    {
      "c99name" : "OllinSyphon",
      "module_type" : "SwiftTarget",
      "name" : "OllinSyphon",
      "path" : "Sources/OllinSyphon",
      "product_memberships" : [
        "OllinSyphon",
        "OllinRun",
        "OllinProjectGenerator",
        "OllinLiveCoding",
        "OllinLive",
        "OllinGuideSnippets",
        "OllinGuideFigures",
        "OllinExamples"
      ],
      "sources" : [
        "SyphonClient.swift",
        "SyphonServer.swift"
      ],
      "target_dependencies" : [
        "Ollin",
        "CSyphon"
      ],
      "type" : "library"
    },
    {
      "c99name" : "OllinShaderTextTests",
      "module_type" : "SwiftTarget",
      "name" : "OllinShaderTextTests",
      "path" : "Tests/OllinShaderTextTests",
      "sources" : [
        "WebFragmentTranslatorTests.swift",
        "WebShaderLibraryTests.swift",
        "WebShaderTranslatorTests.swift"
      ],
      "target_dependencies" : [
        "OllinShaderText",
        "OllinWebGate"
      ],
      "type" : "test"
    },
    {
      "c99name" : "OllinShaderText",
      "module_type" : "SwiftTarget",
      "name" : "OllinShaderText",
      "path" : "Sources/OllinShaderText",
      "product_memberships" : [
        "Ollin",
        "OllinAudio",
        "OllinOSC",
        "OllinDMX",
        "OllinLaser",
        "OllinMIDI",
        "OllinMQTT",
        "OllinHaptics",
        "OllinSerial",
        "OllinBluetooth",
        "OllinRemote",
        "OllinRoom",
        "OllinPhysics",
        "OllinVision",
        "OllinVideo",
        "OllinSyphon",
        "OllinCamera",
        "OllinRecord3D",
        "OllinPhone",
        "OllinScreen",
        "OllinController",
        "OllinSamplePhotos",
        "OllinTether",
        "OllinRun",
        "OllinProjectGenerator",
        "OllinNew",
        "OllinLiveCoding",
        "OllinLive",
        "OllinGuideSnippets",
        "OllinGuideFigures",
        "OllinExamples",
        "OllinDoctor",
        "OllinDocs",
        "OllinCheck"
      ],
      "sources" : [
        "ShaderScan.swift",
        "ShaderToken.swift",
        "WebFragmentTranslator.swift",
        "WebShaderCompat.swift",
        "WebShaderLibrary.swift",
        "WebShaderTranslator.swift"
      ],
      "type" : "library"
    },
    {
      "c99name" : "OllinSerialTests",
      "module_type" : "SwiftTarget",
      "name" : "OllinSerialTests",
      "path" : "Tests/OllinSerialTests",
      "sources" : [
        "FirmataTests.swift",
        "Pseudoterminals.swift",
        "SerialLoopbackTests.swift",
        "SerialUnitTests.swift"
      ],
      "target_dependencies" : [
        "Ollin",
        "OllinSerial",
        "OllinTestSupport"
      ],
      "type" : "test"
    },
    {
      "c99name" : "OllinSerial",
      "module_type" : "SwiftTarget",
      "name" : "OllinSerial",
      "path" : "Sources/OllinSerial",
      "product_memberships" : [
        "OllinSerial",
        "OllinRun",
        "OllinProjectGenerator",
        "OllinLiveCoding",
        "OllinLive",
        "OllinGuideSnippets",
        "OllinGuideFigures",
        "OllinExamples"
      ],
      "sources" : [
        "Firmata.swift",
        "LineAssembler.swift",
        "SerialDevice.swift",
        "SerialPort.swift"
      ],
      "target_dependencies" : [
        "Ollin"
      ],
      "type" : "library"
    },
    {
      "c99name" : "OllinScreenTests",
      "module_type" : "SwiftTarget",
      "name" : "OllinScreenTests",
      "path" : "Tests/OllinScreenTests",
      "sources" : [
        "ScreenCaptureTests.swift"
      ],
      "target_dependencies" : [
        "Ollin",
        "OllinScreen"
      ],
      "type" : "test"
    },
    {
      "c99name" : "OllinScreen",
      "module_type" : "SwiftTarget",
      "name" : "OllinScreen",
      "path" : "Sources/OllinScreen",
      "product_memberships" : [
        "OllinScreen",
        "OllinRun",
        "OllinProjectGenerator",
        "OllinLiveCoding",
        "OllinLive",
        "OllinGuideSnippets",
        "OllinGuideFigures",
        "OllinExamples"
      ],
      "sources" : [
        "ScreenCapture.swift",
        "ScreenSource.swift"
      ],
      "target_dependencies" : [
        "Ollin"
      ],
      "type" : "library"
    },
    {
      "c99name" : "OllinSceneImport",
      "module_type" : "SwiftTarget",
      "name" : "OllinSceneImport",
      "path" : "Sources/OllinSceneImport",
      "product_memberships" : [
        "OllinNew",
        "OllinGuideFigures"
      ],
      "sources" : [
        "SceneImport.swift"
      ],
      "target_dependencies" : [
        "Ollin",
        "OllinProjects"
      ],
      "type" : "library"
    },
    {
      "c99name" : "OllinSamplePhotosTests",
      "module_type" : "SwiftTarget",
      "name" : "OllinSamplePhotosTests",
      "path" : "Tests/OllinSamplePhotosTests",
      "sources" : [
        "SamplePhotoTests.swift"
      ],
      "target_dependencies" : [
        "OllinSamplePhotos"
      ],
      "type" : "test"
    },
    {
      "c99name" : "OllinSamplePhotos",
      "module_type" : "SwiftTarget",
      "name" : "OllinSamplePhotos",
      "path" : "Sources/OllinSamplePhotos",
      "product_memberships" : [
        "OllinSamplePhotos",
        "OllinRun",
        "OllinProjectGenerator",
        "OllinLiveCoding",
        "OllinLive",
        "OllinGuideSnippets",
        "OllinGuideFigures",
        "OllinExamples"
      ],
      "resources" : [
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/OllinSamplePhotos/Resources/alley.jpg",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/OllinSamplePhotos/Resources/boats.jpg",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/OllinSamplePhotos/Resources/breakfast.jpg",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/OllinSamplePhotos/Resources/city.jpg",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/OllinSamplePhotos/Resources/dance.mp4",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/OllinSamplePhotos/Resources/dancer.jpg",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/OllinSamplePhotos/Resources/desk.jpg",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/OllinSamplePhotos/Resources/hands.jpg",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/OllinSamplePhotos/Resources/handstand.jpg",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/OllinSamplePhotos/Resources/headland.jpg",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/OllinSamplePhotos/Resources/marigolds.jpg",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/OllinSamplePhotos/Resources/page.jpg",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/OllinSamplePhotos/Resources/portrait.jpg",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/OllinSamplePhotos/Resources/profile.jpg",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/OllinSamplePhotos/Resources/reaching.jpg",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/OllinSamplePhotos/Resources/scarf.jpg",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/OllinSamplePhotos/Resources/stone.jpg",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/OllinSamplePhotos/Resources/street.jpg",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/OllinSamplePhotos/Resources/talavera.jpg",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/OllinSamplePhotos/Resources/textiles.jpg",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/OllinSamplePhotos/Resources/wrestler.jpg",
          "rule" : {
            "process" : {
            }
          }
        }
      ],
      "sources" : [
        "SampleClip.swift",
        "SamplePhoto.swift"
      ],
      "target_dependencies" : [
        "Ollin"
      ],
      "type" : "library"
    },
    {
      "c99name" : "OllinRuntimeTests",
      "module_type" : "SwiftTarget",
      "name" : "OllinRuntimeTests",
      "path" : "Tests/OllinRuntimeTests",
      "sources" : [
        "CodeCompletionTests.swift",
        "FrameworkRebuiltTests.swift",
        "ParamWriteTests.swift",
        "PhoneProjectBuildTests.swift",
        "PhoneProjectTests.swift",
        "SketchCompileArgumentsTests.swift",
        "SketchTargetTests.swift",
        "SourceEditTests.swift",
        "SourceRegionsTests.swift",
        "SourceReorderTests.swift",
        "SwiftTokensTests.swift"
      ],
      "target_dependencies" : [
        "Ollin",
        "OllinRuntime"
      ],
      "type" : "test"
    },
    {
      "c99name" : "OllinRuntime",
      "module_type" : "SwiftTarget",
      "name" : "OllinRuntime",
      "path" : "Sources/OllinRuntime",
      "product_memberships" : [
        "OllinTether",
        "OllinRun",
        "OllinProjectGenerator",
        "OllinLiveCoding",
        "OllinLive",
        "OllinGuideSnippets",
        "OllinGuideFigures",
        "OllinExamples"
      ],
      "sources" : [
        "CodeCompleter.swift",
        "CompileDiagnostic.swift",
        "FileWatcher.swift",
        "ParamWrite.swift",
        "PhoneProject.swift",
        "ShapeDrag.swift",
        "SketchLoader.swift",
        "SketchSession.swift",
        "SketchTarget.swift",
        "SourceEdit.swift",
        "SourceRegions.swift",
        "SourceReorder.swift",
        "SwiftTokens.swift"
      ],
      "target_dependencies" : [
        "Ollin",
        "COllinSourceKit"
      ],
      "type" : "library"
    },
    {
      "c99name" : "OllinRun",
      "module_type" : "SwiftTarget",
      "name" : "OllinRun",
      "path" : "Sources/OllinRun",
      "product_memberships" : [
        "OllinRun"
      ],
      "sources" : [
        "OllinRunMain.swift",
        "RunSelfTest.swift"
      ],
      "target_dependencies" : [
        "Ollin",
        "OllinRuntime",
        "OllinAudio",
        "OllinOSC",
        "OllinDMX",
        "OllinLaser",
        "OllinMIDI",
        "OllinLink",
        "OllinSerial",
        "OllinMQTT",
        "OllinRemote",
        "OllinRoom",
        "OllinPhysics",
        "OllinVision",
        "OllinVideo",
        "OllinSyphon",
        "OllinCamera",
        "OllinRecord3D",
        "OllinPhone",
        "OllinScreen",
        "OllinController",
        "OllinHaptics",
        "OllinBluetooth",
        "OllinSamplePhotos"
      ],
      "type" : "executable"
    },
    {
      "c99name" : "OllinRoomTests",
      "module_type" : "SwiftTarget",
      "name" : "OllinRoomTests",
      "path" : "Tests/OllinRoomTests",
      "sources" : [
        "MemoryRoomTransport.swift",
        "RoomClockTests.swift",
        "RoomParameterTests.swift",
        "RoomSessionTests.swift",
        "RoomWireTests.swift"
      ],
      "target_dependencies" : [
        "Ollin",
        "OllinRoom"
      ],
      "type" : "test"
    },
    {
      "c99name" : "OllinRoom",
      "module_type" : "SwiftTarget",
      "name" : "OllinRoom",
      "path" : "Sources/OllinRoom",
      "product_memberships" : [
        "OllinRoom",
        "OllinRun",
        "OllinProjectGenerator",
        "OllinLiveCoding",
        "OllinLive",
        "OllinGuideSnippets",
        "OllinGuideFigures",
        "OllinExamples"
      ],
      "sources" : [
        "LocalNetworkTransport.swift",
        "Room.swift",
        "RoomClock.swift",
        "RoomSession.swift",
        "RoomTransport.swift",
        "RoomWire.swift"
      ],
      "target_dependencies" : [
        "Ollin"
      ],
      "type" : "library"
    },
    {
      "c99name" : "OllinRemoteTests",
      "module_type" : "SwiftTarget",
      "name" : "OllinRemoteTests",
      "path" : "Tests/OllinRemoteTests",
      "sources" : [
        "RemoteWireTests.swift"
      ],
      "target_dependencies" : [
        "Ollin",
        "OllinRemote",
        "OllinTestSupport"
      ],
      "type" : "test"
    },
    {
      "c99name" : "OllinRemote",
      "module_type" : "SwiftTarget",
      "name" : "OllinRemote",
      "path" : "Sources/OllinRemote",
      "product_memberships" : [
        "OllinRemote",
        "OllinRun",
        "OllinProjectGenerator",
        "OllinLiveCoding",
        "OllinLive",
        "OllinGuideSnippets",
        "OllinGuideFigures",
        "OllinExamples"
      ],
      "resources" : [
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/OllinRemote/Resources/surface.html",
          "rule" : {
            "copy" : {
            }
          }
        }
      ],
      "sources" : [
        "RemoteInspector.swift",
        "RemoteWire.swift"
      ],
      "target_dependencies" : [
        "Ollin"
      ],
      "type" : "library"
    },
    {
      "c99name" : "OllinReferenceTests",
      "module_type" : "SwiftTarget",
      "name" : "OllinReferenceTests",
      "path" : "Tests/OllinReferenceTests",
      "sources" : [
        "APILookupTests.swift",
        "CommandFlagsTests.swift",
        "ExampleCatalogTests.swift",
        "HTMLTests.swift",
        "MarkdownTests.swift",
        "ReferenceCatalogTests.swift",
        "ReferenceSearchTests.swift",
        "SiteSearchTests.swift",
        "SiteTests.swift"
      ],
      "target_dependencies" : [
        "OllinReference",
        "OllinCommandFlags",
        "OllinWebGate"
      ],
      "type" : "test"
    },
    {
      "c99name" : "OllinReference",
      "module_type" : "SwiftTarget",
      "name" : "OllinReference",
      "path" : "Sources/OllinReference",
      "product_memberships" : [
        "OllinDocs"
      ],
      "sources" : [
        "APIListing.swift",
        "APIUsage.swift",
        "ExampleCatalog.swift",
        "HTML.swift",
        "Markdown.swift",
        "PageQuery.swift",
        "ReferenceLibrary.swift",
        "ReferenceSearch.swift",
        "ShellCompletions.swift",
        "Site.swift",
        "SiteHero.swift",
        "SiteHome.swift",
        "SiteLogo.swift",
        "SiteMedia.swift",
        "SiteSearch.swift",
        "SiteStyle.swift",
        "SourceComments.swift"
      ],
      "target_dependencies" : [
        "OllinProjects",
        "OllinCommandFlags"
      ],
      "type" : "library"
    },
    {
      "c99name" : "OllinRecord3DTests",
      "module_type" : "SwiftTarget",
      "name" : "OllinRecord3DTests",
      "path" : "Tests/OllinRecord3DTests",
      "sources" : [
        "Record3DStreamTests.swift",
        "Record3DTests.swift"
      ],
      "target_dependencies" : [
        "Ollin",
        "OllinRecord3D",
        "OllinUSBMux",
        "OllinTestSupport"
      ],
      "type" : "test"
    },
    {
      "c99name" : "OllinRecord3D",
      "module_type" : "SwiftTarget",
      "name" : "OllinRecord3D",
      "path" : "Sources/OllinRecord3D",
      "product_memberships" : [
        "OllinRecord3D",
        "OllinRun",
        "OllinProjectGenerator",
        "OllinLiveCoding",
        "OllinLive",
        "OllinGuideSnippets",
        "OllinGuideFigures",
        "OllinExamples"
      ],
      "sources" : [
        "Record3DCamera.swift",
        "Record3DCodec.swift",
        "Record3DDevice.swift",
        "Record3DRecording.swift",
        "Record3DStream.swift",
        "ZIPArchive.swift"
      ],
      "target_dependencies" : [
        "Ollin",
        "OllinUSBMux"
      ],
      "type" : "library"
    },
    {
      "c99name" : "OllinProjectsTests",
      "module_type" : "SwiftTarget",
      "name" : "OllinProjectsTests",
      "path" : "Tests/OllinProjectsTests",
      "sources" : [
        "AppProjectTests.swift",
        "ExampleAndNamingTests.swift",
        "ExtensionProjectTests.swift",
        "GeneratedProjectBuildTests.swift",
        "IOSAppProjectTests.swift",
        "OSCanvasProjectTests.swift",
        "PackageHostTests.swift",
        "ProjectGeneratorTests.swift",
        "SceneSourceTests.swift",
        "ScreenSaverProjectTests.swift",
        "ShaderImportTests.swift",
        "WidgetProjectTests.swift"
      ],
      "target_dependencies" : [
        "OllinProjects"
      ],
      "type" : "test"
    },
    {
      "c99name" : "OllinProjects",
      "module_type" : "SwiftTarget",
      "name" : "OllinProjects",
      "path" : "Sources/OllinProjects",
      "product_memberships" : [
        "OllinProjectGenerator",
        "OllinNew",
        "OllinGuideFigures",
        "OllinDocs"
      ],
      "sources" : [
        "Capability.swift",
        "ExampleSource.swift",
        "ExtensionSeam.swift",
        "GLSL/GLSLCompat.swift",
        "GLSL/GLSLTranslator.swift",
        "GLSL/ImportedShaderSource.swift",
        "GLSL/ShaderImport.swift",
        "IOSAppSource.swift",
        "PackageHost.swift",
        "ProjectGenerator.swift",
        "ProjectKind.swift",
        "ProjectNaming.swift",
        "ProjectRequest.swift",
        "ProjectTemplate.swift",
        "Scene/ImportedScene.swift",
        "Scene/ImportedSceneSource.swift",
        "ThreeDRecipe.swift",
        "ThreeDSource.swift"
      ],
      "target_dependencies" : [
        "OllinShaderText"
      ],
      "type" : "library"
    },
    {
      "c99name" : "OllinProjectGenerator",
      "module_type" : "SwiftTarget",
      "name" : "OllinProjectGenerator",
      "path" : "Sources/OllinProjectGenerator",
      "product_memberships" : [
        "OllinProjectGenerator"
      ],
      "sources" : [
        "GeneratorHarness.swift",
        "GeneratorView.swift",
        "OllinProjectGeneratorApp.swift",
        "SourceStage.swift",
        "ThreeDStrip.swift"
      ],
      "target_dependencies" : [
        "Ollin",
        "OllinRuntime",
        "OllinProjects",
        "OllinAudio",
        "OllinOSC",
        "OllinDMX",
        "OllinLaser",
        "OllinMIDI",
        "OllinLink",
        "OllinSerial",
        "OllinMQTT",
        "OllinRemote",
        "OllinRoom",
        "OllinPhysics",
        "OllinVision",
        "OllinVideo",
        "OllinSyphon",
        "OllinCamera",
        "OllinRecord3D",
        "OllinPhone",
        "OllinScreen",
        "OllinController",
        "OllinHaptics",
        "OllinBluetooth",
        "OllinSamplePhotos"
      ],
      "type" : "executable"
    },
    {
      "c99name" : "OllinPhysicsTests",
      "module_type" : "SwiftTarget",
      "name" : "OllinPhysicsTests",
      "path" : "Tests/OllinPhysicsTests",
      "sources" : [
        "Buoyancy3DTests.swift",
        "Character3DTests.swift",
        "Collider3DTests.swift",
        "CollisionFilter3DTests.swift",
        "Contact3DTests.swift",
        "JointKind3DTests.swift",
        "JointMotor3DTests.swift",
        "Motion3DTests.swift",
        "PhysicsConvenienceTests.swift",
        "PhysicsInvariantTests.swift",
        "PhysicsSnapshotTests.swift",
        "PhysicsTests.swift",
        "PolygonColliderTests.swift",
        "Query3DTests.swift",
        "Ragdoll3DTests.swift",
        "RigidBody3DTests.swift",
        "RigidBodyTests.swift",
        "Rope3DTests.swift",
        "SkinnedCloth3DTests.swift",
        "SoftBody3DTests.swift",
        "SoftBodyTests.swift",
        "SolverNumberTests.swift",
        "Tensegrity3DTests.swift",
        "TrackedVehicle3DTests.swift",
        "UsdPhysicsTests.swift",
        "Vehicle3DTests.swift",
        "World3DLimitTests.swift",
        "WorldSlotTests.swift"
      ],
      "target_dependencies" : [
        "OllinPhysics",
        "CBox2D",
        "CJolt"
      ],
      "type" : "test"
    },
    {
      "c99name" : "OllinPhysics",
      "module_type" : "SwiftTarget",
      "name" : "OllinPhysics",
      "path" : "Sources/OllinPhysics",
      "product_memberships" : [
        "OllinPhysics",
        "OllinRun",
        "OllinProjectGenerator",
        "OllinLiveCoding",
        "OllinLive",
        "OllinGuideSnippets",
        "OllinGuideFigures",
        "OllinExamples"
      ],
      "sources" : [
        "Body.swift",
        "Body3D.swift",
        "CJoltInterop.swift",
        "Character3D.swift",
        "Colliding3D.swift",
        "CollisionGroup.swift",
        "Contact3D.swift",
        "Freedom3D.swift",
        "Joint.swift",
        "Joint3D.swift",
        "JointPath.swift",
        "Particle.swift",
        "PhysicsAsset.swift",
        "PhysicsError.swift",
        "PhysicsSnapshot.swift",
        "Query3D.swift",
        "Ragdoll3D.swift",
        "RagdollFit.swift",
        "Rope3D.swift",
        "Sketch+Physics3D.swift",
        "SoftBody.swift",
        "SoftBody3D.swift",
        "SolverNumber.swift",
        "Spring.swift",
        "Tensegrity3D.swift",
        "UsdPhysics.swift",
        "Vehicle3D.swift",
        "Water.swift",
        "World.swift",
        "World3D.swift"
      ],
      "target_dependencies" : [
        "Ollin",
        "CBox2D",
        "CJolt"
      ],
      "type" : "library"
    },
    {
      "c99name" : "OllinPhoneTests",
      "module_type" : "SwiftTarget",
      "name" : "OllinPhoneTests",
      "path" : "Tests/OllinPhoneTests",
      "sources" : [
        "PhoneBodyTests.swift",
        "PhoneFaceTests.swift",
        "PhoneFlowTests.swift",
        "PhoneHandTests.swift",
        "PhoneMarkerTests.swift",
        "PhonePictureRequestTests.swift",
        "PhonePictureRoundTripTests.swift",
        "PhonePlanesTests.swift",
        "PhonePointerTests.swift",
        "PhoneRequestTests.swift",
        "PhoneSaliencyTests.swift",
        "PhoneSceneMeshTests.swift",
        "PhoneSoundsTests.swift",
        "PhoneTextTests.swift",
        "PhoneTouchTests.swift",
        "PhoneWandTests.swift",
        "PhoneWireSupport.swift",
        "PhoneWireTests.swift"
      ],
      "target_dependencies" : [
        "Ollin",
        "OllinPhone",
        "OllinUSBMux"
      ],
      "type" : "test"
    },
    {
      "c99name" : "OllinPhone",
      "module_type" : "SwiftTarget",
      "name" : "OllinPhone",
      "path" : "Sources/OllinPhone",
      "product_memberships" : [
        "OllinPhone",
        "OllinRun",
        "OllinProjectGenerator",
        "OllinLiveCoding",
        "OllinLive",
        "OllinGuideSnippets",
        "OllinGuideFigures",
        "OllinExamples"
      ],
      "sources" : [
        "PhoneAir.swift",
        "PhoneBody.swift",
        "PhoneDepth.swift",
        "PhoneDevice.swift",
        "PhoneFace.swift",
        "PhoneFlow.swift",
        "PhoneHand.swift",
        "PhoneLight.swift",
        "PhoneMarker.swift",
        "PhonePictureCoding.swift",
        "PhonePictureEncoder.swift",
        "PhonePictureSender.swift",
        "PhonePlanes.swift",
        "PhoneReferences.swift",
        "PhoneSaliency.swift",
        "PhoneSceneMesh.swift",
        "PhoneScreen.swift",
        "PhoneSegmentation.swift",
        "PhoneSounds.swift",
        "PhoneState.swift",
        "PhoneText.swift",
        "PhoneTouches.swift",
        "PhoneWand.swift",
        "PhoneWire.swift"
      ],
      "target_dependencies" : [
        "Ollin",
        "OllinUSBMux"
      ],
      "type" : "library"
    },
    {
      "c99name" : "OllinOSCTests",
      "module_type" : "SwiftTarget",
      "name" : "OllinOSCTests",
      "path" : "Tests/OllinOSCTests",
      "sources" : [
        "OSCCodingTests.swift",
        "OSCLoopbackTests.swift",
        "OSCQueryTests.swift",
        "TUIOTests.swift"
      ],
      "target_dependencies" : [
        "OllinOSC",
        "OllinTestSupport"
      ],
      "type" : "test"
    },
    {
      "c99name" : "OllinOSC",
      "module_type" : "SwiftTarget",
      "name" : "OllinOSC",
      "path" : "Sources/OllinOSC",
      "product_memberships" : [
        "OllinOSC",
        "OllinRun",
        "OllinProjectGenerator",
        "OllinLiveCoding",
        "OllinLive",
        "OllinGuideSnippets",
        "OllinGuideFigures",
        "OllinExamples"
      ],
      "sources" : [
        "OSCArgument.swift",
        "OSCBundle.swift",
        "OSCCoding.swift",
        "OSCMessage.swift",
        "OSCQuery.swift",
        "OSCReceiver.swift",
        "OSCSender.swift",
        "OSCTimeTag.swift",
        "TUIO.swift"
      ],
      "target_dependencies" : [
        "Ollin"
      ],
      "type" : "library"
    },
    {
      "c99name" : "OllinNew",
      "module_type" : "SwiftTarget",
      "name" : "OllinNew",
      "path" : "Sources/OllinNew",
      "product_memberships" : [
        "OllinNew"
      ],
      "sources" : [
        "OllinNewCommand.swift",
        "ShaderSourceReader.swift"
      ],
      "target_dependencies" : [
        "OllinProjects",
        "OllinSceneImport"
      ],
      "type" : "executable"
    },
    {
      "c99name" : "OllinMutationTests",
      "module_type" : "SwiftTarget",
      "name" : "OllinMutationTests",
      "path" : "Tests/OllinMutationTests",
      "sources" : [
        "CableMutationTests.swift",
        "ColorFileMutationTests.swift",
        "DMXMutationTests.swift",
        "DataFileMutationTests.swift",
        "DeepInputTests.swift",
        "FileMutationSupport.swift",
        "LinkMutationTests.swift",
        "MIDIMutationTests.swift",
        "MQTTMutationTests.swift",
        "ModelFileMutationTests.swift",
        "ModelSeeds.swift",
        "MusicAndShapeFileMutationTests.swift",
        "MutationHarnessTests.swift",
        "OSCMutationTests.swift",
        "PhoneMutationTests.swift",
        "PhysicsSnapshotMutationTests.swift",
        "Record3DMutationTests.swift",
        "RecordingAndSoundFileMutationTests.swift",
        "RemoteMutationTests.swift",
        "RoomMutationTests.swift",
        "ShaderTextMutationTests.swift",
        "TimelineFileMutationTests.swift"
      ],
      "target_dependencies" : [
        "OllinMutation",
        "Ollin",
        "OllinOSC",
        "OllinMQTT",
        "OllinLink",
        "OllinPhone",
        "OllinRoom",
        "OllinRemote",
        "OllinMIDI",
        "OllinDMX",
        "OllinRecord3D",
        "OllinUSBMux",
        "OllinSerial",
        "OllinBluetooth",
        "OllinAudio",
        "OllinPhysics",
        "OllinProjects",
        "OllinShaderText",
        "OllinTestSupport"
      ],
      "type" : "test"
    },
    {
      "c99name" : "OllinMutation",
      "module_type" : "SwiftTarget",
      "name" : "OllinMutation",
      "path" : "Tests/OllinMutation",
      "sources" : [
        "Mutation.swift"
      ],
      "target_dependencies" : [
        "COllinAllocationWatch"
      ],
      "type" : "library"
    },
    {
      "c99name" : "OllinMQTTTests",
      "module_type" : "SwiftTarget",
      "name" : "OllinMQTTTests",
      "path" : "Tests/OllinMQTTTests",
      "sources" : [
        "MQTTSessionTests.swift",
        "MQTTStubBroker.swift",
        "MQTTWireTests.swift"
      ],
      "target_dependencies" : [
        "Ollin",
        "OllinMQTT",
        "OllinTestSupport"
      ],
      "type" : "test"
    },
    {
      "c99name" : "OllinMQTT",
      "module_type" : "SwiftTarget",
      "name" : "OllinMQTT",
      "path" : "Sources/OllinMQTT",
      "product_memberships" : [
        "OllinMQTT",
        "OllinRun",
        "OllinProjectGenerator",
        "OllinLiveCoding",
        "OllinLive",
        "OllinGuideSnippets",
        "OllinGuideFigures",
        "OllinExamples"
      ],
      "sources" : [
        "MQTTClient.swift",
        "MQTTMessage.swift",
        "MQTTWire.swift"
      ],
      "target_dependencies" : [
        "Ollin"
      ],
      "type" : "library"
    },
    {
      "c99name" : "OllinMIDITests",
      "module_type" : "SwiftTarget",
      "name" : "OllinMIDITests",
      "path" : "Tests/OllinMIDITests",
      "sources" : [
        "MIDIExpressionTests.swift",
        "MIDILoopbackTests.swift",
        "MIDIMessageTests.swift",
        "TempoClockTests.swift",
        "TimecodeTests.swift"
      ],
      "target_dependencies" : [
        "OllinMIDI",
        "OllinTestSupport"
      ],
      "type" : "test"
    },
    {
      "c99name" : "OllinMIDI",
      "module_type" : "SwiftTarget",
      "name" : "OllinMIDI",
      "path" : "Sources/OllinMIDI",
      "product_memberships" : [
        "OllinMIDI",
        "OllinRun",
        "OllinProjectGenerator",
        "OllinLiveCoding",
        "OllinLive",
        "OllinGuideSnippets",
        "OllinGuideFigures",
        "OllinExamples"
      ],
      "sources" : [
        "Expression.swift",
        "MIDIEndpoint.swift",
        "MIDIInput.swift",
        "MIDIMessage.swift",
        "MIDIOutput.swift",
        "TempoClock.swift",
        "TimecodeClock.swift"
      ],
      "target_dependencies" : [
        "Ollin"
      ],
      "type" : "library"
    },
    {
      "c99name" : "OllinLiveCoding",
      "module_type" : "SwiftTarget",
      "name" : "OllinLiveCoding",
      "path" : "Sources/OllinLiveCoding",
      "product_memberships" : [
        "OllinLiveCoding"
      ],
      "sources" : [
        "CodeCompletion.swift",
        "CodeEditorView.swift",
        "ControlTest.swift",
        "ControlsCardView.swift",
        "DiagnosticsStrip.swift",
        "DragTest.swift",
        "EditorController.swift",
        "HeadlessStage.swift",
        "LiveCodingApp.swift",
        "LiveCodingRootView.swift",
        "PerformanceControls.swift",
        "PerformanceSession.swift",
        "SelfTest.swift",
        "SessionTest.swift",
        "SwiftHighlighter.swift",
        "Template.swift"
      ],
      "target_dependencies" : [
        "Ollin",
        "OllinRuntime",
        "OllinAudio",
        "OllinOSC",
        "OllinDMX",
        "OllinLaser",
        "OllinMIDI",
        "OllinLink",
        "OllinSerial",
        "OllinMQTT",
        "OllinRemote",
        "OllinRoom",
        "OllinPhysics",
        "OllinVision",
        "OllinVideo",
        "OllinSyphon",
        "OllinCamera",
        "OllinRecord3D",
        "OllinPhone",
        "OllinScreen",
        "OllinController",
        "OllinHaptics",
        "OllinBluetooth",
        "OllinSamplePhotos"
      ],
      "type" : "executable"
    },
    {
      "c99name" : "OllinLive",
      "module_type" : "SwiftTarget",
      "name" : "OllinLive",
      "path" : "Sources/OllinLive",
      "product_memberships" : [
        "OllinLive"
      ],
      "sources" : [
        "DragTest.swift",
        "InspectorPanel.swift",
        "InspectorTest.swift",
        "LiveAppDelegate.swift",
        "LiveRootView.swift",
        "LiveSession.swift",
        "OllinLiveApp.swift",
        "ParamTest.swift",
        "SaveTest.swift",
        "SelfTest.swift",
        "WatchTest.swift"
      ],
      "target_dependencies" : [
        "Ollin",
        "OllinRuntime",
        "OllinAudio",
        "OllinOSC",
        "OllinDMX",
        "OllinLaser",
        "OllinMIDI",
        "OllinLink",
        "OllinSerial",
        "OllinMQTT",
        "OllinRemote",
        "OllinRoom",
        "OllinPhysics",
        "OllinVision",
        "OllinVideo",
        "OllinSyphon",
        "OllinCamera",
        "OllinRecord3D",
        "OllinPhone",
        "OllinScreen",
        "OllinController",
        "OllinHaptics",
        "OllinBluetooth",
        "OllinSamplePhotos"
      ],
      "type" : "executable"
    },
    {
      "c99name" : "OllinLinkTests",
      "module_type" : "SwiftTarget",
      "name" : "OllinLinkTests",
      "path" : "Tests/OllinLinkTests",
      "sources" : [
        "LinkEngineTests.swift",
        "LinkLoopbackTests.swift",
        "LinkTimeTests.swift",
        "LinkWireTests.swift"
      ],
      "target_dependencies" : [
        "OllinLink",
        "OllinTestSupport"
      ],
      "type" : "test"
    },
    {
      "c99name" : "OllinLink",
      "module_type" : "SwiftTarget",
      "name" : "OllinLink",
      "path" : "Sources/OllinLink",
      "product_memberships" : [
        "OllinLink",
        "OllinRun",
        "OllinProjectGenerator",
        "OllinLiveCoding",
        "OllinLive",
        "OllinGuideSnippets",
        "OllinGuideFigures",
        "OllinExamples"
      ],
      "sources" : [
        "LinkClock.swift",
        "LinkEngine.swift",
        "LinkGateway.swift",
        "LinkTime.swift",
        "LinkWire.swift"
      ],
      "type" : "library"
    },
    {
      "c99name" : "OllinLaserTests",
      "module_type" : "SwiftTarget",
      "name" : "OllinLaserTests",
      "path" : "Tests/OllinLaserTests",
      "sources" : [
        "EtherDreamLoopbackTests.swift",
        "LaserOptimizerTests.swift",
        "LaserSafetyTests.swift",
        "LaserWireTests.swift"
      ],
      "target_dependencies" : [
        "Ollin",
        "OllinLaser",
        "OllinTestSupport"
      ],
      "type" : "test"
    },
    {
      "c99name" : "OllinLaser",
      "module_type" : "SwiftTarget",
      "name" : "OllinLaser",
      "path" : "Sources/OllinLaser",
      "product_memberships" : [
        "OllinLaser",
        "OllinRun",
        "OllinProjectGenerator",
        "OllinLiveCoding",
        "OllinLive",
        "OllinGuideSnippets",
        "OllinGuideFigures",
        "OllinExamples"
      ],
      "sources" : [
        "EtherDreamDAC.swift",
        "EtherDreamWire.swift",
        "ILDAFile.swift",
        "LaserFrame.swift",
        "LaserOptimizer.swift",
        "LaserProjector.swift",
        "LaserSafety.swift",
        "LaserStream.swift"
      ],
      "target_dependencies" : [
        "Ollin"
      ],
      "type" : "library"
    },
    {
      "c99name" : "OllinHapticsTests",
      "module_type" : "SwiftTarget",
      "name" : "OllinHapticsTests",
      "path" : "Tests/OllinHapticsTests",
      "sources" : [
        "HapticOutputTests.swift",
        "HapticPatternTests.swift",
        "TrackpadPlanTests.swift"
      ],
      "target_dependencies" : [
        "Ollin",
        "OllinHaptics"
      ],
      "type" : "test"
    },
    {
      "c99name" : "OllinHaptics",
      "module_type" : "SwiftTarget",
      "name" : "OllinHaptics",
      "path" : "Sources/OllinHaptics",
      "product_memberships" : [
        "OllinHaptics",
        "OllinRun",
        "OllinProjectGenerator",
        "OllinLiveCoding",
        "OllinLive",
        "OllinGuideSnippets",
        "OllinGuideFigures",
        "OllinExamples"
      ],
      "sources" : [
        "DeviceHaptics.swift",
        "HapticEvent.swift",
        "HapticHub.swift",
        "HapticPattern.swift",
        "Sketch+Haptics.swift",
        "TrackpadPlan.swift"
      ],
      "target_dependencies" : [
        "Ollin"
      ],
      "type" : "library"
    },
    {
      "c99name" : "OllinGuideSnippets",
      "module_type" : "SwiftTarget",
      "name" : "OllinGuideSnippets",
      "path" : "Sources/OllinGuideSnippets",
      "product_memberships" : [
        "OllinGuideSnippets"
      ],
      "sources" : [
        "Names.swift",
        "Snippets.swift",
        "main.swift"
      ],
      "target_dependencies" : [
        "Ollin",
        "OllinRuntime",
        "OllinAudio",
        "OllinOSC",
        "OllinDMX",
        "OllinLaser",
        "OllinMIDI",
        "OllinLink",
        "OllinSerial",
        "OllinMQTT",
        "OllinRemote",
        "OllinRoom",
        "OllinPhysics",
        "OllinVision",
        "OllinVideo",
        "OllinSyphon",
        "OllinCamera",
        "OllinRecord3D",
        "OllinPhone",
        "OllinScreen",
        "OllinController",
        "OllinHaptics",
        "OllinBluetooth",
        "OllinSamplePhotos"
      ],
      "type" : "executable"
    },
    {
      "c99name" : "OllinGuideFigures",
      "module_type" : "SwiftTarget",
      "name" : "OllinGuideFigures",
      "path" : "Sources/OllinGuideFigures",
      "product_memberships" : [
        "OllinGuideFigures"
      ],
      "sources" : [
        "GuideFigures.swift"
      ],
      "target_dependencies" : [
        "Ollin",
        "OllinRuntime",
        "OllinDiagram",
        "OllinProjects",
        "OllinSceneImport",
        "OllinAudio",
        "OllinOSC",
        "OllinDMX",
        "OllinLaser",
        "OllinMIDI",
        "OllinLink",
        "OllinSerial",
        "OllinMQTT",
        "OllinRemote",
        "OllinRoom",
        "OllinPhysics",
        "OllinVision",
        "OllinVideo",
        "OllinSyphon",
        "OllinCamera",
        "OllinRecord3D",
        "OllinPhone",
        "OllinScreen",
        "OllinController",
        "OllinHaptics",
        "OllinBluetooth",
        "OllinSamplePhotos"
      ],
      "type" : "executable"
    },
    {
      "c99name" : "OllinExpander",
      "module_type" : "SwiftTarget",
      "name" : "OllinExpander",
      "path" : "Sources/OllinExpander",
      "product_memberships" : [
        "Ollin",
        "OllinAudio",
        "OllinOSC",
        "OllinDMX",
        "OllinLaser",
        "OllinMIDI",
        "OllinMQTT",
        "OllinHaptics",
        "OllinSerial",
        "OllinBluetooth",
        "OllinRemote",
        "OllinRoom",
        "OllinPhysics",
        "OllinVision",
        "OllinVideo",
        "OllinSyphon",
        "OllinCamera",
        "OllinRecord3D",
        "OllinPhone",
        "OllinScreen",
        "OllinController",
        "OllinSamplePhotos",
        "OllinTether",
        "OllinRun",
        "OllinProjectGenerator",
        "OllinNew",
        "OllinLiveCoding",
        "OllinLive",
        "OllinGuideSnippets",
        "OllinGuideFigures",
        "OllinExamples",
        "OllinDoctor",
        "OllinCheck"
      ],
      "sources" : [
        "FillExpander.swift",
        "Point2D.swift",
        "RibbonFrame.swift",
        "StrokeExpander.swift",
        "WebSourceRecords.swift"
      ],
      "target_dependencies" : [
        "CLibtess2"
      ],
      "type" : "library"
    },
    {
      "c99name" : "OllinExamples",
      "module_type" : "SwiftTarget",
      "name" : "OllinExamples",
      "path" : "Sources/OllinExamples",
      "product_memberships" : [
        "OllinExamples"
      ],
      "sources" : [
        "CrashReporter.swift",
        "ExampleCatalog.swift",
        "ExamplesAppDelegate.swift",
        "GalleryHarness.swift",
        "GalleryView.swift",
        "OllinExamplesApp.swift"
      ],
      "target_dependencies" : [
        "Ollin",
        "OllinRuntime",
        "OllinAudio",
        "OllinOSC",
        "OllinDMX",
        "OllinLaser",
        "OllinMIDI",
        "OllinLink",
        "OllinSerial",
        "OllinMQTT",
        "OllinRemote",
        "OllinRoom",
        "OllinPhysics",
        "OllinVision",
        "OllinVideo",
        "OllinSyphon",
        "OllinCamera",
        "OllinRecord3D",
        "OllinPhone",
        "OllinScreen",
        "OllinController",
        "OllinHaptics",
        "OllinBluetooth",
        "OllinSamplePhotos"
      ],
      "type" : "executable"
    },
    {
      "c99name" : "OllinDoctor",
      "module_type" : "SwiftTarget",
      "name" : "OllinDoctor",
      "path" : "Sources/OllinDoctor",
      "product_memberships" : [
        "OllinDoctor"
      ],
      "sources" : [
        "main.swift"
      ],
      "target_dependencies" : [
        "Ollin"
      ],
      "type" : "executable"
    },
    {
      "c99name" : "OllinDocs",
      "module_type" : "SwiftTarget",
      "name" : "OllinDocs",
      "path" : "Sources/OllinDocs",
      "product_memberships" : [
        "OllinDocs"
      ],
      "sources" : [
        "OllinDocsCommand.swift"
      ],
      "target_dependencies" : [
        "OllinReference",
        "OllinCommandFlags"
      ],
      "type" : "executable"
    },
    {
      "c99name" : "OllinDiagram",
      "module_type" : "SwiftTarget",
      "name" : "OllinDiagram",
      "path" : "Sources/OllinDiagram",
      "product_memberships" : [
        "OllinGuideFigures"
      ],
      "sources" : [
        "DiagramTheme.swift"
      ],
      "target_dependencies" : [
        "Ollin"
      ],
      "type" : "library"
    },
    {
      "c99name" : "OllinDMXTests",
      "module_type" : "SwiftTarget",
      "name" : "OllinDMXTests",
      "path" : "Tests/OllinDMXTests",
      "sources" : [
        "DMXLoopbackTests.swift",
        "DMXReceiverTests.swift",
        "DMXWireTests.swift",
        "LEDMapTests.swift"
      ],
      "target_dependencies" : [
        "Ollin",
        "OllinDMX",
        "OllinTestSupport"
      ],
      "type" : "test"
    },
    {
      "c99name" : "OllinDMX",
      "module_type" : "SwiftTarget",
      "name" : "OllinDMX",
      "path" : "Sources/OllinDMX",
      "product_memberships" : [
        "OllinDMX",
        "OllinRun",
        "OllinProjectGenerator",
        "OllinLiveCoding",
        "OllinLive",
        "OllinGuideSnippets",
        "OllinGuideFigures",
        "OllinExamples"
      ],
      "sources" : [
        "ArtNetPacket.swift",
        "DMXFixture.swift",
        "DMXPacer.swift",
        "DMXProtocol.swift",
        "DMXReceiver.swift",
        "DMXSender.swift",
        "DMXUniverse.swift",
        "LEDMap.swift",
        "SACNPacket.swift"
      ],
      "target_dependencies" : [
        "Ollin"
      ],
      "type" : "library"
    },
    {
      "c99name" : "OllinControllerTests",
      "module_type" : "SwiftTarget",
      "name" : "OllinControllerTests",
      "path" : "Tests/OllinControllerTests",
      "sources" : [
        "ControllerTests.swift"
      ],
      "target_dependencies" : [
        "Ollin",
        "OllinController"
      ],
      "type" : "test"
    },
    {
      "c99name" : "OllinController",
      "module_type" : "SwiftTarget",
      "name" : "OllinController",
      "path" : "Sources/OllinController",
      "product_memberships" : [
        "OllinController",
        "OllinRun",
        "OllinProjectGenerator",
        "OllinLiveCoding",
        "OllinLive",
        "OllinGuideSnippets",
        "OllinGuideFigures",
        "OllinExamples"
      ],
      "sources" : [
        "Controller.swift",
        "ControllerButton.swift",
        "ControllerHub.swift",
        "Sketch+Controller.swift"
      ],
      "target_dependencies" : [
        "Ollin"
      ],
      "type" : "library"
    },
    {
      "c99name" : "OllinCommandFlags",
      "module_type" : "SwiftTarget",
      "name" : "OllinCommandFlags",
      "path" : "Sources/OllinCommandFlags",
      "product_memberships" : [
        "Ollin",
        "OllinAudio",
        "OllinOSC",
        "OllinDMX",
        "OllinLaser",
        "OllinMIDI",
        "OllinMQTT",
        "OllinHaptics",
        "OllinSerial",
        "OllinBluetooth",
        "OllinRemote",
        "OllinRoom",
        "OllinPhysics",
        "OllinVision",
        "OllinVideo",
        "OllinSyphon",
        "OllinCamera",
        "OllinRecord3D",
        "OllinPhone",
        "OllinScreen",
        "OllinController",
        "OllinSamplePhotos",
        "OllinTether",
        "OllinRun",
        "OllinProjectGenerator",
        "OllinNew",
        "OllinLiveCoding",
        "OllinLive",
        "OllinGuideSnippets",
        "OllinGuideFigures",
        "OllinExamples",
        "OllinDoctor",
        "OllinDocs",
        "OllinCheck"
      ],
      "sources" : [
        "CommandFlags.swift"
      ],
      "type" : "library"
    },
    {
      "c99name" : "OllinCheck",
      "module_type" : "SwiftTarget",
      "name" : "OllinCheck",
      "path" : "Sources/OllinCheck",
      "product_memberships" : [
        "OllinCheck"
      ],
      "sources" : [
        "main.swift"
      ],
      "target_dependencies" : [
        "Ollin"
      ],
      "type" : "executable"
    },
    {
      "c99name" : "OllinCameraTests",
      "module_type" : "SwiftTarget",
      "name" : "OllinCameraTests",
      "path" : "Tests/OllinCameraTests",
      "sources" : [
        "VirtualCameraTests.swift"
      ],
      "target_dependencies" : [
        "Ollin",
        "OllinCamera"
      ],
      "type" : "test"
    },
    {
      "c99name" : "OllinCamera",
      "module_type" : "SwiftTarget",
      "name" : "OllinCamera",
      "path" : "Sources/OllinCamera",
      "product_memberships" : [
        "OllinCamera",
        "OllinRun",
        "OllinProjectGenerator",
        "OllinLiveCoding",
        "OllinLive",
        "OllinGuideSnippets",
        "OllinGuideFigures",
        "OllinExamples"
      ],
      "sources" : [
        "FrameConverter.swift",
        "SinkConnection.swift",
        "VirtualCameraServer.swift"
      ],
      "target_dependencies" : [
        "Ollin"
      ],
      "type" : "library"
    },
    {
      "c99name" : "OllinBluetoothTests",
      "module_type" : "SwiftTarget",
      "name" : "OllinBluetoothTests",
      "path" : "Tests/OllinBluetoothTests",
      "sources" : [
        "BluetoothDeviceTests.swift",
        "BluetoothScanTests.swift",
        "BluetoothValueTests.swift",
        "FakeRadio.swift"
      ],
      "target_dependencies" : [
        "Ollin",
        "OllinBluetooth"
      ],
      "type" : "test"
    },
    {
      "c99name" : "OllinBluetooth",
      "module_type" : "SwiftTarget",
      "name" : "OllinBluetooth",
      "path" : "Sources/OllinBluetooth",
      "product_memberships" : [
        "OllinBluetooth",
        "OllinRun",
        "OllinProjectGenerator",
        "OllinLiveCoding",
        "OllinLive",
        "OllinGuideSnippets",
        "OllinGuideFigures",
        "OllinExamples"
      ],
      "sources" : [
        "BluetoothBackend.swift",
        "BluetoothCatalog.swift",
        "BluetoothDevice.swift",
        "BluetoothScan.swift",
        "BluetoothUUID.swift",
        "CoreBluetoothBackend.swift"
      ],
      "target_dependencies" : [
        "Ollin"
      ],
      "type" : "library"
    },
    {
      "c99name" : "OllinAudioTests",
      "module_type" : "SwiftTarget",
      "name" : "OllinAudioTests",
      "path" : "Tests/OllinAudioTests",
      "sources" : [
        "AudioAnalyzerTests.swift",
        "AudioPlayerTests.swift",
        "AudioTapRelayTests.swift",
        "CompositionAudition.swift",
        "CompositionTests.swift",
        "ConvolutionAudition.swift",
        "ConvolutionTests.swift",
        "CustomEffectTests.swift",
        "DrivenModelAudition.swift",
        "DrivenModelTests.swift",
        "DynamicsAudition.swift",
        "DynamicsTests.swift",
        "EffectChainAudition.swift",
        "EffectChainTests.swift",
        "GrainCloudAudition.swift",
        "GrainCloudTests.swift",
        "ListeningTests.swift",
        "MIDIFileTests.swift",
        "ModalBodyTests.swift",
        "ModulationAudition.swift",
        "ModulationTests.swift",
        "PatchAudition.swift",
        "PatchTests.swift",
        "PhysicalModelAudition.swift",
        "PitchTests.swift",
        "PluckedStringTests.swift",
        "ProgressionAudition.swift",
        "ProgressionTests.swift",
        "SamplerAudition.swift",
        "SamplerTests.swift",
        "SequencerTests.swift",
        "SonificationAudition.swift",
        "SonificationTests.swift",
        "SoundExportTests.swift",
        "SoundInvariantTests.swift",
        "SoundtrackTests.swift",
        "SpatialAudition.swift",
        "SpatialExportTests.swift",
        "SpectralAudition.swift",
        "SpectralTests.swift",
        "SynthAudition.swift",
        "SynthExpressionTests.swift",
        "SynthTests.swift",
        "TransportMuteTests.swift",
        "WavetableAudition.swift",
        "WavetableTests.swift"
      ],
      "target_dependencies" : [
        "Ollin",
        "OllinAudio"
      ],
      "type" : "test"
    },
    {
      "c99name" : "OllinAudio",
      "module_type" : "SwiftTarget",
      "name" : "OllinAudio",
      "path" : "Sources/OllinAudio",
      "product_memberships" : [
        "OllinAudio",
        "OllinRun",
        "OllinProjectGenerator",
        "OllinLiveCoding",
        "OllinLive",
        "OllinGuideSnippets",
        "OllinGuideFigures",
        "OllinExamples"
      ],
      "resources" : [
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/OllinAudio/Resources/Struck",
          "rule" : {
            "copy" : {
            }
          }
        }
      ],
      "sources" : [
        "AudioAnalyzer.swift",
        "AudioFileFrames.swift",
        "AudioInput.swift",
        "AudioPlayer.swift",
        "AudioSource.swift",
        "Composition/Arpeggiator.swift",
        "Composition/Arpeggio.swift",
        "Composition/BeatFollower.swift",
        "Composition/Chord.swift",
        "Composition/ChordSymbol.swift",
        "Composition/CompositionRandom.swift",
        "Composition/MIDIFile.swift",
        "Composition/MIDIFileReader.swift",
        "Composition/MIDIRecording.swift",
        "Composition/Note.swift",
        "Composition/Progression.swift",
        "Composition/Rhythm.swift",
        "Composition/Scale.swift",
        "Composition/ScheduledNote.swift",
        "Composition/Sonification.swift",
        "Composition/StepCounter.swift",
        "Composition/StepSequencer.swift",
        "Composition/Tuning.swift",
        "Listening/AudioTapHub.swift",
        "Listening/ListeningStatus.swift",
        "Listening/SoundClassifier.swift",
        "Listening/SpeechListener.swift",
        "PitchDetection.swift",
        "Soundtrack.swift",
        "Synthesis/Convolution.swift",
        "Synthesis/CustomEffect.swift",
        "Synthesis/DrivenModels.swift",
        "Synthesis/DrivenVoice.swift",
        "Synthesis/Dynamics.swift",
        "Synthesis/Effect.swift",
        "Synthesis/Envelope.swift",
        "Synthesis/GrainCloud.swift",
        "Synthesis/GrainVoice.swift",
        "Synthesis/ModalBody.swift",
        "Synthesis/ModalShape.swift",
        "Synthesis/ModalVoice.swift",
        "Synthesis/Modulation.swift",
        "Synthesis/PartitionedConvolver.swift",
        "Synthesis/Patch.swift",
        "Synthesis/PatchVoice.swift",
        "Synthesis/PhaseVocoder.swift",
        "Synthesis/Pitch.swift",
        "Synthesis/PluckedString.swift",
        "Synthesis/ResonantFilter.swift",
        "Synthesis/SFZ.swift",
        "Synthesis/SampledInstrument.swift",
        "Synthesis/SamplerVoice.swift",
        "Synthesis/Spatial.swift",
        "Synthesis/Spectral.swift",
        "Synthesis/StringVoice.swift",
        "Synthesis/Synth.swift",
        "Synthesis/SynthEvent.swift",
        "Synthesis/SynthExport.swift",
        "Synthesis/SynthRenderer.swift",
        "Synthesis/Voice.swift",
        "Synthesis/Waveform.swift",
        "Synthesis/Wavetable.swift",
        "Synthesis/WavetableVoice.swift",
        "Tone.swift"
      ],
      "target_dependencies" : [
        "Ollin"
      ],
      "type" : "library"
    },
    {
      "c99name" : "Ollin",
      "module_type" : "SwiftTarget",
      "name" : "Ollin",
      "path" : "Sources/Ollin",
      "product_memberships" : [
        "Ollin",
        "OllinAudio",
        "OllinOSC",
        "OllinDMX",
        "OllinLaser",
        "OllinMIDI",
        "OllinMQTT",
        "OllinHaptics",
        "OllinSerial",
        "OllinBluetooth",
        "OllinRemote",
        "OllinRoom",
        "OllinPhysics",
        "OllinVision",
        "OllinVideo",
        "OllinSyphon",
        "OllinCamera",
        "OllinRecord3D",
        "OllinPhone",
        "OllinScreen",
        "OllinController",
        "OllinSamplePhotos",
        "OllinTether",
        "OllinRun",
        "OllinProjectGenerator",
        "OllinNew",
        "OllinLiveCoding",
        "OllinLive",
        "OllinGuideSnippets",
        "OllinGuideFigures",
        "OllinExamples",
        "OllinDoctor",
        "OllinCheck"
      ],
      "resources" : [
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/Ollin/Renderer/OllinShaderLib.metal",
          "rule" : {
            "copy" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/Ollin/Renderer/OllinShaderTypes.h",
          "rule" : {
            "copy" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/Ollin/Renderer/Shader3D.metal",
          "rule" : {
            "copy" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/Ollin/Renderer/ShaderCaustics.metal",
          "rule" : {
            "copy" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/Ollin/Renderer/ShaderCombinator.metal",
          "rule" : {
            "copy" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/Ollin/Renderer/ShaderCombine.metal",
          "rule" : {
            "copy" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/Ollin/Renderer/ShaderCore.metal",
          "rule" : {
            "copy" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/Ollin/Renderer/ShaderEffects.metal",
          "rule" : {
            "copy" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/Ollin/Renderer/ShaderFills.metal",
          "rule" : {
            "copy" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/Ollin/Renderer/ShaderFlare.metal",
          "rule" : {
            "copy" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/Ollin/Renderer/ShaderFourier.metal",
          "rule" : {
            "copy" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/Ollin/Renderer/ShaderGI.metal",
          "rule" : {
            "copy" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/Ollin/Renderer/ShaderIBL.metal",
          "rule" : {
            "copy" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/Ollin/Renderer/ShaderOcean.metal",
          "rule" : {
            "copy" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/Ollin/Renderer/ShaderPathTrace.metal",
          "rule" : {
            "copy" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/Ollin/Renderer/ShaderPatterns.metal",
          "rule" : {
            "copy" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/Ollin/Renderer/ShaderRadiance.metal",
          "rule" : {
            "copy" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/Ollin/Renderer/ShaderRaymarch.metal",
          "rule" : {
            "copy" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/Ollin/Renderer/ShaderShapes.metal",
          "rule" : {
            "copy" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/Ollin/Renderer/ShaderSim.metal",
          "rule" : {
            "copy" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/Ollin/Renderer/ShaderStrands.metal",
          "rule" : {
            "copy" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/Ollin/Renderer/ShaderStrokes.metal",
          "rule" : {
            "copy" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/Ollin/Renderer/ShaderVolume.metal",
          "rule" : {
            "copy" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/Ollin/Resources/Cozette-LICENSE.txt",
          "rule" : {
            "copy" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/Ollin/Resources/Environments",
          "rule" : {
            "copy" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/Ollin/Resources/Hershey-NOTICE.txt",
          "rule" : {
            "copy" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/Ollin/Resources/LTC",
          "rule" : {
            "copy" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/Ollin/Resources/Looks",
          "rule" : {
            "copy" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/Ollin/Resources/Matcaps",
          "rule" : {
            "copy" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/Ollin/Resources/WebExpander.json",
          "rule" : {
            "copy" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/Ollin/Resources/WebExpander.wasm",
          "rule" : {
            "copy" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/Ollin/Resources/cozette.bdf",
          "rule" : {
            "copy" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/Ollin/Resources/futural.jhf",
          "rule" : {
            "copy" : {
            }
          }
        }
      ],
      "sources" : [
        "3D/ApertureStar.swift",
        "3D/Camera3D.swift",
        "3D/CameraIntrinsics.swift",
        "3D/CameraMove.swift",
        "3D/CameraRig.swift",
        "3D/CloudRegistration.swift",
        "3D/Curve3D.swift",
        "3D/Decal.swift",
        "3D/Environment.swift",
        "3D/EnvironmentCache.swift",
        "3D/EnvironmentFeed.swift",
        "3D/Fog.swift",
        "3D/IESProfile.swift",
        "3D/LensFlare.swift",
        "3D/Light.swift",
        "3D/LightCookie.swift",
        "3D/LightingPreset.swift",
        "3D/LineDrawing.swift",
        "3D/Matcap.swift",
        "3D/Material.swift",
        "3D/MaterialSource.swift",
        "3D/Medium.swift",
        "3D/Mesh.swift",
        "3D/MeshBoolean.swift",
        "3D/MeshColoring.swift",
        "3D/MeshDisplacement.swift",
        "3D/MeshExport.swift",
        "3D/MeshField.swift",
        "3D/MeshInstance.swift",
        "3D/MeshJoin.swift",
        "3D/MeshLoader.swift",
        "3D/MeshLoaderGLTF.swift",
        "3D/MeshMaterial.swift",
        "3D/MeshPrintCheck.swift",
        "3D/MeshSweep.swift",
        "3D/MeshTangents.swift",
        "3D/MeshText.swift",
        "3D/MeshWeld.swift",
        "3D/MetricDepthMap.swift",
        "3D/Ocean.swift",
        "3D/PointCloud.swift",
        "3D/PoseGraph.swift",
        "3D/RGBDFrame.swift",
        "3D/ScanGraph.swift",
        "3D/Scene.swift",
        "3D/SceneAnimation.swift",
        "3D/SceneExport.swift",
        "3D/SceneLoaderUSD.swift",
        "3D/SceneLoaderUSDAnimation.swift",
        "3D/SceneLoaderUSDLights.swift",
        "3D/SceneLoaderUSDPhysics.swift",
        "3D/SceneLoaderUSDSkinning.swift",
        "3D/ScenePlacement.swift",
        "3D/SceneSkeleton.swift",
        "3D/SceneSkinning.swift",
        "3D/SceneWriterUSD.swift",
        "3D/SkySun.swift",
        "3D/Stereo.swift",
        "3D/StrandField.swift",
        "3D/USD/USDCrateReader.swift",
        "3D/USD/USDCrateSupport.swift",
        "3D/USD/USDFile.swift",
        "3D/USD/USDTextParser.swift",
        "3D/USD/USDTypes.swift",
        "3D/USD/USDXform.swift",
        "3D/USD/USDZipArchive.swift",
        "3D/Volume.swift",
        "3D/WorldCloud.swift",
        "3D/ZipWriter.swift",
        "Color/Color.swift",
        "Color/ColorDistance.swift",
        "Color/ColorLUT.swift",
        "Color/ColorMatrix.swift",
        "Color/ColorOutput.swift",
        "Color/ColorSpaces.swift",
        "Color/ColorVision.swift",
        "Color/Colormap.swift",
        "Color/CosinePalette.swift",
        "Color/Dither.swift",
        "Color/ICCProfile.swift",
        "Color/Ink.swift",
        "Color/Paint.swift",
        "Color/Palette.swift",
        "Color/PaletteExtract.swift",
        "Color/PaletteImport.swift",
        "Color/PrintSeparation.swift",
        "Color/ProcessSeparation.swift",
        "Color/Ramp.swift",
        "Color/Shades.swift",
        "Color/SoftProof.swift",
        "Color/Spectrum.swift",
        "Compute/AttractorFlow.swift",
        "Compute/ComputeBuffer.swift",
        "Compute/ComputeKernel.swift",
        "Compute/ComputeTexture.swift",
        "Compute/ComputeTexture3D.swift",
        "Compute/Evolution.swift",
        "Compute/PPS.swift",
        "Compute/ParticleFluid.swift",
        "Compute/ParticleLenia.swift",
        "Compute/ParticleLife.swift",
        "Compute/Particles.swift",
        "Compute/Physarum.swift",
        "Compute/Simulation.swift",
        "Compute/SoftBodies.swift",
        "Compute/SpatialHash.swift",
        "Compute/Swarm.swift",
        "Compute/SwarmChemistry.swift",
        "Core/Accessibility.swift",
        "Core/AudioTapSource.swift",
        "Core/Automation.swift",
        "Core/CanvasSize.swift",
        "Core/CaptureAudioSource.swift",
        "Core/Checkpoint.swift",
        "Core/ClipPlayback.swift",
        "Core/CommandLineHelp.swift",
        "Core/Cues.swift",
        "Core/Displays.swift",
        "Core/Doctor.swift",
        "Core/Drawer+Brush.swift",
        "Core/Drawer+FeatureEdges.swift",
        "Core/Drawer+FillMedium.swift",
        "Core/Drawer+Images.swift",
        "Core/Drawer+Lines3D.swift",
        "Core/Drawer+Primitives.swift",
        "Core/Drawer+Tessellation.swift",
        "Core/Drawer+Text.swift",
        "Core/Drawer+Volume.swift",
        "Core/Drawer.swift",
        "Core/ExportAudioSource.swift",
        "Core/Exports.swift",
        "Core/FileError.swift",
        "Core/FrameProfile.swift",
        "Core/FrameRate.swift",
        "Core/FrameSource.swift",
        "Core/Held.swift",
        "Core/HeldObjects.swift",
        "Core/Installation.swift",
        "Core/InstallationLog.swift",
        "Core/Keyboard.swift",
        "Core/MenuBar.swift",
        "Core/MotionField.swift",
        "Core/PaperSize.swift",
        "Core/ParamListing.swift",
        "Core/ParamOverride.swift",
        "Core/Projection.swift",
        "Core/ProjectionCalibration.swift",
        "Core/Resources.swift",
        "Core/RunCarry.swift",
        "Core/Saved.swift",
        "Core/Schedule.swift",
        "Core/ScreenSaver.swift",
        "Core/Sketch.swift",
        "Core/SketchAppUIKit.swift",
        "Core/SketchCanvasUIKit.swift",
        "Core/SketchDescription.swift",
        "Core/SketchExtension.swift",
        "Core/SketchHost.swift",
        "Core/SketchView.swift",
        "Core/SoundClassification.swift",
        "Core/StatusText.swift",
        "Core/StillFrames.swift",
        "Core/Stylus.swift",
        "Core/Take.swift",
        "Core/TypedText.swift",
        "Core/Version.swift",
        "Core/VideoFeed.swift",
        "Core/View2D.swift",
        "Core/Wallpaper.swift",
        "Core/Widget.swift",
        "Data/DataFeed.swift",
        "Data/JSON.swift",
        "Data/NamedFile.swift",
        "Data/Place.swift",
        "Data/PushFeed.swift",
        "Data/PushTransport.swift",
        "Data/Table.swift",
        "Data/Weather.swift",
        "Deprecations.swift",
        "Drawing/ArcMode.swift",
        "Drawing/Batch.swift",
        "Drawing/BlendMode.swift",
        "Drawing/Brush.swift",
        "Drawing/FillMedium.swift",
        "Drawing/ImageSampling.swift",
        "Drawing/PathTracing.swift",
        "Drawing/PointMarker.swift",
        "Drawing/RenderQuality.swift",
        "Drawing/SDF.swift",
        "Drawing/SDF3D.swift",
        "Drawing/StrokeAlign.swift",
        "Drawing/StrokeCap.swift",
        "Drawing/StrokeDash.swift",
        "Drawing/StrokeDynamics.swift",
        "Drawing/StrokeJoin.swift",
        "Drawing/StrokeMark.swift",
        "Drawing/StrokeMedium.swift",
        "Drawing/StrokeProfile.swift",
        "Drawing/StrokeUnits.swift",
        "Drawing/ToneMap.swift",
        "Effects/Accumulator.swift",
        "Effects/Combine.swift",
        "Effects/Compose.swift",
        "Effects/Copies.swift",
        "Effects/DiffusionCurve.swift",
        "Effects/EffectPass.swift",
        "Effects/Feedback.swift",
        "Effects/Filter.swift",
        "Effects/FoilTable.swift",
        "Effects/Generator.swift",
        "Effects/LineSpray.swift",
        "Effects/RenderTarget.swift",
        "Effects/Shader.swift",
        "Effects/ShaderCheck.swift",
        "Effects/Sim.swift",
        "Effects/SimField.swift",
        "Effects/TextureTable.swift",
        "Effects/Visual.swift",
        "Effects/WatercolorSim.swift",
        "Effects/Wipe.swift",
        "Export/CaptureSource.swift",
        "Export/ContactSheet.swift",
        "Export/DXFExport.swift",
        "Export/EXRExport.swift",
        "Export/EmbroideryExport.swift",
        "Export/ExportError.swift",
        "Export/ExportMetadata.swift",
        "Export/FrameBytes.swift",
        "Export/FrameCopy.swift",
        "Export/FrameMemory.swift",
        "Export/GCodeExport.swift",
        "Export/GIFWriter.swift",
        "Export/GainMapExport.swift",
        "Export/PDFExport.swift",
        "Export/ProcessSeparationExport.swift",
        "Export/SVGExport.swift",
        "Export/SVGHatching.swift",
        "Export/SeparationExport.swift",
        "Export/SessionRecorder.swift",
        "Export/SlowMotion.swift",
        "Export/SpatialExport.swift",
        "Export/SpatialVideoExport.swift",
        "Export/Subframes.swift",
        "Export/VideoExport.swift",
        "Export/WebAssets.swift",
        "Export/WebControls.swift",
        "Export/WebExport.swift",
        "Export/WebFormula.swift",
        "Export/WebGraph.swift",
        "Export/WebLookup.swift",
        "Export/WebSources.swift",
        "Export/WebTrack.swift",
        "Geometry/Anamorphosis.swift",
        "Geometry/AntColony.swift",
        "Geometry/Apollonian.swift",
        "Geometry/Arc.swift",
        "Geometry/Attractors.swift",
        "Geometry/Bifurcation.swift",
        "Geometry/Billiard.swift",
        "Geometry/BlueNoiseThinning.swift",
        "Geometry/Boids.swift",
        "Geometry/CellularAutomata.swift",
        "Geometry/Chromatography.swift",
        "Geometry/Circle.swift",
        "Geometry/ClassicCurves.swift",
        "Geometry/Clothoid.swift",
        "Geometry/ConcaveHull.swift",
        "Geometry/ContourBending.swift",
        "Geometry/ContourQueries.swift",
        "Geometry/ConvexHull.swift",
        "Geometry/CoonsPatch.swift",
        "Geometry/CornerRadii.swift",
        "Geometry/CrackGrowth.swift",
        "Geometry/Crackle.swift",
        "Geometry/Crease.swift",
        "Geometry/CreasePattern.swift",
        "Geometry/Crowd.swift",
        "Geometry/DielectricBreakdown.swift",
        "Geometry/DifferentialGrowth.swift",
        "Geometry/DiffusionLimitedAggregation.swift",
        "Geometry/DoublePendulum.swift",
        "Geometry/Drainage.swift",
        "Geometry/DualContouring.swift",
        "Geometry/Ellipse.swift",
        "Geometry/Envelope.swift",
        "Geometry/Epicycles.swift",
        "Geometry/FacetField.swift",
        "Geometry/Fit.swift",
        "Geometry/FlowField.swift",
        "Geometry/ForceLayout.swift",
        "Geometry/FordCircles.swift",
        "Geometry/Fracture.swift",
        "Geometry/Fracture3D.swift",
        "Geometry/Frost.swift",
        "Geometry/GestureMark.swift",
        "Geometry/Girih.swift",
        "Geometry/Grid.swift",
        "Geometry/Guilloche.swift",
        "Geometry/Harmonograph.swift",
        "Geometry/Heightfield.swift",
        "Geometry/HexGrid.swift",
        "Geometry/HilbertOrder.swift",
        "Geometry/Hitomezashi.swift",
        "Geometry/HobbySpline.swift",
        "Geometry/Homography.swift",
        "Geometry/HopfFibration.swift",
        "Geometry/HyperbolicTiling.swift",
        "Geometry/IFS.swift",
        "Geometry/IKChain.swift",
        "Geometry/Ikat.swift",
        "Geometry/InversionFractal.swift",
        "Geometry/Isolines.swift",
        "Geometry/Isosurface.swift",
        "Geometry/Kleinian.swift",
        "Geometry/Knotwork.swift",
        "Geometry/Kolam.swift",
        "Geometry/Kuramoto.swift",
        "Geometry/LSystem.swift",
        "Geometry/LSystemExpression.swift",
        "Geometry/LineSegment.swift",
        "Geometry/Marbling.swift",
        "Geometry/Maze.swift",
        "Geometry/Meander.swift",
        "Geometry/MedialAxis.swift",
        "Geometry/MeshGrowth.swift",
        "Geometry/MeshOperators.swift",
        "Geometry/MeshReactionDiffusion.swift",
        "Geometry/Metaballs.swift",
        "Geometry/MobiusMap.swift",
        "Geometry/NBody.swift",
        "Geometry/OverlappingWFC.swift",
        "Geometry/Packing.swift",
        "Geometry/ParametricLSystem.swift",
        "Geometry/ParametricLSystemParsing.swift",
        "Geometry/ParametricLSystemPresets.swift",
        "Geometry/ParametricLSystemTurtle.swift",
        "Geometry/ParquetDeformation.swift",
        "Geometry/ParticleSurface.swift",
        "Geometry/Path.swift",
        "Geometry/Patina.swift",
        "Geometry/Penrose.swift",
        "Geometry/Percolation.swift",
        "Geometry/PlaneCurve.swift",
        "Geometry/PointGrid3.swift",
        "Geometry/PoissonDisk.swift",
        "Geometry/Polyomino.swift",
        "Geometry/Population.swift",
        "Geometry/PowerDiagram.swift",
        "Geometry/Pursuit.swift",
        "Geometry/RadialBasis.swift",
        "Geometry/Rectangle.swift",
        "Geometry/RectanglePacking.swift",
        "Geometry/Regions.swift",
        "Geometry/SDFOutline.swift",
        "Geometry/SVGImport.swift",
        "Geometry/Sampling.swift",
        "Geometry/Schottky.swift",
        "Geometry/ShadowArt.swift",
        "Geometry/Shape.swift",
        "Geometry/ShapeBoolean.swift",
        "Geometry/ShapeCuts.swift",
        "Geometry/ShapeGrammar.swift",
        "Geometry/ShapeMemory.swift",
        "Geometry/ShapeMorph.swift",
        "Geometry/ShapeSampling.swift",
        "Geometry/ShapeTriangulator.swift",
        "Geometry/SingleLine.swift",
        "Geometry/SpaceColonization.swift",
        "Geometry/SpanningTree.swift",
        "Geometry/SpatialIndex.swift",
        "Geometry/SpatialKDTree.swift",
        "Geometry/Spectre.swift",
        "Geometry/Spirolateral.swift",
        "Geometry/Steering.swift",
        "Geometry/Stipple.swift",
        "Geometry/StraightSkeleton.swift",
        "Geometry/StringArt.swift",
        "Geometry/Subdivision.swift",
        "Geometry/SubdivisionSurface.swift",
        "Geometry/SurfaceReconstruction.swift",
        "Geometry/SurfaceSampling.swift",
        "Geometry/TenPrint.swift",
        "Geometry/Tensegrity.swift",
        "Geometry/Terrazzo.swift",
        "Geometry/Tessellation.swift",
        "Geometry/TriangleGrid.swift",
        "Geometry/Truchet.swift",
        "Geometry/Turmite.swift",
        "Geometry/Turtle.swift",
        "Geometry/UlamSpiral.swift",
        "Geometry/Walks.swift",
        "Geometry/WangTiles.swift",
        "Geometry/Watercolor.swift",
        "Geometry/WaveFunctionCollapse.swift",
        "Geometry/WoodGrain.swift",
        "Image/Autostereogram.swift",
        "Image/Buddhabrot.swift",
        "Image/FractalFlame.swift",
        "Image/Halftone.swift",
        "Image/Histogram.swift",
        "Image/Image.swift",
        "Image/ImageResize.swift",
        "Image/PhotoMosaic.swift",
        "Image/PixelSort.swift",
        "Image/SeamCarve.swift",
        "Image/SegmentationImages.swift",
        "Image/SlitScan.swift",
        "Live/AxisWidget.swift",
        "Live/CameraOrientationState.swift",
        "Live/CuesCard.swift",
        "Live/DisplayWall.swift",
        "Live/FrameStats.swift",
        "Live/HTTPRequestHead.swift",
        "Live/Inspector.swift",
        "Live/InstallationHost.swift",
        "Live/Param.swift",
        "Live/ParamNumberField.swift",
        "Live/ProjectionCalibrator.swift",
        "Live/SourcePick.swift",
        "Live/StatsPanel.swift",
        "Live/Supervisor.swift",
        "Live/TimelineModel.swift",
        "Live/TimelinePanel.swift",
        "Live/VariationCard.swift",
        "Live/WindowChrome.swift",
        "Math/Box3.swift",
        "Math/Chladni.swift",
        "Math/Complex.swift",
        "Math/ComplexPlane.swift",
        "Math/DampedSpring.swift",
        "Math/DeBruijn.swift",
        "Math/Derivatives.swift",
        "Math/Easing.swift",
        "Math/Formula.swift",
        "Math/Fraction.swift",
        "Math/GaborNoise.swift",
        "Math/Integration.swift",
        "Math/MarkovChain.swift",
        "Math/Math.swift",
        "Math/Narrowing.swift",
        "Math/Noise.swift",
        "Math/NoiseFields.swift",
        "Math/NoiseVariants.swift",
        "Math/OneEuroFilter.swift",
        "Math/Pace.swift",
        "Math/Primes.swift",
        "Math/Random.swift",
        "Math/Ray3.swift",
        "Math/ResponseCurve.swift",
        "Math/Rotation3D.swift",
        "Math/Sway.swift",
        "Math/Tempo.swift",
        "Math/Timeline.swift",
        "Math/Vector.swift",
        "Math/Vector2.swift",
        "Math/Vector3.swift",
        "Renderer/CanvasSampler.swift",
        "Renderer/FrameCapture.swift",
        "Renderer/LinearFrameCapture.swift",
        "Renderer/MetalRenderer+Caustics.swift",
        "Renderer/MetalRenderer+DepthOfField.swift",
        "Renderer/MetalRenderer+Effects.swift",
        "Renderer/MetalRenderer+Flare.swift",
        "Renderer/MetalRenderer+IBL.swift",
        "Renderer/MetalRenderer+Interpolation.swift",
        "Renderer/MetalRenderer+Lights.swift",
        "Renderer/MetalRenderer+NoMetalFX.swift",
        "Renderer/MetalRenderer+Overlay.swift",
        "Renderer/MetalRenderer+PathTrace.swift",
        "Renderer/MetalRenderer+Pipelines.swift",
        "Renderer/MetalRenderer+RTInstances.swift",
        "Renderer/MetalRenderer+Scattering.swift",
        "Renderer/MetalRenderer+Targets.swift",
        "Renderer/MetalRenderer+Upscaling.swift",
        "Renderer/MetalRenderer+Volume.swift",
        "Renderer/MetalRenderer.swift",
        "Renderer/PassStorage.swift",
        "Renderer/PlatformGPU.swift",
        "Renderer/ShaderIncludes.swift",
        "Renderer/SpectralTaps.swift",
        "Text/BitmapFont+BDF.swift",
        "Text/BitmapFont+Builtin.swift",
        "Text/BitmapFont+Playdate.swift",
        "Text/BitmapFont+Resource.swift",
        "Text/BitmapFont.swift",
        "Text/ColorGlyphs.swift",
        "Text/GlyphAtlas.swift",
        "Text/GlyphMosaic.swift",
        "Text/LineBreaks.swift",
        "Text/OutlineFont.swift",
        "Text/StrokeFont+Builtin.swift",
        "Text/StrokeFont+JHF.swift",
        "Text/StrokeFont+Resource.swift",
        "Text/StrokeFont.swift",
        "Text/TextAlign.swift",
        "Text/TextClusters.swift",
        "Text/TextGlyph.swift"
      ],
      "target_dependencies" : [
        "CLibtess2",
        "CClipper2",
        "COllinShaders",
        "CHosekWilkie",
        "CMikkTSpace",
        "CSpectralData",
        "OllinShaderText",
        "OllinExpander",
        "OllinCommandFlags"
      ],
      "type" : "library"
    },
    {
      "c99name" : "CSyphon",
      "module_type" : "ClangTarget",
      "name" : "CSyphon",
      "path" : "External/CSyphon",
      "product_memberships" : [
        "OllinSyphon",
        "OllinRun",
        "OllinProjectGenerator",
        "OllinLiveCoding",
        "OllinLive",
        "OllinGuideSnippets",
        "OllinGuideFigures",
        "OllinExamples"
      ],
      "sources" : [
        "SyphonCFMessageReceiver.m",
        "SyphonCFMessageSender.m",
        "SyphonClientBase.m",
        "SyphonClientConnectionManager.m",
        "SyphonDispatch.c",
        "SyphonMessageQueue.m",
        "SyphonMessageReceiver.m",
        "SyphonMessageSender.m",
        "SyphonMessaging.m",
        "SyphonMetalClient.m",
        "SyphonMetalServer.m",
        "SyphonPrivate.m",
        "SyphonServerBase.m",
        "SyphonServerConnectionManager.m",
        "SyphonServerDirectory.m",
        "SyphonServerRendererMetal.m"
      ],
      "type" : "library"
    },
    {
      "c99name" : "CSpectralData",
      "module_type" : "ClangTarget",
      "name" : "CSpectralData",
      "path" : "External/CSpectralData",
      "product_memberships" : [
        "Ollin",
        "OllinAudio",
        "OllinOSC",
        "OllinDMX",
        "OllinLaser",
        "OllinMIDI",
        "OllinMQTT",
        "OllinHaptics",
        "OllinSerial",
        "OllinBluetooth",
        "OllinRemote",
        "OllinRoom",
        "OllinPhysics",
        "OllinVision",
        "OllinVideo",
        "OllinSyphon",
        "OllinCamera",
        "OllinRecord3D",
        "OllinPhone",
        "OllinScreen",
        "OllinController",
        "OllinSamplePhotos",
        "OllinTether",
        "OllinRun",
        "OllinProjectGenerator",
        "OllinNew",
        "OllinLiveCoding",
        "OllinLive",
        "OllinGuideSnippets",
        "OllinGuideFigures",
        "OllinExamples",
        "OllinDoctor",
        "OllinCheck"
      ],
      "sources" : [
        "Source/ollin_spectral_data.c"
      ],
      "type" : "library"
    },
    {
      "c99name" : "COllinSourceKit",
      "module_type" : "ClangTarget",
      "name" : "COllinSourceKit",
      "path" : "Sources/COllinSourceKit",
      "product_memberships" : [
        "OllinTether",
        "OllinRun",
        "OllinProjectGenerator",
        "OllinLiveCoding",
        "OllinLive",
        "OllinGuideSnippets",
        "OllinGuideFigures",
        "OllinExamples"
      ],
      "sources" : [
        "COllinSourceKit.c"
      ],
      "type" : "library"
    },
    {
      "c99name" : "COllinShaders",
      "module_type" : "ClangTarget",
      "name" : "COllinShaders",
      "path" : "Sources/COllinShaders",
      "product_memberships" : [
        "Ollin",
        "OllinAudio",
        "OllinOSC",
        "OllinDMX",
        "OllinLaser",
        "OllinMIDI",
        "OllinMQTT",
        "OllinHaptics",
        "OllinSerial",
        "OllinBluetooth",
        "OllinRemote",
        "OllinRoom",
        "OllinPhysics",
        "OllinVision",
        "OllinVideo",
        "OllinSyphon",
        "OllinCamera",
        "OllinRecord3D",
        "OllinPhone",
        "OllinScreen",
        "OllinController",
        "OllinSamplePhotos",
        "COllinShaders",
        "OllinTether",
        "OllinRun",
        "OllinProjectGenerator",
        "OllinNew",
        "OllinLiveCoding",
        "OllinLive",
        "OllinGuideSnippets",
        "OllinGuideFigures",
        "OllinExamples",
        "OllinDoctor",
        "OllinCheck"
      ],
      "sources" : [
        "COllinShaders.c"
      ],
      "type" : "library"
    },
    {
      "c99name" : "COllinAllocationWatch",
      "module_type" : "ClangTarget",
      "name" : "COllinAllocationWatch",
      "path" : "Tests/COllinAllocationWatch",
      "sources" : [
        "AllocationWatch.c"
      ],
      "type" : "library"
    },
    {
      "c99name" : "CMikkTSpace",
      "module_type" : "ClangTarget",
      "name" : "CMikkTSpace",
      "path" : "External/CMikkTSpace",
      "product_memberships" : [
        "Ollin",
        "OllinAudio",
        "OllinOSC",
        "OllinDMX",
        "OllinLaser",
        "OllinMIDI",
        "OllinMQTT",
        "OllinHaptics",
        "OllinSerial",
        "OllinBluetooth",
        "OllinRemote",
        "OllinRoom",
        "OllinPhysics",
        "OllinVision",
        "OllinVideo",
        "OllinSyphon",
        "OllinCamera",
        "OllinRecord3D",
        "OllinPhone",
        "OllinScreen",
        "OllinController",
        "OllinSamplePhotos",
        "OllinTether",
        "OllinRun",
        "OllinProjectGenerator",
        "OllinNew",
        "OllinLiveCoding",
        "OllinLive",
        "OllinGuideSnippets",
        "OllinGuideFigures",
        "OllinExamples",
        "OllinDoctor",
        "OllinCheck"
      ],
      "sources" : [
        "Source/mikktspace.c"
      ],
      "type" : "library"
    },
    {
      "c99name" : "CLibtess2",
      "module_type" : "ClangTarget",
      "name" : "CLibtess2",
      "path" : "External/CLibtess2",
      "product_memberships" : [
        "Ollin",
        "OllinAudio",
        "OllinOSC",
        "OllinDMX",
        "OllinLaser",
        "OllinMIDI",
        "OllinMQTT",
        "OllinHaptics",
        "OllinSerial",
        "OllinBluetooth",
        "OllinRemote",
        "OllinRoom",
        "OllinPhysics",
        "OllinVision",
        "OllinVideo",
        "OllinSyphon",
        "OllinCamera",
        "OllinRecord3D",
        "OllinPhone",
        "OllinScreen",
        "OllinController",
        "OllinSamplePhotos",
        "OllinTether",
        "OllinRun",
        "OllinProjectGenerator",
        "OllinNew",
        "OllinLiveCoding",
        "OllinLive",
        "OllinGuideSnippets",
        "OllinGuideFigures",
        "OllinExamples",
        "OllinDoctor",
        "OllinCheck"
      ],
      "sources" : [
        "Source/bucketalloc.c",
        "Source/dict.c",
        "Source/geom.c",
        "Source/mesh.c",
        "Source/priorityq.c",
        "Source/sweep.c",
        "Source/tess.c"
      ],
      "type" : "library"
    },
    {
      "c99name" : "CJolt",
      "module_type" : "ClangTarget",
      "name" : "CJolt",
      "path" : "External/CJolt",
      "product_memberships" : [
        "OllinPhysics",
        "OllinRun",
        "OllinProjectGenerator",
        "OllinLiveCoding",
        "OllinLive",
        "OllinGuideSnippets",
        "OllinGuideFigures",
        "OllinExamples"
      ],
      "sources" : [
        "Jolt/AABBTree/AABBTreeBuilder.cpp",
        "Jolt/Compute/ComputeSystem.cpp",
        "Jolt/Core/Color.cpp",
        "Jolt/Core/Factory.cpp",
        "Jolt/Core/IssueReporting.cpp",
        "Jolt/Core/JobSystemSingleThreaded.cpp",
        "Jolt/Core/JobSystemThreadPool.cpp",
        "Jolt/Core/JobSystemWithBarrier.cpp",
        "Jolt/Core/LinearCurve.cpp",
        "Jolt/Core/Memory.cpp",
        "Jolt/Core/Profiler.cpp",
        "Jolt/Core/RTTI.cpp",
        "Jolt/Core/Semaphore.cpp",
        "Jolt/Core/StringTools.cpp",
        "Jolt/Core/TickCounter.cpp",
        "Jolt/Geometry/ConvexHullBuilder.cpp",
        "Jolt/Geometry/ConvexHullBuilder2D.cpp",
        "Jolt/Geometry/Indexify.cpp",
        "Jolt/Geometry/OrientedBox.cpp",
        "Jolt/Math/Vec3.cpp",
        "Jolt/ObjectStream/ObjectStream.cpp",
        "Jolt/ObjectStream/ObjectStreamBinaryIn.cpp",
        "Jolt/ObjectStream/ObjectStreamBinaryOut.cpp",
        "Jolt/ObjectStream/ObjectStreamIn.cpp",
        "Jolt/ObjectStream/ObjectStreamOut.cpp",
        "Jolt/ObjectStream/ObjectStreamTextIn.cpp",
        "Jolt/ObjectStream/ObjectStreamTextOut.cpp",
        "Jolt/ObjectStream/SerializableObject.cpp",
        "Jolt/ObjectStream/TypeDeclarations.cpp",
        "Jolt/Physics/Body/Body.cpp",
        "Jolt/Physics/Body/BodyCreationSettings.cpp",
        "Jolt/Physics/Body/BodyInterface.cpp",
        "Jolt/Physics/Body/BodyManager.cpp",
        "Jolt/Physics/Body/MassProperties.cpp",
        "Jolt/Physics/Body/MotionProperties.cpp",
        "Jolt/Physics/Character/Character.cpp",
        "Jolt/Physics/Character/CharacterBase.cpp",
        "Jolt/Physics/Character/CharacterVirtual.cpp",
        "Jolt/Physics/Collision/BroadPhase/BroadPhase.cpp",
        "Jolt/Physics/Collision/BroadPhase/BroadPhaseBruteForce.cpp",
        "Jolt/Physics/Collision/BroadPhase/BroadPhaseQuadTree.cpp",
        "Jolt/Physics/Collision/BroadPhase/QuadTree.cpp",
        "Jolt/Physics/Collision/CastConvexVsTriangles.cpp",
        "Jolt/Physics/Collision/CastSphereVsTriangles.cpp",
        "Jolt/Physics/Collision/CollideConvexVsTriangles.cpp",
        "Jolt/Physics/Collision/CollideSphereVsTriangles.cpp",
        "Jolt/Physics/Collision/CollisionDispatch.cpp",
        "Jolt/Physics/Collision/CollisionGroup.cpp",
        "Jolt/Physics/Collision/EstimateCollisionResponse.cpp",
        "Jolt/Physics/Collision/GroupFilter.cpp",
        "Jolt/Physics/Collision/GroupFilterTable.cpp",
        "Jolt/Physics/Collision/ManifoldBetweenTwoFaces.cpp",
        "Jolt/Physics/Collision/NarrowPhaseQuery.cpp",
        "Jolt/Physics/Collision/NarrowPhaseStats.cpp",
        "Jolt/Physics/Collision/PhysicsMaterial.cpp",
        "Jolt/Physics/Collision/PhysicsMaterialSimple.cpp",
        "Jolt/Physics/Collision/Shape/BoxShape.cpp",
        "Jolt/Physics/Collision/Shape/CapsuleShape.cpp",
        "Jolt/Physics/Collision/Shape/CompoundShape.cpp",
        "Jolt/Physics/Collision/Shape/ConvexHullShape.cpp",
        "Jolt/Physics/Collision/Shape/ConvexShape.cpp",
        "Jolt/Physics/Collision/Shape/CylinderShape.cpp",
        "Jolt/Physics/Collision/Shape/DecoratedShape.cpp",
        "Jolt/Physics/Collision/Shape/EmptyShape.cpp",
        "Jolt/Physics/Collision/Shape/HeightFieldShape.cpp",
        "Jolt/Physics/Collision/Shape/MeshShape.cpp",
        "Jolt/Physics/Collision/Shape/MutableCompoundShape.cpp",
        "Jolt/Physics/Collision/Shape/OffsetCenterOfMassShape.cpp",
        "Jolt/Physics/Collision/Shape/PlaneShape.cpp",
        "Jolt/Physics/Collision/Shape/RotatedTranslatedShape.cpp",
        "Jolt/Physics/Collision/Shape/ScaledShape.cpp",
        "Jolt/Physics/Collision/Shape/Shape.cpp",
        "Jolt/Physics/Collision/Shape/SphereShape.cpp",
        "Jolt/Physics/Collision/Shape/StaticCompoundShape.cpp",
        "Jolt/Physics/Collision/Shape/TaperedCapsuleShape.cpp",
        "Jolt/Physics/Collision/Shape/TaperedCylinderShape.cpp",
        "Jolt/Physics/Collision/Shape/TriangleShape.cpp",
        "Jolt/Physics/Collision/TransformedShape.cpp",
        "Jolt/Physics/Constraints/ConeConstraint.cpp",
        "Jolt/Physics/Constraints/Constraint.cpp",
        "Jolt/Physics/Constraints/ConstraintManager.cpp",
        "Jolt/Physics/Constraints/ContactConstraintManager.cpp",
        "Jolt/Physics/Constraints/DistanceConstraint.cpp",
        "Jolt/Physics/Constraints/FixedConstraint.cpp",
        "Jolt/Physics/Constraints/GearConstraint.cpp",
        "Jolt/Physics/Constraints/HingeConstraint.cpp",
        "Jolt/Physics/Constraints/MotorSettings.cpp",
        "Jolt/Physics/Constraints/PathConstraint.cpp",
        "Jolt/Physics/Constraints/PathConstraintPath.cpp",
        "Jolt/Physics/Constraints/PathConstraintPathHermite.cpp",
        "Jolt/Physics/Constraints/PointConstraint.cpp",
        "Jolt/Physics/Constraints/PulleyConstraint.cpp",
        "Jolt/Physics/Constraints/RackAndPinionConstraint.cpp",
        "Jolt/Physics/Constraints/SixDOFConstraint.cpp",
        "Jolt/Physics/Constraints/SliderConstraint.cpp",
        "Jolt/Physics/Constraints/SpringSettings.cpp",
        "Jolt/Physics/Constraints/SwingTwistConstraint.cpp",
        "Jolt/Physics/Constraints/TwoBodyConstraint.cpp",
        "Jolt/Physics/DeterminismLog.cpp",
        "Jolt/Physics/Hair/Hair.cpp",
        "Jolt/Physics/Hair/HairSettings.cpp",
        "Jolt/Physics/Hair/HairShaders.cpp",
        "Jolt/Physics/Hair/RegisterHair.cpp",
        "Jolt/Physics/IslandBuilder.cpp",
        "Jolt/Physics/LargeIslandSplitter.cpp",
        "Jolt/Physics/PhysicsScene.cpp",
        "Jolt/Physics/PhysicsSystem.cpp",
        "Jolt/Physics/PhysicsUpdateContext.cpp",
        "Jolt/Physics/Ragdoll/Ragdoll.cpp",
        "Jolt/Physics/SoftBody/SoftBodyCreationSettings.cpp",
        "Jolt/Physics/SoftBody/SoftBodyMotionProperties.cpp",
        "Jolt/Physics/SoftBody/SoftBodyShape.cpp",
        "Jolt/Physics/SoftBody/SoftBodySharedSettings.cpp",
        "Jolt/Physics/StateRecorderImpl.cpp",
        "Jolt/Physics/Vehicle/MotorcycleController.cpp",
        "Jolt/Physics/Vehicle/TrackedVehicleController.cpp",
        "Jolt/Physics/Vehicle/VehicleAntiRollBar.cpp",
        "Jolt/Physics/Vehicle/VehicleCollisionTester.cpp",
        "Jolt/Physics/Vehicle/VehicleConstraint.cpp",
        "Jolt/Physics/Vehicle/VehicleController.cpp",
        "Jolt/Physics/Vehicle/VehicleDifferential.cpp",
        "Jolt/Physics/Vehicle/VehicleEngine.cpp",
        "Jolt/Physics/Vehicle/VehicleTrack.cpp",
        "Jolt/Physics/Vehicle/VehicleTransmission.cpp",
        "Jolt/Physics/Vehicle/Wheel.cpp",
        "Jolt/Physics/Vehicle/WheeledVehicleController.cpp",
        "Jolt/RegisterTypes.cpp",
        "Jolt/Skeleton/SkeletalAnimation.cpp",
        "Jolt/Skeleton/Skeleton.cpp",
        "Jolt/Skeleton/SkeletonMapper.cpp",
        "Jolt/Skeleton/SkeletonPose.cpp",
        "Jolt/TriangleSplitter/TriangleSplitter.cpp",
        "Jolt/TriangleSplitter/TriangleSplitterBinning.cpp",
        "Jolt/TriangleSplitter/TriangleSplitterMean.cpp",
        "src/cjolt.cpp"
      ],
      "type" : "library"
    },
    {
      "c99name" : "CHosekWilkie",
      "module_type" : "ClangTarget",
      "name" : "CHosekWilkie",
      "path" : "External/CHosekWilkie",
      "product_memberships" : [
        "Ollin",
        "OllinAudio",
        "OllinOSC",
        "OllinDMX",
        "OllinLaser",
        "OllinMIDI",
        "OllinMQTT",
        "OllinHaptics",
        "OllinSerial",
        "OllinBluetooth",
        "OllinRemote",
        "OllinRoom",
        "OllinPhysics",
        "OllinVision",
        "OllinVideo",
        "OllinSyphon",
        "OllinCamera",
        "OllinRecord3D",
        "OllinPhone",
        "OllinScreen",
        "OllinController",
        "OllinSamplePhotos",
        "OllinTether",
        "OllinRun",
        "OllinProjectGenerator",
        "OllinNew",
        "OllinLiveCoding",
        "OllinLive",
        "OllinGuideSnippets",
        "OllinGuideFigures",
        "OllinExamples",
        "OllinDoctor",
        "OllinCheck"
      ],
      "sources" : [
        "Source/ArHosekSkyModel.c",
        "Source/ollin_hosek_bridge.c"
      ],
      "type" : "library"
    },
    {
      "c99name" : "CClipper2",
      "module_type" : "ClangTarget",
      "name" : "CClipper2",
      "path" : "External/CClipper2",
      "product_memberships" : [
        "Ollin",
        "OllinAudio",
        "OllinOSC",
        "OllinDMX",
        "OllinLaser",
        "OllinMIDI",
        "OllinMQTT",
        "OllinHaptics",
        "OllinSerial",
        "OllinBluetooth",
        "OllinRemote",
        "OllinRoom",
        "OllinPhysics",
        "OllinVision",
        "OllinVideo",
        "OllinSyphon",
        "OllinCamera",
        "OllinRecord3D",
        "OllinPhone",
        "OllinScreen",
        "OllinController",
        "OllinSamplePhotos",
        "OllinTether",
        "OllinRun",
        "OllinProjectGenerator",
        "OllinNew",
        "OllinLiveCoding",
        "OllinLive",
        "OllinGuideSnippets",
        "OllinGuideFigures",
        "OllinExamples",
        "OllinDoctor",
        "OllinCheck"
      ],
      "sources" : [
        "Clipper2Lib/src/clipper.engine.cpp",
        "Clipper2Lib/src/clipper.offset.cpp",
        "Clipper2Lib/src/clipper.rectclip.cpp",
        "Clipper2Lib/src/clipper.triangulation.cpp",
        "src/cclipper2.cpp"
      ],
      "type" : "library"
    },
    {
      "c99name" : "CBox2D",
      "module_type" : "ClangTarget",
      "name" : "CBox2D",
      "path" : "External/CBox2D",
      "product_memberships" : [
        "OllinPhysics",
        "OllinRun",
        "OllinProjectGenerator",
        "OllinLiveCoding",
        "OllinLive",
        "OllinGuideSnippets",
        "OllinGuideFigures",
        "OllinExamples"
      ],
      "sources" : [
        "src/aabb.c",
        "src/arena_allocator.c",
        "src/array.c",
        "src/bitset.c",
        "src/body.c",
        "src/broad_phase.c",
        "src/constraint_graph.c",
        "src/contact.c",
        "src/contact_solver.c",
        "src/core.c",
        "src/distance.c",
        "src/distance_joint.c",
        "src/dynamic_tree.c",
        "src/geometry.c",
        "src/hull.c",
        "src/id_pool.c",
        "src/island.c",
        "src/joint.c",
        "src/manifold.c",
        "src/math_functions.c",
        "src/motor_joint.c",
        "src/mouse_joint.c",
        "src/mover.c",
        "src/prismatic_joint.c",
        "src/revolute_joint.c",
        "src/sensor.c",
        "src/shape.c",
        "src/solver.c",
        "src/solver_set.c",
        "src/table.c",
        "src/timer.c",
        "src/types.c",
        "src/weld_joint.c",
        "src/wheel_joint.c",
        "src/world.c"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "6.0"
}
✅  Doc result (pending) reported
========================================
GenerateDocs
========================================
Generating docs at path:  $PWD/.docs/eaviles/ollin/0.17.0
Repository:               eaviles/Ollin
Swift version used:       6.4
Target:                   Ollin
Extracting symbol information for 'Ollin'...
Fetching https://github.com/swiftlang/swift-docc-plugin
[1/2345] Fetching swift-docc-plugin
Fetched https://github.com/swiftlang/swift-docc-plugin (1.38s)
Computing version for https://github.com/swiftlang/swift-docc-plugin
Computed https://github.com/swiftlang/swift-docc-plugin at 1.5.0 (3.57s)
Fetching https://github.com/swiftlang/swift-docc-symbolkit
[1/3849] Fetching swift-docc-symbolkit
Fetched https://github.com/swiftlang/swift-docc-symbolkit (1.33s)
Computing version for https://github.com/swiftlang/swift-docc-symbolkit
Computed https://github.com/swiftlang/swift-docc-symbolkit at 1.0.0 (2.01s)
Creating working copy for https://github.com/swiftlang/swift-docc-plugin
Working copy of https://github.com/swiftlang/swift-docc-plugin resolved at 1.5.0
Creating working copy for https://github.com/swiftlang/swift-docc-symbolkit
Working copy of https://github.com/swiftlang/swift-docc-symbolkit resolved at 1.0.0
Building for debugging...
[Planning deferred tasks]
[18 / 41]
[20 / 43] Snippets
[30 / 92]
[35 / 92]
[38 / 92]
[39 / 92]
[43 / 92]
[46 / 92]
[48 / 92]
[51 / 92]
[53 / 92]
[54 / 92]
[65 / 92] SymbolKit
[66 / 92] Snippets
[84 / 93] SymbolKit
[84 / 93] Snippets
[92 / 97] snippet-extract-product
[93 / 97] snippet-extract-product
[95 / 97] snippet-extract-product
Build complete! (4.26 sec)
Building for debugging...
[Pre-planning 1 / 332]
[Planning deferred tasks]
[6 / 54] CLibtess2
[6 / 35] COllinShaders
In file included from <extract-api-includes>:1:
In file included from /Users/admin/builder/spi-builder-workspace/External/CClipper2/Clipper2Lib/include/clipper2/clipper.h:13:
In file included from /Users/admin/builder/spi-builder-workspace/External/CClipper2/Clipper2Lib/include/clipper2/clipper.core.h:13:
/Users/admin/builder/spi-builder-workspace/External/CClipper2/Clipper2Lib/include/clipper2/clipper.version.h:4:1: error: unknown type name 'constexpr'
    4 | constexpr auto CLIPPER2_VERSION = "2.0.1";
      | ^
/Users/admin/builder/spi-builder-workspace/External/CClipper2/Clipper2Lib/include/clipper2/clipper.version.h:4:16: error: illegal storage class on file-scoped variable
    4 | constexpr auto CLIPPER2_VERSION = "2.0.1";
      |                ^
In file included from <extract-api-includes>:1:
In file included from /Users/admin/builder/spi-builder-workspace/External/CClipper2/Clipper2Lib/include/clipper2/clipper.h:13:
/Users/admin/builder/spi-builder-workspace/External/CClipper2/Clipper2Lib/include/clipper2/clipper.core.h:14:10: fatal error: 'cstdint' file not found
   14 | #include <cstdint>
      |          ^~~~~~~~~
3 errors generated.
error: ExtractAPI /Users/admin/builder/spi-builder-workspace/.build/out/Products/Debug/arm64/CClipper2.symbolgraphs/CClipper2.symbols.json failed with a nonzero exit code. Command line:     cd /Users/admin/builder/spi-builder-workspace
    /Applications/Xcode-27.0.0.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -extract-api --extract-api-ignores\=/Applications/Xcode-27.0.0.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/share/swift/compatibility-symbols -o /Users/admin/builder/spi-builder-workspace/.build/out/Products/Debug/arm64/CClipper2.symbolgraphs/CClipper2.symbols.json --target\=arm64-apple-macos26.0 -isysroot /Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX27.0.sdk -I/Users/admin/builder/spi-builder-workspace/.build/out/Products/Debug/include -I/Users/admin/builder/spi-builder-workspace/External/CClipper2/include -I/Users/admin/builder/spi-builder-workspace/External/CClipper2/Clipper2Lib/include -I/Users/admin/builder/spi-builder-workspace/.build/out/Intermediates.noindex/Ollin.build/Debug/CClipper2-t.build/DerivedSources-normal/arm64 -I/Users/admin/builder/spi-builder-workspace/.build/out/Intermediates.noindex/Ollin.build/Debug/CClipper2-t.build/DerivedSources/arm64 -I/Users/admin/builder/spi-builder-workspace/.build/out/Intermediates.noindex/Ollin.build/Debug/CClipper2-t.build/DerivedSources -F/Users/admin/builder/spi-builder-workspace/.build/out/Products/Debug -iframework /Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/Library/Frameworks -fmodules -fmodules-cache-path\=/Users/admin/builder/spi-builder-workspace/.build/out/ModuleCache.noindex -fobjc-arc -DSWIFT_PACKAGE -DDEBUG\=1 --product-name\=CClipper2 -fmodule-name\=CClipper2 -x objective-c-header /Users/admin/builder/spi-builder-workspace/External/CClipper2/Clipper2Lib/include/clipper2/clipper.h /Users/admin/builder/spi-builder-workspace/External/CClipper2/include/cclipper2.h
error: Build failed
error: unspecified("fatalError")
Extracting symbol information for 'Ollin'...
Building for debugging...
[1 / 3]
Build complete! (0.63 sec)
Building for debugging...
[Using on-disk description]
In file included from <extract-api-includes>:1:
In file included from /Users/admin/builder/spi-builder-workspace/External/CClipper2/Clipper2Lib/include/clipper2/clipper.h:13:
In file included from /Users/admin/builder/spi-builder-workspace/External/CClipper2/Clipper2Lib/include/clipper2/clipper.core.h:13:
/Users/admin/builder/spi-builder-workspace/External/CClipper2/Clipper2Lib/include/clipper2/clipper.version.h:4:1: error: unknown type name 'constexpr'
    4 | constexpr auto CLIPPER2_VERSION = "2.0.1";
      | ^
/Users/admin/builder/spi-builder-workspace/External/CClipper2/Clipper2Lib/include/clipper2/clipper.version.h:4:16: error: illegal storage class on file-scoped variable
    4 | constexpr auto CLIPPER2_VERSION = "2.0.1";
      |                ^
In file included from <extract-api-includes>:1:
In file included from /Users/admin/builder/spi-builder-workspace/External/CClipper2/Clipper2Lib/include/clipper2/clipper.h:13:
/Users/admin/builder/spi-builder-workspace/External/CClipper2/Clipper2Lib/include/clipper2/clipper.core.h:14:10: fatal error: 'cstdint' file not found
   14 | #include <cstdint>
      |          ^~~~~~~~~
3 errors generated.
error: ExtractAPI /Users/admin/builder/spi-builder-workspace/.build/out/Products/Debug/arm64/CClipper2.symbolgraphs/CClipper2.symbols.json failed with a nonzero exit code. Command line:     cd /Users/admin/builder/spi-builder-workspace
    /Applications/Xcode-27.0.0.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -extract-api --extract-api-ignores\=/Applications/Xcode-27.0.0.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/share/swift/compatibility-symbols -o /Users/admin/builder/spi-builder-workspace/.build/out/Products/Debug/arm64/CClipper2.symbolgraphs/CClipper2.symbols.json --target\=arm64-apple-macos26.0 -isysroot /Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX27.0.sdk -I/Users/admin/builder/spi-builder-workspace/.build/out/Products/Debug/include -I/Users/admin/builder/spi-builder-workspace/External/CClipper2/include -I/Users/admin/builder/spi-builder-workspace/External/CClipper2/Clipper2Lib/include -I/Users/admin/builder/spi-builder-workspace/.build/out/Intermediates.noindex/Ollin.build/Debug/CClipper2-t.build/DerivedSources-normal/arm64 -I/Users/admin/builder/spi-builder-workspace/.build/out/Intermediates.noindex/Ollin.build/Debug/CClipper2-t.build/DerivedSources/arm64 -I/Users/admin/builder/spi-builder-workspace/.build/out/Intermediates.noindex/Ollin.build/Debug/CClipper2-t.build/DerivedSources -F/Users/admin/builder/spi-builder-workspace/.build/out/Products/Debug -iframework /Applications/Xcode-27.0.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/Library/Frameworks -fmodules -fmodules-cache-path\=/Users/admin/builder/spi-builder-workspace/.build/out/ModuleCache.noindex -fobjc-arc -DSWIFT_PACKAGE -DDEBUG\=1 --product-name\=CClipper2 -fmodule-name\=CClipper2 -x objective-c-header /Users/admin/builder/spi-builder-workspace/External/CClipper2/Clipper2Lib/include/clipper2/clipper.h /Users/admin/builder/spi-builder-workspace/External/CClipper2/include/cclipper2.h
error: Build failed
error: unspecified("fatalError")
Error while generating docs: retryLimitExceeded(lastError: Optional(Shell command failed:
    env DEVELOPER_DIR=/Applications/Xcode-27.0.0.app xcrun swift package --allow-writing-to-directory .docs/eaviles/ollin/0.17.0 generate-documentation --emit-digest --disable-indexing --output-path .docs/eaviles/ollin/0.17.0 --hosting-base-path eaviles/ollin/0.17.0 --source-service github --source-service-base-url https://github.com/eaviles/Ollin/blob/0.17.0 --checkout-path $PWD --target Ollin))
✅  Doc result (failed) reported
Done.