Build Information
Successful build of GeoProjector, reference main (21187a), with Swift 6.1 for macOS (SPM) on 25 Sep 2026 06:24:02 UTC.
Swift 6 data race errors: 6
Build Command
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCapturesBuild Log
========================================
RunAll
========================================
Builder version: 5.1.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/maparoni/GeoProjector.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/maparoni/GeoProjector
* branch main -> FETCH_HEAD
* [new branch] main -> origin/main
HEAD is now at 21187a5 Build CGPaths during parallel projection, not on every draw call (#43)
Cloned https://github.com/maparoni/GeoProjector.git
Revision (git rev-parse @):
21187a58fa199daad99845e4df7c302b75523ae9
SUCCESS checkout https://github.com/maparoni/GeoProjector.git at main
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.1
Building package at path: $PWD
https://github.com/maparoni/GeoProjector.git
https://github.com/maparoni/GeoProjector.git
{
"dependencies" : [
{
"identity" : "geojsonkit",
"requirement" : {
"range" : [
{
"lower_bound" : "0.5.0",
"upper_bound" : "1.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/maparoni/geojsonkit.git"
},
{
"identity" : "geojsonkit-turf",
"requirement" : {
"range" : [
{
"lower_bound" : "0.1.0",
"upper_bound" : "1.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/maparoni/geojsonkit-turf"
},
{
"identity" : "swift-algorithms",
"requirement" : {
"range" : [
{
"lower_bound" : "1.0.0",
"upper_bound" : "2.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/apple/swift-algorithms.git"
}
],
"manifest_display_name" : "GeoProjector",
"name" : "GeoProjector",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "macos",
"version" : "12.0"
},
{
"name" : "ios",
"version" : "15.0"
},
{
"name" : "watchos",
"version" : "8.0"
},
{
"name" : "tvos",
"version" : "15.0"
},
{
"name" : "xros",
"version" : "1.0"
}
],
"products" : [
{
"name" : "GeoProjector",
"targets" : [
"GeoProjector"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "GeoProjectorDanseiji",
"targets" : [
"GeoProjectorDanseiji"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "GeoDrawer",
"targets" : [
"GeoDrawer"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "GeoProjectorTests",
"module_type" : "SwiftTarget",
"name" : "GeoProjectorTests",
"path" : "Tests/GeoProjectorTests",
"sources" : [
"InverseTests.swift",
"MapBoundsTests.swift",
"NaturalEarthTests.swift",
"ProjectionTests.swift",
"TranslationTests.swift"
],
"target_dependencies" : [
"GeoProjector"
],
"type" : "test"
},
{
"c99name" : "GeoProjectorDanseijiTests",
"module_type" : "SwiftTarget",
"name" : "GeoProjectorDanseijiTests",
"path" : "Tests/GeoProjectorDanseijiTests",
"sources" : [
"DanseijiTests.swift"
],
"target_dependencies" : [
"GeoProjectorDanseiji"
],
"type" : "test"
},
{
"c99name" : "GeoProjectorDanseiji",
"module_type" : "SwiftTarget",
"name" : "GeoProjectorDanseiji",
"path" : "Sources/GeoProjectorDanseiji",
"product_dependencies" : [
"GeoJSONKit"
],
"product_memberships" : [
"GeoProjectorDanseiji"
],
"resources" : [
{
"path" : "/Users/admin/builder/spi-builder-workspace/Sources/GeoProjectorDanseiji/Resources/LICENSE-Danseiji.txt",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Sources/GeoProjectorDanseiji/Resources/danseijiI.csv",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Sources/GeoProjectorDanseiji/Resources/danseijiII.csv",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Sources/GeoProjectorDanseiji/Resources/danseijiIII.csv",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Sources/GeoProjectorDanseiji/Resources/danseijiIV.csv",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Sources/GeoProjectorDanseiji/Resources/danseijiV.csv",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Sources/GeoProjectorDanseiji/Resources/danseijiVI.csv",
"rule" : {
"process" : {
}
}
}
],
"sources" : [
"DanseijiCore.swift",
"DanseijiData.swift",
"DanseijiVariant.swift",
"Projections+Danseiji.swift"
],
"target_dependencies" : [
"GeoProjector"
],
"type" : "library"
},
{
"c99name" : "GeoProjector",
"module_type" : "SwiftTarget",
"name" : "GeoProjector",
"path" : "Sources/GeoProjector",
"product_dependencies" : [
"GeoJSONKit",
"GeoJSONKitTurf"
],
"product_memberships" : [
"GeoProjector",
"GeoProjectorDanseiji",
"GeoDrawer"
],
"sources" : [
"Interpolator.swift",
"MapBounds+Contains.swift",
"Projection.swift",
"ProjectionMode.swift",
"Projections+Azimuthal.swift",
"Projections+Cylindrical.swift",
"Projections+Orthographic.swift",
"Projections+Pseudocylindrical.swift",
"Projections.swift",
"Structs.swift"
],
"type" : "library"
},
{
"c99name" : "GeoDrawerTests",
"module_type" : "SwiftTarget",
"name" : "GeoDrawerTests",
"path" : "Tests/GeoDrawerTests",
"sources" : [
"BaseMapTests.swift",
"BoundarySplitTests.swift",
"GeoDrawerSVGTests.swift",
"GeoDrawerSVGZoomTests.swift",
"GraticuleCoverageTests.swift",
"RenderSamples.swift",
"TilePrefetchCoverageTests.swift",
"TileSourceTests.swift"
],
"target_dependencies" : [
"GeoDrawer",
"GeoProjector",
"GeoProjectorDanseiji"
],
"type" : "test"
},
{
"c99name" : "GeoDrawer",
"module_type" : "SwiftTarget",
"name" : "GeoDrawer",
"path" : "Sources/GeoDrawer",
"product_dependencies" : [
"Algorithms"
],
"product_memberships" : [
"GeoDrawer"
],
"sources" : [
"BaseMap.swift",
"GeoDrawer+BoundarySplit.swift",
"GeoDrawer+SVG.swift",
"GeoDrawer+TilePrefetch.swift",
"GeoDrawer.swift",
"GeoJSON+Continents.swift",
"Sampling.swift",
"TileCache.swift",
"TileSource.swift",
"TileSources/StaticTileSource.swift",
"TileSources/URLTemplateTileSource.swift",
"TiledBaseMap.swift",
"apple/BaseMap+CoreGraphics.swift",
"apple/GeoDrawer+CGProjected.swift",
"apple/GeoDrawer+CoreGraphics.swift",
"apple/GeoDrawer+Image.swift",
"apple/GeoDrawer+RasterBaseMap.swift",
"apple/GeoDrawer+TiledBaseMap.swift",
"apple/GeoMap+AppKit.swift",
"apple/GeoMap+UIKit.swift",
"apple/TileImage+CoreGraphics.swift",
"styling/GeoDrawerContent+Style.swift"
],
"target_dependencies" : [
"GeoProjector"
],
"type" : "library"
}
],
"tools_version" : "5.7"
}
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures
[1/1] Compiling plugin GenerateManual
[2/2] Compiling plugin GenerateDoccReference
Building for debugging...
[2/18] Write sources
[4/18] Copying danseijiII.csv
[5/18] Copying danseijiV.csv
[6/18] Copying danseijiVI.csv
[7/18] Copying danseijiIII.csv
[8/18] Copying danseijiIV.csv
[10/18] Write sources
[12/18] Copying LICENSE-Danseiji.txt
[14/18] Copying danseijiI.csv
[14/18] Write sources
[16/18] Compiling _NumericsShims _NumericsShims.c
[17/18] Write swift-version-2F0A5646E1D333AE.txt
[19/32] Compiling RealModule RealFunctions.swift
[20/33] Compiling RealModule Float80+Real.swift
[21/33] Compiling RealModule Real.swift
[22/33] Compiling RealModule Double+Real.swift
[23/33] Emitting module RealModule
[24/33] Compiling RealModule AlgebraicField.swift
[25/33] Compiling RealModule ApproximateEquality.swift
[26/33] Compiling RealModule Float+Real.swift
[27/33] Compiling RealModule ElementaryFunctions.swift
[28/33] Compiling RealModule AugmentedArithmetic.swift
[29/33] Compiling RealModule Float16+Real.swift
[30/33] Compiling RealModule RelaxedArithmetic.swift
[31/59] Compiling Algorithms Combinations.swift
[32/59] Compiling Algorithms Compacted.swift
[33/59] Compiling Algorithms Cycle.swift
[34/59] Compiling Algorithms Suffix.swift
[35/59] Compiling Algorithms Trim.swift
[36/61] Compiling Algorithms Split.swift
[37/61] Compiling Algorithms Stride.swift
[38/61] Compiling Algorithms EitherSequence.swift
[39/61] Compiling Algorithms FirstNonNil.swift
[40/61] Compiling Algorithms FlattenCollection.swift
[41/61] Compiling Algorithms RandomSample.swift
[42/61] Compiling Algorithms Reductions.swift
[43/61] Compiling Algorithms Rotate.swift
[44/61] Compiling Algorithms Joined.swift
[45/61] Compiling Algorithms Keyed.swift
[46/61] Compiling Algorithms MinMax.swift
[47/61] Compiling Algorithms Grouped.swift
[48/61] Compiling Algorithms Indexed.swift
[49/61] Compiling Algorithms Intersperse.swift
[50/61] Compiling Algorithms Partition.swift
[51/61] Compiling Algorithms Permutations.swift
[52/61] Compiling Algorithms Product.swift
[53/61] Compiling Algorithms Unique.swift
[54/61] Compiling Algorithms Windows.swift
[55/61] Compiling Algorithms AdjacentPairs.swift
[56/61] Compiling Algorithms Chain.swift
[57/61] Compiling Algorithms Chunked.swift
[58/61] Emitting module Algorithms
[59/61] Compiling GeoJSONKit GeoJSON.swift
[60/61] Compiling GeoJSONKit GeoJSON+Codable.swift
[61/61] Emitting module GeoJSONKit
[62/79] Compiling GeoJSONKitTurf Turf+Polygon.swift
[63/79] Compiling GeoJSONKitTurf Turf.swift
[64/79] Compiling GeoJSONKitTurf DouglasPeucker.swift
[65/79] Compiling GeoJSONKitTurf MonotoneChain.swift
[66/80] Compiling GeoJSONKitTurf Spline.swift
[67/80] Compiling GeoJSONKitTurf SutherlandHodgeman.swift
[68/80] Compiling GeoJSONKitTurf GeoJSON+LineString+EncodedPolyline.swift
[69/80] Compiling GeoJSONKitTurf Position+Helpers.swift
[70/80] Compiling GeoJSONKitTurf RadianCoordinate2D.swift
[71/80] Compiling GeoJSONKitTurf Simplify.swift
[72/80] Compiling GeoJSONKitTurf Turf+BoundingBox.swift
[73/80] Compiling GeoJSONKitTurf Turf+GeometryObject.swift
[74/80] Compiling GeoJSONKitTurf Turf+LineString.swift
[75/80] Compiling GeoJSONKitTurf Turf+LinearRing.swift
[76/80] Compiling GeoJSONKitTurf ClosestCoordinate.swift
[77/80] Compiling GeoJSONKitTurf ConvexHull.swift
[78/80] Compiling GeoJSONKitTurf CoreLocation.swift
[79/80] Compiling GeoJSONKitTurf GeoJSON+Helpers.swift
[80/80] Emitting module GeoJSONKitTurf
[81/90] Compiling GeoProjector ProjectionMode.swift
[82/90] Compiling GeoProjector Projections+Cylindrical.swift
[83/91] Compiling GeoProjector Projections+Orthographic.swift
[84/91] Compiling GeoProjector Projections.swift
[85/91] Compiling GeoProjector Projection.swift
[86/91] Compiling GeoProjector Projections+Pseudocylindrical.swift
[87/91] Compiling GeoProjector Projections+Azimuthal.swift
[88/91] Compiling GeoProjector Interpolator.swift
[89/91] Emitting module GeoProjector
/Users/admin/builder/spi-builder-workspace/Sources/GeoProjector/Structs.swift:13:21: warning: static property 'zero' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
11 |
12 | public struct Point: Hashable {
13 | public static var zero = Point(x: 0, y: 0)
| |- warning: static property 'zero' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'zero' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'zero' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
14 |
15 | public init(x: Double, y: Double) {
/Users/admin/builder/spi-builder-workspace/Sources/GeoProjector/Structs.swift:30:21: warning: static property 'zero' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
28 |
29 | public struct Size: Hashable {
30 | public static var zero = Size(width: 0, height: 0)
| |- warning: static property 'zero' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'zero' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'zero' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
31 |
32 | public init(width: Double, height: Double) {
/Users/admin/builder/spi-builder-workspace/Sources/GeoProjector/Structs.swift:85:21: warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'EdgeInsets' may have shared mutable state; this is an error in the Swift 6 language mode
82 | }
83 |
84 | public struct EdgeInsets: Hashable {
| `- note: consider making struct 'EdgeInsets' conform to the 'Sendable' protocol
85 | public static let zero = EdgeInsets()
| |- warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'EdgeInsets' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'zero' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
86 |
87 | public init(top: Double = 0, left: Double = 0, bottom: Double = 0, right: Double = 0) {
[90/91] Compiling GeoProjector MapBounds+Contains.swift
[91/91] Compiling GeoProjector Structs.swift
/Users/admin/builder/spi-builder-workspace/Sources/GeoProjector/Structs.swift:13:21: warning: static property 'zero' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
11 |
12 | public struct Point: Hashable {
13 | public static var zero = Point(x: 0, y: 0)
| |- warning: static property 'zero' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'zero' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'zero' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
14 |
15 | public init(x: Double, y: Double) {
/Users/admin/builder/spi-builder-workspace/Sources/GeoProjector/Structs.swift:30:21: warning: static property 'zero' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
28 |
29 | public struct Size: Hashable {
30 | public static var zero = Size(width: 0, height: 0)
| |- warning: static property 'zero' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'zero' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'zero' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
31 |
32 | public init(width: Double, height: Double) {
/Users/admin/builder/spi-builder-workspace/Sources/GeoProjector/Structs.swift:85:21: warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'EdgeInsets' may have shared mutable state; this is an error in the Swift 6 language mode
82 | }
83 |
84 | public struct EdgeInsets: Hashable {
| `- note: consider making struct 'EdgeInsets' conform to the 'Sendable' protocol
85 | public static let zero = EdgeInsets()
| |- warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'EdgeInsets' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'zero' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
86 |
87 | public init(top: Double = 0, left: Double = 0, bottom: Double = 0, right: Double = 0) {
[92/118] Compiling GeoProjectorDanseiji resource_bundle_accessor.swift
[93/118] Compiling GeoProjectorDanseiji Projections+Danseiji.swift
[94/118] Compiling GeoProjectorDanseiji DanseijiData.swift
/Users/admin/builder/spi-builder-workspace/Sources/GeoProjectorDanseiji/DanseijiData.swift:50:22: warning: static property 'cache' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
48 | enum DanseijiLoader {
49 | private static let lock = NSLock()
50 | private static var cache: [DanseijiVariant: DanseijiData] = [:]
| |- warning: static property 'cache' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'cache' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'cache' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
51 |
52 | static func data(for variant: DanseijiVariant) -> DanseijiData {
/Users/admin/builder/spi-builder-workspace/Sources/GeoProjectorDanseiji/DanseijiData.swift:183:33: warning: reference to static property 'zero' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
181 | edge: edge,
182 | pixels: pixels,
183 | edgeBounds: Rect(origin: .zero, size: .zero),
| `- warning: reference to static property 'zero' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
184 | projectionSize: .zero
185 | )
/Users/admin/builder/spi-builder-workspace/Sources/GeoProjector/Structs.swift:13:21: note: static property declared here
11 |
12 | public struct Point: Hashable {
13 | public static var zero = Point(x: 0, y: 0)
| `- note: static property declared here
14 |
15 | public init(x: Double, y: Double) {
/Users/admin/builder/spi-builder-workspace/Sources/GeoProjectorDanseiji/DanseijiData.swift:183:46: warning: reference to static property 'zero' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
181 | edge: edge,
182 | pixels: pixels,
183 | edgeBounds: Rect(origin: .zero, size: .zero),
| `- warning: reference to static property 'zero' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
184 | projectionSize: .zero
185 | )
/Users/admin/builder/spi-builder-workspace/Sources/GeoProjector/Structs.swift:30:21: note: static property declared here
28 |
29 | public struct Size: Hashable {
30 | public static var zero = Size(width: 0, height: 0)
| `- note: static property declared here
31 |
32 | public init(width: Double, height: Double) {
/Users/admin/builder/spi-builder-workspace/Sources/GeoProjectorDanseiji/DanseijiData.swift:184:24: warning: reference to static property 'zero' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
182 | pixels: pixels,
183 | edgeBounds: Rect(origin: .zero, size: .zero),
184 | projectionSize: .zero
| `- warning: reference to static property 'zero' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
185 | )
186 | let offset = DanseijiCore.project(.init(x: 0, y: 0), data: probe) ?? .zero
/Users/admin/builder/spi-builder-workspace/Sources/GeoProjector/Structs.swift:30:21: note: static property declared here
28 |
29 | public struct Size: Hashable {
30 | public static var zero = Size(width: 0, height: 0)
| `- note: static property declared here
31 |
32 | public init(width: Double, height: Double) {
/Users/admin/builder/spi-builder-workspace/Sources/GeoProjectorDanseiji/DanseijiData.swift:186:75: warning: reference to static property 'zero' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
184 | projectionSize: .zero
185 | )
186 | let offset = DanseijiCore.project(.init(x: 0, y: 0), data: probe) ?? .zero
| `- warning: reference to static property 'zero' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
187 |
188 | let shiftedCells: [[DanseijiData.Cell]] = cells.map { row in
/Users/admin/builder/spi-builder-workspace/Sources/GeoProjector/Structs.swift:13:21: note: static property declared here
11 |
12 | public struct Point: Hashable {
13 | public static var zero = Point(x: 0, y: 0)
| `- note: static property declared here
14 |
15 | public init(x: Double, y: Double) {
[95/118] Compiling GeoProjectorDanseiji DanseijiVariant.swift
[96/118] Emitting module GeoProjectorDanseiji
/Users/admin/builder/spi-builder-workspace/Sources/GeoProjectorDanseiji/DanseijiData.swift:50:22: warning: static property 'cache' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
48 | enum DanseijiLoader {
49 | private static let lock = NSLock()
50 | private static var cache: [DanseijiVariant: DanseijiData] = [:]
| |- warning: static property 'cache' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'cache' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'cache' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
51 |
52 | static func data(for variant: DanseijiVariant) -> DanseijiData {
[97/118] Compiling GeoProjectorDanseiji DanseijiCore.swift
[98/118] Compiling GeoDrawer BaseMap+CoreGraphics.swift
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/apple/GeoDrawer+CGProjected.swift:130:15: warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.CGProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
128 | /// datasets.
129 | func projectInParallelCG(_ contents: [Content], coordinateSystem: CoordinateSystem) async throws -> [CGProjectedContent] {
130 | try await withThrowingTaskGroup(of: [OffsettedElement<CGProjectedContent>].self) { group in
| `- warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.CGProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
131 | let chunks = Array(contents.enumerated()).chunks(ofCount: 5)
132 | for chunk in chunks {
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:288:10: note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
286 | }
287 |
288 | struct OffsettedElement<Element: Equatable>: Comparable, Equatable {
| `- note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
289 | let offset: Int
290 | let element: Element
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/apple/GeoDrawer+CGProjected.swift:130:86: warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.CGProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
128 | /// datasets.
129 | func projectInParallelCG(_ contents: [Content], coordinateSystem: CoordinateSystem) async throws -> [CGProjectedContent] {
130 | try await withThrowingTaskGroup(of: [OffsettedElement<CGProjectedContent>].self) { group in
| `- warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.CGProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
131 | let chunks = Array(contents.enumerated()).chunks(ofCount: 5)
132 | for chunk in chunks {
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:288:10: note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
286 | }
287 |
288 | struct OffsettedElement<Element: Equatable>: Comparable, Equatable {
| `- note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
289 | let offset: Int
290 | let element: Element
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/apple/GeoDrawer+CGProjected.swift:133:27: warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.CGProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
131 | let chunks = Array(contents.enumerated()).chunks(ofCount: 5)
132 | for chunk in chunks {
133 | let added = group.addTaskUnlessCancelled {
| `- warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.CGProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
134 | await Task {
135 | chunk.compactMap { input in
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:288:10: note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
286 | }
287 |
288 | struct OffsettedElement<Element: Equatable>: Comparable, Equatable {
| `- note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
289 | let offset: Int
290 | let element: Element
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/apple/GeoDrawer+CGProjected.swift:134:17: warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.CGProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
132 | for chunk in chunks {
133 | let added = group.addTaskUnlessCancelled {
134 | await Task {
| `- warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.CGProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
135 | chunk.compactMap { input in
136 | guard !Task.isCancelled,
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:288:10: note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
286 | }
287 |
288 | struct OffsettedElement<Element: Equatable>: Comparable, Equatable {
| `- note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
289 | let offset: Int
290 | let element: Element
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/apple/GeoDrawer+CGProjected.swift:134:17: warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.CGProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
132 | for chunk in chunks {
133 | let added = group.addTaskUnlessCancelled {
134 | await Task {
| `- warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.CGProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
135 | chunk.compactMap { input in
136 | guard !Task.isCancelled,
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:288:10: note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
286 | }
287 |
288 | struct OffsettedElement<Element: Equatable>: Comparable, Equatable {
| `- note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
289 | let offset: Int
290 | let element: Element
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/apple/GeoDrawer+CGProjected.swift:141:13: warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.CGProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
139 | return OffsettedElement(offset: input.offset, element: projected)
140 | }
141 | }.value
| `- warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.CGProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
142 | }
143 | if !added { throw CancellationError() }
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:288:10: note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
286 | }
287 |
288 | struct OffsettedElement<Element: Equatable>: Comparable, Equatable {
| `- note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
289 | let offset: Int
290 | let element: Element
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/apple/GeoDrawer+CGProjected.swift:145:38: warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.CGProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
143 | if !added { throw CancellationError() }
144 | }
145 | let unsorted = try await group.reduce(into: [OffsettedElement<CGProjectedContent>]()) { $0.append(contentsOf: $1) }
| `- warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.CGProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
146 | return unsorted.sorted(by: <).map(\.element)
147 | }
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:288:10: note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
286 | }
287 |
288 | struct OffsettedElement<Element: Equatable>: Comparable, Equatable {
| `- note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
289 | let offset: Int
290 | let element: Element
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/apple/GeoDrawer+CGProjected.swift:145:93: warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.CGProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
143 | if !added { throw CancellationError() }
144 | }
145 | let unsorted = try await group.reduce(into: [OffsettedElement<CGProjectedContent>]()) { $0.append(contentsOf: $1) }
| `- warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.CGProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
146 | return unsorted.sorted(by: <).map(\.element)
147 | }
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:288:10: note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
286 | }
287 |
288 | struct OffsettedElement<Element: Equatable>: Comparable, Equatable {
| `- note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
289 | let offset: Int
290 | let element: Element
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/apple/GeoDrawer+CGProjected.swift:145:93: warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.CGProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
143 | if !added { throw CancellationError() }
144 | }
145 | let unsorted = try await group.reduce(into: [OffsettedElement<CGProjectedContent>]()) { $0.append(contentsOf: $1) }
| `- warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.CGProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
146 | return unsorted.sorted(by: <).map(\.element)
147 | }
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:288:10: note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
286 | }
287 |
288 | struct OffsettedElement<Element: Equatable>: Comparable, Equatable {
| `- note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
289 | let offset: Int
290 | let element: Element
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/apple/GeoDrawer+CGProjected.swift:133:50: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
131 | let chunks = Array(contents.enumerated()).chunks(ofCount: 5)
132 | for chunk in chunks {
133 | let added = group.addTaskUnlessCancelled {
| `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
134 | await Task {
135 | chunk.compactMap { input in
136 | guard !Task.isCancelled,
137 | let projected = projectCG(input.element, coordinateSystem: coordinateSystem)
| `- note: closure captures 'coordinateSystem' which is accessible to code in the current task
138 | else { return nil }
139 | return OffsettedElement(offset: input.offset, element: projected)
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/apple/GeoDrawer+CGProjected.swift:134:22: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
132 | for chunk in chunks {
133 | let added = group.addTaskUnlessCancelled {
134 | await Task {
| `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
135 | chunk.compactMap { input in
136 | guard !Task.isCancelled,
137 | let projected = projectCG(input.element, coordinateSystem: coordinateSystem)
| `- note: closure captures 'coordinateSystem' which is accessible to code in the current task
138 | else { return nil }
139 | return OffsettedElement(offset: input.offset, element: projected)
[99/118] Compiling GeoDrawer GeoDrawer+CGProjected.swift
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/apple/GeoDrawer+CGProjected.swift:130:15: warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.CGProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
128 | /// datasets.
129 | func projectInParallelCG(_ contents: [Content], coordinateSystem: CoordinateSystem) async throws -> [CGProjectedContent] {
130 | try await withThrowingTaskGroup(of: [OffsettedElement<CGProjectedContent>].self) { group in
| `- warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.CGProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
131 | let chunks = Array(contents.enumerated()).chunks(ofCount: 5)
132 | for chunk in chunks {
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:288:10: note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
286 | }
287 |
288 | struct OffsettedElement<Element: Equatable>: Comparable, Equatable {
| `- note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
289 | let offset: Int
290 | let element: Element
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/apple/GeoDrawer+CGProjected.swift:130:86: warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.CGProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
128 | /// datasets.
129 | func projectInParallelCG(_ contents: [Content], coordinateSystem: CoordinateSystem) async throws -> [CGProjectedContent] {
130 | try await withThrowingTaskGroup(of: [OffsettedElement<CGProjectedContent>].self) { group in
| `- warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.CGProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
131 | let chunks = Array(contents.enumerated()).chunks(ofCount: 5)
132 | for chunk in chunks {
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:288:10: note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
286 | }
287 |
288 | struct OffsettedElement<Element: Equatable>: Comparable, Equatable {
| `- note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
289 | let offset: Int
290 | let element: Element
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/apple/GeoDrawer+CGProjected.swift:133:27: warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.CGProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
131 | let chunks = Array(contents.enumerated()).chunks(ofCount: 5)
132 | for chunk in chunks {
133 | let added = group.addTaskUnlessCancelled {
| `- warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.CGProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
134 | await Task {
135 | chunk.compactMap { input in
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:288:10: note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
286 | }
287 |
288 | struct OffsettedElement<Element: Equatable>: Comparable, Equatable {
| `- note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
289 | let offset: Int
290 | let element: Element
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/apple/GeoDrawer+CGProjected.swift:134:17: warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.CGProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
132 | for chunk in chunks {
133 | let added = group.addTaskUnlessCancelled {
134 | await Task {
| `- warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.CGProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
135 | chunk.compactMap { input in
136 | guard !Task.isCancelled,
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:288:10: note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
286 | }
287 |
288 | struct OffsettedElement<Element: Equatable>: Comparable, Equatable {
| `- note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
289 | let offset: Int
290 | let element: Element
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/apple/GeoDrawer+CGProjected.swift:134:17: warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.CGProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
132 | for chunk in chunks {
133 | let added = group.addTaskUnlessCancelled {
134 | await Task {
| `- warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.CGProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
135 | chunk.compactMap { input in
136 | guard !Task.isCancelled,
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:288:10: note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
286 | }
287 |
288 | struct OffsettedElement<Element: Equatable>: Comparable, Equatable {
| `- note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
289 | let offset: Int
290 | let element: Element
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/apple/GeoDrawer+CGProjected.swift:141:13: warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.CGProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
139 | return OffsettedElement(offset: input.offset, element: projected)
140 | }
141 | }.value
| `- warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.CGProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
142 | }
143 | if !added { throw CancellationError() }
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:288:10: note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
286 | }
287 |
288 | struct OffsettedElement<Element: Equatable>: Comparable, Equatable {
| `- note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
289 | let offset: Int
290 | let element: Element
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/apple/GeoDrawer+CGProjected.swift:145:38: warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.CGProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
143 | if !added { throw CancellationError() }
144 | }
145 | let unsorted = try await group.reduce(into: [OffsettedElement<CGProjectedContent>]()) { $0.append(contentsOf: $1) }
| `- warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.CGProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
146 | return unsorted.sorted(by: <).map(\.element)
147 | }
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:288:10: note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
286 | }
287 |
288 | struct OffsettedElement<Element: Equatable>: Comparable, Equatable {
| `- note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
289 | let offset: Int
290 | let element: Element
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/apple/GeoDrawer+CGProjected.swift:145:93: warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.CGProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
143 | if !added { throw CancellationError() }
144 | }
145 | let unsorted = try await group.reduce(into: [OffsettedElement<CGProjectedContent>]()) { $0.append(contentsOf: $1) }
| `- warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.CGProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
146 | return unsorted.sorted(by: <).map(\.element)
147 | }
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:288:10: note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
286 | }
287 |
288 | struct OffsettedElement<Element: Equatable>: Comparable, Equatable {
| `- note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
289 | let offset: Int
290 | let element: Element
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/apple/GeoDrawer+CGProjected.swift:145:93: warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.CGProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
143 | if !added { throw CancellationError() }
144 | }
145 | let unsorted = try await group.reduce(into: [OffsettedElement<CGProjectedContent>]()) { $0.append(contentsOf: $1) }
| `- warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.CGProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
146 | return unsorted.sorted(by: <).map(\.element)
147 | }
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:288:10: note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
286 | }
287 |
288 | struct OffsettedElement<Element: Equatable>: Comparable, Equatable {
| `- note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
289 | let offset: Int
290 | let element: Element
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/apple/GeoDrawer+CGProjected.swift:133:50: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
131 | let chunks = Array(contents.enumerated()).chunks(ofCount: 5)
132 | for chunk in chunks {
133 | let added = group.addTaskUnlessCancelled {
| `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
134 | await Task {
135 | chunk.compactMap { input in
136 | guard !Task.isCancelled,
137 | let projected = projectCG(input.element, coordinateSystem: coordinateSystem)
| `- note: closure captures 'coordinateSystem' which is accessible to code in the current task
138 | else { return nil }
139 | return OffsettedElement(offset: input.offset, element: projected)
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/apple/GeoDrawer+CGProjected.swift:134:22: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
132 | for chunk in chunks {
133 | let added = group.addTaskUnlessCancelled {
134 | await Task {
| `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
135 | chunk.compactMap { input in
136 | guard !Task.isCancelled,
137 | let projected = projectCG(input.element, coordinateSystem: coordinateSystem)
| `- note: closure captures 'coordinateSystem' which is accessible to code in the current task
138 | else { return nil }
139 | return OffsettedElement(offset: input.offset, element: projected)
[100/120] Compiling GeoDrawer TileImage+CoreGraphics.swift
[101/120] Compiling GeoDrawer GeoDrawerContent+Style.swift
[102/120] Compiling GeoDrawer TileSource.swift
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/TileSources/StaticTileSource.swift:27:14: warning: stored property 'tileSourceID' of 'Sendable'-conforming struct 'StaticTileSource' has non-sendable type 'AnyHashable'; this is an error in the Swift 6 language mode
25 | public struct StaticTileSource: TileSource {
26 |
27 | public let tileSourceID: AnyHashable
| `- warning: stored property 'tileSourceID' of 'Sendable'-conforming struct 'StaticTileSource' has non-sendable type 'AnyHashable'; this is an error in the Swift 6 language mode
28 | public let projection: any Projection
29 | public let tileSize: Int
Swift.AnyHashable:1:23: note: struct 'AnyHashable' does not conform to the 'Sendable' protocol
1 | @frozen public struct AnyHashable {
| `- note: struct 'AnyHashable' does not conform to the 'Sendable' protocol
2 | public init<H>(_ base: H) where H : Hashable
3 | public var base: Any { get }
[103/120] Compiling GeoDrawer StaticTileSource.swift
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/TileSources/StaticTileSource.swift:27:14: warning: stored property 'tileSourceID' of 'Sendable'-conforming struct 'StaticTileSource' has non-sendable type 'AnyHashable'; this is an error in the Swift 6 language mode
25 | public struct StaticTileSource: TileSource {
26 |
27 | public let tileSourceID: AnyHashable
| `- warning: stored property 'tileSourceID' of 'Sendable'-conforming struct 'StaticTileSource' has non-sendable type 'AnyHashable'; this is an error in the Swift 6 language mode
28 | public let projection: any Projection
29 | public let tileSize: Int
Swift.AnyHashable:1:23: note: struct 'AnyHashable' does not conform to the 'Sendable' protocol
1 | @frozen public struct AnyHashable {
| `- note: struct 'AnyHashable' does not conform to the 'Sendable' protocol
2 | public init<H>(_ base: H) where H : Hashable
3 | public var base: Any { get }
[104/120] Compiling GeoDrawer GeoDrawer+TilePrefetch.swift
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer+TilePrefetch.swift:117:7: warning: capture of 'rowTiles' with non-sendable type 'UnsafeMutablePointer<Set<TileKey>>' in a '@Sendable' closure
115 | }
116 | }
117 | rowTiles[py] = local
| `- warning: capture of 'rowTiles' with non-sendable type 'UnsafeMutablePointer<Set<TileKey>>' in a '@Sendable' closure
118 | }
119 |
Swift.UnsafeMutablePointer:1:23: note: generic struct 'UnsafeMutablePointer' does not conform to the 'Sendable' protocol
1 | @frozen public struct UnsafeMutablePointer<Pointee> : Copyable where Pointee : ~Copyable {
| `- note: generic struct 'UnsafeMutablePointer' does not conform to the 'Sendable' protocol
2 | public let _rawValue: Builtin.RawPointer
3 | public init(_ _rawValue: Builtin.RawPointer)
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:88:49: warning: reference to static property 'zero' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
86 | return acc
87 | } else if let first = points.first {
88 | var rect = Rect(origin: first, size: .zero)
| `- warning: reference to static property 'zero' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
89 | for point in points.dropFirst() {
90 | rect.absorb(point)
/Users/admin/builder/spi-builder-workspace/Sources/GeoProjector/Structs.swift:30:21: note: static property declared here
28 |
29 | public struct Size: Hashable {
30 | public static var zero = Size(width: 0, height: 0)
| `- note: static property declared here
31 |
32 | public init(width: Double, height: Double) {
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:302:15: warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
286 | }
287 |
288 | struct OffsettedElement<Element: Equatable>: Comparable, Equatable {
| `- note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
289 | let offset: Int
290 | let element: Element
:
300 |
301 | func projectInParallel(_ contents: [Content], coordinateSystem: CoordinateSystem) async throws -> [ProjectedContent] {
302 | try await withThrowingTaskGroup(of: [OffsettedElement<ProjectedContent>].self) { group in
| `- warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
303 | let chunks = Array(contents.enumerated()).chunks(ofCount: 25)
304 | for chunk in chunks {
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:302:84: warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
286 | }
287 |
288 | struct OffsettedElement<Element: Equatable>: Comparable, Equatable {
| `- note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
289 | let offset: Int
290 | let element: Element
:
300 |
301 | func projectInParallel(_ contents: [Content], coordinateSystem: CoordinateSystem) async throws -> [ProjectedContent] {
302 | try await withThrowingTaskGroup(of: [OffsettedElement<ProjectedContent>].self) { group in
| `- warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
303 | let chunks = Array(contents.enumerated()).chunks(ofCount: 25)
304 | for chunk in chunks {
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:305:27: warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
286 | }
287 |
288 | struct OffsettedElement<Element: Equatable>: Comparable, Equatable {
| `- note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
289 | let offset: Int
290 | let element: Element
:
303 | let chunks = Array(contents.enumerated()).chunks(ofCount: 25)
304 | for chunk in chunks {
305 | let added = group.addTaskUnlessCancelled {
| `- warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
306 | await Task {
307 | return chunk.compactMap { input in
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:306:17: warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
286 | }
287 |
288 | struct OffsettedElement<Element: Equatable>: Comparable, Equatable {
| `- note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
289 | let offset: Int
290 | let element: Element
:
304 | for chunk in chunks {
305 | let added = group.addTaskUnlessCancelled {
306 | await Task {
| `- warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
307 | return chunk.compactMap { input in
308 | guard !Task.isCancelled, let projected = project(input.element, coordinateSystem: coordinateSystem) else { return nil }
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:306:17: warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
286 | }
287 |
288 | struct OffsettedElement<Element: Equatable>: Comparable, Equatable {
| `- note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
289 | let offset: Int
290 | let element: Element
:
304 | for chunk in chunks {
305 | let added = group.addTaskUnlessCancelled {
306 | await Task {
| `- warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
307 | return chunk.compactMap { input in
308 | guard !Task.isCancelled, let projected = project(input.element, coordinateSystem: coordinateSystem) else { return nil }
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:311:13: warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
286 | }
287 |
288 | struct OffsettedElement<Element: Equatable>: Comparable, Equatable {
| `- note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
289 | let offset: Int
290 | let element: Element
:
309 | return OffsettedElement(offset: input.offset, element: projected)
310 | }
311 | }.value
| `- warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
312 | }
313 | if !added {
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:318:38: warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
286 | }
287 |
288 | struct OffsettedElement<Element: Equatable>: Comparable, Equatable {
| `- note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
289 | let offset: Int
290 | let element: Element
:
316 | }
317 |
318 | let unsorted = try await group.reduce(into: []) { $0.append(contentsOf: $1) }
| `- warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
319 | return unsorted.sorted(by: <).map(\.element)
320 | }
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:318:55: warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
286 | }
287 |
288 | struct OffsettedElement<Element: Equatable>: Comparable, Equatable {
| `- note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
289 | let offset: Int
290 | let element: Element
:
316 | }
317 |
318 | let unsorted = try await group.reduce(into: []) { $0.append(contentsOf: $1) }
| `- warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
319 | return unsorted.sorted(by: <).map(\.element)
320 | }
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:318:55: warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
286 | }
287 |
288 | struct OffsettedElement<Element: Equatable>: Comparable, Equatable {
| `- note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
289 | let offset: Int
290 | let element: Element
:
316 | }
317 |
318 | let unsorted = try await group.reduce(into: []) { $0.append(contentsOf: $1) }
| `- warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
319 | return unsorted.sorted(by: <).map(\.element)
320 | }
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:305:50: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
303 | let chunks = Array(contents.enumerated()).chunks(ofCount: 25)
304 | for chunk in chunks {
305 | let added = group.addTaskUnlessCancelled {
| `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
306 | await Task {
307 | return chunk.compactMap { input in
308 | guard !Task.isCancelled, let projected = project(input.element, coordinateSystem: coordinateSystem) else { return nil }
| `- note: closure captures 'coordinateSystem' which is accessible to code in the current task
309 | return OffsettedElement(offset: input.offset, element: projected)
310 | }
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:306:22: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
304 | for chunk in chunks {
305 | let added = group.addTaskUnlessCancelled {
306 | await Task {
| `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
307 | return chunk.compactMap { input in
308 | guard !Task.isCancelled, let projected = project(input.element, coordinateSystem: coordinateSystem) else { return nil }
| `- note: closure captures 'coordinateSystem' which is accessible to code in the current task
309 | return OffsettedElement(offset: input.offset, element: projected)
310 | }
[105/120] Compiling GeoDrawer GeoDrawer.swift
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer+TilePrefetch.swift:117:7: warning: capture of 'rowTiles' with non-sendable type 'UnsafeMutablePointer<Set<TileKey>>' in a '@Sendable' closure
115 | }
116 | }
117 | rowTiles[py] = local
| `- warning: capture of 'rowTiles' with non-sendable type 'UnsafeMutablePointer<Set<TileKey>>' in a '@Sendable' closure
118 | }
119 |
Swift.UnsafeMutablePointer:1:23: note: generic struct 'UnsafeMutablePointer' does not conform to the 'Sendable' protocol
1 | @frozen public struct UnsafeMutablePointer<Pointee> : Copyable where Pointee : ~Copyable {
| `- note: generic struct 'UnsafeMutablePointer' does not conform to the 'Sendable' protocol
2 | public let _rawValue: Builtin.RawPointer
3 | public init(_ _rawValue: Builtin.RawPointer)
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:88:49: warning: reference to static property 'zero' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
86 | return acc
87 | } else if let first = points.first {
88 | var rect = Rect(origin: first, size: .zero)
| `- warning: reference to static property 'zero' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
89 | for point in points.dropFirst() {
90 | rect.absorb(point)
/Users/admin/builder/spi-builder-workspace/Sources/GeoProjector/Structs.swift:30:21: note: static property declared here
28 |
29 | public struct Size: Hashable {
30 | public static var zero = Size(width: 0, height: 0)
| `- note: static property declared here
31 |
32 | public init(width: Double, height: Double) {
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:302:15: warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
286 | }
287 |
288 | struct OffsettedElement<Element: Equatable>: Comparable, Equatable {
| `- note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
289 | let offset: Int
290 | let element: Element
:
300 |
301 | func projectInParallel(_ contents: [Content], coordinateSystem: CoordinateSystem) async throws -> [ProjectedContent] {
302 | try await withThrowingTaskGroup(of: [OffsettedElement<ProjectedContent>].self) { group in
| `- warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
303 | let chunks = Array(contents.enumerated()).chunks(ofCount: 25)
304 | for chunk in chunks {
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:302:84: warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
286 | }
287 |
288 | struct OffsettedElement<Element: Equatable>: Comparable, Equatable {
| `- note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
289 | let offset: Int
290 | let element: Element
:
300 |
301 | func projectInParallel(_ contents: [Content], coordinateSystem: CoordinateSystem) async throws -> [ProjectedContent] {
302 | try await withThrowingTaskGroup(of: [OffsettedElement<ProjectedContent>].self) { group in
| `- warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
303 | let chunks = Array(contents.enumerated()).chunks(ofCount: 25)
304 | for chunk in chunks {
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:305:27: warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
286 | }
287 |
288 | struct OffsettedElement<Element: Equatable>: Comparable, Equatable {
| `- note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
289 | let offset: Int
290 | let element: Element
:
303 | let chunks = Array(contents.enumerated()).chunks(ofCount: 25)
304 | for chunk in chunks {
305 | let added = group.addTaskUnlessCancelled {
| `- warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
306 | await Task {
307 | return chunk.compactMap { input in
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:306:17: warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
286 | }
287 |
288 | struct OffsettedElement<Element: Equatable>: Comparable, Equatable {
| `- note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
289 | let offset: Int
290 | let element: Element
:
304 | for chunk in chunks {
305 | let added = group.addTaskUnlessCancelled {
306 | await Task {
| `- warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
307 | return chunk.compactMap { input in
308 | guard !Task.isCancelled, let projected = project(input.element, coordinateSystem: coordinateSystem) else { return nil }
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:306:17: warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
286 | }
287 |
288 | struct OffsettedElement<Element: Equatable>: Comparable, Equatable {
| `- note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
289 | let offset: Int
290 | let element: Element
:
304 | for chunk in chunks {
305 | let added = group.addTaskUnlessCancelled {
306 | await Task {
| `- warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
307 | return chunk.compactMap { input in
308 | guard !Task.isCancelled, let projected = project(input.element, coordinateSystem: coordinateSystem) else { return nil }
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:311:13: warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
286 | }
287 |
288 | struct OffsettedElement<Element: Equatable>: Comparable, Equatable {
| `- note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
289 | let offset: Int
290 | let element: Element
:
309 | return OffsettedElement(offset: input.offset, element: projected)
310 | }
311 | }.value
| `- warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
312 | }
313 | if !added {
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:318:38: warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
286 | }
287 |
288 | struct OffsettedElement<Element: Equatable>: Comparable, Equatable {
| `- note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
289 | let offset: Int
290 | let element: Element
:
316 | }
317 |
318 | let unsorted = try await group.reduce(into: []) { $0.append(contentsOf: $1) }
| `- warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
319 | return unsorted.sorted(by: <).map(\.element)
320 | }
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:318:55: warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
286 | }
287 |
288 | struct OffsettedElement<Element: Equatable>: Comparable, Equatable {
| `- note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
289 | let offset: Int
290 | let element: Element
:
316 | }
317 |
318 | let unsorted = try await group.reduce(into: []) { $0.append(contentsOf: $1) }
| `- warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
319 | return unsorted.sorted(by: <).map(\.element)
320 | }
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:318:55: warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
286 | }
287 |
288 | struct OffsettedElement<Element: Equatable>: Comparable, Equatable {
| `- note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
289 | let offset: Int
290 | let element: Element
:
316 | }
317 |
318 | let unsorted = try await group.reduce(into: []) { $0.append(contentsOf: $1) }
| `- warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
319 | return unsorted.sorted(by: <).map(\.element)
320 | }
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:305:50: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
303 | let chunks = Array(contents.enumerated()).chunks(ofCount: 25)
304 | for chunk in chunks {
305 | let added = group.addTaskUnlessCancelled {
| `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
306 | await Task {
307 | return chunk.compactMap { input in
308 | guard !Task.isCancelled, let projected = project(input.element, coordinateSystem: coordinateSystem) else { return nil }
| `- note: closure captures 'coordinateSystem' which is accessible to code in the current task
309 | return OffsettedElement(offset: input.offset, element: projected)
310 | }
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:306:22: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
304 | for chunk in chunks {
305 | let added = group.addTaskUnlessCancelled {
306 | await Task {
| `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
307 | return chunk.compactMap { input in
308 | guard !Task.isCancelled, let projected = project(input.element, coordinateSystem: coordinateSystem) else { return nil }
| `- note: closure captures 'coordinateSystem' which is accessible to code in the current task
309 | return OffsettedElement(offset: input.offset, element: projected)
310 | }
[106/120] Compiling GeoDrawer GeoJSON+Continents.swift
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer+TilePrefetch.swift:117:7: warning: capture of 'rowTiles' with non-sendable type 'UnsafeMutablePointer<Set<TileKey>>' in a '@Sendable' closure
115 | }
116 | }
117 | rowTiles[py] = local
| `- warning: capture of 'rowTiles' with non-sendable type 'UnsafeMutablePointer<Set<TileKey>>' in a '@Sendable' closure
118 | }
119 |
Swift.UnsafeMutablePointer:1:23: note: generic struct 'UnsafeMutablePointer' does not conform to the 'Sendable' protocol
1 | @frozen public struct UnsafeMutablePointer<Pointee> : Copyable where Pointee : ~Copyable {
| `- note: generic struct 'UnsafeMutablePointer' does not conform to the 'Sendable' protocol
2 | public let _rawValue: Builtin.RawPointer
3 | public init(_ _rawValue: Builtin.RawPointer)
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:88:49: warning: reference to static property 'zero' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
86 | return acc
87 | } else if let first = points.first {
88 | var rect = Rect(origin: first, size: .zero)
| `- warning: reference to static property 'zero' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
89 | for point in points.dropFirst() {
90 | rect.absorb(point)
/Users/admin/builder/spi-builder-workspace/Sources/GeoProjector/Structs.swift:30:21: note: static property declared here
28 |
29 | public struct Size: Hashable {
30 | public static var zero = Size(width: 0, height: 0)
| `- note: static property declared here
31 |
32 | public init(width: Double, height: Double) {
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:302:15: warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
286 | }
287 |
288 | struct OffsettedElement<Element: Equatable>: Comparable, Equatable {
| `- note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
289 | let offset: Int
290 | let element: Element
:
300 |
301 | func projectInParallel(_ contents: [Content], coordinateSystem: CoordinateSystem) async throws -> [ProjectedContent] {
302 | try await withThrowingTaskGroup(of: [OffsettedElement<ProjectedContent>].self) { group in
| `- warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
303 | let chunks = Array(contents.enumerated()).chunks(ofCount: 25)
304 | for chunk in chunks {
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:302:84: warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
286 | }
287 |
288 | struct OffsettedElement<Element: Equatable>: Comparable, Equatable {
| `- note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
289 | let offset: Int
290 | let element: Element
:
300 |
301 | func projectInParallel(_ contents: [Content], coordinateSystem: CoordinateSystem) async throws -> [ProjectedContent] {
302 | try await withThrowingTaskGroup(of: [OffsettedElement<ProjectedContent>].self) { group in
| `- warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
303 | let chunks = Array(contents.enumerated()).chunks(ofCount: 25)
304 | for chunk in chunks {
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:305:27: warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
286 | }
287 |
288 | struct OffsettedElement<Element: Equatable>: Comparable, Equatable {
| `- note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
289 | let offset: Int
290 | let element: Element
:
303 | let chunks = Array(contents.enumerated()).chunks(ofCount: 25)
304 | for chunk in chunks {
305 | let added = group.addTaskUnlessCancelled {
| `- warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
306 | await Task {
307 | return chunk.compactMap { input in
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:306:17: warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
286 | }
287 |
288 | struct OffsettedElement<Element: Equatable>: Comparable, Equatable {
| `- note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
289 | let offset: Int
290 | let element: Element
:
304 | for chunk in chunks {
305 | let added = group.addTaskUnlessCancelled {
306 | await Task {
| `- warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
307 | return chunk.compactMap { input in
308 | guard !Task.isCancelled, let projected = project(input.element, coordinateSystem: coordinateSystem) else { return nil }
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:306:17: warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
286 | }
287 |
288 | struct OffsettedElement<Element: Equatable>: Comparable, Equatable {
| `- note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
289 | let offset: Int
290 | let element: Element
:
304 | for chunk in chunks {
305 | let added = group.addTaskUnlessCancelled {
306 | await Task {
| `- warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
307 | return chunk.compactMap { input in
308 | guard !Task.isCancelled, let projected = project(input.element, coordinateSystem: coordinateSystem) else { return nil }
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:311:13: warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
286 | }
287 |
288 | struct OffsettedElement<Element: Equatable>: Comparable, Equatable {
| `- note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
289 | let offset: Int
290 | let element: Element
:
309 | return OffsettedElement(offset: input.offset, element: projected)
310 | }
311 | }.value
| `- warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
312 | }
313 | if !added {
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:318:38: warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
286 | }
287 |
288 | struct OffsettedElement<Element: Equatable>: Comparable, Equatable {
| `- note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
289 | let offset: Int
290 | let element: Element
:
316 | }
317 |
318 | let unsorted = try await group.reduce(into: []) { $0.append(contentsOf: $1) }
| `- warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
319 | return unsorted.sorted(by: <).map(\.element)
320 | }
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:318:55: warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
286 | }
287 |
288 | struct OffsettedElement<Element: Equatable>: Comparable, Equatable {
| `- note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
289 | let offset: Int
290 | let element: Element
:
316 | }
317 |
318 | let unsorted = try await group.reduce(into: []) { $0.append(contentsOf: $1) }
| `- warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
319 | return unsorted.sorted(by: <).map(\.element)
320 | }
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:318:55: warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
286 | }
287 |
288 | struct OffsettedElement<Element: Equatable>: Comparable, Equatable {
| `- note: consider making generic struct 'OffsettedElement' conform to the 'Sendable' protocol
289 | let offset: Int
290 | let element: Element
:
316 | }
317 |
318 | let unsorted = try await group.reduce(into: []) { $0.append(contentsOf: $1) }
| `- warning: type 'GeoDrawer.OffsettedElement<GeoDrawer.ProjectedContent>' does not conform to the 'Sendable' protocol; this is an error in the Swift 6 language mode
319 | return unsorted.sorted(by: <).map(\.element)
320 | }
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:305:50: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
303 | let chunks = Array(contents.enumerated()).chunks(ofCount: 25)
304 | for chunk in chunks {
305 | let added = group.addTaskUnlessCancelled {
| `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
306 | await Task {
307 | return chunk.compactMap { input in
308 | guard !Task.isCancelled, let projected = project(input.element, coordinateSystem: coordinateSystem) else { return nil }
| `- note: closure captures 'coordinateSystem' which is accessible to code in the current task
309 | return OffsettedElement(offset: input.offset, element: projected)
310 | }
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:306:22: warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
304 | for chunk in chunks {
305 | let added = group.addTaskUnlessCancelled {
306 | await Task {
| `- warning: passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure; this is an error in the Swift 6 language mode
307 | return chunk.compactMap { input in
308 | guard !Task.isCancelled, let projected = project(input.element, coordinateSystem: coordinateSystem) else { return nil }
| `- note: closure captures 'coordinateSystem' which is accessible to code in the current task
309 | return OffsettedElement(offset: input.offset, element: projected)
310 | }
[107/120] Compiling GeoDrawer GeoMap+AppKit.swift
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/apple/GeoMap+AppKit.swift:191:22: warning: non-sendable type 'GeoDrawer' of property 'drawer' cannot exit main actor-isolated context; this is an error in the Swift 6 language mode
189 | try? await Task.sleep(nanoseconds: 150_000_000)
190 | guard let self, !Task.isCancelled else { return }
191 | _ = await self.drawer.renderedTiledBaseMap(tiled, coordinateSystem: coord)
| `- warning: non-sendable type 'GeoDrawer' of property 'drawer' cannot exit main actor-isolated context; this is an error in the Swift 6 language mode
192 | if Task.isCancelled { return }
193 | await MainActor.run {
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:58:15: note: consider making struct 'GeoDrawer' conform to the 'Sendable' protocol
56 | /// drawer.draw(myContent, in: myContext)
57 | /// ```
58 | public struct GeoDrawer {
| `- note: consider making struct 'GeoDrawer' conform to the 'Sendable' protocol
59 |
60 | public init(size: Size, projection: Projection, zoomTo: GeoJSON.BoundingBox? = nil, zoomOutFactor: Double = 1, insets: EdgeInsets = .zero) {
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/apple/GeoMap+AppKit.swift:310:35: warning: non-sendable type 'GeoDrawer' of property 'drawer' cannot exit main actor-isolated context; this is an error in the Swift 6 language mode
308 | guard let self else { return }
309 | do {
310 | let projected = try await drawer.projectInParallelCG(contents, coordinateSystem: .bottomLeft)
| `- warning: non-sendable type 'GeoDrawer' of property 'drawer' cannot exit main actor-isolated context; this is an error in the Swift 6 language mode
311 | if Task.isCancelled { return }
312 |
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:58:15: note: consider making struct 'GeoDrawer' conform to the 'Sendable' protocol
56 | /// drawer.draw(myContent, in: myContext)
57 | /// ```
58 | public struct GeoDrawer {
| `- note: consider making struct 'GeoDrawer' conform to the 'Sendable' protocol
59 |
60 | public init(size: Size, projection: Projection, zoomTo: GeoJSON.BoundingBox? = nil, zoomOutFactor: Double = 1, insets: EdgeInsets = .zero) {
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/apple/GeoMap+AppKit.swift:310:62: warning: non-sendable type '[GeoDrawer.Content]' of property 'contents' cannot exit main actor-isolated context; this is an error in the Swift 6 language mode
308 | guard let self else { return }
309 | do {
310 | let projected = try await drawer.projectInParallelCG(contents, coordinateSystem: .bottomLeft)
| `- warning: non-sendable type '[GeoDrawer.Content]' of property 'contents' cannot exit main actor-isolated context; this is an error in the Swift 6 language mode
311 | if Task.isCancelled { return }
312 |
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:206:15: note: consider making enum 'Content' conform to the 'Sendable' protocol
204 | #endif
205 |
206 | public enum Content: Hashable {
| `- note: consider making enum 'Content' conform to the 'Sendable' protocol
207 | case line(GeoJSON.LineString, stroke: Color, strokeWidth: Double = 2)
208 | case polygon(GeoJSON.Polygon, fill: Color, stroke: Color? = nil, strokeWidth: Double = 2)
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/apple/GeoMap+AppKit.swift:322:23: warning: non-sendable type 'GeoDrawer' of property 'drawer' cannot exit main actor-isolated context; this is an error in the Swift 6 language mode
320 | switch content {
321 | case let .baseMap(baseMap):
322 | _ = await drawer.renderedBaseMap(baseMap, coordinateSystem: .bottomLeft)
| `- warning: non-sendable type 'GeoDrawer' of property 'drawer' cannot exit main actor-isolated context; this is an error in the Swift 6 language mode
323 | case let .tiledBaseMap(tiled):
324 | _ = await drawer.renderedTiledBaseMap(tiled, coordinateSystem: .bottomLeft)
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:58:15: note: consider making struct 'GeoDrawer' conform to the 'Sendable' protocol
56 | /// drawer.draw(myContent, in: myContext)
57 | /// ```
58 | public struct GeoDrawer {
| `- note: consider making struct 'GeoDrawer' conform to the 'Sendable' protocol
59 |
60 | public init(size: Size, projection: Projection, zoomTo: GeoJSON.BoundingBox? = nil, zoomOutFactor: Double = 1, insets: EdgeInsets = .zero) {
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/apple/GeoMap+AppKit.swift:324:23: warning: non-sendable type 'GeoDrawer' of property 'drawer' cannot exit main actor-isolated context; this is an error in the Swift 6 language mode
322 | _ = await drawer.renderedBaseMap(baseMap, coordinateSystem: .bottomLeft)
323 | case let .tiledBaseMap(tiled):
324 | _ = await drawer.renderedTiledBaseMap(tiled, coordinateSystem: .bottomLeft)
| `- warning: non-sendable type 'GeoDrawer' of property 'drawer' cannot exit main actor-isolated context; this is an error in the Swift 6 language mode
325 | case .line, .polygon, .circle:
326 | break
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:58:15: note: consider making struct 'GeoDrawer' conform to the 'Sendable' protocol
56 | /// drawer.draw(myContent, in: myContext)
57 | /// ```
58 | public struct GeoDrawer {
| `- note: consider making struct 'GeoDrawer' conform to the 'Sendable' protocol
59 |
60 | public init(size: Size, projection: Projection, zoomTo: GeoJSON.BoundingBox? = nil, zoomOutFactor: Double = 1, insets: EdgeInsets = .zero) {
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/apple/GeoMap+AppKit.swift:347:26: warning: non-sendable type 'GeoDrawer' of property 'drawer' cannot exit main actor-isolated context; this is an error in the Swift 6 language mode
345 | guard case let .tiledBaseMap(tiled) = content else { continue }
346 | group.addTask {
347 | await self.drawer.prefetchTiles(for: tiled) { progress in
| `- warning: non-sendable type 'GeoDrawer' of property 'drawer' cannot exit main actor-isolated context; this is an error in the Swift 6 language mode
348 | Task { @MainActor in
349 | self.onTileProgress?(progress)
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:58:15: note: consider making struct 'GeoDrawer' conform to the 'Sendable' protocol
56 | /// drawer.draw(myContent, in: myContext)
57 | /// ```
58 | public struct GeoDrawer {
| `- note: consider making struct 'GeoDrawer' conform to the 'Sendable' protocol
59 |
60 | public init(size: Size, projection: Projection, zoomTo: GeoJSON.BoundingBox? = nil, zoomOutFactor: Double = 1, insets: EdgeInsets = .zero) {
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/apple/GeoMap+AppKit.swift:333:44: warning: sending 'projected' risks causing data races; this is an error in the Swift 6 language mode
331 | self.cancelStaleRenderTimer()
332 | self._previousDrawer = nil
333 | self.projectProgress = .finished(projected)
| |- warning: sending 'projected' risks causing data races; this is an error in the Swift 6 language mode
| `- note: main actor-isolated 'projected' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
334 | self.setNeedsDisplay(self.bounds)
335 | }
:
340 | // tiles fill in progressively rather than waiting on the full set.
341 | // Progress is surfaced to the consumer via `onTileProgress`.
342 | await withTaskGroup(of: Void.self) { group in
| `- note: access can happen concurrently
343 | for content in projected {
344 | if Task.isCancelled { break }
[108/120] Compiling GeoDrawer GeoMap+UIKit.swift
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/apple/GeoMap+AppKit.swift:191:22: warning: non-sendable type 'GeoDrawer' of property 'drawer' cannot exit main actor-isolated context; this is an error in the Swift 6 language mode
189 | try? await Task.sleep(nanoseconds: 150_000_000)
190 | guard let self, !Task.isCancelled else { return }
191 | _ = await self.drawer.renderedTiledBaseMap(tiled, coordinateSystem: coord)
| `- warning: non-sendable type 'GeoDrawer' of property 'drawer' cannot exit main actor-isolated context; this is an error in the Swift 6 language mode
192 | if Task.isCancelled { return }
193 | await MainActor.run {
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:58:15: note: consider making struct 'GeoDrawer' conform to the 'Sendable' protocol
56 | /// drawer.draw(myContent, in: myContext)
57 | /// ```
58 | public struct GeoDrawer {
| `- note: consider making struct 'GeoDrawer' conform to the 'Sendable' protocol
59 |
60 | public init(size: Size, projection: Projection, zoomTo: GeoJSON.BoundingBox? = nil, zoomOutFactor: Double = 1, insets: EdgeInsets = .zero) {
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/apple/GeoMap+AppKit.swift:310:35: warning: non-sendable type 'GeoDrawer' of property 'drawer' cannot exit main actor-isolated context; this is an error in the Swift 6 language mode
308 | guard let self else { return }
309 | do {
310 | let projected = try await drawer.projectInParallelCG(contents, coordinateSystem: .bottomLeft)
| `- warning: non-sendable type 'GeoDrawer' of property 'drawer' cannot exit main actor-isolated context; this is an error in the Swift 6 language mode
311 | if Task.isCancelled { return }
312 |
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:58:15: note: consider making struct 'GeoDrawer' conform to the 'Sendable' protocol
56 | /// drawer.draw(myContent, in: myContext)
57 | /// ```
58 | public struct GeoDrawer {
| `- note: consider making struct 'GeoDrawer' conform to the 'Sendable' protocol
59 |
60 | public init(size: Size, projection: Projection, zoomTo: GeoJSON.BoundingBox? = nil, zoomOutFactor: Double = 1, insets: EdgeInsets = .zero) {
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/apple/GeoMap+AppKit.swift:310:62: warning: non-sendable type '[GeoDrawer.Content]' of property 'contents' cannot exit main actor-isolated context; this is an error in the Swift 6 language mode
308 | guard let self else { return }
309 | do {
310 | let projected = try await drawer.projectInParallelCG(contents, coordinateSystem: .bottomLeft)
| `- warning: non-sendable type '[GeoDrawer.Content]' of property 'contents' cannot exit main actor-isolated context; this is an error in the Swift 6 language mode
311 | if Task.isCancelled { return }
312 |
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:206:15: note: consider making enum 'Content' conform to the 'Sendable' protocol
204 | #endif
205 |
206 | public enum Content: Hashable {
| `- note: consider making enum 'Content' conform to the 'Sendable' protocol
207 | case line(GeoJSON.LineString, stroke: Color, strokeWidth: Double = 2)
208 | case polygon(GeoJSON.Polygon, fill: Color, stroke: Color? = nil, strokeWidth: Double = 2)
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/apple/GeoMap+AppKit.swift:322:23: warning: non-sendable type 'GeoDrawer' of property 'drawer' cannot exit main actor-isolated context; this is an error in the Swift 6 language mode
320 | switch content {
321 | case let .baseMap(baseMap):
322 | _ = await drawer.renderedBaseMap(baseMap, coordinateSystem: .bottomLeft)
| `- warning: non-sendable type 'GeoDrawer' of property 'drawer' cannot exit main actor-isolated context; this is an error in the Swift 6 language mode
323 | case let .tiledBaseMap(tiled):
324 | _ = await drawer.renderedTiledBaseMap(tiled, coordinateSystem: .bottomLeft)
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:58:15: note: consider making struct 'GeoDrawer' conform to the 'Sendable' protocol
56 | /// drawer.draw(myContent, in: myContext)
57 | /// ```
58 | public struct GeoDrawer {
| `- note: consider making struct 'GeoDrawer' conform to the 'Sendable' protocol
59 |
60 | public init(size: Size, projection: Projection, zoomTo: GeoJSON.BoundingBox? = nil, zoomOutFactor: Double = 1, insets: EdgeInsets = .zero) {
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/apple/GeoMap+AppKit.swift:324:23: warning: non-sendable type 'GeoDrawer' of property 'drawer' cannot exit main actor-isolated context; this is an error in the Swift 6 language mode
322 | _ = await drawer.renderedBaseMap(baseMap, coordinateSystem: .bottomLeft)
323 | case let .tiledBaseMap(tiled):
324 | _ = await drawer.renderedTiledBaseMap(tiled, coordinateSystem: .bottomLeft)
| `- warning: non-sendable type 'GeoDrawer' of property 'drawer' cannot exit main actor-isolated context; this is an error in the Swift 6 language mode
325 | case .line, .polygon, .circle:
326 | break
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:58:15: note: consider making struct 'GeoDrawer' conform to the 'Sendable' protocol
56 | /// drawer.draw(myContent, in: myContext)
57 | /// ```
58 | public struct GeoDrawer {
| `- note: consider making struct 'GeoDrawer' conform to the 'Sendable' protocol
59 |
60 | public init(size: Size, projection: Projection, zoomTo: GeoJSON.BoundingBox? = nil, zoomOutFactor: Double = 1, insets: EdgeInsets = .zero) {
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/apple/GeoMap+AppKit.swift:347:26: warning: non-sendable type 'GeoDrawer' of property 'drawer' cannot exit main actor-isolated context; this is an error in the Swift 6 language mode
345 | guard case let .tiledBaseMap(tiled) = content else { continue }
346 | group.addTask {
347 | await self.drawer.prefetchTiles(for: tiled) { progress in
| `- warning: non-sendable type 'GeoDrawer' of property 'drawer' cannot exit main actor-isolated context; this is an error in the Swift 6 language mode
348 | Task { @MainActor in
349 | self.onTileProgress?(progress)
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/GeoDrawer.swift:58:15: note: consider making struct 'GeoDrawer' conform to the 'Sendable' protocol
56 | /// drawer.draw(myContent, in: myContext)
57 | /// ```
58 | public struct GeoDrawer {
| `- note: consider making struct 'GeoDrawer' conform to the 'Sendable' protocol
59 |
60 | public init(size: Size, projection: Projection, zoomTo: GeoJSON.BoundingBox? = nil, zoomOutFactor: Double = 1, insets: EdgeInsets = .zero) {
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/apple/GeoMap+AppKit.swift:333:44: warning: sending 'projected' risks causing data races; this is an error in the Swift 6 language mode
331 | self.cancelStaleRenderTimer()
332 | self._previousDrawer = nil
333 | self.projectProgress = .finished(projected)
| |- warning: sending 'projected' risks causing data races; this is an error in the Swift 6 language mode
| `- note: main actor-isolated 'projected' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
334 | self.setNeedsDisplay(self.bounds)
335 | }
:
340 | // tiles fill in progressively rather than waiting on the full set.
341 | // Progress is surfaced to the consumer via `onTileProgress`.
342 | await withTaskGroup(of: Void.self) { group in
| `- note: access can happen concurrently
343 | for content in projected {
344 | if Task.isCancelled { break }
[109/120] Compiling GeoDrawer BaseMap.swift
[110/120] Compiling GeoDrawer GeoDrawer+BoundarySplit.swift
[111/120] Compiling GeoDrawer GeoDrawer+SVG.swift
[112/120] Emitting module GeoDrawer
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/TileCache.swift:21:9: warning: stored property 'sourceID' of 'Sendable'-conforming struct 'TileCacheKey' has non-sendable type 'AnyHashable'; this is an error in the Swift 6 language mode
19 | /// projection/size/zoom/insets/quality changes.
20 | struct TileCacheKey: Hashable, Sendable {
21 | let sourceID: AnyHashable
| `- warning: stored property 'sourceID' of 'Sendable'-conforming struct 'TileCacheKey' has non-sendable type 'AnyHashable'; this is an error in the Swift 6 language mode
22 | let tileKey: TileKey
23 | }
Swift.AnyHashable:1:23: note: struct 'AnyHashable' does not conform to the 'Sendable' protocol
1 | @frozen public struct AnyHashable {
| `- note: struct 'AnyHashable' does not conform to the 'Sendable' protocol
2 | public init<H>(_ base: H) where H : Hashable
3 | public var base: Any { get }
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/TileSources/StaticTileSource.swift:27:14: warning: stored property 'tileSourceID' of 'Sendable'-conforming struct 'StaticTileSource' has non-sendable type 'AnyHashable'; this is an error in the Swift 6 language mode
25 | public struct StaticTileSource: TileSource {
26 |
27 | public let tileSourceID: AnyHashable
| `- warning: stored property 'tileSourceID' of 'Sendable'-conforming struct 'StaticTileSource' has non-sendable type 'AnyHashable'; this is an error in the Swift 6 language mode
28 | public let projection: any Projection
29 | public let tileSize: Int
Swift.AnyHashable:1:23: note: struct 'AnyHashable' does not conform to the 'Sendable' protocol
1 | @frozen public struct AnyHashable {
| `- note: struct 'AnyHashable' does not conform to the 'Sendable' protocol
2 | public init<H>(_ base: H) where H : Hashable
3 | public var base: Any { get }
[113/120] Compiling GeoDrawer GeoDrawer+RasterBaseMap.swift
[114/120] Compiling GeoDrawer GeoDrawer+TiledBaseMap.swift
[115/120] Compiling GeoDrawer GeoDrawer+CoreGraphics.swift
[116/120] Compiling GeoDrawer GeoDrawer+Image.swift
[117/120] Compiling GeoDrawer URLTemplateTileSource.swift
[118/120] Compiling GeoDrawer TiledBaseMap.swift
[119/120] Compiling GeoDrawer Sampling.swift
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/TileCache.swift:21:9: warning: stored property 'sourceID' of 'Sendable'-conforming struct 'TileCacheKey' has non-sendable type 'AnyHashable'; this is an error in the Swift 6 language mode
19 | /// projection/size/zoom/insets/quality changes.
20 | struct TileCacheKey: Hashable, Sendable {
21 | let sourceID: AnyHashable
| `- warning: stored property 'sourceID' of 'Sendable'-conforming struct 'TileCacheKey' has non-sendable type 'AnyHashable'; this is an error in the Swift 6 language mode
22 | let tileKey: TileKey
23 | }
Swift.AnyHashable:1:23: note: struct 'AnyHashable' does not conform to the 'Sendable' protocol
1 | @frozen public struct AnyHashable {
| `- note: struct 'AnyHashable' does not conform to the 'Sendable' protocol
2 | public init<H>(_ base: H) where H : Hashable
3 | public var base: Any { get }
[120/120] Compiling GeoDrawer TileCache.swift
/Users/admin/builder/spi-builder-workspace/Sources/GeoDrawer/TileCache.swift:21:9: warning: stored property 'sourceID' of 'Sendable'-conforming struct 'TileCacheKey' has non-sendable type 'AnyHashable'; this is an error in the Swift 6 language mode
19 | /// projection/size/zoom/insets/quality changes.
20 | struct TileCacheKey: Hashable, Sendable {
21 | let sourceID: AnyHashable
| `- warning: stored property 'sourceID' of 'Sendable'-conforming struct 'TileCacheKey' has non-sendable type 'AnyHashable'; this is an error in the Swift 6 language mode
22 | let tileKey: TileKey
23 | }
Swift.AnyHashable:1:23: note: struct 'AnyHashable' does not conform to the 'Sendable' protocol
1 | @frozen public struct AnyHashable {
| `- note: struct 'AnyHashable' does not conform to the 'Sendable' protocol
2 | public init<H>(_ base: H) where H : Hashable
3 | public var base: Any { get }
Build complete! (28.54s)
Fetching https://github.com/maparoni/geojsonkit-turf
Fetching https://github.com/maparoni/geojsonkit.git
Fetching https://github.com/apple/swift-algorithms.git from cache
[1/362] Fetching geojsonkit
[103/3449] Fetching geojsonkit, geojsonkit-turf
Fetched https://github.com/maparoni/geojsonkit-turf from cache (1.45s)
Fetched https://github.com/maparoni/geojsonkit.git from cache (1.45s)
Fetched https://github.com/apple/swift-algorithms.git from cache (1.47s)
Computing version for https://github.com/apple/swift-algorithms.git
Computed https://github.com/apple/swift-algorithms.git at 1.2.1 (2.08s)
Fetching https://github.com/apple/swift-numerics.git from cache
Fetched https://github.com/apple/swift-numerics.git from cache (1.11s)
Computing version for https://github.com/maparoni/geojsonkit.git
Computed https://github.com/maparoni/geojsonkit.git at 0.6.0 (1.71s)
Computing version for https://github.com/apple/swift-numerics.git
Computed https://github.com/apple/swift-numerics.git at 1.1.1 (0.47s)
Computing version for https://github.com/maparoni/geojsonkit-turf
Computed https://github.com/maparoni/geojsonkit-turf at 0.4.3 (0.58s)
Fetching https://github.com/apple/swift-argument-parser from cache
Fetched https://github.com/apple/swift-argument-parser from cache (1.84s)
Computing version for https://github.com/apple/swift-argument-parser
Computed https://github.com/apple/swift-argument-parser at 1.8.2 (2.40s)
Creating working copy for https://github.com/apple/swift-argument-parser
Working copy of https://github.com/apple/swift-argument-parser resolved at 1.8.2
Creating working copy for https://github.com/apple/swift-algorithms.git
Working copy of https://github.com/apple/swift-algorithms.git resolved at 1.2.1
Creating working copy for https://github.com/maparoni/geojsonkit-turf
Working copy of https://github.com/maparoni/geojsonkit-turf resolved at 0.4.3
Creating working copy for https://github.com/apple/swift-numerics.git
Working copy of https://github.com/apple/swift-numerics.git resolved at 1.1.1
Creating working copy for https://github.com/maparoni/geojsonkit.git
Working copy of https://github.com/maparoni/geojsonkit.git resolved at 0.6.0
Build complete.
{
"dependencies" : [
{
"identity" : "geojsonkit",
"requirement" : {
"range" : [
{
"lower_bound" : "0.5.0",
"upper_bound" : "1.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/maparoni/geojsonkit.git"
},
{
"identity" : "geojsonkit-turf",
"requirement" : {
"range" : [
{
"lower_bound" : "0.1.0",
"upper_bound" : "1.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/maparoni/geojsonkit-turf"
},
{
"identity" : "swift-algorithms",
"requirement" : {
"range" : [
{
"lower_bound" : "1.0.0",
"upper_bound" : "2.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/apple/swift-algorithms.git"
}
],
"manifest_display_name" : "GeoProjector",
"name" : "GeoProjector",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "macos",
"version" : "12.0"
},
{
"name" : "ios",
"version" : "15.0"
},
{
"name" : "watchos",
"version" : "8.0"
},
{
"name" : "tvos",
"version" : "15.0"
},
{
"name" : "xros",
"version" : "1.0"
}
],
"products" : [
{
"name" : "GeoProjector",
"targets" : [
"GeoProjector"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "GeoProjectorDanseiji",
"targets" : [
"GeoProjectorDanseiji"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "GeoDrawer",
"targets" : [
"GeoDrawer"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "GeoProjectorTests",
"module_type" : "SwiftTarget",
"name" : "GeoProjectorTests",
"path" : "Tests/GeoProjectorTests",
"sources" : [
"InverseTests.swift",
"MapBoundsTests.swift",
"NaturalEarthTests.swift",
"ProjectionTests.swift",
"TranslationTests.swift"
],
"target_dependencies" : [
"GeoProjector"
],
"type" : "test"
},
{
"c99name" : "GeoProjectorDanseijiTests",
"module_type" : "SwiftTarget",
"name" : "GeoProjectorDanseijiTests",
"path" : "Tests/GeoProjectorDanseijiTests",
"sources" : [
"DanseijiTests.swift"
],
"target_dependencies" : [
"GeoProjectorDanseiji"
],
"type" : "test"
},
{
"c99name" : "GeoProjectorDanseiji",
"module_type" : "SwiftTarget",
"name" : "GeoProjectorDanseiji",
"path" : "Sources/GeoProjectorDanseiji",
"product_dependencies" : [
"GeoJSONKit"
],
"product_memberships" : [
"GeoProjectorDanseiji"
],
"resources" : [
{
"path" : "/Users/admin/builder/spi-builder-workspace/Sources/GeoProjectorDanseiji/Resources/LICENSE-Danseiji.txt",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Sources/GeoProjectorDanseiji/Resources/danseijiI.csv",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Sources/GeoProjectorDanseiji/Resources/danseijiII.csv",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Sources/GeoProjectorDanseiji/Resources/danseijiIII.csv",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Sources/GeoProjectorDanseiji/Resources/danseijiIV.csv",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Sources/GeoProjectorDanseiji/Resources/danseijiV.csv",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Sources/GeoProjectorDanseiji/Resources/danseijiVI.csv",
"rule" : {
"process" : {
}
}
}
],
"sources" : [
"DanseijiCore.swift",
"DanseijiData.swift",
"DanseijiVariant.swift",
"Projections+Danseiji.swift"
],
"target_dependencies" : [
"GeoProjector"
],
"type" : "library"
},
{
"c99name" : "GeoProjector",
"module_type" : "SwiftTarget",
"name" : "GeoProjector",
"path" : "Sources/GeoProjector",
"product_dependencies" : [
"GeoJSONKit",
"GeoJSONKitTurf"
],
"product_memberships" : [
"GeoProjector",
"GeoProjectorDanseiji",
"GeoDrawer"
],
"sources" : [
"Interpolator.swift",
"MapBounds+Contains.swift",
"Projection.swift",
"ProjectionMode.swift",
"Projections+Azimuthal.swift",
"Projections+Cylindrical.swift",
"Projections+Orthographic.swift",
"Projections+Pseudocylindrical.swift",
"Projections.swift",
"Structs.swift"
],
"type" : "library"
},
{
"c99name" : "GeoDrawerTests",
"module_type" : "SwiftTarget",
"name" : "GeoDrawerTests",
"path" : "Tests/GeoDrawerTests",
"sources" : [
"BaseMapTests.swift",
"BoundarySplitTests.swift",
"GeoDrawerSVGTests.swift",
"GeoDrawerSVGZoomTests.swift",
"GraticuleCoverageTests.swift",
"RenderSamples.swift",
"TilePrefetchCoverageTests.swift",
"TileSourceTests.swift"
],
"target_dependencies" : [
"GeoDrawer",
"GeoProjector",
"GeoProjectorDanseiji"
],
"type" : "test"
},
{
"c99name" : "GeoDrawer",
"module_type" : "SwiftTarget",
"name" : "GeoDrawer",
"path" : "Sources/GeoDrawer",
"product_dependencies" : [
"Algorithms"
],
"product_memberships" : [
"GeoDrawer"
],
"sources" : [
"BaseMap.swift",
"GeoDrawer+BoundarySplit.swift",
"GeoDrawer+SVG.swift",
"GeoDrawer+TilePrefetch.swift",
"GeoDrawer.swift",
"GeoJSON+Continents.swift",
"Sampling.swift",
"TileCache.swift",
"TileSource.swift",
"TileSources/StaticTileSource.swift",
"TileSources/URLTemplateTileSource.swift",
"TiledBaseMap.swift",
"apple/BaseMap+CoreGraphics.swift",
"apple/GeoDrawer+CGProjected.swift",
"apple/GeoDrawer+CoreGraphics.swift",
"apple/GeoDrawer+Image.swift",
"apple/GeoDrawer+RasterBaseMap.swift",
"apple/GeoDrawer+TiledBaseMap.swift",
"apple/GeoMap+AppKit.swift",
"apple/GeoMap+UIKit.swift",
"apple/TileImage+CoreGraphics.swift",
"styling/GeoDrawerContent+Style.swift"
],
"target_dependencies" : [
"GeoProjector"
],
"type" : "library"
}
],
"tools_version" : "5.7"
}
Done.