The Swift Package Index logo.Swift Package Index

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

Build Information

Successful build of iTriangle, reference main (08509e), with Swift 6.2 (beta) for macOS (SPM) on 22 Jun 2025 13:59:49 UTC.

Swift 6 data race errors: 0

Build Command

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

Build Log

========================================
RunAll
========================================
Builder version: 4.64.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/iShape-Swift/iTriangle.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/iShape-Swift/iTriangle
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
HEAD is now at 08509ee fix on border point
Cloned https://github.com/iShape-Swift/iTriangle.git
Revision (git rev-parse @):
08509ee0f096131f116cb40ce4e4bb471d1431eb
SUCCESS checkout https://github.com/iShape-Swift/iTriangle.git at main
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.2
Building package at path:  $PWD
https://github.com/iShape-Swift/iTriangle.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-26.0.0-Beta.app xcrun swift build --arch arm64
Building for debugging...
[0/6] Write sources
[5/6] Write swift-version-1EA4D86E10B52AF.txt
[7/21] Compiling iTree TreeNode.swift
[8/21] Compiling iTree Array.swift
[9/21] Compiling iTree NodeStore.swift
[10/21] Emitting module iTree
[11/21] Compiling iTree RedBlackTree.swift
[12/21] Compiling iFixFloat Triangle.swift
[13/22] Compiling iFixFloat UInt128.swift
[14/22] Compiling iFixFloat FixAngle.swift
[15/22] Compiling iFixFloat FixFloat.swift
[16/22] Compiling iFixFloat FixSin.swift
[17/22] Emitting module iFixFloat
[18/22] Compiling iFixFloat Vec.swift
[19/22] Compiling iFixFloat FixVec.swift
[20/22] Compiling iFixFloat BitPack.swift
[21/22] Compiling iFixFloat Rect.swift
[22/22] Compiling iFixFloat Point.swift
[23/32] Compiling iShape FixShapes.swift
[24/33] Compiling iShape Shape.swift
[25/33] Compiling iShape Path.swift
[26/33] Compiling iShape CGPoint.swift
[27/33] Compiling iShape CGFloat.swift
[28/33] Compiling iShape FixShape.swift
[29/33] Emitting module iShape
[30/33] Compiling iShape FixBnd.swift
[31/33] Compiling iShape FixPath.swift
[32/33] Compiling iShape FixPaths.swift
[33/33] Compiling iShape Adapter.swift
[34/70] Emitting module iOverlay
[35/74] Compiling iOverlay LineRange.swift
[36/74] Compiling iOverlay Point.swift
[37/74] Compiling iOverlay End.swift
[38/74] Compiling iOverlay Segment.swift
[39/74] Compiling iOverlay Array.swift
[40/74] Compiling iOverlay IdSegment.swift
[41/74] Compiling iOverlay ScanBindList.swift
[42/74] Compiling iOverlay ScanBindTree.swift
[43/74] Compiling iOverlay ScanFillTree.swift
[44/74] Compiling iOverlay Segment+Fill.swift
[45/74] Compiling iOverlay IdPoint.swift
[46/74] Compiling iOverlay Int.swift
[47/74] Compiling iOverlay OverlayGraph.swift
[48/74] Compiling iOverlay OverlayLink.swift
[49/74] Compiling iOverlay OverlayNode.swift
[50/74] Compiling iOverlay OverlayRule.swift
[51/74] Compiling iOverlay FillRule.swift
[52/74] Compiling iOverlay Filter.swift
[53/74] Compiling iOverlay Overlay.swift
[54/74] Compiling iOverlay OverlayGraph+Extract.swift
[55/74] Compiling iOverlay Simplify.swift
[56/74] Compiling iOverlay Solver.swift
[57/74] Compiling iOverlay CountSegment.swift
[58/74] Compiling iOverlay ScanFillList.swift
[59/74] Compiling iOverlay ShapeBinder.swift
[60/74] Compiling iOverlay CGOverlay.swift
[61/74] Compiling iOverlay CGOverlayGraph.swift
[62/74] Compiling iOverlay Divide.swift
[63/74] Compiling iOverlay ShapeCount.swift
[64/74] Compiling iOverlay XSegment.swift
[65/74] Compiling iOverlay CrossSolver.swift
[66/74] Compiling iOverlay Fragment.swift
[67/74] Compiling iOverlay SplitSolver+Tree.swift
[68/74] Compiling iOverlay SplitSolver.swift
[69/74] Compiling iOverlay OverlayGraph+ExtractVector.swift
[70/74] Compiling iOverlay VectorEdge.swift
[71/74] Compiling iOverlay LineMark.swift
[72/74] Compiling iOverlay SegmentTree.swift
[73/74] Compiling iOverlay SpaceLayout.swift
[74/74] Compiling iOverlay SplitSolver+List.swift
[75/91] Compiling iTriangle Shape+Triangulate.swift
/Users/admin/builder/spi-builder-workspace/Sources/iTriangle/Delaunay/Delaunay.swift:15:12: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
 13 |     private var buffer: UnsafeMutablePointer<Int>
 14 |     private var capacity: Int
 15 |     private (set) var count: Int
    |            `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
 16 |
 17 |     subscript(index: Int) -> Int {
[76/92] Compiling iTriangle Shape+nLayout.swift
[77/92] Compiling iTriangle CGShape+Triangulate.swift
[78/92] Compiling iTriangle Triangulation.swift
[79/92] Compiling iTriangle Shape+Delaunay.swift
[80/92] Compiling iTriangle Int.swift
[81/92] Compiling iTriangle DVertex.swift
[82/92] Compiling iTriangle Delaunay+Convex.swift
[83/92] Emitting module iTriangle
/Users/admin/builder/spi-builder-workspace/Sources/iTriangle/Delaunay/Delaunay.swift:15:12: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
 13 |     private var buffer: UnsafeMutablePointer<Int>
 14 |     private var capacity: Int
 15 |     private (set) var count: Int
    |            `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
 16 |
 17 |     subscript(index: Int) -> Int {
[84/92] Compiling iTriangle Array3d.swift
[85/92] Compiling iTriangle DTriangle.swift
[86/92] Compiling iTriangle CGTriangulation.swift
[87/92] Compiling iTriangle MSliceBuffer.swift
[88/92] Compiling iTriangle Shape+mLayout.swift
[89/92] Compiling iTriangle Delaunay.swift
/Users/admin/builder/spi-builder-workspace/Sources/iTriangle/Delaunay/Delaunay.swift:15:12: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
 13 |     private var buffer: UnsafeMutablePointer<Int>
 14 |     private var capacity: Int
 15 |     private (set) var count: Int
    |            `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
 16 |
 17 |     subscript(index: Int) -> Int {
[90/92] Compiling iTriangle IndexBuffer.swift
/Users/admin/builder/spi-builder-workspace/Sources/iTriangle/Delaunay/Delaunay.swift:15:12: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
 13 |     private var buffer: UnsafeMutablePointer<Int>
 14 |     private var capacity: Int
 15 |     private (set) var count: Int
    |            `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
 16 |
 17 |     subscript(index: Int) -> Int {
[91/92] Compiling iTriangle MNavNode.swift
[92/92] Compiling iTriangle MPoly.swift
Build complete! (14.21s)
Fetching https://github.com/iShape-Swift/iOverlay
Fetching https://github.com/iShape-Swift/iShape
Fetching https://github.com/iShape-Swift/iFixFloat
[1/437] Fetching ishape
[277/4010] Fetching ishape, ioverlay
[505/4205] Fetching ishape, ioverlay, ifixfloat
Fetched https://github.com/iShape-Swift/iOverlay from cache (1.00s)
Fetched https://github.com/iShape-Swift/iFixFloat from cache (1.00s)
Fetched https://github.com/iShape-Swift/iShape from cache (1.00s)
Computing version for https://github.com/iShape-Swift/iOverlay
Computed https://github.com/iShape-Swift/iOverlay at 1.22.0 (1.40s)
Fetching https://github.com/iShape-Swift/iTree
[1/204] Fetching itree
Fetched https://github.com/iShape-Swift/iTree from cache (0.74s)
Computing version for https://github.com/iShape-Swift/iShape
Computed https://github.com/iShape-Swift/iShape at 1.13.0 (3.16s)
Computing version for https://github.com/iShape-Swift/iFixFloat
Computed https://github.com/iShape-Swift/iFixFloat at 1.9.0 (0.36s)
Computing version for https://github.com/iShape-Swift/iTree
Computed https://github.com/iShape-Swift/iTree at 0.5.0 (0.37s)
Creating working copy for https://github.com/iShape-Swift/iOverlay
Working copy of https://github.com/iShape-Swift/iOverlay resolved at 1.22.0
Creating working copy for https://github.com/iShape-Swift/iTree
Working copy of https://github.com/iShape-Swift/iTree resolved at 0.5.0
Creating working copy for https://github.com/iShape-Swift/iFixFloat
Working copy of https://github.com/iShape-Swift/iFixFloat resolved at 1.9.0
Creating working copy for https://github.com/iShape-Swift/iShape
Working copy of https://github.com/iShape-Swift/iShape resolved at 1.13.0
Build complete.
{
  "dependencies" : [
    {
      "identity" : "ifixfloat",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.9.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/iShape-Swift/iFixFloat"
    },
    {
      "identity" : "ishape",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.13.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/iShape-Swift/iShape"
    },
    {
      "identity" : "ioverlay",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.22.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/iShape-Swift/iOverlay"
    }
  ],
  "manifest_display_name" : "iTriangle",
  "name" : "iTriangle",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
  ],
  "products" : [
    {
      "name" : "iTriangle",
      "targets" : [
        "iTriangle"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "iTriangleTests",
      "module_type" : "SwiftTarget",
      "name" : "iTriangleTests",
      "path" : "Tests/iTriangleTests",
      "resources" : [
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_0.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_1.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_10.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_11.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_12.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_13.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_14.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_15.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_16.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_17.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_18.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_19.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_2.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_20.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_21.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_22.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_23.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_24.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_25.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_26.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_27.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_28.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_29.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_3.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_30.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_31.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_32.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_33.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_34.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_35.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_36.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_37.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_38.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_39.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_4.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_40.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_41.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_42.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_43.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_44.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_45.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_46.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_47.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_48.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_49.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_5.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_50.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_51.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_52.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_53.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_54.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_55.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_56.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_57.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_58.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_59.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_6.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_60.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_61.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_62.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_63.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_64.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_65.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_66.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_67.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_68.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_69.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_7.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_70.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_71.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_72.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_8.json",
          "rule" : {
            "process" : {
            }
          }
        },
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Tests/iTriangleTests/Triangulation/triangle_test_9.json",
          "rule" : {
            "process" : {
            }
          }
        }
      ],
      "sources" : [
        "ReadmeTests.swift",
        "TriangulationTestBank.swift",
        "iConvexTests.swift",
        "iTriangleTests.swift"
      ],
      "target_dependencies" : [
        "iTriangle"
      ],
      "type" : "test"
    },
    {
      "c99name" : "iTriangle",
      "module_type" : "SwiftTarget",
      "name" : "iTriangle",
      "path" : "Sources/iTriangle",
      "product_dependencies" : [
        "iFixFloat",
        "iShape",
        "iOverlay"
      ],
      "product_memberships" : [
        "iTriangle"
      ],
      "sources" : [
        "Delaunay/Array3d.swift",
        "Delaunay/DTriangle.swift",
        "Delaunay/DVertex.swift",
        "Delaunay/Delaunay+Convex.swift",
        "Delaunay/Delaunay.swift",
        "Delaunay/IndexBuffer.swift",
        "Delaunay/Shape+Delaunay.swift",
        "Int.swift",
        "Monotone/MNavNode.swift",
        "Monotone/MPoly.swift",
        "Monotone/MSliceBuffer.swift",
        "Monotone/Shape+mLayout.swift",
        "Monotone/Shape+nLayout.swift",
        "Triangulate/CGShape+Triangulate.swift",
        "Triangulate/CGTriangulation.swift",
        "Triangulate/Shape+Triangulate.swift",
        "Triangulate/Triangulation.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.8"
}
Done.