Build Information
Successful build of iTriangle, reference main (08509e
), with Swift 6.0 for macOS (SPM) on 28 Nov 2024 17:40:44 UTC.
Swift 6 data race errors: 6
Build Command
env DEVELOPER_DIR=/Applications/Xcode-16.1.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures
Build Log
========================================
RunAll
========================================
Builder version: 4.58.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
Fetching https://github.com/iShape-Swift/iShape
Fetching https://github.com/iShape-Swift/iFixFloat
Fetching https://github.com/iShape-Swift/iOverlay
[1/437] Fetching ishape
[54/632] Fetching ishape, ifixfloat
[249/4205] Fetching ishape, ifixfloat, ioverlay
Fetched https://github.com/iShape-Swift/iShape from cache (1.08s)
Fetched https://github.com/iShape-Swift/iOverlay from cache (1.08s)
Fetched https://github.com/iShape-Swift/iFixFloat from cache (1.08s)
Computing version for https://github.com/iShape-Swift/iOverlay
Computed https://github.com/iShape-Swift/iOverlay at 1.22.0 (0.45s)
Fetching https://github.com/iShape-Swift/iTree
[1/204] Fetching itree
Fetched https://github.com/iShape-Swift/iTree from cache (0.65s)
Computing version for https://github.com/iShape-Swift/iShape
Computed https://github.com/iShape-Swift/iShape at 1.13.0 (3.43s)
Computing version for https://github.com/iShape-Swift/iFixFloat
Computed https://github.com/iShape-Swift/iFixFloat at 1.9.0 (0.44s)
Computing version for https://github.com/iShape-Swift/iTree
Computed https://github.com/iShape-Swift/iTree at 0.5.0 (0.44s)
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/iFixFloat
Working copy of https://github.com/iShape-Swift/iFixFloat resolved at 1.9.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/iShape
Working copy of https://github.com/iShape-Swift/iShape resolved at 1.13.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",
"dependencies": [
{
"identity": "itriangle",
"name": "iTriangle",
"url": "https://github.com/iShape-Swift/iTriangle.git",
"version": "unspecified",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/iTriangle",
"dependencies": [
{
"identity": "ifixfloat",
"name": "iFixFloat",
"url": "https://github.com/iShape-Swift/iFixFloat",
"version": "1.9.0",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/iFixFloat",
"dependencies": [
]
},
{
"identity": "ishape",
"name": "iShape",
"url": "https://github.com/iShape-Swift/iShape",
"version": "1.13.0",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/iShape",
"dependencies": [
{
"identity": "ifixfloat",
"name": "iFixFloat",
"url": "https://github.com/iShape-Swift/iFixFloat",
"version": "1.9.0",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/iFixFloat",
"dependencies": [
]
}
]
},
{
"identity": "ioverlay",
"name": "iOverlay",
"url": "https://github.com/iShape-Swift/iOverlay",
"version": "1.22.0",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/iOverlay",
"dependencies": [
{
"identity": "ifixfloat",
"name": "iFixFloat",
"url": "https://github.com/iShape-Swift/iFixFloat",
"version": "1.9.0",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/iFixFloat",
"dependencies": [
]
},
{
"identity": "ishape",
"name": "iShape",
"url": "https://github.com/iShape-Swift/iShape",
"version": "1.13.0",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/iShape",
"dependencies": [
{
"identity": "ifixfloat",
"name": "iFixFloat",
"url": "https://github.com/iShape-Swift/iFixFloat",
"version": "1.9.0",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/iFixFloat",
"dependencies": [
]
}
]
},
{
"identity": "itree",
"name": "iTree",
"url": "https://github.com/iShape-Swift/iTree",
"version": "0.5.0",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/iTree",
"dependencies": [
]
}
]
}
]
}
]
}
Fetching https://github.com/iShape-Swift/iTriangle.git
[9/891] Fetching itriangle
Fetched https://github.com/iShape-Swift/iTriangle.git from cache (1.09s)
Fetching https://github.com/iShape-Swift/iShape from cache
Fetching https://github.com/iShape-Swift/iOverlay from cache
Fetching https://github.com/iShape-Swift/iFixFloat from cache
Fetched https://github.com/iShape-Swift/iShape from cache (0.48s)
Fetched https://github.com/iShape-Swift/iOverlay from cache (0.50s)
Fetched https://github.com/iShape-Swift/iFixFloat from cache (0.50s)
Computing version for https://github.com/iShape-Swift/iOverlay
Computed https://github.com/iShape-Swift/iOverlay at 1.22.0 (0.02s)
Fetching https://github.com/iShape-Swift/iTree from cache
Fetched https://github.com/iShape-Swift/iTree from cache (0.48s)
Computing version for https://github.com/iShape-Swift/iShape
Computed https://github.com/iShape-Swift/iShape at 1.13.0 (0.02s)
Computing version for https://github.com/iShape-Swift/iFixFloat
Computed https://github.com/iShape-Swift/iFixFloat at 1.9.0 (0.02s)
Computing version for https://github.com/iShape-Swift/iTree
Computed https://github.com/iShape-Swift/iTree at 0.5.0 (0.02s)
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/iTriangle.git
Working copy of https://github.com/iShape-Swift/iTriangle.git resolved at main (08509ee)
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
Creating working copy for https://github.com/iShape-Swift/iOverlay
Working copy of https://github.com/iShape-Swift/iOverlay resolved at 1.22.0
warning: '.resolve-product-dependencies': dependency 'itriangle' is not used by any target
Found 3 product dependencies
- iFixFloat
- iShape
- iOverlay
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.0
Building package at path: $PWD
https://github.com/iShape-Swift/iTriangle.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.1.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures
Building for debugging...
[0/6] Write sources
[5/6] Write swift-version--7754E27361AE5C74.txt
[7/21] Emitting module iTree
[8/21] Compiling iTree TreeNode.swift
[9/21] Compiling iTree RedBlackTree.swift
[10/21] Compiling iTree NodeStore.swift
[11/21] Compiling iTree Array.swift
[12/21] Compiling iFixFloat Rect.swift
[13/21] Compiling iFixFloat UInt128.swift
[14/21] Compiling iFixFloat Triangle.swift
[15/22] Emitting module iFixFloat
[16/22] Compiling iFixFloat BitPack.swift
[17/22] Compiling iFixFloat Point.swift
[18/22] Compiling iFixFloat FixSin.swift
[19/22] Compiling iFixFloat FixFloat.swift
[20/22] Compiling iFixFloat FixVec.swift
[21/22] Compiling iFixFloat FixAngle.swift
[22/22] Compiling iFixFloat Vec.swift
[23/32] Compiling iShape Adapter.swift
[24/32] Compiling iShape FixShapes.swift
[25/32] Emitting module iShape
[26/32] Compiling iShape FixPath.swift
[27/32] Compiling iShape FixBnd.swift
[28/33] Compiling iShape CGPoint.swift
[29/33] Compiling iShape FixPaths.swift
[30/33] Compiling iShape CGFloat.swift
[31/33] Compiling iShape Path.swift
[32/33] Compiling iShape FixShape.swift
[33/33] Compiling iShape Shape.swift
[34/70] Compiling iOverlay Array.swift
[35/70] Compiling iOverlay IdSegment.swift
[36/70] Compiling iOverlay ScanBindList.swift
[37/70] Compiling iOverlay ScanBindTree.swift
[38/74] Emitting module iOverlay
[39/74] Compiling iOverlay LineRange.swift
[40/74] Compiling iOverlay Point.swift
[41/74] Compiling iOverlay End.swift
[42/74] Compiling iOverlay Segment.swift
[43/74] Compiling iOverlay OverlayGraph.swift
[44/74] Compiling iOverlay OverlayLink.swift
[45/74] Compiling iOverlay OverlayNode.swift
[46/74] Compiling iOverlay OverlayRule.swift
[47/74] Compiling iOverlay ShapeBinder.swift
[48/74] Compiling iOverlay CGOverlay.swift
[49/74] Compiling iOverlay CGOverlayGraph.swift
[50/74] Compiling iOverlay Divide.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 ShapeCount.swift
[60/74] Compiling iOverlay XSegment.swift
[61/74] Compiling iOverlay CrossSolver.swift
[62/74] Compiling iOverlay Fragment.swift
[63/74] Compiling iOverlay ScanFillTree.swift
[64/74] Compiling iOverlay Segment+Fill.swift
[65/74] Compiling iOverlay IdPoint.swift
[66/74] Compiling iOverlay Int.swift
[67/74] Compiling iOverlay LineMark.swift
[68/74] Compiling iOverlay SegmentTree.swift
[69/74] Compiling iOverlay SpaceLayout.swift
[70/74] Compiling iOverlay SplitSolver+List.swift
[71/74] Compiling iOverlay SplitSolver+Tree.swift
[72/74] Compiling iOverlay SplitSolver.swift
[73/74] Compiling iOverlay OverlayGraph+ExtractVector.swift
[74/74] Compiling iOverlay VectorEdge.swift
[75/91] Compiling iTriangle CGTriangulation.swift
[76/91] Compiling iTriangle Shape+Triangulate.swift
/Users/admin/builder/spi-builder-workspace/Sources/iTriangle/Delaunay/Delaunay.swift:15:5: 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 {
[77/92] Compiling iTriangle Triangulation.swift
[78/92] Compiling iTriangle Shape+Delaunay.swift
[79/92] Compiling iTriangle Int.swift
[80/92] Compiling iTriangle Shape+nLayout.swift
/Users/admin/builder/spi-builder-workspace/Sources/iTriangle/Monotone/Shape+nLayout.swift:23:16: warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'MSpecialNode' may have shared mutable state; this is an error in the Swift 6 language mode
18 |
19 | @usableFromInline
20 | struct MSpecialNode {
| `- note: consider making struct 'MSpecialNode' conform to the 'Sendable' protocol
21 |
22 | @usableFromInline
23 | static let empty = MSpecialNode(index: .empty, type: .start, sort: .zero)
| |- warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'MSpecialNode' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'empty' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
24 |
25 | @usableFromInline
/Users/admin/builder/spi-builder-workspace/Sources/iTriangle/Monotone/MNavNode.swift:14:16: warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'MNavNode' may have shared mutable state; this is an error in the Swift 6 language mode
9 |
10 | @usableFromInline
11 | struct MNavNode {
| `- note: consider making struct 'MNavNode' conform to the 'Sendable' protocol
12 |
13 | @usableFromInline
14 | static let empty = MNavNode(next: .empty, index: .empty, prev: .empty, vert: .empty)
| |- warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'MNavNode' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'empty' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
15 |
16 | @usableFromInline
[81/92] Compiling iTriangle CGShape+Triangulate.swift
/Users/admin/builder/spi-builder-workspace/Sources/iTriangle/Monotone/Shape+nLayout.swift:23:16: warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'MSpecialNode' may have shared mutable state; this is an error in the Swift 6 language mode
18 |
19 | @usableFromInline
20 | struct MSpecialNode {
| `- note: consider making struct 'MSpecialNode' conform to the 'Sendable' protocol
21 |
22 | @usableFromInline
23 | static let empty = MSpecialNode(index: .empty, type: .start, sort: .zero)
| |- warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'MSpecialNode' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'empty' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
24 |
25 | @usableFromInline
/Users/admin/builder/spi-builder-workspace/Sources/iTriangle/Monotone/MNavNode.swift:14:16: warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'MNavNode' may have shared mutable state; this is an error in the Swift 6 language mode
9 |
10 | @usableFromInline
11 | struct MNavNode {
| `- note: consider making struct 'MNavNode' conform to the 'Sendable' protocol
12 |
13 | @usableFromInline
14 | static let empty = MNavNode(next: .empty, index: .empty, prev: .empty, vert: .empty)
| |- warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'MNavNode' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'empty' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
15 |
16 | @usableFromInline
[82/92] Compiling iTriangle Delaunay.swift
/Users/admin/builder/spi-builder-workspace/Sources/iTriangle/Delaunay/Delaunay.swift:15:5: 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 {
[83/92] Compiling iTriangle IndexBuffer.swift
/Users/admin/builder/spi-builder-workspace/Sources/iTriangle/Delaunay/Delaunay.swift:15:5: 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 DVertex.swift
/Users/admin/builder/spi-builder-workspace/Sources/iTriangle/Delaunay/DVertex.swift:25:23: warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'DVertex' may have shared mutable state; this is an error in the Swift 6 language mode
21 | }
22 |
23 | public struct DVertex {
| `- note: consider making struct 'DVertex' conform to the 'Sendable' protocol
24 |
25 | public static let empty = DVertex(index: .empty, point: .zero, type: .origin)
| |- warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'DVertex' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'empty' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
26 |
27 | public let index: Int
[85/92] Compiling iTriangle Delaunay+Convex.swift
/Users/admin/builder/spi-builder-workspace/Sources/iTriangle/Delaunay/DVertex.swift:25:23: warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'DVertex' may have shared mutable state; this is an error in the Swift 6 language mode
21 | }
22 |
23 | public struct DVertex {
| `- note: consider making struct 'DVertex' conform to the 'Sendable' protocol
24 |
25 | public static let empty = DVertex(index: .empty, point: .zero, type: .origin)
| |- warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'DVertex' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'empty' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
26 |
27 | public let index: Int
[86/92] Compiling iTriangle MSliceBuffer.swift
/Users/admin/builder/spi-builder-workspace/Sources/iTriangle/Monotone/Shape+mLayout.swift:18:16: warning: static property 'fail' is not concurrency-safe because non-'Sendable' type 'MLayout' may have shared mutable state; this is an error in the Swift 6 language mode
15 | }
16 |
17 | struct MLayout {
| `- note: consider making struct 'MLayout' conform to the 'Sendable' protocol
18 | static let fail = MLayout(startList: [], navNodes: [], sliceList: [], status: .fail)
| |- warning: static property 'fail' is not concurrency-safe because non-'Sendable' type 'MLayout' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'fail' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
19 | static let empty = MLayout(startList: [], navNodes: [], sliceList: [], status: .empty)
20 |
/Users/admin/builder/spi-builder-workspace/Sources/iTriangle/Monotone/Shape+mLayout.swift:19:16: warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'MLayout' may have shared mutable state; this is an error in the Swift 6 language mode
15 | }
16 |
17 | struct MLayout {
| `- note: consider making struct 'MLayout' conform to the 'Sendable' protocol
18 | static let fail = MLayout(startList: [], navNodes: [], sliceList: [], status: .fail)
19 | static let empty = MLayout(startList: [], navNodes: [], sliceList: [], status: .empty)
| |- warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'MLayout' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'empty' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
20 |
21 | let startList: [Int]
[87/92] Compiling iTriangle Shape+mLayout.swift
/Users/admin/builder/spi-builder-workspace/Sources/iTriangle/Monotone/Shape+mLayout.swift:18:16: warning: static property 'fail' is not concurrency-safe because non-'Sendable' type 'MLayout' may have shared mutable state; this is an error in the Swift 6 language mode
15 | }
16 |
17 | struct MLayout {
| `- note: consider making struct 'MLayout' conform to the 'Sendable' protocol
18 | static let fail = MLayout(startList: [], navNodes: [], sliceList: [], status: .fail)
| |- warning: static property 'fail' is not concurrency-safe because non-'Sendable' type 'MLayout' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'fail' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
19 | static let empty = MLayout(startList: [], navNodes: [], sliceList: [], status: .empty)
20 |
/Users/admin/builder/spi-builder-workspace/Sources/iTriangle/Monotone/Shape+mLayout.swift:19:16: warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'MLayout' may have shared mutable state; this is an error in the Swift 6 language mode
15 | }
16 |
17 | struct MLayout {
| `- note: consider making struct 'MLayout' conform to the 'Sendable' protocol
18 | static let fail = MLayout(startList: [], navNodes: [], sliceList: [], status: .fail)
19 | static let empty = MLayout(startList: [], navNodes: [], sliceList: [], status: .empty)
| |- warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'MLayout' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'empty' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
20 |
21 | let startList: [Int]
[88/92] Compiling iTriangle MNavNode.swift
/Users/admin/builder/spi-builder-workspace/Sources/iTriangle/Monotone/MNavNode.swift:14:16: warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'MNavNode' may have shared mutable state; this is an error in the Swift 6 language mode
9 |
10 | @usableFromInline
11 | struct MNavNode {
| `- note: consider making struct 'MNavNode' conform to the 'Sendable' protocol
12 |
13 | @usableFromInline
14 | static let empty = MNavNode(next: .empty, index: .empty, prev: .empty, vert: .empty)
| |- warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'MNavNode' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'empty' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
15 |
16 | @usableFromInline
/Users/admin/builder/spi-builder-workspace/Sources/iTriangle/Delaunay/DVertex.swift:25:23: warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'DVertex' may have shared mutable state; this is an error in the Swift 6 language mode
21 | }
22 |
23 | public struct DVertex {
| `- note: consider making struct 'DVertex' conform to the 'Sendable' protocol
24 |
25 | public static let empty = DVertex(index: .empty, point: .zero, type: .origin)
| |- warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'DVertex' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'empty' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
26 |
27 | public let index: Int
[89/92] Compiling iTriangle MPoly.swift
/Users/admin/builder/spi-builder-workspace/Sources/iTriangle/Monotone/MNavNode.swift:14:16: warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'MNavNode' may have shared mutable state; this is an error in the Swift 6 language mode
9 |
10 | @usableFromInline
11 | struct MNavNode {
| `- note: consider making struct 'MNavNode' conform to the 'Sendable' protocol
12 |
13 | @usableFromInline
14 | static let empty = MNavNode(next: .empty, index: .empty, prev: .empty, vert: .empty)
| |- warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'MNavNode' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'empty' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
15 |
16 | @usableFromInline
/Users/admin/builder/spi-builder-workspace/Sources/iTriangle/Delaunay/DVertex.swift:25:23: warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'DVertex' may have shared mutable state; this is an error in the Swift 6 language mode
21 | }
22 |
23 | public struct DVertex {
| `- note: consider making struct 'DVertex' conform to the 'Sendable' protocol
24 |
25 | public static let empty = DVertex(index: .empty, point: .zero, type: .origin)
| |- warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'DVertex' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'empty' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
26 |
27 | public let index: Int
[90/92] Emitting module iTriangle
/Users/admin/builder/spi-builder-workspace/Sources/iTriangle/Delaunay/DVertex.swift:25:23: warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'DVertex' may have shared mutable state; this is an error in the Swift 6 language mode
21 | }
22 |
23 | public struct DVertex {
| `- note: consider making struct 'DVertex' conform to the 'Sendable' protocol
24 |
25 | public static let empty = DVertex(index: .empty, point: .zero, type: .origin)
| |- warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'DVertex' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'empty' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
26 |
27 | public let index: Int
/Users/admin/builder/spi-builder-workspace/Sources/iTriangle/Delaunay/Delaunay.swift:15:5: 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 {
/Users/admin/builder/spi-builder-workspace/Sources/iTriangle/Monotone/MNavNode.swift:14:16: warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'MNavNode' may have shared mutable state; this is an error in the Swift 6 language mode
9 |
10 | @usableFromInline
11 | struct MNavNode {
| `- note: consider making struct 'MNavNode' conform to the 'Sendable' protocol
12 |
13 | @usableFromInline
14 | static let empty = MNavNode(next: .empty, index: .empty, prev: .empty, vert: .empty)
| |- warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'MNavNode' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'empty' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
15 |
16 | @usableFromInline
/Users/admin/builder/spi-builder-workspace/Sources/iTriangle/Monotone/Shape+mLayout.swift:18:16: warning: static property 'fail' is not concurrency-safe because non-'Sendable' type 'MLayout' may have shared mutable state; this is an error in the Swift 6 language mode
15 | }
16 |
17 | struct MLayout {
| `- note: consider making struct 'MLayout' conform to the 'Sendable' protocol
18 | static let fail = MLayout(startList: [], navNodes: [], sliceList: [], status: .fail)
| |- warning: static property 'fail' is not concurrency-safe because non-'Sendable' type 'MLayout' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'fail' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
19 | static let empty = MLayout(startList: [], navNodes: [], sliceList: [], status: .empty)
20 |
/Users/admin/builder/spi-builder-workspace/Sources/iTriangle/Monotone/Shape+mLayout.swift:19:16: warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'MLayout' may have shared mutable state; this is an error in the Swift 6 language mode
15 | }
16 |
17 | struct MLayout {
| `- note: consider making struct 'MLayout' conform to the 'Sendable' protocol
18 | static let fail = MLayout(startList: [], navNodes: [], sliceList: [], status: .fail)
19 | static let empty = MLayout(startList: [], navNodes: [], sliceList: [], status: .empty)
| |- warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'MLayout' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'empty' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
20 |
21 | let startList: [Int]
/Users/admin/builder/spi-builder-workspace/Sources/iTriangle/Monotone/Shape+nLayout.swift:23:16: warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'MSpecialNode' may have shared mutable state; this is an error in the Swift 6 language mode
18 |
19 | @usableFromInline
20 | struct MSpecialNode {
| `- note: consider making struct 'MSpecialNode' conform to the 'Sendable' protocol
21 |
22 | @usableFromInline
23 | static let empty = MSpecialNode(index: .empty, type: .start, sort: .zero)
| |- warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'MSpecialNode' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'empty' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
24 |
25 | @usableFromInline
[91/92] Compiling iTriangle Array3d.swift
/Users/admin/builder/spi-builder-workspace/Sources/iTriangle/Delaunay/DVertex.swift:25:23: warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'DVertex' may have shared mutable state; this is an error in the Swift 6 language mode
21 | }
22 |
23 | public struct DVertex {
| `- note: consider making struct 'DVertex' conform to the 'Sendable' protocol
24 |
25 | public static let empty = DVertex(index: .empty, point: .zero, type: .origin)
| |- warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'DVertex' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'empty' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
26 |
27 | public let index: Int
[92/92] Compiling iTriangle DTriangle.swift
/Users/admin/builder/spi-builder-workspace/Sources/iTriangle/Delaunay/DVertex.swift:25:23: warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'DVertex' may have shared mutable state; this is an error in the Swift 6 language mode
21 | }
22 |
23 | public struct DVertex {
| `- note: consider making struct 'DVertex' conform to the 'Sendable' protocol
24 |
25 | public static let empty = DVertex(index: .empty, point: .zero, type: .origin)
| |- warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'DVertex' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'empty' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
26 |
27 | public let index: Int
Build complete! (13.86s)
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.